From 8aacd25b072a6fedc55e0df579448f282131a99f Mon Sep 17 00:00:00 2001 From: Marcus Kammer Date: Mon, 10 Oct 2022 10:18:46 +0200 Subject: [PATCH] Remove cliki --- clones/lisp/www.cliki.net/(X)HTMΛ.html | 51 - clones/lisp/www.cliki.net/.NET.html | 64 - clones/lisp/www.cliki.net/.Net.html | 64 - clones/lisp/www.cliki.net/0BSD.html | 68 - clones/lisp/www.cliki.net/1am.html | 51 - ...1st European LISP and Scheme Workshop.html | 54 - ...2nd European LISP and Scheme Workshop.html | 55 - clones/lisp/www.cliki.net/3bmd.html | 52 - clones/lisp/www.cliki.net/3d-matrices.html | 53 - clones/lisp/www.cliki.net/3d-vectors.html | 53 - .../lisp/www.cliki.net/A Turing machine.html | 51 - clones/lisp/www.cliki.net/ABCL.html | 105 -- clones/lisp/www.cliki.net/AC Toolkit.html | 51 - clones/lisp/www.cliki.net/ACL-COMPAT.html | 76 - clones/lisp/www.cliki.net/ACL.html | 51 - clones/lisp/www.cliki.net/ACL2.html | 52 - .../www.cliki.net/ACUTE-TERMINAL-CONTROL.html | 52 - clones/lisp/www.cliki.net/AGPL.html | 127 -- clones/lisp/www.cliki.net/AI.html | 80 - clones/lisp/www.cliki.net/AJAX.html | 68 - clones/lisp/www.cliki.net/ALBERT.html | 52 - clones/lisp/www.cliki.net/ALEXANDRIA.html | 51 - clones/lisp/www.cliki.net/ALIW.html | 51 - clones/lisp/www.cliki.net/ALU.html | 52 - clones/lisp/www.cliki.net/AMOP.html | 53 - clones/lisp/www.cliki.net/ANAPHORA.html | 86 -- .../ANSI Clarifications and Errata.html | 384 ----- clones/lisp/www.cliki.net/ANSI.html | 51 - clones/lisp/www.cliki.net/ARC4.html | 134 -- clones/lisp/www.cliki.net/ARNESI.html | 51 - .../lisp/www.cliki.net/ARRAY-OPERATIONS.html | 57 - .../ASDF System Connections.html | 51 - clones/lisp/www.cliki.net/ASDF encoding.html | 63 - .../www.cliki.net/ASDF-Binary-Locations.html | 52 - .../www.cliki.net/ASDF-Binary-locations.html | 52 - .../www.cliki.net/ASDF-DEPENDENCY-GROVEL.html | 52 - clones/lisp/www.cliki.net/ASDF-Extension.html | 107 -- clones/lisp/www.cliki.net/ASDF-INSTALL.html | 51 - clones/lisp/www.cliki.net/ASDF-Install.html | 51 - .../ASDF-System-Connections.html | 52 - clones/lisp/www.cliki.net/ASDF-extension.html | 107 -- clones/lisp/www.cliki.net/ASDF-install.html | 51 - clones/lisp/www.cliki.net/ASDF.html | 61 - clones/lisp/www.cliki.net/ASDlite.html | 61 - clones/lisp/www.cliki.net/ASN.1.html | 58 - clones/lisp/www.cliki.net/AWK Lisp.html | 51 - clones/lisp/www.cliki.net/Aanand.html | 52 - clones/lisp/www.cliki.net/Abhishek Reddy.html | 68 - clones/lisp/www.cliki.net/Able.html | 52 - .../lisp/www.cliki.net/AccelerationNet.html | 129 -- clones/lisp/www.cliki.net/Acclaim.html | 54 - clones/lisp/www.cliki.net/Acclimation.html | 84 -- clones/lisp/www.cliki.net/Adam Di Carlo.html | 51 - clones/lisp/www.cliki.net/Adam Houston.html | 51 - clones/lisp/www.cliki.net/Adlai.html | 51 - clones/lisp/www.cliki.net/Adler32.html | 52 - clones/lisp/www.cliki.net/Adopt.html | 52 - clones/lisp/www.cliki.net/Agent0.html | 52 - clones/lisp/www.cliki.net/Ajax.html | 68 - .../lisp/www.cliki.net/Akshay Srinivasan.html | 53 - clones/lisp/www.cliki.net/Alan Crowe.html | 55 - clones/lisp/www.cliki.net/Alan Shields.html | 65 - clones/lisp/www.cliki.net/AlanRuttenberg.html | 51 - clones/lisp/www.cliki.net/Albert.html | 52 - .../www.cliki.net/Aleksandr Skobelev.html | 52 - clones/lisp/www.cliki.net/Alexander Kahl.html | 52 - clones/lisp/www.cliki.net/Alexandria.html | 51 - clones/lisp/www.cliki.net/Algorithm.html | 168 --- clones/lisp/www.cliki.net/Alive.html | 52 - clones/lisp/www.cliki.net/Allegro Maild.html | 51 - .../www.cliki.net/Allegro NFS Server.html | 52 - clones/lisp/www.cliki.net/Allegro.html | 51 - clones/lisp/www.cliki.net/AllegroServe.html | 51 - clones/lisp/www.cliki.net/Alpaca.html | 51 - clones/lisp/www.cliki.net/AmOS.html | 55 - .../www.cliki.net/Amazon Web Services.html | 64 - clones/lisp/www.cliki.net/Anaphora.html | 86 -- clones/lisp/www.cliki.net/Andreas Fuchs.html | 51 - ...ions for Infrequently Asked Questions.html | 68 - .../Ant colony optimization.html | 51 - .../www.cliki.net/Anthony Ventimiglia.html | 51 - clones/lisp/www.cliki.net/Antik.html | 52 - clones/lisp/www.cliki.net/Antiweb.html | 51 - clones/lisp/www.cliki.net/Apache 2.html | 252 ---- .../www.cliki.net/Apple II archaeology.html | 74 - clones/lisp/www.cliki.net/Application.html | 356 ----- clones/lisp/www.cliki.net/Apply-argv.html | 51 - clones/lisp/www.cliki.net/Araneida.html | 195 --- clones/lisp/www.cliki.net/Arduino Lisp.html | 52 - clones/lisp/www.cliki.net/Arduino.html | 60 - clones/lisp/www.cliki.net/Arnesi.html | 51 - .../Artificial Intelligence.html | 72 - .../lisp/www.cliki.net/Artistic License.html | 76 - .../lisp/www.cliki.net/Ask Uncle Peter.html | 59 - clones/lisp/www.cliki.net/Assem.html | 52 - clones/lisp/www.cliki.net/Asteroid Wars.html | 51 - clones/lisp/www.cliki.net/Attila Lendvai.html | 51 - clones/lisp/www.cliki.net/Audio.html | 144 -- clones/lisp/www.cliki.net/August S.Sigov.html | 53 - clones/lisp/www.cliki.net/Axiom.html | 51 - .../www.cliki.net/Azamat S. Kalimoulline.html | 52 - clones/lisp/www.cliki.net/B-Tries.html | 516 ------- clones/lisp/www.cliki.net/BASIC.html | 51 - clones/lisp/www.cliki.net/BIND.html | 80 - clones/lisp/www.cliki.net/BITMOP.html | 52 - clones/lisp/www.cliki.net/BRL.html | 52 - clones/lisp/www.cliki.net/BSD LICENSE.html | 78 - clones/lisp/www.cliki.net/BSD License.html | 78 - clones/lisp/www.cliki.net/BSD license.html | 78 - clones/lisp/www.cliki.net/BSD sockets.html | 60 - clones/lisp/www.cliki.net/BSD.html | 564 ------- clones/lisp/www.cliki.net/BSL.html | 60 - clones/lisp/www.cliki.net/BST.html | 52 - clones/lisp/www.cliki.net/BYTES.html | 51 - clones/lisp/www.cliki.net/Babel.html | 51 - clones/lisp/www.cliki.net/Babel2.html | 60 - clones/lisp/www.cliki.net/Bach Chorales.html | 52 - clones/lisp/www.cliki.net/Base64.html | 52 - .../www.cliki.net/Basic-English-Grammar.html | 59 - clones/lisp/www.cliki.net/Ben Hyde.html | 51 - clones/lisp/www.cliki.net/Ben Lee.html | 51 - clones/lisp/www.cliki.net/Benchmark.html | 104 -- clones/lisp/www.cliki.net/Berlin Brown.html | 63 - clones/lisp/www.cliki.net/Bill Newman.html | 52 - clones/lisp/www.cliki.net/Binary-types.html | 69 - clones/lisp/www.cliki.net/Binghe.html | 52 - clones/lisp/www.cliki.net/BioBike.html | 51 - clones/lisp/www.cliki.net/Bioinformatics.html | 76 - clones/lisp/www.cliki.net/Birch.html | 51 - .../Bits from Mark Triggs's .emacs.html | 99 -- clones/lisp/www.cliki.net/Blocky.html | 52 - clones/lisp/www.cliki.net/Blowfish.html | 63 - clones/lisp/www.cliki.net/Bobstopper.html | 52 - clones/lisp/www.cliki.net/Bonn.html | 52 - clones/lisp/www.cliki.net/Bordeaux-FFT.html | 51 - .../lisp/www.cliki.net/Bordeaux-Threads.html | 52 - .../lisp/www.cliki.net/Bordeaux-threads.html | 52 - clones/lisp/www.cliki.net/Boris Smilga.html | 51 - clones/lisp/www.cliki.net/Bouquet.html | 51 - clones/lisp/www.cliki.net/Brad Lucas.html | 52 - .../www.cliki.net/Bradford W. Miller.html | 52 - .../lisp/www.cliki.net/Brainfuck in Lisp.html | 51 - .../Brian Crowder of Rutherfordton nc.html | 52 - clones/lisp/www.cliki.net/Brian Crowder.html | 51 - clones/lisp/www.cliki.net/Brian Cully.html | 52 - clones/lisp/www.cliki.net/Brian Deaton.html | 52 - clones/lisp/www.cliki.net/Brian Gaeke.html | 51 - .../lisp/www.cliki.net/Brian Mastenbrook.html | 51 - .../lisp/www.cliki.net/Brian Spilsbury.html | 52 - clones/lisp/www.cliki.net/BrianRowe.html | 51 - clones/lisp/www.cliki.net/BrianTRice.html | 51 - clones/lisp/www.cliki.net/Bruce Durling.html | 51 - clones/lisp/www.cliki.net/Bruce Nagel.html | 52 - clones/lisp/www.cliki.net/Bruno Haible.html | 52 - clones/lisp/www.cliki.net/Buclet.html | 51 - clones/lisp/www.cliki.net/Buildapp.html | 53 - clones/lisp/www.cliki.net/Buildnode.html | 52 - clones/lisp/www.cliki.net/Business.html | 54 - clones/lisp/www.cliki.net/C++.html | 104 -- clones/lisp/www.cliki.net/C-Mera.html | 52 - clones/lisp/www.cliki.net/C.html | 104 -- .../C3 superclass linearization MRO.html | 149 -- clones/lisp/www.cliki.net/CAD.html | 84 -- .../lisp/www.cliki.net/CAPTURED-STREAM.html | 52 - clones/lisp/www.cliki.net/CCL.html | 51 - clones/lisp/www.cliki.net/CCLAN.html | 86 -- clones/lisp/www.cliki.net/CCLDOC.html | 52 - clones/lisp/www.cliki.net/CCLDoc.html | 52 - clones/lisp/www.cliki.net/CDR.html | 51 - clones/lisp/www.cliki.net/CFFI-SDL.html | 52 - clones/lisp/www.cliki.net/CFFI.html | 51 - clones/lisp/www.cliki.net/CGI.html | 84 -- clones/lisp/www.cliki.net/CIM.html | 51 - clones/lisp/www.cliki.net/CIRCUIT-SIM.html | 51 - .../lisp/www.cliki.net/CL Enumerations.html | 52 - clones/lisp/www.cliki.net/CL SBML.html | 52 - clones/lisp/www.cliki.net/CL-ACE.html | 52 - clones/lisp/www.cliki.net/CL-API.html | 51 - clones/lisp/www.cliki.net/CL-BibTeX.html | 51 - clones/lisp/www.cliki.net/CL-CONTAINERS.html | 88 -- clones/lisp/www.cliki.net/CL-CSV.html | 64 - clones/lisp/www.cliki.net/CL-CTRNN.html | 52 - clones/lisp/www.cliki.net/CL-CXX.html | 51 - clones/lisp/www.cliki.net/CL-Containers.html | 88 -- .../CL-DATA-FORMAT-VALIDATION.html | 51 - clones/lisp/www.cliki.net/CL-DBI.html | 51 - clones/lisp/www.cliki.net/CL-DBUS.html | 52 - clones/lisp/www.cliki.net/CL-DIFFLIB.html | 51 - clones/lisp/www.cliki.net/CL-DNA.html | 51 - clones/lisp/www.cliki.net/CL-DOCUTILS.html | 57 - clones/lisp/www.cliki.net/CL-DTYPE.html | 67 - .../lisp/www.cliki.net/CL-EARLEY-PARSER.html | 100 -- clones/lisp/www.cliki.net/CL-EC2.html | 52 - clones/lisp/www.cliki.net/CL-ECMA-48.html | 54 - clones/lisp/www.cliki.net/CL-EMB.html | 52 - clones/lisp/www.cliki.net/CL-Emacs.html | 123 -- clones/lisp/www.cliki.net/CL-FAD.html | 54 - clones/lisp/www.cliki.net/CL-FTP.html | 52 - clones/lisp/www.cliki.net/CL-FUSE.html | 52 - clones/lisp/www.cliki.net/CL-GD.html | 52 - clones/lisp/www.cliki.net/CL-GODB.html | 52 - clones/lisp/www.cliki.net/CL-Graph.html | 51 - clones/lisp/www.cliki.net/CL-HRAC.html | 67 - clones/lisp/www.cliki.net/CL-HTML-DIFF.html | 51 - clones/lisp/www.cliki.net/CL-HTML-Parse.html | 54 - clones/lisp/www.cliki.net/CL-ID3.html | 126 -- clones/lisp/www.cliki.net/CL-IO-ELF.html | 52 - clones/lisp/www.cliki.net/CL-IO-MOD.html | 51 - clones/lisp/www.cliki.net/CL-IPC.html | 52 - clones/lisp/www.cliki.net/CL-ISBN.html | 51 - clones/lisp/www.cliki.net/CL-JPEG.html | 51 - clones/lisp/www.cliki.net/CL-JSON.html | 51 - clones/lisp/www.cliki.net/CL-JavaScript.html | 51 - clones/lisp/www.cliki.net/CL-LDAP.html | 52 - clones/lisp/www.cliki.net/CL-LEDGER.html | 52 - clones/lisp/www.cliki.net/CL-LIA.html | 53 - clones/lisp/www.cliki.net/CL-Librarian.html | 52 - clones/lisp/www.cliki.net/CL-MD5.html | 55 - clones/lisp/www.cliki.net/CL-MEMCACHED.html | 54 - clones/lisp/www.cliki.net/CL-MIME.html | 63 - clones/lisp/www.cliki.net/CL-MPD.html | 52 - clones/lisp/www.cliki.net/CL-MUPROC.html | 53 - clones/lisp/www.cliki.net/CL-MUSTACHE.html | 51 - clones/lisp/www.cliki.net/CL-Markdown.html | 52 - clones/lisp/www.cliki.net/CL-MediaWiki.html | 72 - clones/lisp/www.cliki.net/CL-NUM-UTILS.html | 61 - clones/lisp/www.cliki.net/CL-Ncurses.html | 51 - clones/lisp/www.cliki.net/CL-ObjC.html | 52 - clones/lisp/www.cliki.net/CL-OpenGL.html | 51 - clones/lisp/www.cliki.net/CL-PACK.html | 61 - .../lisp/www.cliki.net/CL-PACKAGE-LOCKS.html | 57 - clones/lisp/www.cliki.net/CL-PDF.html | 51 - clones/lisp/www.cliki.net/CL-PLOT.html | 60 - clones/lisp/www.cliki.net/CL-PLUS-SSL.html | 52 - clones/lisp/www.cliki.net/CL-PNG.html | 51 - clones/lisp/www.cliki.net/CL-PPCRE.html | 51 - clones/lisp/www.cliki.net/CL-Pango.html | 53 - clones/lisp/www.cliki.net/CL-RCFiles.html | 60 - clones/lisp/www.cliki.net/CL-RDFXML.html | 51 - clones/lisp/www.cliki.net/CL-REACTIVE.html | 52 - clones/lisp/www.cliki.net/CL-READLINE.html | 139 -- clones/lisp/www.cliki.net/CL-RFC2047.html | 51 - clones/lisp/www.cliki.net/CL-RIFF.html | 52 - clones/lisp/www.cliki.net/CL-S3.html | 78 - clones/lisp/www.cliki.net/CL-SDL.html | 64 - clones/lisp/www.cliki.net/CL-SES4.html | 52 - clones/lisp/www.cliki.net/CL-SMTP.html | 93 -- clones/lisp/www.cliki.net/CL-SOAP.html | 51 - clones/lisp/www.cliki.net/CL-Selenium.html | 51 - clones/lisp/www.cliki.net/CL-Sendmail.html | 51 - clones/lisp/www.cliki.net/CL-Sokoban.html | 52 - .../lisp/www.cliki.net/CL-SpiderMonkey.html | 51 - clones/lisp/www.cliki.net/CL-TELNETD.html | 51 - clones/lisp/www.cliki.net/CL-TLS.html | 58 - clones/lisp/www.cliki.net/CL-UNIFICATION.html | 82 - clones/lisp/www.cliki.net/CL-UTILITIES.html | 72 - clones/lisp/www.cliki.net/CL-V4L2.html | 51 - clones/lisp/www.cliki.net/CL-VECTORS.html | 52 - clones/lisp/www.cliki.net/CL-WEBDAV.html | 51 - clones/lisp/www.cliki.net/CL-WHO.html | 52 - clones/lisp/www.cliki.net/CL-WIKI.html | 51 - clones/lisp/www.cliki.net/CL-Weblocks.html | 51 - clones/lisp/www.cliki.net/CL-Wiki.html | 51 - clones/lisp/www.cliki.net/CL-Wise.html | 51 - clones/lisp/www.cliki.net/CL-XML.html | 63 - clones/lisp/www.cliki.net/CL-Yacc.html | 52 - clones/lisp/www.cliki.net/CL-ZEROCONF.html | 52 - clones/lisp/www.cliki.net/CLACHE.html | 52 - clones/lisp/www.cliki.net/CLAD.html | 53 - clones/lisp/www.cliki.net/CLAIM.html | 52 - clones/lisp/www.cliki.net/CLAW.html | 53 - clones/lisp/www.cliki.net/CLAWK.html | 51 - clones/lisp/www.cliki.net/CLCB.html | 51 - clones/lisp/www.cliki.net/CLCE.html | 51 - clones/lisp/www.cliki.net/CLDB.html | 52 - clones/lisp/www.cliki.net/CLDOC.html | 52 - clones/lisp/www.cliki.net/CLEE.html | 52 - clones/lisp/www.cliki.net/CLERIC.html | 52 - clones/lisp/www.cliki.net/CLEWS.html | 52 - clones/lisp/www.cliki.net/CLFSWM.html | 61 - clones/lisp/www.cliki.net/CLG.html | 65 - clones/lisp/www.cliki.net/CLHP.html | 55 - clones/lisp/www.cliki.net/CLHS.html | 75 - clones/lisp/www.cliki.net/CLIM-desktop.html | 123 -- clones/lisp/www.cliki.net/CLIM.html | 110 -- clones/lisp/www.cliki.net/CLIO.html | 52 - clones/lisp/www.cliki.net/CLISP-Shell.html | 240 --- clones/lisp/www.cliki.net/CLISP.html | 84 -- clones/lisp/www.cliki.net/CLJWT.html | 52 - clones/lisp/www.cliki.net/CLLIB.html | 158 -- clones/lisp/www.cliki.net/CLM.html | 54 - clones/lisp/www.cliki.net/CLNUPlot.html | 51 - clones/lisp/www.cliki.net/CLOCC-PORT.html | 53 - clones/lisp/www.cliki.net/CLOCC.html | 89 -- clones/lisp/www.cliki.net/CLOG.html | 51 - clones/lisp/www.cliki.net/CLON.html | 53 - clones/lisp/www.cliki.net/CLORB.html | 57 - clones/lisp/www.cliki.net/CLOS.html | 126 -- clones/lisp/www.cliki.net/CLOSER-MOP.html | 51 - clones/lisp/www.cliki.net/CLPM.html | 82 - clones/lisp/www.cliki.net/CLPMR.html | 51 - clones/lisp/www.cliki.net/CLPfAI.html | 547 ------- clones/lisp/www.cliki.net/CLPython.html | 51 - clones/lisp/www.cliki.net/CLSQL-ORM.html | 52 - clones/lisp/www.cliki.net/CLSQL-helper.html | 52 - clones/lisp/www.cliki.net/CLSQL.html | 91 -- clones/lisp/www.cliki.net/CLSS.html | 53 - clones/lisp/www.cliki.net/CLTIO.html | 52 - clones/lisp/www.cliki.net/CLTL2.html | 67 - clones/lisp/www.cliki.net/CLUE.html | 54 - clones/lisp/www.cliki.net/CLUS.html | 52 - clones/lisp/www.cliki.net/CLUnit.html | 65 - clones/lisp/www.cliki.net/CLUnit2.html | 52 - clones/lisp/www.cliki.net/CLVM.html | 134 -- clones/lisp/www.cliki.net/CLWeb.html | 51 - clones/lisp/www.cliki.net/CLX Manual.html | 51 - clones/lisp/www.cliki.net/CLX-CURSOR.html | 52 - clones/lisp/www.cliki.net/CLX-TRUETYPE.html | 52 - clones/lisp/www.cliki.net/CLX.html | 110 -- clones/lisp/www.cliki.net/CLXS.html | 92 -- clones/lisp/www.cliki.net/CLiCC.html | 52 - clones/lisp/www.cliki.net/CLiMP.html | 52 - clones/lisp/www.cliki.net/CLiki Bugs.html | 51 - clones/lisp/www.cliki.net/CLiki Content.html | 93 -- clones/lisp/www.cliki.net/CLiki Sandbox.html | 110 -- clones/lisp/www.cliki.net/CLiki Style.html | 157 -- clones/lisp/www.cliki.net/CLiki.html | 117 -- clones/lisp/www.cliki.net/CLimacs.html | 52 - clones/lisp/www.cliki.net/CLinch.html | 52 - clones/lisp/www.cliki.net/CLisp.html | 84 -- clones/lisp/www.cliki.net/CLplusJ.html | 51 - clones/lisp/www.cliki.net/CLtL2.html | 67 - clones/lisp/www.cliki.net/CMS.html | 64 - .../lisp/www.cliki.net/CMU AI Repository.html | 62 - .../lisp/www.cliki.net/CMU AI repository.html | 62 - clones/lisp/www.cliki.net/CMUCL Hints.html | 291 ---- .../lisp/www.cliki.net/CMUCL on Debian.html | 53 - clones/lisp/www.cliki.net/CMUCL.html | 106 -- clones/lisp/www.cliki.net/COLLECTING.html | 114 -- .../COM.INFORMATIMAGO.SUSV3.html | 52 - clones/lisp/www.cliki.net/COMFY-6502.html | 51 - clones/lisp/www.cliki.net/COMPOSE.html | 82 - .../lisp/www.cliki.net/COMPUTABLE-REALS.html | 51 - clones/lisp/www.cliki.net/CONSPACK.html | 62 - clones/lisp/www.cliki.net/CORBA.html | 62 - clones/lisp/www.cliki.net/CPS.html | 514 ------- clones/lisp/www.cliki.net/CRACL.html | 51 - clones/lisp/www.cliki.net/CRC-32.html | 53 - clones/lisp/www.cliki.net/CSS-Selectors.html | 52 - clones/lisp/www.cliki.net/CSS.html | 72 - clones/lisp/www.cliki.net/CSV (library).html | 51 - clones/lisp/www.cliki.net/CSV.html | 86 -- clones/lisp/www.cliki.net/CXML.html | 66 - clones/lisp/www.cliki.net/Calispel.html | 51 - .../lisp/www.cliki.net/Case sensitivity.html | 51 - clones/lisp/www.cliki.net/Caveman.html | 58 - clones/lisp/www.cliki.net/Cedilla.html | 51 - clones/lisp/www.cliki.net/Cells.html | 125 -- clones/lisp/www.cliki.net/Celtk.html | 51 - clones/lisp/www.cliki.net/Cerberus.html | 52 - clones/lisp/www.cliki.net/Chameleon.html | 51 - clones/lisp/www.cliki.net/ChanL.html | 51 - .../www.cliki.net/Character encoding.html | 76 - .../lisp/www.cliki.net/Charles Stewart.html | 53 - clones/lisp/www.cliki.net/CheckL.html | 53 - clones/lisp/www.cliki.net/Chemboy.html | 114 -- clones/lisp/www.cliki.net/Chipz.html | 51 - clones/lisp/www.cliki.net/Chirp.html | 53 - clones/lisp/www.cliki.net/Chris Capel.html | 52 - .../lisp/www.cliki.net/Christian Lynbech.html | 51 - clones/lisp/www.cliki.net/Christophe.html | 52 - .../www.cliki.net/Christopher Browne.html | 51 - .../www.cliki.net/Chun Tian (binghe).html | 51 - clones/lisp/www.cliki.net/Chunga.html | 51 - .../Cl-BUNNY - RabbitMQ Client.html | 65 - clones/lisp/www.cliki.net/Clack.html | 52 - clones/lisp/www.cliki.net/Clasp.html | 64 - clones/lisp/www.cliki.net/Clavier.html | 52 - clones/lisp/www.cliki.net/Cldoc.html | 52 - clones/lisp/www.cliki.net/Cletris.html | 52 - clones/lisp/www.cliki.net/Clickr.html | 56 - clones/lisp/www.cliki.net/Cliconv.html | 52 - .../lisp/www.cliki.net/Clifford Thompson.html | 51 - clones/lisp/www.cliki.net/Climacs.html | 52 - clones/lisp/www.cliki.net/Climc.html | 52 - clones/lisp/www.cliki.net/Climon.html | 52 - clones/lisp/www.cliki.net/Clint Moore.html | 51 - clones/lisp/www.cliki.net/Clip.html | 53 - clones/lisp/www.cliki.net/Clisp.html | 84 -- clones/lisp/www.cliki.net/Clobber.html | 51 - clones/lisp/www.cliki.net/Clocc.html | 89 -- clones/lisp/www.cliki.net/Clon.html | 53 - clones/lisp/www.cliki.net/Closer to MOP.html | 52 - .../www.cliki.net/CloserLookAtCharacters.html | 151 -- .../www.cliki.net/CloserLookAtHemlock.html | 78 - .../www.cliki.net/CloserLookAtSyntax.html | 165 -- clones/lisp/www.cliki.net/Closette.html | 52 - clones/lisp/www.cliki.net/Closure-html.html | 68 - clones/lisp/www.cliki.net/Closure.html | 68 - clones/lisp/www.cliki.net/Clot.html | 51 - clones/lisp/www.cliki.net/Clouseau.html | 51 - clones/lisp/www.cliki.net/Clozure.html | 51 - clones/lisp/www.cliki.net/Clss.html | 53 - clones/lisp/www.cliki.net/Cmucl.html | 106 -- clones/lisp/www.cliki.net/Cobstor.html | 52 - clones/lisp/www.cliki.net/Cocoa.html | 61 - .../lisp/www.cliki.net/Coding Convention.html | 62 - clones/lisp/www.cliki.net/Colleen.html | 53 - .../www.cliki.net/Common Lisp Controller.html | 52 - .../Common Lisp GTK-Server Wrapper.html | 52 - .../Common Lisp Implementation.html | 220 --- ...sp Library Audience Expansion Toolkit.html | 51 - .../lisp/www.cliki.net/Common Lisp Music.html | 69 - .../Common Lisp Persistency Manager.html | 52 - .../www.cliki.net/Common Lisp Reasoner.html | 51 - .../www.cliki.net/Common Lisp Recipes.html | 74 - .../www.cliki.net/Common Lisp Utilities.html | 92 -- .../Common Lisp and gnuplot.html | 77 - .../Common Lisp implementation.html | 220 --- .../www.cliki.net/Common Lisp utilities.html | 92 -- clones/lisp/www.cliki.net/Common Lisp.html | 92 -- .../www.cliki.net/Common Music Notation.html | 53 - clones/lisp/www.cliki.net/Common Music.html | 51 - .../Common lisp implementation.html | 220 --- .../www.cliki.net/Common-Lisp-Controller.html | 85 -- .../lisp/www.cliki.net/Common-Lisp.net.html | 51 - .../www.cliki.net/CommonLispPrevalence.html | 66 - clones/lisp/www.cliki.net/CommonQt.html | 51 - clones/lisp/www.cliki.net/Community.html | 92 -- clones/lisp/www.cliki.net/Compo.html | 51 - clones/lisp/www.cliki.net/Compression.html | 92 -- .../www.cliki.net/Concrete-Syntax-Tree.html | 52 - clones/lisp/www.cliki.net/Concurrency.html | 250 ---- clones/lisp/www.cliki.net/Conference.html | 120 -- clones/lisp/www.cliki.net/Configuration.html | 92 -- clones/lisp/www.cliki.net/Conrad Barski.html | 52 - clones/lisp/www.cliki.net/Consfigurator.html | 52 - clones/lisp/www.cliki.net/Consolidation.html | 70 - clones/lisp/www.cliki.net/Context Lite.html | 51 - clones/lisp/www.cliki.net/ContextL.html | 51 - .../www.cliki.net/Convenience library.html | 244 --- clones/lisp/www.cliki.net/Corba.html | 62 - clones/lisp/www.cliki.net/CoreServer.html | 78 - .../www.cliki.net/Corman Common Lisp.html | 52 - clones/lisp/www.cliki.net/Cornel.html | 51 - .../lisp/www.cliki.net/Cosmin Stejerean.html | 54 - .../lisp/www.cliki.net/Craig Brozefsky.html | 73 - clones/lisp/www.cliki.net/Craig Lanning.html | 71 - .../www.cliki.net/Creating Executables.html | 98 -- clones/lisp/www.cliki.net/Cryptography.html | 168 --- clones/lisp/www.cliki.net/Curl.html | 56 - .../Current recommended libraries.html | 284 ---- clones/lisp/www.cliki.net/Cusp.html | 51 - clones/lisp/www.cliki.net/Cyclosis.html | 52 - clones/lisp/www.cliki.net/Cygwin.html | 51 - clones/lisp/www.cliki.net/Cyrus Harmon.html | 90 -- clones/lisp/www.cliki.net/D.html | 53 - clones/lisp/www.cliki.net/DBC.html | 52 - clones/lisp/www.cliki.net/DECIMAL-NUMBER.html | 76 - clones/lisp/www.cliki.net/DEFINER.html | 59 - clones/lisp/www.cliki.net/DEFLATE.html | 51 - clones/lisp/www.cliki.net/DEFLEXER.html | 51 - clones/lisp/www.cliki.net/DEXADOR.html | 51 - clones/lisp/www.cliki.net/DFSG.html | 53 - clones/lisp/www.cliki.net/DOM.html | 68 - clones/lisp/www.cliki.net/DRAKMA.html | 53 - clones/lisp/www.cliki.net/DTP Prover.html | 53 - clones/lisp/www.cliki.net/Dan Moniz.html | 51 - clones/lisp/www.cliki.net/DanMuller.html | 52 - clones/lisp/www.cliki.net/Dandelion.html | 52 - clones/lisp/www.cliki.net/Daniel Barlow.html | 72 - .../lisp/www.cliki.net/Daniel Kochmański.html | 52 - clones/lisp/www.cliki.net/Daniel Lowe.html | 51 - clones/lisp/www.cliki.net/Daniel Weinreb.html | 51 - clones/lisp/www.cliki.net/Darian Lanx.html | 51 - clones/lisp/www.cliki.net/Darwin.html | 51 - clones/lisp/www.cliki.net/Data Structure.html | 289 ---- clones/lisp/www.cliki.net/Data formats.html | 535 ------- clones/lisp/www.cliki.net/Data structure.html | 289 ---- .../DataMiningTools Lisp slides.html | 95 -- clones/lisp/www.cliki.net/Database.html | 369 ----- clones/lisp/www.cliki.net/Dataflow.html | 72 - clones/lisp/www.cliki.net/Date-Calc.html | 52 - clones/lisp/www.cliki.net/Datoura.html | 57 - clones/lisp/www.cliki.net/Dave Cooper.html | 51 - clones/lisp/www.cliki.net/Dave Pearson.html | 70 - clones/lisp/www.cliki.net/Dave Warner.html | 52 - .../lisp/www.cliki.net/David A. Wheeler.html | 51 - clones/lisp/www.cliki.net/David Botton.html | 51 - clones/lisp/www.cliki.net/David Golden.html | 52 - clones/lisp/www.cliki.net/David Lindes.html | 51 - clones/lisp/www.cliki.net/David Mullen.html | 51 - clones/lisp/www.cliki.net/David O'Toole.html | 51 - clones/lisp/www.cliki.net/David Owen.html | 62 - clones/lisp/www.cliki.net/David Steuber.html | 53 - clones/lisp/www.cliki.net/David_Douthitt.html | 68 - clones/lisp/www.cliki.net/Debian Package.html | 88 -- clones/lisp/www.cliki.net/Debian package.html | 88 -- clones/lisp/www.cliki.net/Debian.html | 177 --- clones/lisp/www.cliki.net/DebianIRC.html | 54 - clones/lisp/www.cliki.net/Debugging.html | 104 -- clones/lisp/www.cliki.net/Decimals.html | 86 -- clones/lisp/www.cliki.net/Declt.html | 74 - clones/lisp/www.cliki.net/Demyltify.html | 51 - .../www.cliki.net/Dennis Decker Jensen.html | 51 - clones/lisp/www.cliki.net/Deployment.html | 76 - .../www.cliki.net/Design by contract.html | 60 - clones/lisp/www.cliki.net/Development.html | 657 -------- clones/lisp/www.cliki.net/Dexador.html | 51 - clones/lisp/www.cliki.net/Didier Verna.html | 64 - .../Difference between JSON libraries.html | 53 - .../lisp/www.cliki.net/Dimitry Gashinsky.html | 52 - clones/lisp/www.cliki.net/Distributed.html | 139 -- clones/lisp/www.cliki.net/Djula.html | 52 - clones/lisp/www.cliki.net/Dmitri Ivanov.html | 61 - clones/lisp/www.cliki.net/Dmitry Zhukov.html | 51 - .../www.cliki.net/Document preparation.html | 128 -- clones/lisp/www.cliki.net/Document.html | 97 -- .../www.cliki.net/Documentation Tool.html | 146 -- .../www.cliki.net/Documentation tool.html | 146 -- clones/lisp/www.cliki.net/Documentation.html | 51 - clones/lisp/www.cliki.net/Donald Fisk.html | 59 - clones/lisp/www.cliki.net/Doors.html | 51 - clones/lisp/www.cliki.net/Doug Tolton.html | 52 - clones/lisp/www.cliki.net/Drakma-async.html | 51 - clones/lisp/www.cliki.net/Drakma.html | 53 - clones/lisp/www.cliki.net/Drew McDermott.html | 52 - clones/lisp/www.cliki.net/Duologue.html | 52 - clones/lisp/www.cliki.net/Dwight Holman.html | 52 - clones/lisp/www.cliki.net/Dynamic ADTs.html | 52 - clones/lisp/www.cliki.net/E-on-CL.html | 51 - clones/lisp/www.cliki.net/ECL.html | 57 - .../lisp/www.cliki.net/ELASTIC-NEWLINE.html | 67 - clones/lisp/www.cliki.net/ELI.html | 51 - clones/lisp/www.cliki.net/ELisp.html | 108 -- clones/lisp/www.cliki.net/EMACS.html | 51 - clones/lisp/www.cliki.net/EMI.html | 61 - clones/lisp/www.cliki.net/EQL.html | 51 - clones/lisp/www.cliki.net/ESRAP.html | 61 - clones/lisp/www.cliki.net/EXPT-MOD.html | 67 - clones/lisp/www.cliki.net/EXTREMUM.html | 78 - clones/lisp/www.cliki.net/Eager Future2.html | 51 - clones/lisp/www.cliki.net/Eager-Future.html | 52 - clones/lisp/www.cliki.net/Eclipse.html | 51 - .../lisp/www.cliki.net/Edgar Goncalves.html | 51 - clones/lisp/www.cliki.net/Edi Weitz.html | 51 - .../Editing Lisp Code with Emacs.html | 151 -- clones/lisp/www.cliki.net/Editor Hints.html | 67 - .../lisp/www.cliki.net/Edward O'Connor.html | 51 - .../lisp/www.cliki.net/Eirik Mikkelsen.html | 51 - clones/lisp/www.cliki.net/Electronics.html | 76 - clones/lisp/www.cliki.net/Elephant.html | 65 - .../www.cliki.net/Emacs customizations.html | 62 - .../Emacs to CL Porting Attempts.html | 79 - clones/lisp/www.cliki.net/Emacs.html | 51 - clones/lisp/www.cliki.net/Enchant.html | 51 - clones/lisp/www.cliki.net/Encline.html | 73 - .../lisp/www.cliki.net/Engelke Eschner.html | 51 - clones/lisp/www.cliki.net/Eos.html | 51 - .../Epilog System and Episodic Logic.html | 51 - clones/lisp/www.cliki.net/Erik Enge.html | 71 - clones/lisp/www.cliki.net/Erik Greenwald.html | 51 - clones/lisp/www.cliki.net/Erik Winkels.html | 64 - clones/lisp/www.cliki.net/Ernestine.html | 52 - clones/lisp/www.cliki.net/Erudite.html | 52 - clones/lisp/www.cliki.net/Erwin J. Prinz.html | 51 - clones/lisp/www.cliki.net/Esrap.html | 61 - clones/lisp/www.cliki.net/Etiquette.html | 73 - .../www.cliki.net/Eugene Zaikonnikov.html | 52 - ...opean Common Lisp Meeting, April 2005.html | 51 - ...opean Common Lisp Meeting, April 2006.html | 51 - ...opean Common Lisp Meeting, April 2008.html | 51 - .../European LISP and Scheme Workshop.html | 60 - .../European Lisp Symposium 2009.html | 52 - .../European Lisp and Scheme Workshop.html | 60 - clones/lisp/www.cliki.net/Exercises.html | 126 -- .../Exporting Struct-Related Functions.html | 56 - clones/lisp/www.cliki.net/Express Engine.html | 52 - clones/lisp/www.cliki.net/Exscribe.html | 55 - .../www.cliki.net/Extension webactions.html | 303 ---- clones/lisp/www.cliki.net/F2CL.html | 51 - clones/lisp/www.cliki.net/FAQ.html | 80 - clones/lisp/www.cliki.net/FEMLISP.html | 51 - clones/lisp/www.cliki.net/FFA.html | 52 - clones/lisp/www.cliki.net/FFI.html | 288 ---- clones/lisp/www.cliki.net/FFIGEN.html | 54 - clones/lisp/www.cliki.net/FFT.html | 68 - clones/lisp/www.cliki.net/FILE-TYPES.html | 52 - .../www.cliki.net/FORMAT cheat sheet.html | 94 -- clones/lisp/www.cliki.net/FORMAT.html | 61 - clones/lisp/www.cliki.net/FReT.html | 51 - clones/lisp/www.cliki.net/FSET.html | 65 - clones/lisp/www.cliki.net/FSF.html | 52 - clones/lisp/www.cliki.net/FSVD.html | 52 - clones/lisp/www.cliki.net/FSet.html | 65 - clones/lisp/www.cliki.net/FTP.html | 60 - clones/lisp/www.cliki.net/FTW.html | 51 - clones/lisp/www.cliki.net/FUCC.html | 52 - .../lisp/www.cliki.net/Fabricio Chalub.html | 51 - clones/lisp/www.cliki.net/Factorial.html | 101 -- clones/lisp/www.cliki.net/Fare Rideau.html | 231 --- clones/lisp/www.cliki.net/Fare-matcher.html | 65 - clones/lisp/www.cliki.net/Faré.html | 52 - clones/lisp/www.cliki.net/FastCGI.html | 61 - clones/lisp/www.cliki.net/FastIndex.html | 61 - .../www.cliki.net/Favorite Lisp books.html | 294 ---- clones/lisp/www.cliki.net/Fear of Lisp.html | 54 - clones/lisp/www.cliki.net/Features.html | 346 ----- clones/lisp/www.cliki.net/Felip.html | 52 - clones/lisp/www.cliki.net/Femlisp.html | 51 - clones/lisp/www.cliki.net/Fibonacci.html | 230 --- clones/lisp/www.cliki.net/File Format.html | 220 --- clones/lisp/www.cliki.net/Fileworthy.html | 52 - .../www.cliki.net/Filtered Functions.html | 212 --- clones/lisp/www.cliki.net/Firephp.html | 53 - clones/lisp/www.cliki.net/FiveAM.html | 80 - clones/lisp/www.cliki.net/Flexi-streams.html | 52 - clones/lisp/www.cliki.net/Flexichain.html | 52 - clones/lisp/www.cliki.net/Foil.html | 51 - clones/lisp/www.cliki.net/Fons Haffmans.html | 58 - clones/lisp/www.cliki.net/Foo.html | 54 - clones/lisp/www.cliki.net/Formlets.html | 51 - clones/lisp/www.cliki.net/Forth.html | 57 - clones/lisp/www.cliki.net/Fortran.html | 52 - .../Forward Discrete Cosine Transform.html | 51 - clones/lisp/www.cliki.net/Fract.html | 52 - clones/lisp/www.cliki.net/Fractal hacks.html | 51 - .../lisp/www.cliki.net/Francis Leboutte.html | 51 - .../lisp/www.cliki.net/Francisco Vides.html | 51 - clones/lisp/www.cliki.net/Fred Nicolier.html | 56 - clones/lisp/www.cliki.net/Free Software.html | 51 - clones/lisp/www.cliki.net/Free.html | 52 - clones/lisp/www.cliki.net/FreeBSD.html | 63 - .../www.cliki.net/FriedrichDominicus.html | 70 - clones/lisp/www.cliki.net/Funds.html | 52 - clones/lisp/www.cliki.net/GBBOpen.html | 52 - clones/lisp/www.cliki.net/GBBopen.html | 52 - .../www.cliki.net/GCL ANSI Test Suite.html | 51 - clones/lisp/www.cliki.net/GCL.html | 60 - clones/lisp/www.cliki.net/GECO.html | 52 - clones/lisp/www.cliki.net/GENHASH.html | 70 - clones/lisp/www.cliki.net/GENSYMLET.html | 58 - clones/lisp/www.cliki.net/GLOS.html | 51 - clones/lisp/www.cliki.net/GMane.html | 52 - clones/lisp/www.cliki.net/GNOME.html | 57 - clones/lisp/www.cliki.net/GNU emacs.html | 53 - clones/lisp/www.cliki.net/GNU.html | 51 - clones/lisp/www.cliki.net/GPGME.html | 51 - clones/lisp/www.cliki.net/GPL.html | 288 ---- clones/lisp/www.cliki.net/GPL3.html | 156 -- clones/lisp/www.cliki.net/GRT Raytracer.html | 51 - clones/lisp/www.cliki.net/GSLL.html | 51 - .../GSoC 2011 Parenscript project page.html | 66 - clones/lisp/www.cliki.net/GSoC.html | 80 - clones/lisp/www.cliki.net/GTFL.html | 52 - clones/lisp/www.cliki.net/GTK binding.html | 100 -- clones/lisp/www.cliki.net/GTK-CFFI.html | 72 - clones/lisp/www.cliki.net/GTK.html | 75 - clones/lisp/www.cliki.net/GUD.html | 52 - clones/lisp/www.cliki.net/GUI.html | 276 ---- clones/lisp/www.cliki.net/Gabor Melis.html | 51 - clones/lisp/www.cliki.net/Gambol.html | 51 - clones/lisp/www.cliki.net/Game.html | 176 --- clones/lisp/www.cliki.net/Garnet.html | 93 -- clones/lisp/www.cliki.net/Gary King.html | 101 -- clones/lisp/www.cliki.net/Geiriadur.html | 52 - clones/lisp/www.cliki.net/Gelisp.html | 54 - .../www.cliki.net/Gene Michael Stover.html | 55 - .../www.cliki.net/General accumulator.html | 94 -- clones/lisp/www.cliki.net/Gentoo.html | 96 -- clones/lisp/www.cliki.net/Geoff Cant.html | 51 - clones/lisp/www.cliki.net/Geospatial.html | 77 - .../lisp/www.cliki.net/Getting Started.html | 131 -- .../GettingStartedWithHemlock.html | 83 -- .../lisp/www.cliki.net/Giovanni Gigante.html | 52 - clones/lisp/www.cliki.net/Glade.html | 62 - clones/lisp/www.cliki.net/Gmane.html | 52 - clones/lisp/www.cliki.net/Gnome.html | 57 - clones/lisp/www.cliki.net/Goatee.html | 51 - clones/lisp/www.cliki.net/Goheeca.html | 59 - clones/lisp/www.cliki.net/Gordon.html | 52 - .../lisp/www.cliki.net/Graduate Student.html | 60 - clones/lisp/www.cliki.net/Graph.html | 72 - clones/lisp/www.cliki.net/Grapher-Server.html | 51 - clones/lisp/www.cliki.net/Graphic-Forms.html | 51 - .../lisp/www.cliki.net/Graphics Library.html | 394 ----- .../lisp/www.cliki.net/Graphics Toolkit.html | 51 - .../lisp/www.cliki.net/Graphics library.html | 394 ----- clones/lisp/www.cliki.net/Gray Streams.html | 51 - clones/lisp/www.cliki.net/Gray streams.html | 51 - clones/lisp/www.cliki.net/Greg Pfeil.html | 57 - clones/lisp/www.cliki.net/Gregory Bird.html | 51 - clones/lisp/www.cliki.net/Gsharp.html | 51 - clones/lisp/www.cliki.net/Gsoc.html | 80 - clones/lisp/www.cliki.net/Gtk.html | 75 - .../lisp/www.cliki.net/Gustavo Lacerda.html | 56 - clones/lisp/www.cliki.net/HEΛP.html | 51 - clones/lisp/www.cliki.net/HEΛP.html | 51 - clones/lisp/www.cliki.net/HH-AWS.html | 52 - clones/lisp/www.cliki.net/HT-AJAX.html | 51 - clones/lisp/www.cliki.net/HT-SIMPLE-AJAX.html | 52 - clones/lisp/www.cliki.net/HTML Generator.html | 113 -- clones/lisp/www.cliki.net/HTML Parser.html | 92 -- clones/lisp/www.cliki.net/HTML Template.html | 124 -- clones/lisp/www.cliki.net/HTML generator.html | 113 -- clones/lisp/www.cliki.net/HTML parser.html | 92 -- clones/lisp/www.cliki.net/HTML template.html | 124 -- clones/lisp/www.cliki.net/HTML-TEMPLATE.html | 166 --- clones/lisp/www.cliki.net/HTML-template.html | 166 --- clones/lisp/www.cliki.net/HTML.html | 104 -- clones/lisp/www.cliki.net/HTTP Client.html | 116 -- clones/lisp/www.cliki.net/HTTP Server.html | 120 -- clones/lisp/www.cliki.net/HTTP client.html | 116 -- clones/lisp/www.cliki.net/HTTP server.html | 120 -- clones/lisp/www.cliki.net/HTTPD0.html | 52 - clones/lisp/www.cliki.net/HUNCHENTOOT.html | 76 - .../www.cliki.net/Harald Hanche-Olsen.html | 51 - clones/lisp/www.cliki.net/Harley Gorrell.html | 55 - clones/lisp/www.cliki.net/HaroldoStenger.html | 53 - clones/lisp/www.cliki.net/Hemlock.html | 53 - clones/lisp/www.cliki.net/Henry Baker.html | 58 - clones/lisp/www.cliki.net/Heresy.html | 53 - clones/lisp/www.cliki.net/Hiper.html | 52 - clones/lisp/www.cliki.net/Hoan Ton-That.html | 52 - clones/lisp/www.cliki.net/Humbler.html | 53 - clones/lisp/www.cliki.net/Humor.html | 152 -- clones/lisp/www.cliki.net/Hunchensocket.html | 51 - .../lisp/www.cliki.net/Hunchentoot LSP.html | 53 - clones/lisp/www.cliki.net/Hunchentoot.html | 76 - clones/lisp/www.cliki.net/HyperSpec.html | 51 - clones/lisp/www.cliki.net/Hyperspec-Info.html | 51 - clones/lisp/www.cliki.net/Hyperspec.html | 51 - clones/lisp/www.cliki.net/IAmRasputin.html | 52 - clones/lisp/www.cliki.net/ICanCAD.html | 58 - clones/lisp/www.cliki.net/IDE.html | 134 -- clones/lisp/www.cliki.net/IE3FP.html | 51 - clones/lisp/www.cliki.net/IGS Client.html | 53 - .../www.cliki.net/ILC 2003 Sightseeing.html | 53 - .../www.cliki.net/ILC 2003 sightseeing.html | 53 - clones/lisp/www.cliki.net/ILISP.html | 52 - clones/lisp/www.cliki.net/IMAGO.html | 51 - clones/lisp/www.cliki.net/IMAP.html | 51 - clones/lisp/www.cliki.net/IMCL.html | 52 - clones/lisp/www.cliki.net/IMHO.html | 86 -- clones/lisp/www.cliki.net/IMPS.html | 52 - clones/lisp/www.cliki.net/IOLib.html | 52 - clones/lisp/www.cliki.net/IOlib-POSIX.html | 51 - clones/lisp/www.cliki.net/IOlib.html | 52 - clones/lisp/www.cliki.net/IPC.html | 88 -- clones/lisp/www.cliki.net/IPMI.html | 53 - clones/lisp/www.cliki.net/IRC Quotes.html | 312 ---- clones/lisp/www.cliki.net/IRC.html | 138 -- clones/lisp/www.cliki.net/IRONCLAD.html | 111 -- clones/lisp/www.cliki.net/IRS.html | 52 - clones/lisp/www.cliki.net/ISC.html | 84 -- clones/lisp/www.cliki.net/ITERATE.html | 75 - clones/lisp/www.cliki.net/ITS.html | 51 - clones/lisp/www.cliki.net/Ian Eslick.html | 51 - .../lisp/www.cliki.net/Ignas Mikalajunas.html | 51 - clones/lisp/www.cliki.net/Inaimathi.html | 67 - .../www.cliki.net/Incongruent Methods.html | 51 - clones/lisp/www.cliki.net/Incudine.html | 100 -- clones/lisp/www.cliki.net/Infix.html | 401 ----- .../Infrequently Asked Questions.html | 113 -- clones/lisp/www.cliki.net/Integrate.html | 55 - .../International Lisp Conference 2002.html | 81 - .../International Lisp Conference 2003.html | 105 -- .../International Lisp Conference 2005.html | 129 -- .../International Lisp Conference 2007.html | 52 - .../International Lisp Conference 2009.html | 51 - .../International Lisp Conference 2010.html | 51 - .../www.cliki.net/Internationalization.html | 126 -- clones/lisp/www.cliki.net/Irc.html | 138 -- clones/lisp/www.cliki.net/Ironclad.html | 111 -- .../Issue ADJOIN-SPECIFICATION.html | 81 - .../Issue APPLY-EXAMPLE-WRONG.html | 63 - .../Issue ARRAY-ELEMENT-TYPE-NIL.html | 74 - .../Issue ARRAY-UPGRADING-UNDECIDABLE.html | 75 - .../Issue BUTLAST-DOTTED-LIST.html | 80 - .../Issue CHECK-TYPE-EXAMPLE.html | 79 - ...ssue CLOSE-FILE-OPENED-WITH-SUPERSEDE.html | 82 - .../Issue COMPILER-MACRO-IMPLICIT-BLOCK.html | 94 -- .../Issue DEFCLASS-READER-FUNCTION-NAME.html | 76 - .../Issue DEFCONSTANT-PREVIOUS-VALUE.html | 78 - ...ue DEFGENERIC-METHOD-COMBINATION-NAME.html | 76 - .../Issue DEFGENERIC-MULTIPLE-DECLARE.html | 71 - .../Issue DEFINE-COMPILER-MACRO-DECLINE.html | 94 -- .../Issue DEFINE-CONDITION-DOCUMENTATION.html | 77 - .../Issue DEFINE-CONDITION-SLOT-NAME.html | 79 - .../Issue DEFINE-CONDITION-WRITERS.html | 77 - .../Issue DEFINE-SETF-METHOD.html | 78 - .../www.cliki.net/Issue DEFMACRO-VALUES.html | 179 --- .../Issue DESTRUCTURING-NIL.html | 87 -- ... DIGIT-CHAR-P-NOT-AN-ACTUAL-PREDICATE.html | 86 -- .../www.cliki.net/Issue DO-SEMANTICS.html | 80 - .../Issue EQUAL-CIRCULAR-LIST.html | 78 - .../www.cliki.net/Issue ERROR-EXAMPLE.html | 75 - .../Issue FORMAT-RADIX-COMMACHAR.html | 88 -- .../Issue FORMAT-RADIX-MISSING-RADIX.html | 89 -- .../Issue FORMAT-RADIX-NONINTEGER.html | 76 - .../www.cliki.net/Issue FORMAT-TABULATE.html | 78 - .../www.cliki.net/Issue INCOMPLETE-CLASS.html | 59 - .../Issue LOOP-FINALLY-VARIABLES.html | 76 - .../www.cliki.net/Issue LOOP-WITH-NIL.html | 79 - .../Issue MAKE-INSTANCES-OBSOLETE-SYMBOL.html | 76 - .../Issue MERGE-PREDICATE-CALL.html | 55 - .../Issue PRINT-LENGTH-AND-STRUCTURES.html | 82 - .../Issue PRINTING-ARRAYS-READABLY.html | 81 - .../www.cliki.net/Issue PRINTING-SPACE.html | 86 -- .../Issue PROG2-RETURN-VALUE.html | 94 -- .../Issue READER-MACRO-VALUES.html | 88 -- .../Issue RESTART-CASE-EXAMPLE.html | 67 - clones/lisp/www.cliki.net/Issue SOME.html | 84 -- .../Issue STANDARD-PACKAGE-NICKNAMES.html | 88 -- .../Issue STANDARDIZED-RESTART-NAMES.html | 85 -- .../lisp/www.cliki.net/Issue THE-VALUES.html | 92 -- .../Issue TIME-ALWAYS-PRINTS.html | 70 - .../Issue VALUES-&ALLOW-OTHER-KEYS.html | 77 - ...WITH-HASH-TABLE-ITERATOR-BINDING-TYPE.html | 76 - clones/lisp/www.cliki.net/Issue template.html | 85 -- clones/lisp/www.cliki.net/Issue.html | 241 --- .../Issue: FASL-DISTRIBUTION-BY-DEFAULT.html | 60 - clones/lisp/www.cliki.net/Iterate.html | 75 - .../www.cliki.net/Ivan A. Kudryavtsev.html | 53 - clones/lisp/www.cliki.net/Ivan Toshkov.html | 51 - clones/lisp/www.cliki.net/JACOL.html | 55 - clones/lisp/www.cliki.net/JARW.html | 80 - clones/lisp/www.cliki.net/JCh.html | 51 - clones/lisp/www.cliki.net/JPL-QUEUES.html | 55 - clones/lisp/www.cliki.net/JSCL.html | 63 - clones/lisp/www.cliki.net/JSON.html | 98 -- clones/lisp/www.cliki.net/JSS.html | 52 - clones/lisp/www.cliki.net/Jabberwocky.html | 88 -- clones/lisp/www.cliki.net/Jack Unrue.html | 52 - .../lisp/www.cliki.net/James A. Crippen.html | 59 - clones/lisp/www.cliki.net/James Wright.html | 51 - clones/lisp/www.cliki.net/Jan Hoekstra.html | 61 - clones/lisp/www.cliki.net/Janis Dzerins.html | 51 - clones/lisp/www.cliki.net/Jason Stover.html | 52 - clones/lisp/www.cliki.net/Jatha.html | 66 - clones/lisp/www.cliki.net/Java.html | 108 -- clones/lisp/www.cliki.net/JavaScript.html | 111 -- clones/lisp/www.cliki.net/Javascript.html | 111 -- .../www.cliki.net/Jean-Claude Beaudoin.html | 51 - .../www.cliki.net/Jean-Philippe Paradis.html | 52 - clones/lisp/www.cliki.net/Jeff Bowden.html | 123 -- clones/lisp/www.cliki.net/Jens Grabarske.html | 51 - .../www.cliki.net/Jesper Louis Andersen.html | 51 - clones/lisp/www.cliki.net/Jin-Cheng Guu.html | 51 - clones/lisp/www.cliki.net/Jochen Schmidt.html | 52 - clones/lisp/www.cliki.net/Joey Smith.html | 52 - .../lisp/www.cliki.net/Johannes Grødem.html | 52 - clones/lisp/www.cliki.net/John Connors.html | 52 - clones/lisp/www.cliki.net/John Fremlin.html | 51 - clones/lisp/www.cliki.net/John Landahl.html | 52 - clones/lisp/www.cliki.net/John Leuner.html | 51 - clones/lisp/www.cliki.net/John Maraist.html | 56 - clones/lisp/www.cliki.net/John McCarthy.html | 52 - clones/lisp/www.cliki.net/John Wiseman.html | 51 - clones/lisp/www.cliki.net/Jonathan.html | 51 - clones/lisp/www.cliki.net/Jordan Katz.html | 51 - clones/lisp/www.cliki.net/JosephOswald.html | 52 - clones/lisp/www.cliki.net/Joshua Taylor.html | 51 - .../lisp/www.cliki.net/José María Ruiz.html | 52 - .../Juan Jose Garcia-Ripoll.html | 51 - .../www.cliki.net/Juan M. Bello Rivas.html | 52 - clones/lisp/www.cliki.net/Juho Snellman.html | 53 - .../lisp/www.cliki.net/Julian Stecklina.html | 51 - clones/lisp/www.cliki.net/Juri Pakaste.html | 52 - clones/lisp/www.cliki.net/Jörg Höhle.html | 55 - clones/lisp/www.cliki.net/KCL Family.html | 66 - clones/lisp/www.cliki.net/KDE.html | 51 - clones/lisp/www.cliki.net/KLMNEA.html | 51 - clones/lisp/www.cliki.net/KPAX.html | 52 - clones/lisp/www.cliki.net/KR.html | 54 - .../lisp/www.cliki.net/Kai Grossjohann.html | 54 - clones/lisp/www.cliki.net/Keene.html | 51 - .../www.cliki.net/Keeping up with CLiki.html | 51 - clones/lisp/www.cliki.net/Keith Bauer.html | 52 - clones/lisp/www.cliki.net/Kelly McDonald.html | 51 - clones/lisp/www.cliki.net/Kenneth Dickey.html | 51 - clones/lisp/www.cliki.net/Kenny Tilton.html | 51 - clones/lisp/www.cliki.net/Kevin Raison.html | 51 - clones/lisp/www.cliki.net/Kevin Reid.html | 51 - .../lisp/www.cliki.net/Kevin Rosenberg.html | 56 - clones/lisp/www.cliki.net/Kilian Sprotte.html | 57 - .../Knowledge Representation Systems.html | 89 -- .../lisp/www.cliki.net/Knut Arild Erstad.html | 52 - clones/lisp/www.cliki.net/L4.html | 52 - clones/lisp/www.cliki.net/LALR.html | 51 - clones/lisp/www.cliki.net/LASS.html | 53 - clones/lisp/www.cliki.net/LDAP.html | 64 - clones/lisp/www.cliki.net/LENS.html | 52 - clones/lisp/www.cliki.net/LEXER.html | 77 - clones/lisp/www.cliki.net/LGPL.html | 233 --- clones/lisp/www.cliki.net/LIFT.html | 51 - clones/lisp/www.cliki.net/LIJOS.html | 64 - clones/lisp/www.cliki.net/LISA.html | 52 - clones/lisp/www.cliki.net/LISP-BINARY.html | 51 - clones/lisp/www.cliki.net/LISP.html | 176 --- clones/lisp/www.cliki.net/LISPDEBUG.html | 51 - clones/lisp/www.cliki.net/LISPWORKS.html | 51 - clones/lisp/www.cliki.net/LLA.html | 53 - clones/lisp/www.cliki.net/LLGPL.html | 375 ----- clones/lisp/www.cliki.net/LLVM.html | 58 - clones/lisp/www.cliki.net/LMDB.html | 52 - clones/lisp/www.cliki.net/LML.html | 53 - clones/lisp/www.cliki.net/LML2.html | 51 - clones/lisp/www.cliki.net/LMud.html | 52 - clones/lisp/www.cliki.net/LOCAL-TIME.html | 61 - clones/lisp/www.cliki.net/LSE.html | 64 - clones/lisp/www.cliki.net/LSP.html | 101 -- clones/lisp/www.cliki.net/LTK.html | 52 - clones/lisp/www.cliki.net/LW-ADD-ONS.html | 51 - clones/lisp/www.cliki.net/Land of Lisp.html | 52 - clones/lisp/www.cliki.net/Langband.html | 51 - .../www.cliki.net/Language extension.html | 460 ------ clones/lisp/www.cliki.net/Larry Clapp.html | 51 - clones/lisp/www.cliki.net/Lars Brinkhoff.html | 52 - .../Lars Magne Ingebrigtsen.html | 52 - .../lisp/www.cliki.net/Lawrence Mitchell.html | 51 - clones/lisp/www.cliki.net/Le Sursis.html | 51 - clones/lisp/www.cliki.net/Lem.html | 52 - .../lisp/www.cliki.net/Lennart Staflin.html | 54 - .../lisp/www.cliki.net/Leonardo Varuzza.html | 54 - .../lisp/www.cliki.net/Let Over Lambda.html | 51 - clones/lisp/www.cliki.net/Levenshtein.html | 51 - .../lisp/www.cliki.net/Levente Mészáros.html | 51 - clones/lisp/www.cliki.net/Lexer.html | 77 - clones/lisp/www.cliki.net/Libraries.html | 51 - clones/lisp/www.cliki.net/Library.html | 164 -- .../Libre Software Meeting 2002.html | 52 - .../Libre Software Meeting 2004.html | 112 -- .../Libre Software Meeting 2005.html | 52 - .../Libre Software Meeting 2006.html | 52 - .../www.cliki.net/Libre Software Meeting.html | 68 - clones/lisp/www.cliki.net/License.html | 127 -- clones/lisp/www.cliki.net/Limp.html | 51 - clones/lisp/www.cliki.net/LinJ.html | 56 - .../www.cliki.net/Lindenmayer systems.html | 51 - clones/lisp/www.cliki.net/Linear Algebra.html | 144 -- clones/lisp/www.cliki.net/Linear-algebra.html | 55 - clones/lisp/www.cliki.net/Linedit.html | 79 - clones/lisp/www.cliki.net/Lint.html | 62 - .../www.cliki.net/Linux VLM workarounds.html | 164 -- clones/lisp/www.cliki.net/Linux.html | 80 - clones/lisp/www.cliki.net/Liskell.html | 51 - .../www.cliki.net/Lisp - Next Generation.html | 330 ---- clones/lisp/www.cliki.net/Lisp Books.html | 173 --- clones/lisp/www.cliki.net/Lisp Companies.html | 54 - clones/lisp/www.cliki.net/Lisp History.html | 52 - clones/lisp/www.cliki.net/Lisp IDE.html | 60 - clones/lisp/www.cliki.net/Lisp IRC Bots.html | 104 -- clones/lisp/www.cliki.net/Lisp Irc Bots.html | 104 -- clones/lisp/www.cliki.net/Lisp Machines.html | 83 -- .../www.cliki.net/Lisp Markup Languages.html | 72 - .../lisp/www.cliki.net/Lisp Server Pages.html | 53 - clones/lisp/www.cliki.net/Lisp Videos.html | 184 --- clones/lisp/www.cliki.net/Lisp Web Tales.html | 51 - .../lisp/www.cliki.net/Lisp as a shell.html | 62 - clones/lisp/www.cliki.net/Lisp books.html | 173 --- clones/lisp/www.cliki.net/Lisp in a Box.html | 53 - clones/lisp/www.cliki.net/Lisp machines.html | 83 -- clones/lisp/www.cliki.net/Lisp newbie.html | 103 -- clones/lisp/www.cliki.net/Lisp-SNMP.html | 65 - clones/lisp/www.cliki.net/Lisp-Stat.html | 51 - clones/lisp/www.cliki.net/Lisp.html | 176 --- clones/lisp/www.cliki.net/LispBuilder.html | 85 -- clones/lisp/www.cliki.net/LispDoc.html | 51 - clones/lisp/www.cliki.net/LispEdit.html | 53 - .../www.cliki.net/LispGameDevelopers.html | 180 --- clones/lisp/www.cliki.net/LispGameIssues.html | 89 -- clones/lisp/www.cliki.net/LispIDE.html | 70 - clones/lisp/www.cliki.net/LispLab.html | 65 - clones/lisp/www.cliki.net/LispWorks-UDP.html | 51 - clones/lisp/www.cliki.net/LispWorks.html | 51 - clones/lisp/www.cliki.net/Lispbuilder.html | 85 -- clones/lisp/www.cliki.net/Lispix.html | 51 - clones/lisp/www.cliki.net/Lisplets.html | 51 - clones/lisp/www.cliki.net/Lisppaste.html | 51 - clones/lisp/www.cliki.net/Lispvirt.html | 51 - clones/lisp/www.cliki.net/Lispworks.html | 51 - clones/lisp/www.cliki.net/Lispy.html | 51 - .../www.cliki.net/List Comprehension.html | 89 -- .../www.cliki.net/List comprehension.html | 89 -- .../www.cliki.net/Literate Programming.html | 64 - clones/lisp/www.cliki.net/LoGS.html | 52 - clones/lisp/www.cliki.net/Log4CL.html | 87 -- clones/lisp/www.cliki.net/Log5.html | 51 - clones/lisp/www.cliki.net/Logging.html | 108 -- clones/lisp/www.cliki.net/Loki Davison.html | 51 - clones/lisp/www.cliki.net/Lou Glassy.html | 51 - clones/lisp/www.cliki.net/Lquery.html | 53 - clones/lisp/www.cliki.net/Ltk.html | 52 - clones/lisp/www.cliki.net/Lucerne.html | 63 - clones/lisp/www.cliki.net/Luigi Panzeri.html | 57 - clones/lisp/www.cliki.net/Luke Gorrie.html | 51 - clones/lisp/www.cliki.net/Lycurgus.html | 51 - clones/lisp/www.cliki.net/Lyn Headley.html | 52 - clones/lisp/www.cliki.net/MACRO-HTML.html | 54 - clones/lisp/www.cliki.net/MARCH.html | 51 - clones/lisp/www.cliki.net/MCL.html | 51 - clones/lisp/www.cliki.net/MCLIDE.html | 51 - clones/lisp/www.cliki.net/MCPat.html | 52 - clones/lisp/www.cliki.net/MD5.html | 53 - clones/lisp/www.cliki.net/META.html | 57 - clones/lisp/www.cliki.net/METATILITIES.html | 51 - clones/lisp/www.cliki.net/MGL-GPR.html | 51 - clones/lisp/www.cliki.net/MGL-MAT.html | 51 - clones/lisp/www.cliki.net/MGL-PAX.html | 52 - clones/lisp/www.cliki.net/MGL.html | 51 - clones/lisp/www.cliki.net/MICROLISP.html | 51 - clones/lisp/www.cliki.net/MIME.html | 73 - clones/lisp/www.cliki.net/MIME4CL.html | 51 - clones/lisp/www.cliki.net/MIPS.html | 51 - clones/lisp/www.cliki.net/MIT-LICENSE.html | 66 - clones/lisp/www.cliki.net/MIT-License.html | 66 - clones/lisp/www.cliki.net/MIT-license.html | 66 - clones/lisp/www.cliki.net/MIT.html | 544 ------- clones/lisp/www.cliki.net/MK-DEFSYSTEM.html | 84 -- clones/lisp/www.cliki.net/MKCL.html | 51 - .../www.cliki.net/MOP design patterns.html | 247 --- clones/lisp/www.cliki.net/MOP-features.html | 51 - .../MOP-standards-discussion.html | 77 - clones/lisp/www.cliki.net/MOP.html | 105 -- clones/lisp/www.cliki.net/MPC.html | 52 - clones/lisp/www.cliki.net/MPD4CL.html | 52 - clones/lisp/www.cliki.net/MSL-Test.html | 51 - clones/lisp/www.cliki.net/MT19937.html | 92 -- clones/lisp/www.cliki.net/MW-EQUIV.html | 52 - clones/lisp/www.cliki.net/MacOS X.html | 74 - .../lisp/www.cliki.net/Machine Learning.html | 94 -- .../lisp/www.cliki.net/Macro Characters.html | 186 --- clones/lisp/www.cliki.net/Mad70.html | 51 - clones/lisp/www.cliki.net/Magrathea.html | 51 - clones/lisp/www.cliki.net/Maiden.html | 52 - ...Old CMUCL CLX Work With Magic Cookies.html | 109 -- .../Mandelbrot Set explorer.html | 51 - .../Mandelbrot set explorer.html | 51 - .../lisp/www.cliki.net/Manuel Odendahl.html | 52 - clones/lisp/www.cliki.net/Marc Battyani.html | 58 - clones/lisp/www.cliki.net/Marc Mertens.html | 51 - .../lisp/www.cliki.net/Marco Antoniotti.html | 51 - clones/lisp/www.cliki.net/Marco Baringer.html | 54 - clones/lisp/www.cliki.net/Marco Heisig.html | 67 - clones/lisp/www.cliki.net/Marcus Breiing.html | 52 - .../Mark .html | 51 - clones/lisp/www.cliki.net/Mark Carter.html | 51 - clones/lisp/www.cliki.net/Mark Davidson.html | 52 - clones/lisp/www.cliki.net/Mark Karpov.html | 68 - clones/lisp/www.cliki.net/Mark Simpson.html | 52 - clones/lisp/www.cliki.net/MarkCarter.html | 54 - clones/lisp/www.cliki.net/MarkHoemmen.html | 52 - clones/lisp/www.cliki.net/Markup.html | 68 - clones/lisp/www.cliki.net/Markus Fix.html | 67 - .../lisp/www.cliki.net/Martin Atzmueller.html | 54 - clones/lisp/www.cliki.net/Martin Dengler.html | 53 - clones/lisp/www.cliki.net/MartySchrader.html | 51 - clones/lisp/www.cliki.net/Mason Smith.html | 51 - .../Massimiliano Campagnoli.html | 58 - clones/lisp/www.cliki.net/MatLisp.html | 52 - clones/lisp/www.cliki.net/Mathematics.html | 428 ------ clones/lisp/www.cliki.net/Matt Revelle.html | 51 - clones/lisp/www.cliki.net/Matt Sottile.html | 51 - clones/lisp/www.cliki.net/Matthew Danish.html | 51 - .../lisp/www.cliki.net/Matthew Kennedy.html | 51 - clones/lisp/www.cliki.net/MatthewAstley.html | 51 - .../lisp/www.cliki.net/Matthias Koeppe.html | 52 - clones/lisp/www.cliki.net/Max Mouratov.html | 51 - .../lisp/www.cliki.net/Max Rottenkolber.html | 52 - .../lisp/www.cliki.net/Max-Gerd Retzlaff.html | 51 - clones/lisp/www.cliki.net/MaxPC.html | 52 - clones/lisp/www.cliki.net/Maxima.html | 52 - .../lisp/www.cliki.net/McCLIM Listener.html | 51 - clones/lisp/www.cliki.net/McCLIM.html | 55 - clones/lisp/www.cliki.net/McClim.html | 55 - clones/lisp/www.cliki.net/McPixel.html | 51 - clones/lisp/www.cliki.net/Measures.html | 54 - .../lisp/www.cliki.net/Mersenne Twister.html | 62 - clones/lisp/www.cliki.net/Messaging.html | 88 -- clones/lisp/www.cliki.net/Meta-CVS.html | 51 - clones/lisp/www.cliki.net/Meta.html | 57 - clones/lisp/www.cliki.net/Metatilities.html | 51 - clones/lisp/www.cliki.net/Metering.html | 51 - clones/lisp/www.cliki.net/Michael Bobak.html | 51 - clones/lisp/www.cliki.net/Michael Wolber.html | 52 - clones/lisp/www.cliki.net/Mike Maul.html | 69 - clones/lisp/www.cliki.net/Mike Shaver.html | 51 - .../lisp/www.cliki.net/Misc-Extensions.html | 80 - .../www.cliki.net/Miscellaneous humour.html | 55 - .../Mitch's LISP Mathematical Library.html | 103 -- clones/lisp/www.cliki.net/Mito.html | 51 - clones/lisp/www.cliki.net/Mixalot.html | 51 - .../lisp/www.cliki.net/Modularize-Hooks.html | 52 - .../www.cliki.net/Modularize-Interfaces.html | 52 - clones/lisp/www.cliki.net/Modularize.html | 63 - clones/lisp/www.cliki.net/Moira.html | 51 - clones/lisp/www.cliki.net/Monitoring.html | 68 - clones/lisp/www.cliki.net/Montezuma.html | 59 - .../Monty Python and comp lang lisp.html | 68 - .../lisp/www.cliki.net/Moon, on a stick.html | 85 -- clones/lisp/www.cliki.net/Morn.html | 52 - clones/lisp/www.cliki.net/MorphiCL.html | 51 - clones/lisp/www.cliki.net/Movitz.html | 52 - .../www.cliki.net/Music Mind Machine.html | 58 - clones/lisp/www.cliki.net/Music.html | 177 --- .../lisp/www.cliki.net/NET.QUADIUM.LDAP.html | 52 - .../lisp/www.cliki.net/NET.QUADIUM.LDIF.html | 52 - .../www.cliki.net/NET.QUADIUM.RPC-API.html | 52 - clones/lisp/www.cliki.net/NET4CL.html | 52 - clones/lisp/www.cliki.net/NLISP.html | 53 - clones/lisp/www.cliki.net/NPG.html | 52 - clones/lisp/www.cliki.net/NST.html | 54 - .../www.cliki.net/Named multiple-values.html | 109 -- .../www.cliki.net/Naming conventions.html | 235 --- clones/lisp/www.cliki.net/Nasal Demons.html | 65 - .../Natural Language Processing.html | 100 -- clones/lisp/www.cliki.net/Neil Van Dyke.html | 52 - clones/lisp/www.cliki.net/Neonsquare.html | 51 - clones/lisp/www.cliki.net/NetBSD.html | 52 - clones/lisp/www.cliki.net/NetCLOS.html | 51 - clones/lisp/www.cliki.net/Netfarm.html | 51 - clones/lisp/www.cliki.net/Networking.html | 596 -------- clones/lisp/www.cliki.net/Nick Levine.html | 51 - clones/lisp/www.cliki.net/Nicolas Hafner.html | 51 - clones/lisp/www.cliki.net/Nicolas Neuss.html | 52 - .../lisp/www.cliki.net/Nikodemus Siivola.html | 52 - clones/lisp/www.cliki.net/Nils Glanz.html | 52 - clones/lisp/www.cliki.net/North.html | 53 - clones/lisp/www.cliki.net/Ntccrt.html | 53 - clones/lisp/www.cliki.net/Nuprl.html | 52 - clones/lisp/www.cliki.net/Nyxt.html | 52 - clones/lisp/www.cliki.net/OCML.html | 52 - clones/lisp/www.cliki.net/ODS4CL.html | 55 - clones/lisp/www.cliki.net/OMax.html | 51 - clones/lisp/www.cliki.net/OPENMCL.html | 51 - clones/lisp/www.cliki.net/ORF.html | 55 - clones/lisp/www.cliki.net/ORM.html | 76 - clones/lisp/www.cliki.net/OSC.html | 52 - clones/lisp/www.cliki.net/OSICAT.html | 52 - clones/lisp/www.cliki.net/OWL.html | 98 -- .../www.cliki.net/Object Representation.html | 54 - clones/lisp/www.cliki.net/ObjectStore.html | 104 -- clones/lisp/www.cliki.net/Objective-CL.html | 52 - clones/lisp/www.cliki.net/Obsolete.html | 297 ---- .../lisp/www.cliki.net/Obtain libraries.html | 90 -- clones/lisp/www.cliki.net/Oct.html | 51 - clones/lisp/www.cliki.net/Odd Benchmarks.html | 91 -- clones/lisp/www.cliki.net/Okra.html | 51 - .../lisp/www.cliki.net/Ola Rinta-Koski.html | 51 - clones/lisp/www.cliki.net/Ole Arndt.html | 57 - .../lisp/www.cliki.net/Oliver Markovic.html | 53 - clones/lisp/www.cliki.net/On Lisp.html | 92 -- .../lisp/www.cliki.net/Online Tutorial.html | 155 -- .../lisp/www.cliki.net/Online tutorial.html | 155 -- .../lisp/www.cliki.net/Open Agent Engine.html | 51 - clones/lisp/www.cliki.net/OpenGL.html | 112 -- clones/lisp/www.cliki.net/OpenMCL.html | 51 - clones/lisp/www.cliki.net/OpenMusic.html | 51 - clones/lisp/www.cliki.net/Osicat.html | 52 - clones/lisp/www.cliki.net/Other CLikis.html | 62 - clones/lisp/www.cliki.net/Overlord.html | 52 - clones/lisp/www.cliki.net/PAIP.html | 51 - clones/lisp/www.cliki.net/PARENSCRIPT.html | 77 - clones/lisp/www.cliki.net/PARSE-NUMBER.html | 65 - clones/lisp/www.cliki.net/PCALL.html | 51 - clones/lisp/www.cliki.net/PCL.html | 51 - clones/lisp/www.cliki.net/PCall.html | 51 - .../lisp/www.cliki.net/PERCENT-ENCODING.html | 51 - clones/lisp/www.cliki.net/PLOB!.html | 161 -- clones/lisp/www.cliki.net/PLisp.html | 85 -- clones/lisp/www.cliki.net/PNG.html | 52 - clones/lisp/www.cliki.net/POSE.html | 52 - clones/lisp/www.cliki.net/PRBS.html | 52 - clones/lisp/www.cliki.net/PREPL.html | 61 - clones/lisp/www.cliki.net/PRL.html | 51 - clones/lisp/www.cliki.net/PURI.html | 51 - clones/lisp/www.cliki.net/PURL.html | 51 - ...Specification and Verification System.html | 51 - clones/lisp/www.cliki.net/Paolo Amoroso.html | 52 - clones/lisp/www.cliki.net/ParenScript.html | 77 - .../ParenScriptObjectSystem.html | 65 - clones/lisp/www.cliki.net/Parenscript.html | 77 - .../www.cliki.net/ParenscriptClassicOO.html | 147 -- .../ParenscriptTipsAndTricks.html | 140 -- .../ParenscriptWithApachePHP.html | 91 -- clones/lisp/www.cliki.net/Parser.html | 137 -- .../www.cliki.net/Pascal Bourguignon.html | 53 - .../lisp/www.cliki.net/Pascal Costanza.html | 51 - .../lisp/www.cliki.net/Patrick Anderson.html | 52 - clones/lisp/www.cliki.net/Patrick Stein.html | 53 - clones/lisp/www.cliki.net/Paul Dietz.html | 54 - clones/lisp/www.cliki.net/Paul Foley.html | 51 - clones/lisp/www.cliki.net/Paul Graham.html | 53 - .../www.cliki.net/Performance Benchmarks.html | 542 ------- .../Performance Benchmarks2.html | 281 ---- clones/lisp/www.cliki.net/Performance.html | 105 -- clones/lisp/www.cliki.net/Persistence.html | 89 -- clones/lisp/www.cliki.net/Person.html | 1325 ----------------- clones/lisp/www.cliki.net/Petalisp.html | 52 - .../lisp/www.cliki.net/Peter Buchlovsky.html | 51 - clones/lisp/www.cliki.net/Peter Denno.html | 52 - clones/lisp/www.cliki.net/Peter Eddy.html | 51 - clones/lisp/www.cliki.net/Peter Graves.html | 51 - clones/lisp/www.cliki.net/Peter Keller.html | 53 - clones/lisp/www.cliki.net/Peter S Housel.html | 51 - clones/lisp/www.cliki.net/Peter Scott.html | 62 - clones/lisp/www.cliki.net/Peter Seibel.html | 51 - clones/lisp/www.cliki.net/Peter Szilagyi.html | 52 - .../lisp/www.cliki.net/Peter Van Eynde.html | 56 - clones/lisp/www.cliki.net/Peter Ward.html | 51 - clones/lisp/www.cliki.net/Pg.html | 72 - clones/lisp/www.cliki.net/PgUtils.html | 52 - .../lisp/www.cliki.net/Philippe Brochard.html | 55 - clones/lisp/www.cliki.net/Phorx.html | 51 - clones/lisp/www.cliki.net/Pieter Breed.html | 51 - clones/lisp/www.cliki.net/Pietro Braione.html | 52 - clones/lisp/www.cliki.net/Pinot.html | 51 - .../www.cliki.net/Planet of the Feebs.html | 52 - clones/lisp/www.cliki.net/Plotting.html | 148 -- clones/lisp/www.cliki.net/Plump.html | 53 - clones/lisp/www.cliki.net/PonzuDB.html | 51 - clones/lisp/www.cliki.net/PopLog.html | 53 - clones/lisp/www.cliki.net/Poplog.html | 53 - .../www.cliki.net/Portable CommonLoops.html | 51 - clones/lisp/www.cliki.net/Portable Exit.html | 72 - .../lisp/www.cliki.net/Portable Hemlock.html | 51 - .../lisp/www.cliki.net/Portable-Threads.html | 52 - clones/lisp/www.cliki.net/Portableaserve.html | 52 - clones/lisp/www.cliki.net/Portal.html | 53 - clones/lisp/www.cliki.net/PorterStemmer.html | 51 - clones/lisp/www.cliki.net/PostScript.html | 60 - clones/lisp/www.cliki.net/Postmodern.html | 63 - clones/lisp/www.cliki.net/Postscript.html | 60 - clones/lisp/www.cliki.net/PowerLoom.html | 52 - clones/lisp/www.cliki.net/PowerShell.html | 182 --- .../www.cliki.net/Practical Common Lisp.html | 65 - clones/lisp/www.cliki.net/Pretzil.html | 52 - .../lisp/www.cliki.net/PrevaylerStorage.html | 51 - .../lisp/www.cliki.net/Privacy Statement.html | 57 - .../lisp/www.cliki.net/Programming Tips.html | 129 -- .../www.cliki.net/Programming language.html | 175 --- .../lisp/www.cliki.net/Programming style.html | 85 -- .../Prolog Technology Theorem Prover.html | 52 - clones/lisp/www.cliki.net/Prolog.html | 73 - .../www.cliki.net/Proposed ANSI Changes.html | 127 -- ...sed ANSI Revisions and Clarifications.html | 56 - .../Proposed Extensions To ANSI.html | 112 -- .../Proposed Extensions to ANSI.html | 112 -- clones/lisp/www.cliki.net/Protocol.html | 176 --- clones/lisp/www.cliki.net/PseudoScheme.html | 51 - clones/lisp/www.cliki.net/Public Domain.html | 408 ----- clones/lisp/www.cliki.net/Pupeno.html | 51 - clones/lisp/www.cliki.net/Puri.html | 51 - clones/lisp/www.cliki.net/Purity Test.html | 192 --- clones/lisp/www.cliki.net/Pyffi.html | 51 - .../Python programming language.html | 68 - clones/lisp/www.cliki.net/Python-On-Lisp.html | 51 - clones/lisp/www.cliki.net/Python-on-Lisp.html | 51 - clones/lisp/www.cliki.net/Python.html | 68 - clones/lisp/www.cliki.net/Q-THREAD-POOL.html | 51 - clones/lisp/www.cliki.net/QITAB.html | 52 - clones/lisp/www.cliki.net/Qi.html | 77 - clones/lisp/www.cliki.net/Qlot.html | 51 - clones/lisp/www.cliki.net/Qtools.html | 53 - .../www.cliki.net/Quantile estimator.html | 62 - clones/lisp/www.cliki.net/Quick Arrays.html | 188 --- clones/lisp/www.cliki.net/QuickLisp.html | 65 - clones/lisp/www.cliki.net/QuickProject.html | 52 - .../www.cliki.net/Quicklisp tutorial.html | 51 - clones/lisp/www.cliki.net/Quicklisp.html | 65 - clones/lisp/www.cliki.net/Quickproject.html | 52 - clones/lisp/www.cliki.net/Quickref.html | 52 - .../lisp/www.cliki.net/R Scott McIntire.html | 107 -- clones/lisp/www.cliki.net/R.html | 51 - clones/lisp/www.cliki.net/RCL.html | 51 - clones/lisp/www.cliki.net/RCLG.html | 51 - clones/lisp/www.cliki.net/RDF.html | 105 -- clones/lisp/www.cliki.net/RDNZL.html | 52 - clones/lisp/www.cliki.net/RE.html | 51 - clones/lisp/www.cliki.net/READ-DELIMITED.html | 51 - clones/lisp/www.cliki.net/REGEX.html | 51 - clones/lisp/www.cliki.net/REPL.html | 202 --- .../www.cliki.net/RESOURCE-UTILIZATION.html | 52 - clones/lisp/www.cliki.net/RESTAS.html | 71 - clones/lisp/www.cliki.net/RFC.html | 180 --- clones/lisp/www.cliki.net/RIFF-WAVE.html | 51 - clones/lisp/www.cliki.net/RLX.html | 51 - clones/lisp/www.cliki.net/ROTATE-BYTE.html | 78 - clones/lisp/www.cliki.net/RSS.html | 73 - clones/lisp/www.cliki.net/RSSParser.html | 52 - .../lisp/www.cliki.net/Raffaele Arecchi.html | 51 - clones/lisp/www.cliki.net/Rahul Jain.html | 57 - clones/lisp/www.cliki.net/Ralph Möritz.html | 51 - clones/lisp/www.cliki.net/Reactive.html | 60 - .../lisp/www.cliki.net/Red-Black-trees.html | 56 - clones/lisp/www.cliki.net/RegEx.html | 51 - clones/lisp/www.cliki.net/Regex.html | 51 - .../www.cliki.net/Regional Lisp groups.html | 66 - .../www.cliki.net/Regular Expression.html | 96 -- .../www.cliki.net/Regular expression.html | 96 -- clones/lisp/www.cliki.net/Reini Urban.html | 62 - clones/lisp/www.cliki.net/ReiniUrban.html | 51 - clones/lisp/www.cliki.net/Relational.html | 54 - clones/lisp/www.cliki.net/Repo.html | 51 - clones/lisp/www.cliki.net/Reticule.html | 52 - ...'s Lisp Style Rules [for Common Lisp].html | 588 -------- clones/lisp/www.cliki.net/Richard Newman.html | 51 - clones/lisp/www.cliki.net/Rick Taube.html | 73 - clones/lisp/www.cliki.net/Rob Linwood.html | 51 - clones/lisp/www.cliki.net/Robert Church.html | 63 - clones/lisp/www.cliki.net/Robert Goldman.html | 53 - clones/lisp/www.cliki.net/Robert Marlow.html | 51 - clones/lisp/www.cliki.net/Robert Smith.html | 62 - clones/lisp/www.cliki.net/Robert Strandh.html | 93 -- clones/lisp/www.cliki.net/Robotics.html | 57 - clones/lisp/www.cliki.net/Roger Barraud.html | 62 - .../lisp/www.cliki.net/Roland Kaufmann.html | 82 - clones/lisp/www.cliki.net/RossLonstein.html | 51 - clones/lisp/www.cliki.net/Roswell.html | 51 - clones/lisp/www.cliki.net/Ruby-objects.html | 51 - clones/lisp/www.cliki.net/Rucksack.html | 52 - clones/lisp/www.cliki.net/Ryszard Szopa.html | 53 - clones/lisp/www.cliki.net/S-PROTOBUF.html | 51 - clones/lisp/www.cliki.net/S-XML-RPC.html | 52 - clones/lisp/www.cliki.net/S-XML.html | 61 - clones/lisp/www.cliki.net/S-exp syntax.html | 124 -- clones/lisp/www.cliki.net/SAFER.html | 366 ----- clones/lisp/www.cliki.net/SB-HEAPDUMP.html | 52 - clones/lisp/www.cliki.net/SB-X86-PORTIO.html | 52 - clones/lisp/www.cliki.net/SBCL Internals.html | 51 - clones/lisp/www.cliki.net/SBCL.html | 171 --- clones/lisp/www.cliki.net/SC Language.html | 53 - clones/lisp/www.cliki.net/SCLF.html | 51 - clones/lisp/www.cliki.net/SCOLI.html | 51 - clones/lisp/www.cliki.net/SDL.html | 51 - clones/lisp/www.cliki.net/SEMI-PRECIOUS.html | 64 - clones/lisp/www.cliki.net/SERIES.html | 55 - clones/lisp/www.cliki.net/SHA1.html | 52 - .../www.cliki.net/SHALLOW-COPY-ARRAY.html | 108 -- clones/lisp/www.cliki.net/SHCL.html | 57 - clones/lisp/www.cliki.net/SHUT-IT-DOWN.html | 53 - clones/lisp/www.cliki.net/SICL.html | 52 - clones/lisp/www.cliki.net/SICP.html | 72 - clones/lisp/www.cliki.net/SLIK.html | 66 - clones/lisp/www.cliki.net/SLIMA.html | 52 - clones/lisp/www.cliki.net/SLIME Features.html | 253 ---- clones/lisp/www.cliki.net/SLIME Tips.html | 120 -- clones/lisp/www.cliki.net/SLIME-HOWTO.html | 92 -- clones/lisp/www.cliki.net/SLIME.html | 88 -- clones/lisp/www.cliki.net/SLUG.html | 52 - clones/lisp/www.cliki.net/SNARK.html | 51 - clones/lisp/www.cliki.net/SNMP.html | 60 - clones/lisp/www.cliki.net/SNePS.html | 52 - clones/lisp/www.cliki.net/SOUNDLAB.html | 52 - clones/lisp/www.cliki.net/SPLASH.html | 51 - clones/lisp/www.cliki.net/SPLIT-SEQUENCE.html | 84 -- clones/lisp/www.cliki.net/SPath.html | 52 - clones/lisp/www.cliki.net/SQL.html | 175 --- .../www.cliki.net/SQLite Lisp interface.html | 55 - clones/lisp/www.cliki.net/SRFI.html | 138 -- clones/lisp/www.cliki.net/SSL-CMUCL.html | 51 - clones/lisp/www.cliki.net/SWANK.html | 74 - clones/lisp/www.cliki.net/SWIG.html | 51 - clones/lisp/www.cliki.net/SWINE.html | 53 - clones/lisp/www.cliki.net/SYMTABLE.html | 52 - clones/lisp/www.cliki.net/Sacla.html | 51 - clones/lisp/www.cliki.net/Saluto.html | 109 -- clones/lisp/www.cliki.net/Salza.html | 53 - clones/lisp/www.cliki.net/Salza2.html | 51 - clones/lisp/www.cliki.net/Sbcl.html | 171 --- clones/lisp/www.cliki.net/Schedulers.html | 61 - clones/lisp/www.cliki.net/Scheme.html | 70 - clones/lisp/www.cliki.net/Scheme88.html | 91 -- clones/lisp/www.cliki.net/Science.html | 72 - clones/lisp/www.cliki.net/Scone.html | 52 - .../lisp/www.cliki.net/Scott L. Burson.html | 51 - clones/lisp/www.cliki.net/Scott Williams.html | 51 - clones/lisp/www.cliki.net/Screamer.html | 141 -- clones/lisp/www.cliki.net/Scribble.html | 79 - clones/lisp/www.cliki.net/Sean Champ.html | 51 - clones/lisp/www.cliki.net/SeanRoss.html | 51 - .../lisp/www.cliki.net/Self-Generation.html | 55 - clones/lisp/www.cliki.net/Semantic Web.html | 108 -- clones/lisp/www.cliki.net/Serapeum.html | 51 - clones/lisp/www.cliki.net/Serialization.html | 113 -- clones/lisp/www.cliki.net/Series.html | 55 - clones/lisp/www.cliki.net/Shawn Betts.html | 51 - clones/lisp/www.cliki.net/Sheafhom.html | 51 - clones/lisp/www.cliki.net/Sheeple.html | 52 - clones/lisp/www.cliki.net/Shinmera.html | 51 - clones/lisp/www.cliki.net/Shuffletron.html | 51 - clones/lisp/www.cliki.net/SimLab.html | 52 - clones/lisp/www.cliki.net/SimpSamp.html | 51 - .../lisp/www.cliki.net/Simple 3D viewing.html | 51 - .../lisp/www.cliki.net/Simple-Finalizer.html | 52 - clones/lisp/www.cliki.net/Skippy.html | 51 - clones/lisp/www.cliki.net/Slime.html | 88 -- clones/lisp/www.cliki.net/Slitch.html | 71 - clones/lisp/www.cliki.net/SmackJack.html | 62 - clones/lisp/www.cliki.net/Smart cards.html | 54 - clones/lisp/www.cliki.net/Snooze.html | 52 - clones/lisp/www.cliki.net/Solaris.html | 58 - clones/lisp/www.cliki.net/Solid-engine.html | 51 - clones/lisp/www.cliki.net/Soundex.html | 52 - clones/lisp/www.cliki.net/South.html | 53 - clones/lisp/www.cliki.net/Spam Reversion.html | 51 - clones/lisp/www.cliki.net/Special Slots.html | 99 -- clones/lisp/www.cliki.net/Standards.html | 116 -- clones/lisp/www.cliki.net/Staple.html | 53 - clones/lisp/www.cliki.net/Star Trek.html | 178 --- clones/lisp/www.cliki.net/Statistics.html | 107 -- clones/lisp/www.cliki.net/Stats.html | 51 - clones/lisp/www.cliki.net/Steeldump.html | 53 - clones/lisp/www.cliki.net/Stefan Scholl.html | 57 - .../lisp/www.cliki.net/StefanKamphausen.html | 56 - clones/lisp/www.cliki.net/Stefil.html | 68 - clones/lisp/www.cliki.net/Stencl.html | 73 - .../www.cliki.net/Stephen De Gabrielle.html | 56 - clones/lisp/www.cliki.net/Stephen Horner.html | 51 - clones/lisp/www.cliki.net/Steve Dunham.html | 52 - .../lisp/www.cliki.net/Steve Eichblatt.html | 52 - clones/lisp/www.cliki.net/Stig E Sandø.html | 53 - .../www.cliki.net/Storable Functions.html | 51 - .../lisp/www.cliki.net/StructuredStorage.html | 129 -- clones/lisp/www.cliki.net/StudlyCaps.html | 52 - clones/lisp/www.cliki.net/StumpWM.html | 54 - clones/lisp/www.cliki.net/Stumpwm.html | 54 - clones/lisp/www.cliki.net/Submarine.html | 52 - clones/lisp/www.cliki.net/Sudhir Shenoy.html | 52 - .../Suggested Programming Projects.html | 137 -- clones/lisp/www.cliki.net/Sunil Mishra.html | 51 - .../lisp/www.cliki.net/Surendra Singhi.html | 54 - clones/lisp/www.cliki.net/Surf-Hippo.html | 52 - clones/lisp/www.cliki.net/Susam.html | 70 - .../www.cliki.net/Sven Van Caekenberghe.html | 52 - clones/lisp/www.cliki.net/Swank.html | 74 - clones/lisp/www.cliki.net/Swap-bytes.html | 52 - clones/lisp/www.cliki.net/Swine.html | 53 - .../lisp/www.cliki.net/Switch Date 1980s.html | 56 - .../lisp/www.cliki.net/Switch Date 1990s.html | 56 - .../lisp/www.cliki.net/Switch Date 2000.html | 55 - clones/lisp/www.cliki.net/SxQL.html | 52 - clones/lisp/www.cliki.net/Sycamore.html | 63 - clones/lisp/www.cliki.net/Sykopomp.html | 51 - clones/lisp/www.cliki.net/Symbol-Munger.html | 52 - clones/lisp/www.cliki.net/SymbolicWeb.html | 51 - .../www.cliki.net/System programming.html | 374 ----- clones/lisp/www.cliki.net/TALCL.html | 51 - clones/lisp/www.cliki.net/TEXP.html | 51 - clones/lisp/www.cliki.net/TIMER.html | 52 - clones/lisp/www.cliki.net/TODO List.html | 86 -- clones/lisp/www.cliki.net/TPS.html | 51 - clones/lisp/www.cliki.net/TREES.html | 57 - clones/lisp/www.cliki.net/TRIVIAL-HTTP.html | 52 - clones/lisp/www.cliki.net/TRIVIAL.html | 180 --- clones/lisp/www.cliki.net/Tagger.html | 52 - clones/lisp/www.cliki.net/Tail Recursion.html | 81 - .../Targa Image Loading for Common Lisp.html | 51 - .../www.cliki.net/Tayssir John Gabbour.html | 92 -- clones/lisp/www.cliki.net/Teemu Kalvas.html | 52 - clones/lisp/www.cliki.net/Terminfo.html | 52 - clones/lisp/www.cliki.net/Test Framework.html | 201 --- .../lisp/www.cliki.net/Text Formatting.html | 98 -- clones/lisp/www.cliki.net/Text.html | 581 -------- .../www.cliki.net/The Dying Programmers.html | 54 - clones/lisp/www.cliki.net/The Feebs War.html | 52 - .../www.cliki.net/The Great Macro Debate.html | 57 - clones/lisp/www.cliki.net/The Invaders.html | 51 - clones/lisp/www.cliki.net/The Old Cliki.html | 73 - .../lisp/www.cliki.net/The Regex Coach.html | 51 - .../lisp/www.cliki.net/Theorem Provers.html | 101 -- clones/lisp/www.cliki.net/ThinLisp.html | 51 - clones/lisp/www.cliki.net/Thinlisp.html | 51 - clones/lisp/www.cliki.net/Thomas Atkins.html | 51 - .../lisp/www.cliki.net/Thomas F. Burdick.html | 51 - .../lisp/www.cliki.net/Thomas Stenhaug.html | 51 - clones/lisp/www.cliki.net/Thot.html | 52 - clones/lisp/www.cliki.net/Thread.html | 153 -- .../www.cliki.net/Three Comma Programmer.html | 60 - clones/lisp/www.cliki.net/Tim Moore.html | 52 - .../lisp/www.cliki.net/Time management.html | 54 - clones/lisp/www.cliki.net/Toadstool.html | 51 - clones/lisp/www.cliki.net/Toplevel.html | 53 - clones/lisp/www.cliki.net/Torta.html | 51 - .../lisp/www.cliki.net/Towers of Hanoi.html | 51 - .../Trent Buck's Emacs file.html | 52 - clones/lisp/www.cliki.net/Trivia.html | 51 - clones/lisp/www.cliki.net/Trivial-HTTP.html | 52 - clones/lisp/www.cliki.net/Tunes.html | 52 - .../www.cliki.net/TutorialClispDebugger.html | 155 -- .../TutorialDebuggingDeadLock.html | 162 -- .../TutorialSpecialVariables.html | 93 -- clones/lisp/www.cliki.net/Tyler Eaves.html | 109 -- clones/lisp/www.cliki.net/TypeL.html | 70 - clones/lisp/www.cliki.net/UABCL.html | 52 - .../UCW Tricks and Cookbook.html | 61 - clones/lisp/www.cliki.net/UCW.html | 55 - clones/lisp/www.cliki.net/UFFI.html | 67 - clones/lisp/www.cliki.net/UIOP.html | 52 - clones/lisp/www.cliki.net/UNIX.html | 168 --- clones/lisp/www.cliki.net/URI.html | 120 -- clones/lisp/www.cliki.net/USN Journal.html | 180 --- clones/lisp/www.cliki.net/USOCKET.html | 51 - clones/lisp/www.cliki.net/UUID.html | 52 - .../lisp/www.cliki.net/UfasoftCommonLisp.html | 53 - .../lisp/www.cliki.net/Unicode Support.html | 110 -- .../lisp/www.cliki.net/Unicode and Lisp.html | 63 - .../lisp/www.cliki.net/Unicode support.html | 110 -- clones/lisp/www.cliki.net/Units.html | 204 --- .../lisp/www.cliki.net/Universal-Config.html | 52 - .../www.cliki.net/Unix shell scripting.html | 84 -- clones/lisp/www.cliki.net/Unix.html | 168 --- clones/lisp/www.cliki.net/Unlicense.html | 216 --- clones/lisp/www.cliki.net/Usocket-UDP.html | 79 - clones/lisp/www.cliki.net/Utilities.html | 236 --- clones/lisp/www.cliki.net/Utopiah.html | 53 - clones/lisp/www.cliki.net/VECTO.html | 51 - clones/lisp/www.cliki.net/VLM_on_Linux.html | 144 -- clones/lisp/www.cliki.net/Vacietis.html | 51 - .../lisp/www.cliki.net/Valery Khamenya.html | 119 -- .../lisp/www.cliki.net/Vamsee Kanakala.html | 52 - clones/lisp/www.cliki.net/Vapourware.html | 69 - clones/lisp/www.cliki.net/Vebjorn Ljosa.html | 51 - clones/lisp/www.cliki.net/Vecto.html | 51 - clones/lisp/www.cliki.net/Verbose.html | 53 - clones/lisp/www.cliki.net/Verrazano.html | 52 - .../lisp/www.cliki.net/Version Control.html | 80 - clones/lisp/www.cliki.net/Victor Sovetov.html | 55 - clones/lisp/www.cliki.net/Vim.html | 75 - clones/lisp/www.cliki.net/Virgil.html | 51 - clones/lisp/www.cliki.net/Virtualization.html | 68 - .../lisp/www.cliki.net/Vladimir Sedach.html | 92 -- clones/lisp/www.cliki.net/Volemad.html | 52 - clones/lisp/www.cliki.net/WAAF-CFFI.html | 76 - clones/lisp/www.cliki.net/WCL.html | 52 - .../lisp/www.cliki.net/WITH-UNIQUE-NAMES.html | 90 -- clones/lisp/www.cliki.net/WSCL.html | 52 - .../lisp/www.cliki.net/Warren Wilkinson.html | 57 - clones/lisp/www.cliki.net/Web API.html | 260 ---- clones/lisp/www.cliki.net/Web Framework.html | 188 --- clones/lisp/www.cliki.net/Web.html | 1085 -------------- .../lisp/www.cliki.net/WebSocket server.html | 69 - clones/lisp/www.cliki.net/WeirdIRC.html | 52 - clones/lisp/www.cliki.net/Weyl.html | 61 - clones/lisp/www.cliki.net/Wiki.html | 65 - clones/lisp/www.cliki.net/Wilbur.html | 51 - clones/lisp/www.cliki.net/William Bland.html | 51 - .../www.cliki.net/William Halliburton.html | 51 - .../lisp/www.cliki.net/William Robinson.html | 51 - clones/lisp/www.cliki.net/Wimpie Nortje.html | 51 - clones/lisp/www.cliki.net/Win32.html | 53 - clones/lisp/www.cliki.net/WinCommand.html | 55 - clones/lisp/www.cliki.net/Window Manager.html | 72 - clones/lisp/www.cliki.net/Windows.html | 128 -- clones/lisp/www.cliki.net/Wm Annis.html | 61 - clones/lisp/www.cliki.net/Woo.html | 52 - clones/lisp/www.cliki.net/Wookie.html | 52 - clones/lisp/www.cliki.net/WuWei.html | 65 - .../X-Chat Common Lisp Plugin.html | 51 - clones/lisp/www.cliki.net/X.FDATATYPES.html | 56 - clones/lisp/www.cliki.net/X.LET-STAR.html | 93 -- clones/lisp/www.cliki.net/X11.html | 112 -- clones/lisp/www.cliki.net/XCL.html | 53 - clones/lisp/www.cliki.net/XCVB.html | 51 - clones/lisp/www.cliki.net/XHTMΛ.html | 51 - clones/lisp/www.cliki.net/XIT.html | 52 - clones/lisp/www.cliki.net/XL-Wiki.html | 51 - clones/lisp/www.cliki.net/XML-RPC.html | 51 - clones/lisp/www.cliki.net/XML.html | 221 --- clones/lisp/www.cliki.net/XMLS-Tools.html | 51 - clones/lisp/www.cliki.net/XMLS.html | 60 - clones/lisp/www.cliki.net/XMLisp.html | 53 - clones/lisp/www.cliki.net/XPATH.html | 60 - clones/lisp/www.cliki.net/XPath.html | 60 - clones/lisp/www.cliki.net/XXTEA.html | 192 --- clones/lisp/www.cliki.net/Xelf.html | 52 - clones/lisp/www.cliki.net/YAML.html | 62 - clones/lisp/www.cliki.net/YASON.html | 116 -- clones/lisp/www.cliki.net/YHTML-TEMPLATE.html | 96 -- clones/lisp/www.cliki.net/YHTML-Template.html | 96 -- clones/lisp/www.cliki.net/YTools.html | 56 - clones/lisp/www.cliki.net/Yakov Zaytsev.html | 51 - clones/lisp/www.cliki.net/Yale Haskell.html | 51 - clones/lisp/www.cliki.net/Yarden Katz.html | 51 - clones/lisp/www.cliki.net/YoungLispers.html | 159 -- .../lisp/www.cliki.net/Ystok-Local-Time.html | 55 - clones/lisp/www.cliki.net/Ystok-MD5.html | 54 - clones/lisp/www.cliki.net/Ystok-URI.html | 66 - clones/lisp/www.cliki.net/YstokCard.html | 64 - clones/lisp/www.cliki.net/YstokGrid.html | 105 -- clones/lisp/www.cliki.net/YstokHTML.html | 59 - clones/lisp/www.cliki.net/YstokSQL.html | 113 -- .../lisp/www.cliki.net/Yurii Rashkovskii.html | 55 - clones/lisp/www.cliki.net/ZACL.html | 52 - clones/lisp/www.cliki.net/ZCDB.html | 51 - clones/lisp/www.cliki.net/ZIP.html | 52 - clones/lisp/www.cliki.net/ZLIB.html | 75 - clones/lisp/www.cliki.net/ZPB-EXIF.html | 51 - clones/lisp/www.cliki.net/ZPB-TTF.html | 51 - clones/lisp/www.cliki.net/ZPNG.html | 51 - clones/lisp/www.cliki.net/ZS3.html | 52 - clones/lisp/www.cliki.net/Zach Beane.html | 52 - clones/lisp/www.cliki.net/Zach Smith.html | 52 - clones/lisp/www.cliki.net/Zebu.html | 54 - clones/lisp/www.cliki.net/Zeta-C.html | 51 - clones/lisp/www.cliki.net/a-cl-logger.html | 51 - clones/lisp/www.cliki.net/abcl-jazz.html | 51 - clones/lisp/www.cliki.net/abuse.html | 55 - clones/lisp/www.cliki.net/access.html | 52 - clones/lisp/www.cliki.net/acclaim.html | 54 - clones/lisp/www.cliki.net/acclimation.html | 84 -- clones/lisp/www.cliki.net/accumulators.html | 72 - clones/lisp/www.cliki.net/acl-compat.html | 76 - clones/lisp/www.cliki.net/acl.html | 51 - clones/lisp/www.cliki.net/actors.html | 73 - clones/lisp/www.cliki.net/adler32.html | 52 - .../lisp/www.cliki.net/adopt-subcommands.html | 52 - clones/lisp/www.cliki.net/adopt.html | 52 - clones/lisp/www.cliki.net/adw-charting.html | 52 - clones/lisp/www.cliki.net/aftpd.html | 52 - .../lisp/www.cliki.net/agnostic-lizard.html | 52 - clones/lisp/www.cliki.net/ah2cl.html | 51 - clones/lisp/www.cliki.net/ai.html | 80 - clones/lisp/www.cliki.net/akater.html | 88 -- clones/lisp/www.cliki.net/alexandria.html | 51 - clones/lisp/www.cliki.net/algorithm.html | 168 --- clones/lisp/www.cliki.net/allegroserve.html | 51 - clones/lisp/www.cliki.net/alpaca.html | 51 - .../www.cliki.net/amazon web services.html | 64 - clones/lisp/www.cliki.net/anaphora.html | 86 -- .../www.cliki.net/anaphoric-variants.html | 52 - clones/lisp/www.cliki.net/anardb.html | 53 - ...annual European Lisp Symposiums (ELS).html | 51 - clones/lisp/www.cliki.net/ap5.html | 64 - clones/lisp/www.cliki.net/application.html | 356 ----- clones/lisp/www.cliki.net/april.html | 73 - clones/lisp/www.cliki.net/araneida.html | 195 --- clones/lisp/www.cliki.net/archive.html | 52 - .../www.cliki.net/arduino-experiments.html | 52 - clones/lisp/www.cliki.net/arduino.html | 60 - clones/lisp/www.cliki.net/argdoc.html | 57 - clones/lisp/www.cliki.net/argparse.html | 53 - clones/lisp/www.cliki.net/armish.html | 51 - clones/lisp/www.cliki.net/arnesi.html | 51 - clones/lisp/www.cliki.net/aromyxo.html | 51 - .../lisp/www.cliki.net/array-operations.html | 57 - clones/lisp/www.cliki.net/arrow-macros.html | 52 - clones/lisp/www.cliki.net/asd-generator.html | 52 - .../www.cliki.net/asdf binary locations.html | 82 - clones/lisp/www.cliki.net/asdf-config.html | 52 - .../www.cliki.net/asdf-dependency-grovel.html | 52 - clones/lisp/www.cliki.net/asdf-flv.html | 56 - clones/lisp/www.cliki.net/asdf-install.html | 51 - .../www.cliki.net/asdf-package-system.html | 70 - .../www.cliki.net/asdf-packaging-tools.html | 54 - .../asdf-system-connections.html | 52 - clones/lisp/www.cliki.net/asdf-upgrade.html | 57 - clones/lisp/www.cliki.net/asdf-world.html | 51 - clones/lisp/www.cliki.net/asdf.html | 61 - clones/lisp/www.cliki.net/aserve.html | 51 - clones/lisp/www.cliki.net/asia.html | 55 - clones/lisp/www.cliki.net/astine.html | 52 - clones/lisp/www.cliki.net/atdoc.html | 53 - clones/lisp/www.cliki.net/atom-slime.html | 52 - clones/lisp/www.cliki.net/audio.html | 144 -- clones/lisp/www.cliki.net/avl-tree.html | 52 - clones/lisp/www.cliki.net/axiom.html | 51 - clones/lisp/www.cliki.net/babel-stream.html | 51 - clones/lisp/www.cliki.net/babel.html | 51 - clones/lisp/www.cliki.net/bailout.html | 52 - clones/lisp/www.cliki.net/base64.html | 52 - .../lisp/www.cliki.net/basic-binary-ipc.html | 52 - clones/lisp/www.cliki.net/beirc.html | 185 --- clones/lisp/www.cliki.net/benchmark.html | 104 -- clones/lisp/www.cliki.net/berkeley-db.html | 63 - clones/lisp/www.cliki.net/bike.html | 84 -- clones/lisp/www.cliki.net/binary format.html | 140 -- clones/lisp/www.cliki.net/binary-types.html | 69 - clones/lisp/www.cliki.net/binascii.html | 58 - clones/lisp/www.cliki.net/bind.html | 80 - clones/lisp/www.cliki.net/binghe.html | 52 - clones/lisp/www.cliki.net/binomial-heap.html | 51 - clones/lisp/www.cliki.net/bintype.html | 51 - clones/lisp/www.cliki.net/bioinformatics.html | 76 - clones/lisp/www.cliki.net/bk-tree.html | 51 - clones/lisp/www.cliki.net/bknr-datastore.html | 60 - clones/lisp/www.cliki.net/bknr-impex.html | 51 - clones/lisp/www.cliki.net/bknr-skip-list.html | 52 - clones/lisp/www.cliki.net/bknr-utils.html | 51 - clones/lisp/www.cliki.net/bknr.html | 57 - clones/lisp/www.cliki.net/blackbird.html | 52 - clones/lisp/www.cliki.net/blocky.html | 52 - clones/lisp/www.cliki.net/blog software.html | 64 - clones/lisp/www.cliki.net/bobbin.html | 52 - clones/lisp/www.cliki.net/bocl.html | 59 - clones/lisp/www.cliki.net/boinkmarks.html | 51 - clones/lisp/www.cliki.net/book.html | 98 -- .../lisp/www.cliki.net/bordeaux-threads.html | 52 - clones/lisp/www.cliki.net/boxen.html | 52 - clones/lisp/www.cliki.net/bpm2.html | 51 - clones/lisp/www.cliki.net/bratwurst.html | 52 - clones/lisp/www.cliki.net/bt-semaphore.html | 52 - .../bubble-operator-upwards.html | 52 - clones/lisp/www.cliki.net/buclet.html | 51 - clones/lisp/www.cliki.net/build.html | 84 -- clones/lisp/www.cliki.net/buildapp.html | 53 - clones/lisp/www.cliki.net/bundler.html | 51 - .../lisp/www.cliki.net/burgled-batteries.html | 52 - .../lisp/www.cliki.net/bytecurry.mocks.html | 52 - clones/lisp/www.cliki.net/bytes.html | 51 - clones/lisp/www.cliki.net/c-amplify.html | 51 - clones/lisp/www.cliki.net/c.html | 104 -- clones/lisp/www.cliki.net/c2ffi.html | 51 - clones/lisp/www.cliki.net/cCLan.html | 86 -- clones/lisp/www.cliki.net/cache.html | 72 - clones/lisp/www.cliki.net/cacle.html | 51 - .../lisp/www.cliki.net/call-next-macro.html | 115 -- .../lisp/www.cliki.net/call-with style.html | 52 - .../www.cliki.net/canonicalized-initargs.html | 52 - clones/lisp/www.cliki.net/carrier.html | 52 - .../cartesian-product-switch.html | 52 - clones/lisp/www.cliki.net/caveman.html | 58 - clones/lisp/www.cliki.net/cc-bnc.html | 66 - clones/lisp/www.cliki.net/ccl-compat.html | 52 - clones/lisp/www.cliki.net/ccl.html | 51 - clones/lisp/www.cliki.net/cclan-get.html | 56 - clones/lisp/www.cliki.net/cclan.html | 86 -- clones/lisp/www.cliki.net/cdr_assoc.html | 52 - clones/lisp/www.cliki.net/cells-gtk.html | 52 - clones/lisp/www.cliki.net/cells.html | 125 -- clones/lisp/www.cliki.net/cesdi.html | 52 - clones/lisp/www.cliki.net/cffi-cairo.html | 51 - clones/lisp/www.cliki.net/cffi-clutter.html | 51 - clones/lisp/www.cliki.net/cffi-dirent.html | 51 - clones/lisp/www.cliki.net/cffi-epoll.html | 51 - clones/lisp/www.cliki.net/cffi-errno.html | 51 - clones/lisp/www.cliki.net/cffi-fcntl.html | 51 - clones/lisp/www.cliki.net/cffi-gdbm.html | 51 - clones/lisp/www.cliki.net/cffi-j.html | 54 - clones/lisp/www.cliki.net/cffi-objects.html | 52 - .../cffi-posix Berkeley sockets.html | 54 - .../cffi-posix Linux extensions.html | 54 - .../cffi-posix POSIX headers.html | 72 - clones/lisp/www.cliki.net/cffi-posix.html | 91 -- clones/lisp/www.cliki.net/cffi-redland.html | 52 - clones/lisp/www.cliki.net/cffi-socket.html | 51 - clones/lisp/www.cliki.net/cffi-stat.html | 51 - clones/lisp/www.cliki.net/cffi-stfl.html | 52 - clones/lisp/www.cliki.net/cffi-unistd.html | 51 - clones/lisp/www.cliki.net/cffi-wordnet.html | 51 - clones/lisp/www.cliki.net/cffi.html | 51 - clones/lisp/www.cliki.net/cgn.html | 97 -- clones/lisp/www.cliki.net/ch-image.html | 52 - clones/lisp/www.cliki.net/ch-util.html | 51 - .../www.cliki.net/change-class dangers.html | 72 - clones/lisp/www.cliki.net/changed-stream.html | 67 - clones/lisp/www.cliki.net/chanl.html | 51 - clones/lisp/www.cliki.net/chaos-lisp.html | 52 - .../www.cliki.net/character encoding.html | 76 - clones/lisp/www.cliki.net/charseq.html | 57 - clones/lisp/www.cliki.net/check-it.html | 56 - .../www.cliki.net/chemical-compounds.html | 83 -- clones/lisp/www.cliki.net/chillax.html | 52 - clones/lisp/www.cliki.net/chipz.html | 51 - clones/lisp/www.cliki.net/chronicity.html | 51 - clones/lisp/www.cliki.net/cirCLe.html | 174 --- .../lisp/www.cliki.net/circular-streams.html | 51 - clones/lisp/www.cliki.net/cl-2d.html | 51 - clones/lisp/www.cliki.net/cl-2dsyntax.html | 59 - clones/lisp/www.cliki.net/cl-aa.html | 52 - clones/lisp/www.cliki.net/cl-actors.html | 52 - clones/lisp/www.cliki.net/cl-agraph.html | 52 - .../lisp/www.cliki.net/cl-amazonproduct.html | 51 - clones/lisp/www.cliki.net/cl-ana.html | 63 - clones/lisp/www.cliki.net/cl-annot.html | 58 - clones/lisp/www.cliki.net/cl-anonfun.html | 52 - clones/lisp/www.cliki.net/cl-ansi-term.html | 67 - clones/lisp/www.cliki.net/cl-ansi-text.html | 52 - .../cl-apertium-stream-parser.html | 52 - clones/lisp/www.cliki.net/cl-applescript.html | 51 - clones/lisp/www.cliki.net/cl-ascii-table.html | 52 - .../lisp/www.cliki.net/cl-async-future.html | 64 - clones/lisp/www.cliki.net/cl-async.html | 52 - .../lisp/www.cliki.net/cl-audioscrobbler.html | 52 - clones/lisp/www.cliki.net/cl-autorepo.html | 52 - clones/lisp/www.cliki.net/cl-autowrap.html | 71 - clones/lisp/www.cliki.net/cl-azure.html | 52 - clones/lisp/www.cliki.net/cl-base32.html | 52 - clones/lisp/www.cliki.net/cl-base58.html | 52 - clones/lisp/www.cliki.net/cl-base64.html | 63 - clones/lisp/www.cliki.net/cl-bench.html | 55 - clones/lisp/www.cliki.net/cl-bencode.html | 61 - clones/lisp/www.cliki.net/cl-bibtex.html | 51 - clones/lisp/www.cliki.net/cl-binary-file.html | 52 - clones/lisp/www.cliki.net/cl-binaural.html | 52 - clones/lisp/www.cliki.net/cl-bio.html | 58 - clones/lisp/www.cliki.net/cl-blapack.html | 51 - .../lisp/www.cliki.net/cl-blog-generator.html | 52 - clones/lisp/www.cliki.net/cl-blogger.html | 51 - clones/lisp/www.cliki.net/cl-bloom.html | 52 - clones/lisp/www.cliki.net/cl-btree.html | 71 - clones/lisp/www.cliki.net/cl-buchberger.html | 63 - clones/lisp/www.cliki.net/cl-bzip2.html | 52 - .../lisp/www.cliki.net/cl-cache-tables.html | 52 - clones/lisp/www.cliki.net/cl-cairo2.html | 51 - clones/lisp/www.cliki.net/cl-cbr.html | 51 - clones/lisp/www.cliki.net/cl-cffi-gtk.html | 68 - clones/lisp/www.cliki.net/cl-change-case.html | 51 - clones/lisp/www.cliki.net/cl-charms.html | 51 - .../lisp/www.cliki.net/cl-cidr-notation.html | 52 - .../www.cliki.net/cl-closure-template.html | 53 - clones/lisp/www.cliki.net/cl-clsparse.html | 52 - clones/lisp/www.cliki.net/cl-collider.html | 63 - clones/lisp/www.cliki.net/cl-colors.html | 53 - clones/lisp/www.cliki.net/cl-colors2.html | 60 - clones/lisp/www.cliki.net/cl-comfy-arm.html | 52 - clones/lisp/www.cliki.net/cl-competitive.html | 52 - .../lisp/www.cliki.net/cl-configuration.html | 52 - clones/lisp/www.cliki.net/cl-conspack.html | 57 - clones/lisp/www.cliki.net/cl-cont.html | 52 - clones/lisp/www.cliki.net/cl-containers.html | 88 -- clones/lisp/www.cliki.net/cl-couchdb.html | 51 - clones/lisp/www.cliki.net/cl-covid19.html | 53 - clones/lisp/www.cliki.net/cl-cracklib.html | 51 - clones/lisp/www.cliki.net/cl-crc64.html | 52 - clones/lisp/www.cliki.net/cl-creditcard.html | 52 - clones/lisp/www.cliki.net/cl-cron.html | 51 - clones/lisp/www.cliki.net/cl-css.html | 52 - clones/lisp/www.cliki.net/cl-csv.html | 64 - clones/lisp/www.cliki.net/cl-cuda.html | 52 - clones/lisp/www.cliki.net/cl-cudd.html | 52 - clones/lisp/www.cliki.net/cl-curl.html | 52 - clones/lisp/www.cliki.net/cl-curlex.html | 55 - .../www.cliki.net/cl-custom-hash-table.html | 52 - clones/lisp/www.cliki.net/cl-daemonize.html | 53 - clones/lisp/www.cliki.net/cl-darcs.html | 52 - .../www.cliki.net/cl-date-time-parser.html | 52 - clones/lisp/www.cliki.net/cl-dawg.html | 52 - clones/lisp/www.cliki.net/cl-dbi.html | 51 - clones/lisp/www.cliki.net/cl-devil.html | 52 - clones/lisp/www.cliki.net/cl-difflib.html | 51 - clones/lisp/www.cliki.net/cl-digg.html | 53 - clones/lisp/www.cliki.net/cl-docweaver.html | 52 - clones/lisp/www.cliki.net/cl-dormouse.html | 68 - clones/lisp/www.cliki.net/cl-dot.html | 52 - clones/lisp/www.cliki.net/cl-dsl.html | 59 - clones/lisp/www.cliki.net/cl-echonest.html | 51 - clones/lisp/www.cliki.net/cl-elf.html | 52 - clones/lisp/www.cliki.net/cl-emacs.html | 123 -- clones/lisp/www.cliki.net/cl-emb.html | 52 - clones/lisp/www.cliki.net/cl-en.html | 51 - clones/lisp/www.cliki.net/cl-environment.html | 59 - clones/lisp/www.cliki.net/cl-eshop.html | 52 - clones/lisp/www.cliki.net/cl-etsy.html | 51 - clones/lisp/www.cliki.net/cl-event.html | 52 - clones/lisp/www.cliki.net/cl-events.html | 51 - clones/lisp/www.cliki.net/cl-ewkb.html | 51 - clones/lisp/www.cliki.net/cl-facebook.html | 51 - clones/lisp/www.cliki.net/cl-factoradic.html | 68 - clones/lisp/www.cliki.net/cl-fad.html | 54 - clones/lisp/www.cliki.net/cl-famix.html | 53 - clones/lisp/www.cliki.net/cl-fann.html | 52 - clones/lisp/www.cliki.net/cl-fbclient.html | 61 - clones/lisp/www.cliki.net/cl-fftw3.html | 52 - clones/lisp/www.cliki.net/cl-fix.html | 52 - clones/lisp/www.cliki.net/cl-flow.html | 61 - clones/lisp/www.cliki.net/cl-flowd.html | 57 - clones/lisp/www.cliki.net/cl-fltk.html | 51 - clones/lisp/www.cliki.net/cl-fond.html | 51 - clones/lisp/www.cliki.net/cl-freetype2.html | 51 - clones/lisp/www.cliki.net/cl-fswatch.html | 52 - clones/lisp/www.cliki.net/cl-ftgl.html | 51 - clones/lisp/www.cliki.net/cl-fu.html | 52 - .../lisp/www.cliki.net/cl-fuse-meta-fs.html | 51 - clones/lisp/www.cliki.net/cl-fuse.html | 52 - clones/lisp/www.cliki.net/cl-future.html | 52 - clones/lisp/www.cliki.net/cl-fxml.html | 59 - clones/lisp/www.cliki.net/cl-gcalc.html | 51 - clones/lisp/www.cliki.net/cl-gd.html | 52 - clones/lisp/www.cliki.net/cl-gdata.html | 51 - clones/lisp/www.cliki.net/cl-gendoc.html | 52 - clones/lisp/www.cliki.net/cl-geometry.html | 52 - clones/lisp/www.cliki.net/cl-geonames.html | 52 - clones/lisp/www.cliki.net/cl-gettext.html | 52 - clones/lisp/www.cliki.net/cl-github.html | 51 - clones/lisp/www.cliki.net/cl-gitlab.html | 52 - clones/lisp/www.cliki.net/cl-glfw.html | 51 - clones/lisp/www.cliki.net/cl-glfw3.html | 51 - clones/lisp/www.cliki.net/cl-gpu.html | 52 - clones/lisp/www.cliki.net/cl-gpx.html | 52 - clones/lisp/www.cliki.net/cl-graph.html | 51 - .../lisp/www.cliki.net/cl-graphicsmagick.html | 51 - clones/lisp/www.cliki.net/cl-graphviz.html | 52 - clones/lisp/www.cliki.net/cl-grip.html | 52 - clones/lisp/www.cliki.net/cl-grnm.html | 51 - clones/lisp/www.cliki.net/cl-groupby.html | 92 -- clones/lisp/www.cliki.net/cl-growl.html | 52 - clones/lisp/www.cliki.net/cl-gsl.html | 51 - clones/lisp/www.cliki.net/cl-gtk.html | 51 - clones/lisp/www.cliki.net/cl-gtk2.html | 166 --- clones/lisp/www.cliki.net/cl-gui.html | 51 - clones/lisp/www.cliki.net/cl-hash-util.html | 52 - clones/lisp/www.cliki.net/cl-heap.html | 51 - clones/lisp/www.cliki.net/cl-heredoc.html | 62 - clones/lisp/www.cliki.net/cl-hooks.html | 52 - clones/lisp/www.cliki.net/cl-horde3d.html | 52 - clones/lisp/www.cliki.net/cl-html-parse.html | 54 - .../lisp/www.cliki.net/cl-html-template.html | 51 - .../lisp/www.cliki.net/cl-html5-parser.html | 52 - clones/lisp/www.cliki.net/cl-hue.html | 52 - clones/lisp/www.cliki.net/cl-i18n.html | 51 - clones/lisp/www.cliki.net/cl-icalendar.html | 52 - clones/lisp/www.cliki.net/cl-icebox.html | 51 - clones/lisp/www.cliki.net/cl-icu.html | 51 - clones/lisp/www.cliki.net/cl-image2text.html | 53 - .../lisp/www.cliki.net/cl-indeterminism.html | 54 - clones/lisp/www.cliki.net/cl-inflector.html | 52 - clones/lisp/www.cliki.net/cl-influxdb.html | 51 - clones/lisp/www.cliki.net/cl-inotify.html | 52 - clones/lisp/www.cliki.net/cl-intbytes.html | 52 - clones/lisp/www.cliki.net/cl-interpol.html | 57 - clones/lisp/www.cliki.net/cl-irc.html | 53 - clones/lisp/www.cliki.net/cl-irregsexp.html | 59 - clones/lisp/www.cliki.net/cl-iso3166.html | 51 - clones/lisp/www.cliki.net/cl-iso4217.html | 51 - clones/lisp/www.cliki.net/cl-itertools.html | 51 - clones/lisp/www.cliki.net/cl-iup.html | 51 - clones/lisp/www.cliki.net/cl-jointgen.html | 52 - clones/lisp/www.cliki.net/cl-jpeg.html | 51 - clones/lisp/www.cliki.net/cl-jpl-util.html | 51 - clones/lisp/www.cliki.net/cl-json.html | 51 - clones/lisp/www.cliki.net/cl-kappa.html | 53 - clones/lisp/www.cliki.net/cl-keycloak.html | 52 - clones/lisp/www.cliki.net/cl-l10n.html | 61 - clones/lisp/www.cliki.net/cl-larval.html | 51 - clones/lisp/www.cliki.net/cl-lastfm.html | 52 - clones/lisp/www.cliki.net/cl-launch.html | 923 ------------ clones/lisp/www.cliki.net/cl-launchpad.html | 51 - clones/lisp/www.cliki.net/cl-leb128.html | 52 - clones/lisp/www.cliki.net/cl-ledger.html | 52 - clones/lisp/www.cliki.net/cl-lex.html | 51 - .../www.cliki.net/cl-liballegro-nuklear.html | 51 - clones/lisp/www.cliki.net/cl-liballegro.html | 51 - .../lisp/www.cliki.net/cl-libserialport.html | 52 - clones/lisp/www.cliki.net/cl-libsvm.html | 51 - clones/lisp/www.cliki.net/cl-libusb.html | 52 - clones/lisp/www.cliki.net/cl-libxml2.html | 66 - clones/lisp/www.cliki.net/cl-locale.html | 51 - clones/lisp/www.cliki.net/cl-log.html | 61 - clones/lisp/www.cliki.net/cl-m4.html | 52 - clones/lisp/www.cliki.net/cl-magic-cad.html | 52 - clones/lisp/www.cliki.net/cl-magick.html | 51 - clones/lisp/www.cliki.net/cl-marc.html | 52 - clones/lisp/www.cliki.net/cl-markdown.html | 52 - clones/lisp/www.cliki.net/cl-markup.html | 182 --- clones/lisp/www.cliki.net/cl-marshal.html | 99 -- clones/lisp/www.cliki.net/cl-match.html | 73 - clones/lisp/www.cliki.net/cl-mathstats.html | 51 - clones/lisp/www.cliki.net/cl-maxminddb.html | 70 - clones/lisp/www.cliki.net/cl-mechanize.html | 52 - clones/lisp/www.cliki.net/cl-menusystem.html | 76 - clones/lisp/www.cliki.net/cl-migrations.html | 52 - clones/lisp/www.cliki.net/cl-migratum.html | 52 - clones/lisp/www.cliki.net/cl-mill.html | 52 - clones/lisp/www.cliki.net/cl-mime.html | 63 - clones/lisp/www.cliki.net/cl-mock.html | 51 - clones/lisp/www.cliki.net/cl-modlisp.html | 52 - clones/lisp/www.cliki.net/cl-moneris.html | 52 - clones/lisp/www.cliki.net/cl-mongo.html | 51 - clones/lisp/www.cliki.net/cl-mongrel2.html | 52 - clones/lisp/www.cliki.net/cl-mop.html | 51 - clones/lisp/www.cliki.net/cl-mpi.html | 51 - clones/lisp/www.cliki.net/cl-mssql.html | 51 - clones/lisp/www.cliki.net/cl-muproc.html | 53 - clones/lisp/www.cliki.net/cl-mw.html | 52 - clones/lisp/www.cliki.net/cl-mysql.html | 51 - clones/lisp/www.cliki.net/cl-naive-store.html | 61 - clones/lisp/www.cliki.net/cl-namegen.html | 51 - clones/lisp/www.cliki.net/cl-ncurses.html | 51 - clones/lisp/www.cliki.net/cl-neo4j.html | 52 - clones/lisp/www.cliki.net/cl-net-snmp.html | 52 - clones/lisp/www.cliki.net/cl-netstrings.html | 52 - clones/lisp/www.cliki.net/cl-notify.html | 51 - clones/lisp/www.cliki.net/cl-ntriples.html | 52 - clones/lisp/www.cliki.net/cl-num-utils.html | 61 - clones/lisp/www.cliki.net/cl-oauth.html | 52 - clones/lisp/www.cliki.net/cl-octave.html | 52 - clones/lisp/www.cliki.net/cl-ode.html | 60 - .../www.cliki.net/cl-one-time-passwords.html | 52 - clones/lisp/www.cliki.net/cl-op.html | 52 - clones/lisp/www.cliki.net/cl-openal.html | 51 - clones/lisp/www.cliki.net/cl-openbox.html | 52 - clones/lisp/www.cliki.net/cl-opencalais.html | 51 - clones/lisp/www.cliki.net/cl-opengl.html | 51 - clones/lisp/www.cliki.net/cl-openid.html | 55 - clones/lisp/www.cliki.net/cl-opossum.html | 51 - clones/lisp/www.cliki.net/cl-pack.html | 61 - .../www.cliki.net/cl-package-aliases.html | 68 - .../www.cliki.net/cl-parametric-types.html | 55 - clones/lisp/www.cliki.net/cl-parsec.html | 51 - clones/lisp/www.cliki.net/cl-pass.html | 59 - .../lisp/www.cliki.net/cl-password-store.html | 72 - clones/lisp/www.cliki.net/cl-pastebin.html | 58 - clones/lisp/www.cliki.net/cl-pattern.html | 52 - clones/lisp/www.cliki.net/cl-paymill.html | 51 - clones/lisp/www.cliki.net/cl-paypal.html | 52 - clones/lisp/www.cliki.net/cl-pdb.html | 52 - .../lisp/www.cliki.net/cl-pdf.arglists.html | 69 - clones/lisp/www.cliki.net/cl-pdf.html | 51 - clones/lisp/www.cliki.net/cl-peg.html | 59 - clones/lisp/www.cliki.net/cl-perec.html | 62 - clones/lisp/www.cliki.net/cl-period.html | 52 - clones/lisp/www.cliki.net/cl-permutation.html | 70 - clones/lisp/www.cliki.net/cl-pgplot.html | 52 - clones/lisp/www.cliki.net/cl-phonetic.html | 71 - clones/lisp/www.cliki.net/cl-photo.html | 51 - clones/lisp/www.cliki.net/cl-plplot.html | 51 - clones/lisp/www.cliki.net/cl-plus-ssl.html | 52 - clones/lisp/www.cliki.net/cl-pop.html | 51 - clones/lisp/www.cliki.net/cl-portaudio.html | 51 - .../cl-posix-dirent-susv3-lisp.html | 632 -------- .../lisp/www.cliki.net/cl-posix-dirent.html | 378 ----- .../www.cliki.net/cl-posix-generalities.html | 246 --- .../www.cliki.net/cl-posix-header-list.html | 255 ---- clones/lisp/www.cliki.net/cl-ppcre.html | 51 - clones/lisp/www.cliki.net/cl-prevalence.html | 52 - clones/lisp/www.cliki.net/cl-proj.html | 61 - clones/lisp/www.cliki.net/cl-protobufs.html | 52 - clones/lisp/www.cliki.net/cl-pubmed.html | 51 - clones/lisp/www.cliki.net/cl-qprint.html | 51 - clones/lisp/www.cliki.net/cl-quickcheck.html | 51 - clones/lisp/www.cliki.net/cl-randist.html | 75 - clones/lisp/www.cliki.net/cl-random.html | 53 - clones/lisp/www.cliki.net/cl-raytracer.html | 52 - clones/lisp/www.cliki.net/cl-rdbms.html | 51 - .../www.cliki.net/cl-read-macro-tokens.html | 53 - clones/lisp/www.cliki.net/cl-readline.html | 139 -- clones/lisp/www.cliki.net/cl-recaptcha.html | 52 - clones/lisp/www.cliki.net/cl-redis.html | 53 - clones/lisp/www.cliki.net/cl-reexport.html | 109 -- clones/lisp/www.cliki.net/cl-reversi.html | 54 - clones/lisp/www.cliki.net/cl-rfc4251.html | 52 - clones/lisp/www.cliki.net/cl-riff.html | 52 - clones/lisp/www.cliki.net/cl-rmath.html | 53 - clones/lisp/www.cliki.net/cl-routes.html | 52 - clones/lisp/www.cliki.net/cl-rss-gen.html | 54 - clones/lisp/www.cliki.net/cl-rss.html | 53 - clones/lisp/www.cliki.net/cl-rsvg.html | 51 - clones/lisp/www.cliki.net/cl-rttemplate.html | 58 - clones/lisp/www.cliki.net/cl-sane.html | 52 - clones/lisp/www.cliki.net/cl-sanitize.html | 52 - clones/lisp/www.cliki.net/cl-sap.html | 70 - clones/lisp/www.cliki.net/cl-sasl.html | 52 - clones/lisp/www.cliki.net/cl-satwrap.html | 52 - clones/lisp/www.cliki.net/cl-schedule.html | 51 - clones/lisp/www.cliki.net/cl-scripting.html | 51 - clones/lisp/www.cliki.net/cl-scrobbler.html | 51 - clones/lisp/www.cliki.net/cl-sdl.html | 64 - clones/lisp/www.cliki.net/cl-sdl2.html | 53 - clones/lisp/www.cliki.net/cl-secure-read.html | 52 - clones/lisp/www.cliki.net/cl-semantic.html | 52 - clones/lisp/www.cliki.net/cl-serializer.html | 51 - clones/lisp/www.cliki.net/cl-sgdos-csv.html | 62 - clones/lisp/www.cliki.net/cl-sipc.html | 52 - clones/lisp/www.cliki.net/cl-skip-list.html | 51 - clones/lisp/www.cliki.net/cl-slice.html | 59 - clones/lisp/www.cliki.net/cl-slug.html | 54 - clones/lisp/www.cliki.net/cl-smoke.html | 51 - clones/lisp/www.cliki.net/cl-smtp.html | 93 -- clones/lisp/www.cliki.net/cl-smugmug.html | 51 - clones/lisp/www.cliki.net/cl-soil.html | 52 - .../lisp/www.cliki.net/cl-speedy-queue.html | 52 - .../lisp/www.cliki.net/cl-sphinx-search.html | 51 - .../lisp/www.cliki.net/cl-splicing-macro.html | 51 - clones/lisp/www.cliki.net/cl-sqlite.html | 51 - clones/lisp/www.cliki.net/cl-srpc.html | 74 - clones/lisp/www.cliki.net/cl-statsd.html | 58 - .../www.cliki.net/cl-stirling-engine.html | 51 - clones/lisp/www.cliki.net/cl-stomp.html | 52 - clones/lisp/www.cliki.net/cl-store.html | 52 - clones/lisp/www.cliki.net/cl-stream.html | 73 - clones/lisp/www.cliki.net/cl-strftime.html | 52 - .../www.cliki.net/cl-string-complete.html | 51 - .../lisp/www.cliki.net/cl-string-match.html | 62 - clones/lisp/www.cliki.net/cl-strings.html | 52 - clones/lisp/www.cliki.net/cl-svg.html | 51 - clones/lisp/www.cliki.net/cl-svm.html | 52 - clones/lisp/www.cliki.net/cl-swap-file.html | 52 - .../lisp/www.cliki.net/cl-syntax-sugar.html | 52 - clones/lisp/www.cliki.net/cl-syntax.html | 51 - clones/lisp/www.cliki.net/cl-syslog.html | 60 - clones/lisp/www.cliki.net/cl-tc.html | 52 - clones/lisp/www.cliki.net/cl-tcod.html | 51 - clones/lisp/www.cliki.net/cl-template.html | 52 - clones/lisp/www.cliki.net/cl-termbox.html | 52 - clones/lisp/www.cliki.net/cl-terrace.html | 51 - clones/lisp/www.cliki.net/cl-test-grid.html | 52 - clones/lisp/www.cliki.net/cl-textmagic.html | 52 - clones/lisp/www.cliki.net/cl-tga.html | 51 - clones/lisp/www.cliki.net/cl-tk.html | 52 - clones/lisp/www.cliki.net/cl-toolbox.html | 54 - clones/lisp/www.cliki.net/cl-trane.html | 51 - .../lisp/www.cliki.net/cl-transmission.html | 52 - clones/lisp/www.cliki.net/cl-travis.html | 52 - clones/lisp/www.cliki.net/cl-treemaps.html | 52 - clones/lisp/www.cliki.net/cl-tumblr.html | 71 - clones/lisp/www.cliki.net/cl-tuples.html | 52 - clones/lisp/www.cliki.net/cl-twitter.html | 53 - clones/lisp/www.cliki.net/cl-typed.html | 66 - clones/lisp/www.cliki.net/cl-typesetting.html | 60 - clones/lisp/www.cliki.net/cl-uglify-js.html | 51 - clones/lisp/www.cliki.net/cl-unicode.html | 52 - clones/lisp/www.cliki.net/cl-unification.html | 82 - clones/lisp/www.cliki.net/cl-unit-test.html | 163 -- .../lisp/www.cliki.net/cl-uri-templates.html | 51 - clones/lisp/www.cliki.net/cl-utilities.html | 72 - clones/lisp/www.cliki.net/cl-variates.html | 52 - clones/lisp/www.cliki.net/cl-vectors.html | 52 - clones/lisp/www.cliki.net/cl-video.html | 52 - clones/lisp/www.cliki.net/cl-virtualbox.html | 52 - clones/lisp/www.cliki.net/cl-wal.html | 57 - clones/lisp/www.cliki.net/cl-walker.html | 52 - clones/lisp/www.cliki.net/cl-wav-synth.html | 56 - clones/lisp/www.cliki.net/cl-wbxml.html | 52 - .../lisp/www.cliki.net/cl-weather-util.html | 52 - clones/lisp/www.cliki.net/cl-web-crawler.html | 52 - clones/lisp/www.cliki.net/cl-web-utils.html | 53 - clones/lisp/www.cliki.net/cl-webkit.html | 52 - clones/lisp/www.cliki.net/cl-weblocks.html | 51 - clones/lisp/www.cliki.net/cl-wfx.html | 52 - clones/lisp/www.cliki.net/cl-who.html | 52 - clones/lisp/www.cliki.net/cl-win32ole.html | 52 - clones/lisp/www.cliki.net/cl-xml-parser.html | 52 - clones/lisp/www.cliki.net/cl-xmlspam.html | 90 -- clones/lisp/www.cliki.net/cl-xmpp.html | 51 - clones/lisp/www.cliki.net/cl-xspf.html | 51 - clones/lisp/www.cliki.net/cl-xul.html | 53 - clones/lisp/www.cliki.net/cl-yacc.html | 52 - clones/lisp/www.cliki.net/cl-yaclyaml.html | 54 - clones/lisp/www.cliki.net/cl-yahoo.html | 103 -- clones/lisp/www.cliki.net/cl-yaml.html | 52 - clones/lisp/www.cliki.net/cl-youtube.html | 52 - clones/lisp/www.cliki.net/cl-z.html | 51 - clones/lisp/www.cliki.net/cl-z85.html | 52 - clones/lisp/www.cliki.net/cl-zlib.html | 52 - clones/lisp/www.cliki.net/cl-zmq.html | 107 -- clones/lisp/www.cliki.net/cl4py.html | 51 - clones/lisp/www.cliki.net/clTcl.html | 52 - clones/lisp/www.cliki.net/clack.html | 52 - clones/lisp/www.cliki.net/class-options.html | 52 - clones/lisp/www.cliki.net/classimp.html | 69 - clones/lisp/www.cliki.net/clath.html | 52 - clones/lisp/www.cliki.net/clave.html | 52 - clones/lisp/www.cliki.net/clavier.html | 52 - clones/lisp/www.cliki.net/clawk.html | 51 - clones/lisp/www.cliki.net/clbuild.html | 52 - clones/lisp/www.cliki.net/clem.html | 51 - clones/lisp/www.cliki.net/clerk.html | 53 - clones/lisp/www.cliki.net/clesh.html | 54 - clones/lisp/www.cliki.net/cleven.html | 52 - clones/lisp/www.cliki.net/clfswm.html | 61 - clones/lisp/www.cliki.net/clg.html | 65 - clones/lisp/www.cliki.net/clhp.html | 55 - .../lisp/www.cliki.net/clhs ASDF wrapper.html | 52 - clones/lisp/www.cliki.net/clickr.html | 56 - clones/lisp/www.cliki.net/cliki.html | 117 -- clones/lisp/www.cliki.net/clim-chess.html | 52 - clones/lisp/www.cliki.net/clim-desktop.html | 123 -- clones/lisp/www.cliki.net/clim.html | 110 -- clones/lisp/www.cliki.net/climacs.html | 52 - clones/lisp/www.cliki.net/clinch.html | 52 - clones/lisp/www.cliki.net/clinicap.html | 73 - clones/lisp/www.cliki.net/clisp-sqlite.html | 52 - clones/lisp/www.cliki.net/clisp.html | 84 -- clones/lisp/www.cliki.net/clmath.html | 53 - clones/lisp/www.cliki.net/clnuplot.html | 51 - clones/lisp/www.cliki.net/cloak.html | 51 - clones/lisp/www.cliki.net/clocc-port.html | 53 - clones/lisp/www.cliki.net/clod.html | 59 - clones/lisp/www.cliki.net/clods-export.html | 51 - clones/lisp/www.cliki.net/clois-lane.html | 51 - clones/lisp/www.cliki.net/clon.html | 53 - clones/lisp/www.cliki.net/clones.html | 51 - clones/lisp/www.cliki.net/clonsigna.html | 52 - clones/lisp/www.cliki.net/clos-diff.html | 62 - clones/lisp/www.cliki.net/clos.html | 126 -- clones/lisp/www.cliki.net/closer-mop.html | 51 - clones/lisp/www.cliki.net/closer-weak.html | 52 - clones/lisp/www.cliki.net/closure-common.html | 53 - clones/lisp/www.cliki.net/closure-html.html | 68 - clones/lisp/www.cliki.net/closure.html | 68 - clones/lisp/www.cliki.net/clouchdb.html | 58 - .../www.cliki.net/clsql-pg-introspect.html | 57 - clones/lisp/www.cliki.net/clsql.html | 91 -- clones/lisp/www.cliki.net/clss.html | 53 - clones/lisp/www.cliki.net/cluck.html | 57 - clones/lisp/www.cliki.net/cluecc.html | 51 - clones/lisp/www.cliki.net/clufs.html | 53 - clones/lisp/www.cliki.net/clunit2.html | 52 - clones/lisp/www.cliki.net/clutter.html | 52 - clones/lisp/www.cliki.net/clws.html | 51 - clones/lisp/www.cliki.net/clx.html | 110 -- clones/lisp/www.cliki.net/cmpl.html | 52 - clones/lisp/www.cliki.net/cmucl.html | 106 -- clones/lisp/www.cliki.net/cocoa-mail.html | 52 - .../lisp/www.cliki.net/coding convention.html | 62 - clones/lisp/www.cliki.net/coleslaw.html | 66 - .../lisp/www.cliki.net/collapse-string.html | 132 -- clones/lisp/www.cliki.net/collectors.html | 52 - clones/lisp/www.cliki.net/colliflower.html | 59 - .../lisp/www.cliki.net/color-gradients.html | 51 - clones/lisp/www.cliki.net/colorize.html | 51 - .../lisp/www.cliki.net/com.google.base.html | 52 - ...informatimago.common-lisp.interactive.html | 53 - .../com.informatimago.hangman.html | 55 - .../com.nklein.parser-generator.html | 52 - .../command-line options parser.html | 97 -- .../www.cliki.net/command-line-arguments.html | 52 - .../common lisp implementation.html | 220 --- clones/lisp/www.cliki.net/common-db.html | 52 - .../www.cliki.net/common-lisp-controller.html | 85 -- .../lisp/www.cliki.net/common-lisp-stat.html | 51 - .../lisp/www.cliki.net/common-lisp.net.html | 51 - clones/lisp/www.cliki.net/community.html | 92 -- clones/lisp/www.cliki.net/comp.lang.lisp.html | 74 - clones/lisp/www.cliki.net/comparisons.html | 52 - .../www.cliki.net/compatibility layers.html | 92 -- .../www.cliki.net/compatible-metaclasses.html | 52 - clones/lisp/www.cliki.net/compression.html | 92 -- .../lisp/www.cliki.net/computable-reals.html | 51 - clones/lisp/www.cliki.net/computed-class.html | 53 - clones/lisp/www.cliki.net/concurrency.html | 250 ---- .../lisp/www.cliki.net/conduit-packages.html | 60 - clones/lisp/www.cliki.net/conference.html | 120 -- clones/lisp/www.cliki.net/configuration.html | 92 -- clones/lisp/www.cliki.net/conium.html | 76 - clones/lisp/www.cliki.net/console.html | 140 -- clones/lisp/www.cliki.net/continuations.html | 77 - .../www.cliki.net/convenience library.html | 244 --- .../lisp/www.cliki.net/copying problem.html | 53 - clones/lisp/www.cliki.net/corba.html | 62 - clones/lisp/www.cliki.net/corona.html | 58 - clones/lisp/www.cliki.net/cparse.html | 51 - .../www.cliki.net/creating executables.html | 98 -- clones/lisp/www.cliki.net/creole.html | 85 -- clones/lisp/www.cliki.net/croatoan.html | 66 - clones/lisp/www.cliki.net/cryptography.html | 168 --- clones/lisp/www.cliki.net/cserial-port.html | 52 - clones/lisp/www.cliki.net/csp.html | 53 - clones/lisp/www.cliki.net/css-lexer.html | 51 - clones/lisp/www.cliki.net/css-lite.html | 53 - clones/lisp/www.cliki.net/csv.html | 86 -- clones/lisp/www.cliki.net/cube.html | 52 - clones/lisp/www.cliki.net/curl.html | 56 - clones/lisp/www.cliki.net/curly.html | 70 - clones/lisp/www.cliki.net/currensea.html | 52 - .../current recommended libraries.html | 284 ---- clones/lisp/www.cliki.net/cxml-rng.html | 67 - clones/lisp/www.cliki.net/cxml-stp.html | 69 - clones/lisp/www.cliki.net/cxml.html | 66 - clones/lisp/www.cliki.net/cy.html | 110 -- clones/lisp/www.cliki.net/data format.html | 124 -- clones/lisp/www.cliki.net/data formats.html | 535 ------- clones/lisp/www.cliki.net/data structure.html | 289 ---- clones/lisp/www.cliki.net/data-lens.html | 52 - clones/lisp/www.cliki.net/data-table.html | 53 - .../www.cliki.net/database-migrations.html | 52 - clones/lisp/www.cliki.net/database.html | 369 ----- clones/lisp/www.cliki.net/dataflow.html | 72 - clones/lisp/www.cliki.net/datafly.html | 52 - clones/lisp/www.cliki.net/dawg.html | 52 - clones/lisp/www.cliki.net/db-sockets.html | 51 - clones/lisp/www.cliki.net/ddist.html | 51 - clones/lisp/www.cliki.net/de.setf.amqp.html | 52 - .../www.cliki.net/de.setf.atn-parser.html | 51 - .../lisp/www.cliki.net/de.setf.cassandra.html | 51 - .../lisp/www.cliki.net/de.setf.graphics.html | 51 - .../lisp/www.cliki.net/de.setf.resource.html | 52 - clones/lisp/www.cliki.net/de.setf.thrift.html | 52 - .../lisp/www.cliki.net/de.setf.utility.html | 69 - clones/lisp/www.cliki.net/de.setf.wilbur.html | 51 - clones/lisp/www.cliki.net/debian.html | 177 --- clones/lisp/www.cliki.net/debugging.html | 104 -- clones/lisp/www.cliki.net/decaf.html | 51 - clones/lisp/www.cliki.net/decimals.html | 86 -- clones/lisp/www.cliki.net/decisiontree.html | 104 -- clones/lisp/www.cliki.net/declt.html | 74 - clones/lisp/www.cliki.net/deeds.html | 52 - clones/lisp/www.cliki.net/defclass*.html | 51 - clones/lisp/www.cliki.net/defclass-std.html | 52 - clones/lisp/www.cliki.net/definer.html | 59 - .../www.cliki.net/definitions-systems.html | 52 - clones/lisp/www.cliki.net/deflate.html | 51 - .../lisp/www.cliki.net/defmacro-enhance.html | 52 - clones/lisp/www.cliki.net/defrest.html | 54 - clones/lisp/www.cliki.net/defstar.html | 62 - .../defsystem-compatibility.html | 52 - clones/lisp/www.cliki.net/demacs.html | 63 - clones/lisp/www.cliki.net/deployment.html | 76 - clones/lisp/www.cliki.net/deprecations.html | 58 - clones/lisp/www.cliki.net/detachtty.html | 94 -- clones/lisp/www.cliki.net/development.html | 657 -------- clones/lisp/www.cliki.net/dexador.html | 51 - clones/lisp/www.cliki.net/dialogue.html | 51 - clones/lisp/www.cliki.net/dict.html | 53 - .../lisp/www.cliki.net/diff-match-patch.html | 53 - clones/lisp/www.cliki.net/diff.html | 51 - .../lisp/www.cliki.net/directory listing.html | 51 - clones/lisp/www.cliki.net/dissect.html | 52 - clones/lisp/www.cliki.net/distributed.html | 139 -- clones/lisp/www.cliki.net/djula.html | 52 - clones/lisp/www.cliki.net/dlist.html | 61 - clones/lisp/www.cliki.net/do-backup.html | 54 - clones/lisp/www.cliki.net/docudown.html | 51 - .../lisp/www.cliki.net/document format.html | 60 - .../www.cliki.net/document preparation.html | 128 -- clones/lisp/www.cliki.net/document.html | 97 -- .../www.cliki.net/documentation tool.html | 146 -- .../www.cliki.net/documentation-template.html | 51 - .../www.cliki.net/documentation-utils.html | 53 - clones/lisp/www.cliki.net/documentation.html | 51 - clones/lisp/www.cliki.net/doors.html | 51 - clones/lisp/www.cliki.net/doplus.html | 52 - clones/lisp/www.cliki.net/dpans2texi.html | 60 - clones/lisp/www.cliki.net/drakma.html | 53 - .../lisp/www.cliki.net/dso-binary-class.html | 52 - clones/lisp/www.cliki.net/dso-csv.html | 51 - clones/lisp/www.cliki.net/dso-lex.html | 60 - clones/lisp/www.cliki.net/dso-parse.html | 51 - clones/lisp/www.cliki.net/dso-util.html | 51 - clones/lisp/www.cliki.net/dwim.hu.html | 64 - .../lisp/www.cliki.net/dynamic-classes.html | 52 - clones/lisp/www.cliki.net/eager-future.html | 52 - clones/lisp/www.cliki.net/easyweb.html | 51 - clones/lisp/www.cliki.net/eazy-gnuplot.html | 52 - clones/lisp/www.cliki.net/ebnf-parser.html | 51 - clones/lisp/www.cliki.net/ecl-readline.html | 62 - clones/lisp/www.cliki.net/ecl.html | 57 - clones/lisp/www.cliki.net/eclipse.html | 51 - clones/lisp/www.cliki.net/eco.html | 51 - clones/lisp/www.cliki.net/editor hints.html | 67 - clones/lisp/www.cliki.net/editor-hints.html | 62 - clones/lisp/www.cliki.net/ediware.html | 51 - clones/lisp/www.cliki.net/electronics.html | 76 - clones/lisp/www.cliki.net/elisp.html | 108 -- clones/lisp/www.cliki.net/emacs-cl.html | 51 - clones/lisp/www.cliki.net/emacs.html | 51 - clones/lisp/www.cliki.net/email.html | 144 -- .../lisp/www.cliki.net/embeddable-maxima.html | 53 - clones/lisp/www.cliki.net/embedded.html | 80 - clones/lisp/www.cliki.net/enchant.html | 51 - .../lisp/www.cliki.net/enhanced-boolean.html | 52 - .../lisp/www.cliki.net/enhanced-defclass.html | 52 - .../www.cliki.net/enhanced-eval-when.html | 52 - .../www.cliki.net/enhanced-find-class.html | 52 - .../enhanced-multiple-value-bind.html | 52 - clones/lisp/www.cliki.net/enhanced-typep.html | 52 - clones/lisp/www.cliki.net/eql.html | 51 - clones/lisp/www.cliki.net/erlangen.html | 52 - clones/lisp/www.cliki.net/esa.html | 51 - clones/lisp/www.cliki.net/esmtp-client.html | 51 - clones/lisp/www.cliki.net/esrap-liquid.html | 57 - clones/lisp/www.cliki.net/esrap-peg.html | 52 - clones/lisp/www.cliki.net/esrap.html | 61 - clones/lisp/www.cliki.net/evaled-when.html | 52 - clones/lisp/www.cliki.net/evol.html | 101 -- clones/lisp/www.cliki.net/executor.html | 62 - clones/lisp/www.cliki.net/exifinfo.html | 56 - clones/lisp/www.cliki.net/exit-hooks.html | 52 - clones/lisp/www.cliki.net/exscribe.html | 55 - clones/lisp/www.cliki.net/ext-blog.html | 66 - .../lisp/www.cliki.net/external-program.html | 52 - clones/lisp/www.cliki.net/extsort.html | 51 - clones/lisp/www.cliki.net/f-underscore.html | 51 - clones/lisp/www.cliki.net/fact-base.html | 51 - clones/lisp/www.cliki.net/fakenil.html | 52 - clones/lisp/www.cliki.net/fare-csv.html | 54 - .../lisp/www.cliki.net/fare-matcher-docs.html | 208 --- clones/lisp/www.cliki.net/fare-matcher.html | 65 - .../lisp/www.cliki.net/fare-memoization.html | 51 - clones/lisp/www.cliki.net/fare-mop.html | 66 - .../lisp/www.cliki.net/fare-quasiquote.html | 60 - clones/lisp/www.cliki.net/fare-scripts.html | 57 - clones/lisp/www.cliki.net/fare-utils.html | 52 - clones/lisp/www.cliki.net/faslpath.html | 51 - .../www.cliki.net/fast-generic-functions.html | 93 -- clones/lisp/www.cliki.net/fast-http.html | 52 - clones/lisp/www.cliki.net/fast-io.html | 52 - .../www.cliki.net/favorite Lisp books.html | 294 ---- clones/lisp/www.cliki.net/fern.html | 52 - clones/lisp/www.cliki.net/ffa.html | 52 - clones/lisp/www.cliki.net/ffi.html | 288 ---- clones/lisp/www.cliki.net/ffigen.html | 54 - clones/lisp/www.cliki.net/file format.html | 220 --- .../file-position on non-files.html | 134 -- clones/lisp/www.cliki.net/file-types.html | 52 - clones/lisp/www.cliki.net/filesystem.html | 68 - clones/lisp/www.cliki.net/firephp.html | 53 - .../lisp/www.cliki.net/first-time-value.html | 52 - clones/lisp/www.cliki.net/flexi-streams.html | 52 - clones/lisp/www.cliki.net/flexichain.html | 52 - clones/lisp/www.cliki.net/flexoplan.html | 51 - clones/lisp/www.cliki.net/float-features.html | 53 - clones/lisp/www.cliki.net/floating-point.html | 54 - clones/lisp/www.cliki.net/flood.html | 61 - clones/lisp/www.cliki.net/floyd-warshall.html | 51 - clones/lisp/www.cliki.net/folio.html | 51 - clones/lisp/www.cliki.net/folio2.html | 59 - clones/lisp/www.cliki.net/foo.html | 54 - .../www.cliki.net/foreign-numeric-vector.html | 52 - clones/lisp/www.cliki.net/format.html | 61 - clones/lisp/www.cliki.net/fprog.html | 52 - clones/lisp/www.cliki.net/free software.html | 51 - clones/lisp/www.cliki.net/free.html | 52 - clones/lisp/www.cliki.net/froute.html | 52 - clones/lisp/www.cliki.net/fset.html | 65 - clones/lisp/www.cliki.net/ftp.html | 60 - clones/lisp/www.cliki.net/fukacl.html | 51 - clones/lisp/www.cliki.net/function-cache.html | 51 - clones/lisp/www.cliki.net/funds.html | 52 - clones/lisp/www.cliki.net/fuzzy-match.html | 52 - clones/lisp/www.cliki.net/game.html | 176 --- clones/lisp/www.cliki.net/garbage-pools.html | 52 - clones/lisp/www.cliki.net/gcl.html | 60 - clones/lisp/www.cliki.net/gecol.html | 52 - clones/lisp/www.cliki.net/generators.html | 52 - clones/lisp/www.cliki.net/genhash.html | 70 - clones/lisp/www.cliki.net/gentoo.html | 96 -- clones/lisp/www.cliki.net/geocoder.html | 63 - clones/lisp/www.cliki.net/geohash.html | 52 - clones/lisp/www.cliki.net/geospatial.html | 77 - clones/lisp/www.cliki.net/getopt.html | 52 - clones/lisp/www.cliki.net/glass.html | 52 - clones/lisp/www.cliki.net/glitter.html | 51 - clones/lisp/www.cliki.net/global-vars.html | 61 - clones/lisp/www.cliki.net/glop.html | 52 - clones/lisp/www.cliki.net/graph-utils.html | 91 -- clones/lisp/www.cliki.net/graph.html | 72 - .../lisp/www.cliki.net/graphics library.html | 394 ----- .../lisp/www.cliki.net/graphics toolkit.html | 51 - clones/lisp/www.cliki.net/graylex.html | 51 - clones/lisp/www.cliki.net/green-threads.html | 53 - clones/lisp/www.cliki.net/group-by.html | 52 - clones/lisp/www.cliki.net/gsharp.html | 51 - clones/lisp/www.cliki.net/gsll.html | 51 - clones/lisp/www.cliki.net/gtfl.html | 52 - clones/lisp/www.cliki.net/gtk-cffi.html | 72 - clones/lisp/www.cliki.net/guess.html | 51 - clones/lisp/www.cliki.net/gui.html | 276 ---- clones/lisp/www.cliki.net/gy.mr.html | 51 - clones/lisp/www.cliki.net/gzip-stream.html | 51 - clones/lisp/www.cliki.net/halftone.html | 54 - clones/lisp/www.cliki.net/heap.html | 52 - clones/lisp/www.cliki.net/hh-parse.html | 51 - clones/lisp/www.cliki.net/hh-redblack.html | 52 - clones/lisp/www.cliki.net/hh-web.html | 62 - clones/lisp/www.cliki.net/house.html | 51 - clones/lisp/www.cliki.net/ht-simple-ajax.html | 52 - clones/lisp/www.cliki.net/html generator.html | 113 -- clones/lisp/www.cliki.net/html->string.html | 51 - clones/lisp/www.cliki.net/html-encode.html | 62 - clones/lisp/www.cliki.net/html-extract.html | 52 - clones/lisp/www.cliki.net/html-template.html | 166 --- clones/lisp/www.cliki.net/html.html | 104 -- clones/lisp/www.cliki.net/htmlgen.html | 51 - clones/lisp/www.cliki.net/htout.html | 67 - .../www.cliki.net/http-response-handler.html | 51 - clones/lisp/www.cliki.net/http-routes.html | 79 - clones/lisp/www.cliki.net/hu.dwim.logger.html | 55 - clones/lisp/www.cliki.net/hu.dwim.util.html | 73 - clones/lisp/www.cliki.net/hu.dwim.zlib.html | 51 - clones/lisp/www.cliki.net/huffman.html | 52 - clones/lisp/www.cliki.net/humor.html | 152 -- .../lisp/www.cliki.net/hunchentoot-auth.html | 51 - .../lisp/www.cliki.net/hunchentoot-vhost.html | 51 - clones/lisp/www.cliki.net/hunchentoot.html | 76 - clones/lisp/www.cliki.net/hyde.html | 52 - clones/lisp/www.cliki.net/hyperdoc.html | 109 -- clones/lisp/www.cliki.net/hyperobject.html | 59 - .../lisp/www.cliki.net/hyperspec-lookup.html | 52 - clones/lisp/www.cliki.net/ia-hash-table.html | 90 -- clones/lisp/www.cliki.net/id3v2.html | 52 - clones/lisp/www.cliki.net/idna.html | 57 - clones/lisp/www.cliki.net/ieee-floats.html | 51 - clones/lisp/www.cliki.net/iescrypt.html | 52 - clones/lisp/www.cliki.net/ilisp.html | 52 - clones/lisp/www.cliki.net/image file.html | 124 -- clones/lisp/www.cliki.net/image.html | 52 - clones/lisp/www.cliki.net/imago.html | 51 - clones/lisp/www.cliki.net/imap.html | 51 - clones/lisp/www.cliki.net/incf-cl.html | 59 - clones/lisp/www.cliki.net/incless.html | 52 - .../www.cliki.net/incognito-keywords.html | 52 - clones/lisp/www.cliki.net/index.html | 216 --- clones/lisp/www.cliki.net/inferior-shell.html | 52 - clones/lisp/www.cliki.net/infix.html | 401 ----- clones/lisp/www.cliki.net/ingvar.html | 54 - .../www.cliki.net/inheriting-readers.html | 52 - .../inlined-generic-function.html | 51 - clones/lisp/www.cliki.net/installer.html | 85 -- .../www.cliki.net/internationalization.html | 126 -- clones/lisp/www.cliki.net/iolib.html | 52 - clones/lisp/www.cliki.net/ip-interfaces.html | 51 - clones/lisp/www.cliki.net/ipcalc.html | 52 - clones/lisp/www.cliki.net/irc-logger.html | 52 - clones/lisp/www.cliki.net/irc.html | 138 -- clones/lisp/www.cliki.net/ironclad.html | 111 -- clones/lisp/www.cliki.net/isaac.html | 52 - clones/lisp/www.cliki.net/iso-2533.html | 51 - clones/lisp/www.cliki.net/iso-3166-1.html | 52 - clones/lisp/www.cliki.net/issue.html | 241 --- .../lisp/www.cliki.net/iterate-keywords.html | 56 - clones/lisp/www.cliki.net/iterate.html | 75 - clones/lisp/www.cliki.net/its-library.html | 52 - clones/lisp/www.cliki.net/ivan4th.html | 51 - .../lisp/www.cliki.net/jarw-dictionary.html | 52 - clones/lisp/www.cliki.net/jarw-inet.html | 52 - clones/lisp/www.cliki.net/jarw-markup.html | 51 - clones/lisp/www.cliki.net/jarw-media.html | 51 - clones/lisp/www.cliki.net/jarw.html | 80 - clones/lisp/www.cliki.net/java.html | 108 -- clones/lisp/www.cliki.net/javascript.html | 111 -- clones/lisp/www.cliki.net/jd-time-utils.html | 97 -- clones/lisp/www.cliki.net/jfli.html | 51 - clones/lisp/www.cliki.net/jmt.lisp.html | 52 - clones/lisp/www.cliki.net/joelh.html | 51 - clones/lisp/www.cliki.net/jonathan.html | 51 - clones/lisp/www.cliki.net/journal.html | 82 - clones/lisp/www.cliki.net/jpeg.html | 51 - clones/lisp/www.cliki.net/jpl-queues.html | 55 - clones/lisp/www.cliki.net/jscl.html | 63 - clones/lisp/www.cliki.net/jsgen.html | 51 - clones/lisp/www.cliki.net/json-streams.html | 51 - clones/lisp/www.cliki.net/json-template.html | 52 - clones/lisp/www.cliki.net/jsown.html | 63 - clones/lisp/www.cliki.net/jss.html | 52 - clones/lisp/www.cliki.net/jwacs.html | 57 - clones/lisp/www.cliki.net/kdtree-jk.html | 58 - clones/lisp/www.cliki.net/kl-verify.html | 53 - clones/lisp/www.cliki.net/klatschbase.html | 55 - clones/lisp/www.cliki.net/kmrcl.html | 52 - .../knowledge representation systems.html | 89 -- clones/lisp/www.cliki.net/kpax.html | 52 - clones/lisp/www.cliki.net/l-math.html | 51 - clones/lisp/www.cliki.net/lQuery.html | 53 - clones/lisp/www.cliki.net/lambda-gtk.html | 63 - clones/lisp/www.cliki.net/lambda-reader.html | 51 - .../www.cliki.net/language extension.html | 460 ------ clones/lisp/www.cliki.net/langutils.html | 61 - clones/lisp/www.cliki.net/lapax.html | 51 - clones/lisp/www.cliki.net/lass.html | 53 - clones/lisp/www.cliki.net/lassie.html | 54 - clones/lisp/www.cliki.net/latex-table.html | 52 - clones/lisp/www.cliki.net/lazy.html | 52 - clones/lisp/www.cliki.net/lep.html | 51 - clones/lisp/www.cliki.net/let-plus.html | 52 - clones/lisp/www.cliki.net/lexer.html | 77 - clones/lisp/www.cliki.net/lfarm.html | 52 - clones/lisp/www.cliki.net/lfe.html | 51 - clones/lisp/www.cliki.net/lgtk.html | 51 - clones/lisp/www.cliki.net/lh-usb.html | 52 - clones/lisp/www.cliki.net/liards.html | 51 - clones/lisp/www.cliki.net/libgpg-error.html | 52 - clones/lisp/www.cliki.net/libraries.html | 51 - clones/lisp/www.cliki.net/library.html | 164 -- clones/lisp/www.cliki.net/license.html | 127 -- clones/lisp/www.cliki.net/lightgbm.html | 52 - clones/lisp/www.cliki.net/linear algebra.html | 144 -- clones/lisp/www.cliki.net/linedit.html | 79 - .../lisp/www.cliki.net/linewise-template.html | 51 - .../lisp/www.cliki.net/linux-packaging.html | 51 - clones/lisp/www.cliki.net/linux.html | 80 - clones/lisp/www.cliki.net/lisp IDE.html | 60 - clones/lisp/www.cliki.net/lisp books.html | 173 --- clones/lisp/www.cliki.net/lisp-cgi-utils.html | 51 - .../lisp/www.cliki.net/lisp-executable.html | 59 - clones/lisp/www.cliki.net/lisp-gflags.html | 61 - .../www.cliki.net/lisp-interface-library.html | 52 - clones/lisp/www.cliki.net/lisp-magick.html | 56 - clones/lisp/www.cliki.net/lisp-matrix.html | 52 - .../www.cliki.net/lisp-network-server.html | 52 - clones/lisp/www.cliki.net/lisp-on-lines.html | 51 - clones/lisp/www.cliki.net/lisp-stat.html | 51 - clones/lisp/www.cliki.net/lisp-unit.html | 66 - clones/lisp/www.cliki.net/lisp-unit2.html | 51 - clones/lisp/www.cliki.net/lisp-xl.html | 51 - clones/lisp/www.cliki.net/lisp.html | 176 --- clones/lisp/www.cliki.net/lisp2wish.html | 51 - .../lisp/www.cliki.net/lispbuilder-clawk.html | 52 - .../lisp/www.cliki.net/lispbuilder-lexer.html | 52 - .../lisp/www.cliki.net/lispbuilder-regex.html | 52 - .../www.cliki.net/lispbuilder-sdl-gfx.html | 51 - .../www.cliki.net/lispbuilder-sdl-image.html | 51 - .../www.cliki.net/lispbuilder-sdl-mixer.html | 51 - .../www.cliki.net/lispbuilder-sdl-ttf.html | 51 - .../lisp/www.cliki.net/lispbuilder-sdl.html | 76 - clones/lisp/www.cliki.net/lispbuilder.html | 85 -- clones/lisp/www.cliki.net/lispc.html | 91 -- clones/lisp/www.cliki.net/lispcafe.html | 69 - clones/lisp/www.cliki.net/lispdebug.html | 51 - clones/lisp/www.cliki.net/lisppaste.html | 51 - clones/lisp/www.cliki.net/lispweb.html | 57 - clones/lisp/www.cliki.net/lispworks-udp.html | 51 - clones/lisp/www.cliki.net/lispx-proxy.html | 51 - .../www.cliki.net/literate programming.html | 64 - clones/lisp/www.cliki.net/literate-lisp.html | 57 - clones/lisp/www.cliki.net/littleb.html | 54 - clones/lisp/www.cliki.net/lml.html | 53 - clones/lisp/www.cliki.net/lml2.html | 51 - clones/lisp/www.cliki.net/local-time.html | 61 - clones/lisp/www.cliki.net/lodematron.html | 52 - clones/lisp/www.cliki.net/log4cl.html | 87 -- clones/lisp/www.cliki.net/log5.html | 51 - clones/lisp/www.cliki.net/logging.html | 108 -- clones/lisp/www.cliki.net/logv.html | 51 - clones/lisp/www.cliki.net/lol-re.html | 52 - clones/lisp/www.cliki.net/lparallel.html | 53 - clones/lisp/www.cliki.net/ltd.html | 52 - clones/lisp/www.cliki.net/ltk.html | 52 - clones/lisp/www.cliki.net/lw-compat.html | 51 - clones/lisp/www.cliki.net/m2cl.html | 52 - clones/lisp/www.cliki.net/machina-policy.html | 60 - clones/lisp/www.cliki.net/machine code.html | 100 -- .../lisp/www.cliki.net/machine learning.html | 94 -- clones/lisp/www.cliki.net/macho.html | 51 - clones/lisp/www.cliki.net/macos x.html | 74 - clones/lisp/www.cliki.net/macro example.html | 105 -- clones/lisp/www.cliki.net/macro-eval.html | 98 -- clones/lisp/www.cliki.net/macro-html.html | 54 - clones/lisp/www.cliki.net/macro-level.html | 52 - clones/lisp/www.cliki.net/macrodynamics.html | 51 - .../www.cliki.net/macroexpand-dammit.html | 53 - clones/lisp/www.cliki.net/magicffi.html | 51 - clones/lisp/www.cliki.net/magicl.html | 51 - clones/lisp/www.cliki.net/manardb.html | 52 - clones/lisp/www.cliki.net/manifest.html | 57 - clones/lisp/www.cliki.net/map-bind.html | 52 - clones/lisp/www.cliki.net/marcoxa.html | 51 - clones/lisp/www.cliki.net/markdown.cl.html | 52 - clones/lisp/www.cliki.net/mathematics.html | 428 ------ clones/lisp/www.cliki.net/matrix.html | 51 - .../lisp/www.cliki.net/maxima-json-rpc.html | 76 - clones/lisp/www.cliki.net/maxima.html | 52 - clones/lisp/www.cliki.net/maxpc.html | 52 - clones/lisp/www.cliki.net/mcclim-desktop.html | 52 - clones/lisp/www.cliki.net/mcclim.html | 55 - clones/lisp/www.cliki.net/mccme-helpers.html | 52 - clones/lisp/www.cliki.net/md5.html | 53 - clones/lisp/www.cliki.net/mel-base.html | 53 - clones/lisp/www.cliki.net/memento-mori.html | 53 - clones/lisp/www.cliki.net/memoization.html | 64 - clones/lisp/www.cliki.net/memoize-form.html | 72 - clones/lisp/www.cliki.net/memoize.html | 52 - clones/lisp/www.cliki.net/messaging.html | 88 -- clones/lisp/www.cliki.net/meta-sexp.html | 207 --- clones/lisp/www.cliki.net/meta.html | 57 - clones/lisp/www.cliki.net/metacopy.html | 52 - clones/lisp/www.cliki.net/metapeg.html | 51 - .../lisp/www.cliki.net/metaprogramming.html | 124 -- .../lisp/www.cliki.net/metatilities-base.html | 51 - clones/lisp/www.cliki.net/metatilities.html | 51 - clones/lisp/www.cliki.net/metering.html | 51 - .../method-combination-utilities.html | 52 - .../lisp/www.cliki.net/method-versions.html | 66 - clones/lisp/www.cliki.net/mexpr.html | 52 - clones/lisp/www.cliki.net/micmac.html | 51 - clones/lisp/www.cliki.net/microlisp.html | 51 - clones/lisp/www.cliki.net/midi.html | 51 - clones/lisp/www.cliki.net/mime4cl.html | 51 - clones/lisp/www.cliki.net/minheap.html | 51 - clones/lisp/www.cliki.net/minion.html | 56 - clones/lisp/www.cliki.net/mit-license.html | 66 - clones/lisp/www.cliki.net/mixalot.html | 51 - clones/lisp/www.cliki.net/mixamesh.html | 52 - clones/lisp/www.cliki.net/mk-defsystem.html | 84 -- .../lisp/www.cliki.net/mk-string-metrics.html | 69 - clones/lisp/www.cliki.net/mock.html | 60 - clones/lisp/www.cliki.net/mockingbird.html | 51 - clones/lisp/www.cliki.net/mod_ecl.html | 55 - clones/lisp/www.cliki.net/mod_lisp.html | 57 - clones/lisp/www.cliki.net/modf.html | 60 - clones/lisp/www.cliki.net/monitoring.html | 68 - clones/lisp/www.cliki.net/monkeylib-atom.html | 52 - clones/lisp/www.cliki.net/monkeylib-json.html | 51 - .../lisp/www.cliki.net/monkeylib-parser.html | 51 - .../www.cliki.net/monkeylib-prose-diff.html | 52 - .../www.cliki.net/monkeylib-utilities.html | 51 - clones/lisp/www.cliki.net/montezuma.html | 59 - clones/lisp/www.cliki.net/mop-utils.html | 52 - clones/lisp/www.cliki.net/moptilities.html | 51 - clones/lisp/www.cliki.net/mpc.html | 52 - .../multiple-value-variants.html | 52 - clones/lisp/www.cliki.net/music.html | 177 --- clones/lisp/www.cliki.net/mw-diff-sexp.html | 52 - clones/lisp/www.cliki.net/my-util.html | 51 - clones/lisp/www.cliki.net/myweb.html | 52 - .../lisp/www.cliki.net/named-readtables.html | 52 - .../www.cliki.net/naming conventions.html | 235 --- clones/lisp/www.cliki.net/nary-tree.html | 51 - .../natural language processing.html | 100 -- clones/lisp/www.cliki.net/neo4cl.html | 51 - .../lisp/www.cliki.net/net-telent-date.html | 52 - clones/lisp/www.cliki.net/net4cl.html | 52 - clones/lisp/www.cliki.net/networking.html | 596 -------- clones/lisp/www.cliki.net/nibbles.html | 70 - clones/lisp/www.cliki.net/ningle.html | 52 - clones/lisp/www.cliki.net/ninglex.html | 51 - clones/lisp/www.cliki.net/nodgui.html | 51 - clones/lisp/www.cliki.net/non-free.html | 64 - clones/lisp/www.cliki.net/north.html | 53 - clones/lisp/www.cliki.net/noss.html | 53 - clones/lisp/www.cliki.net/nrw-xmcl.html | 61 - clones/lisp/www.cliki.net/nuclblog.html | 51 - clones/lisp/www.cliki.net/oauth2.html | 53 - clones/lisp/www.cliki.net/object-class.html | 52 - clones/lisp/www.cliki.net/obsolete.html | 297 ---- clones/lisp/www.cliki.net/ocml.html | 52 - clones/lisp/www.cliki.net/odd-streams.html | 52 - clones/lisp/www.cliki.net/okra.html | 51 - .../lisp/www.cliki.net/online tutorial.html | 155 -- clones/lisp/www.cliki.net/openMCL.html | 51 - .../lisp/www.cliki.net/opengl-extensions.html | 54 - clones/lisp/www.cliki.net/opengl-text.html | 51 - clones/lisp/www.cliki.net/opengl.html | 112 -- clones/lisp/www.cliki.net/opticl.html | 52 - clones/lisp/www.cliki.net/optima.html | 52 - clones/lisp/www.cliki.net/optparser.html | 77 - .../lisp/www.cliki.net/org-davep-cldict.html | 53 - clones/lisp/www.cliki.net/org-davep-dict.html | 53 - .../www.cliki.net/org-davep-dictrepl.html | 52 - .../lisp/www.cliki.net/org-davep-newsrc.html | 51 - clones/lisp/www.cliki.net/org-davep-nntp.html | 52 - clones/lisp/www.cliki.net/osicat.html | 52 - .../outer-parentheses-free-repl.html | 74 - .../lisp/www.cliki.net/package-renaming.html | 52 - clones/lisp/www.cliki.net/packer.html | 51 - clones/lisp/www.cliki.net/pal.html | 52 - clones/lisp/www.cliki.net/parachute.html | 53 - clones/lisp/www.cliki.net/parenscript.html | 77 - clones/lisp/www.cliki.net/parenscriptm.html | 51 - clones/lisp/www.cliki.net/parenscriptx.html | 51 - .../www.cliki.net/parse-declarations.html | 52 - clones/lisp/www.cliki.net/parse-float.html | 52 - clones/lisp/www.cliki.net/parse-js.html | 51 - .../www.cliki.net/parse-number-range.html | 52 - clones/lisp/www.cliki.net/parse-number.html | 65 - clones/lisp/www.cliki.net/parse.html | 52 - clones/lisp/www.cliki.net/parseq.html | 97 -- .../lisp/www.cliki.net/parser generator.html | 144 -- .../www.cliki.net/parser-combinators.html | 57 - clones/lisp/www.cliki.net/parser.html | 137 -- clones/lisp/www.cliki.net/path-parse.html | 52 - clones/lisp/www.cliki.net/pathname-utils.html | 53 - clones/lisp/www.cliki.net/patron.html | 57 - .../lisp/www.cliki.net/pattern matching.html | 109 -- clones/lisp/www.cliki.net/patty.html | 51 - clones/lisp/www.cliki.net/patxi-2.html | 72 - clones/lisp/www.cliki.net/paul.html | 53 - clones/lisp/www.cliki.net/pavelpenev.html | 55 - clones/lisp/www.cliki.net/pcall.html | 51 - clones/lisp/www.cliki.net/pcl.html | 51 - .../lisp/www.cliki.net/percent-encoding.html | 51 - .../www.cliki.net/performance benchmarks.html | 542 ------- clones/lisp/www.cliki.net/performance.html | 105 -- clones/lisp/www.cliki.net/perfpiece.html | 53 - clones/lisp/www.cliki.net/pergamum.html | 52 - clones/lisp/www.cliki.net/periodic-table.html | 79 - clones/lisp/www.cliki.net/perl-in-lisp.html | 51 - clones/lisp/www.cliki.net/persistence.html | 89 -- .../www.cliki.net/persistent-variables.html | 63 - clones/lisp/www.cliki.net/person.html | 1325 ----------------- clones/lisp/www.cliki.net/pgl.html | 64 - clones/lisp/www.cliki.net/pgloader.html | 58 - clones/lisp/www.cliki.net/philip-jose.html | 51 - clones/lisp/www.cliki.net/phos.html | 52 - clones/lisp/www.cliki.net/phtml.html | 52 - .../www.cliki.net/physical-quantities.html | 95 -- .../lisp/www.cliki.net/picard-csv-parser.html | 51 - clones/lisp/www.cliki.net/pipes.html | 51 - clones/lisp/www.cliki.net/pithy-xml.html | 52 - .../lisp/www.cliki.net/place-modifiers.html | 52 - clones/lisp/www.cliki.net/place-utils.html | 52 - clones/lisp/www.cliki.net/plain-odbc.html | 55 - clones/lisp/www.cliki.net/plank.html | 65 - .../lisp/www.cliki.net/plexippus-xpath.html | 73 - clones/lisp/www.cliki.net/plokami.html | 58 - clones/lisp/www.cliki.net/plot-2d.html | 51 - clones/lisp/www.cliki.net/plotting.html | 148 -- clones/lisp/www.cliki.net/plump-sexp.html | 52 - clones/lisp/www.cliki.net/plump.html | 53 - clones/lisp/www.cliki.net/pml.html | 89 -- clones/lisp/www.cliki.net/png-read.html | 51 - clones/lisp/www.cliki.net/png.html | 52 - clones/lisp/www.cliki.net/point-polygon.html | 52 - clones/lisp/www.cliki.net/poiu.html | 90 -- clones/lisp/www.cliki.net/polisher.html | 51 - clones/lisp/www.cliki.net/poly-pen.html | 51 - .../lisp/www.cliki.net/portable hemlock.html | 51 - clones/lisp/www.cliki.net/portable-clx.html | 51 - clones/lisp/www.cliki.net/portableaserve.html | 52 - clones/lisp/www.cliki.net/portch.html | 52 - .../lisp/www.cliki.net/positional-lambda.html | 52 - clones/lisp/www.cliki.net/postmodern.html | 63 - clones/lisp/www.cliki.net/postscript.html | 60 - clones/lisp/www.cliki.net/pregexp.html | 51 - .../www.cliki.net/pretend-event-loop.html | 52 - .../lisp/www.cliki.net/pretty-function.html | 51 - clones/lisp/www.cliki.net/primecount.html | 62 - .../lisp/www.cliki.net/princ-ut-interval.html | 52 - clones/lisp/www.cliki.net/profiler.html | 63 - .../www.cliki.net/programming language.html | 175 --- .../lisp/www.cliki.net/programming tips.html | 129 -- clones/lisp/www.cliki.net/prolog.html | 73 - clones/lisp/www.cliki.net/prometheus.cl.html | 79 - clones/lisp/www.cliki.net/prompt-for.html | 65 - .../proposed extensions to ANSI.html | 112 -- clones/lisp/www.cliki.net/protocol.html | 176 --- clones/lisp/www.cliki.net/psgraph.html | 81 - clones/lisp/www.cliki.net/ptester.html | 52 - clones/lisp/www.cliki.net/public domain.html | 408 ----- clones/lisp/www.cliki.net/puri.html | 51 - clones/lisp/www.cliki.net/pxmlutils.html | 52 - .../lisp/www.cliki.net/py-configparser.html | 51 - clones/lisp/www.cliki.net/py-random.html | 52 - clones/lisp/www.cliki.net/python.html | 68 - clones/lisp/www.cliki.net/q-thread-pool.html | 51 - clones/lisp/www.cliki.net/qbase64.html | 57 - clones/lisp/www.cliki.net/qbook.html | 57 - clones/lisp/www.cliki.net/qitab.html | 52 - clones/lisp/www.cliki.net/qooxlisp.html | 51 - clones/lisp/www.cliki.net/qt-libs.html | 53 - clones/lisp/www.cliki.net/qtools-ui.html | 53 - clones/lisp/www.cliki.net/qtools.html | 53 - clones/lisp/www.cliki.net/quasiquote-2.0.html | 52 - clones/lisp/www.cliki.net/query-fs.html | 52 - clones/lisp/www.cliki.net/queues.html | 52 - clones/lisp/www.cliki.net/quick-arrays.html | 52 - clones/lisp/www.cliki.net/quickapp.html | 52 - clones/lisp/www.cliki.net/quicklisp.html | 65 - clones/lisp/www.cliki.net/quid-pro-quo.html | 52 - clones/lisp/www.cliki.net/quri.html | 65 - .../lisp/www.cliki.net/quux-hunchentoot.html | 52 - clones/lisp/www.cliki.net/quux-time.html | 52 - clones/lisp/www.cliki.net/radiance.html | 52 - clones/lisp/www.cliki.net/random-state.html | 53 - clones/lisp/www.cliki.net/ratmath.html | 58 - clones/lisp/www.cliki.net/rclg.html | 51 - clones/lisp/www.cliki.net/rdp.html | 51 - clones/lisp/www.cliki.net/re.html | 51 - clones/lisp/www.cliki.net/reactive.html | 60 - clones/lisp/www.cliki.net/read-csv.html | 61 - clones/lisp/www.cliki.net/read-macros.html | 66 - clones/lisp/www.cliki.net/readable.html | 72 - .../www.cliki.net/reader-interception.html | 52 - .../www.cliki.net/reattatchabe slime.html | 140 -- clones/lisp/www.cliki.net/rebinding.html | 88 -- .../lisp/www.cliki.net/recursive-regex.html | 51 - clones/lisp/www.cliki.net/reeder.html | 52 - .../regex (library by asciian).html | 51 - .../www.cliki.net/regular expression.html | 96 -- clones/lisp/www.cliki.net/repl.html | 202 --- clones/lisp/www.cliki.net/replay-streams.html | 51 - clones/lisp/www.cliki.net/repo-install.html | 55 - clones/lisp/www.cliki.net/require-module.html | 52 - .../lisp/www.cliki.net/reserve-channel.html | 54 - clones/lisp/www.cliki.net/resolver.html | 51 - clones/lisp/www.cliki.net/restas.html | 71 - clones/lisp/www.cliki.net/retrospectiff.html | 51 - clones/lisp/www.cliki.net/rfc2109.html | 62 - clones/lisp/www.cliki.net/rfc2388.html | 51 - clones/lisp/www.cliki.net/rfc2822.html | 51 - .../lisp/www.cliki.net/rfc3339-timestamp.html | 51 - clones/lisp/www.cliki.net/rif.html | 51 - clones/lisp/www.cliki.net/riff-wave.html | 51 - clones/lisp/www.cliki.net/rip-l.html | 51 - clones/lisp/www.cliki.net/rlc.html | 51 - clones/lisp/www.cliki.net/rlwrap.html | 88 -- clones/lisp/www.cliki.net/robotics.html | 57 - clones/lisp/www.cliki.net/robots.txt.html | 2 - clones/lisp/www.cliki.net/rock.html | 51 - clones/lisp/www.cliki.net/rootkit.html | 53 - clones/lisp/www.cliki.net/ropes.html | 51 - clones/lisp/www.cliki.net/roswell.html | 51 - clones/lisp/www.cliki.net/rove.html | 51 - clones/lisp/www.cliki.net/rpc4cl.html | 52 - clones/lisp/www.cliki.net/rpm.html | 52 - clones/lisp/www.cliki.net/rt.html | 52 - clones/lisp/www.cliki.net/rtch.html | 51 - clones/lisp/www.cliki.net/rtm-lisp-api.html | 51 - .../www.cliki.net/rtorrent-controller.html | 52 - clones/lisp/www.cliki.net/rutils.html | 139 -- clones/lisp/www.cliki.net/rw-ut.html | 55 - clones/lisp/www.cliki.net/s-base64.html | 52 - clones/lisp/www.cliki.net/s-dot.html | 52 - clones/lisp/www.cliki.net/s-exp syntax.html | 124 -- clones/lisp/www.cliki.net/s-http-client.html | 51 - clones/lisp/www.cliki.net/s-http-server.html | 51 - clones/lisp/www.cliki.net/s-protobuf.html | 51 - clones/lisp/www.cliki.net/s-sysdeps.html | 52 - clones/lisp/www.cliki.net/s-utils.html | 51 - clones/lisp/www.cliki.net/s-xml-rpc.html | 52 - clones/lisp/www.cliki.net/s-xml.html | 61 - clones/lisp/www.cliki.net/safe-queue.html | 52 - clones/lisp/www.cliki.net/salza-png.html | 51 - clones/lisp/www.cliki.net/salza.html | 53 - clones/lisp/www.cliki.net/salza2.html | 51 - clones/lisp/www.cliki.net/sapaclisp.html | 54 - clones/lisp/www.cliki.net/save-object.html | 51 - clones/lisp/www.cliki.net/sb-cga.html | 52 - .../lisp/www.cliki.net/sb-cpu-affinity.html | 52 - clones/lisp/www.cliki.net/sb-dxf.html | 52 - clones/lisp/www.cliki.net/sb-heapdump.html | 52 - clones/lisp/www.cliki.net/sb-screen.html | 51 - clones/lisp/www.cliki.net/sb-sequence.html | 51 - .../lisp/www.cliki.net/sb-simple-audio.html | 65 - clones/lisp/www.cliki.net/sb-texinfo.html | 52 - clones/lisp/www.cliki.net/sbcl.html | 171 --- clones/lisp/www.cliki.net/scalpl.html | 52 - clones/lisp/www.cliki.net/scheme.html | 70 - clones/lisp/www.cliki.net/science.html | 72 - clones/lisp/www.cliki.net/screamer.html | 141 -- clones/lisp/www.cliki.net/screen.html | 74 - clones/lisp/www.cliki.net/scribble.html | 79 - clones/lisp/www.cliki.net/secure-random.html | 53 - .../selenium-lisp-connector.html | 52 - clones/lisp/www.cliki.net/semantic web.html | 108 -- .../sequence-search-replace.html | 58 - clones/lisp/www.cliki.net/serapeum.html | 51 - clones/lisp/www.cliki.net/serialization.html | 113 -- clones/lisp/www.cliki.net/series.html | 55 - clones/lisp/www.cliki.net/session-token.html | 52 - clones/lisp/www.cliki.net/sha3.html | 52 - .../www.cliki.net/shallow-copy-array.html | 108 -- .../www.cliki.net/shared-preferences.html | 52 - clones/lisp/www.cliki.net/sharplispers.html | 52 - clones/lisp/www.cliki.net/shelisp.html | 52 - clones/lisp/www.cliki.net/shell.html | 64 - clones/lisp/www.cliki.net/shtookovina.html | 53 - .../lisp/www.cliki.net/signal processing.html | 72 - clones/lisp/www.cliki.net/simple-actors.html | 52 - .../lisp/www.cliki.net/simple-currency.html | 51 - .../lisp/www.cliki.net/simple-date-time.html | 51 - clones/lisp/www.cliki.net/simple-guess.html | 52 - clones/lisp/www.cliki.net/simple-gui.html | 51 - clones/lisp/www.cliki.net/simple-http.html | 51 - clones/lisp/www.cliki.net/simple-rgb.html | 52 - clones/lisp/www.cliki.net/simple-routes.html | 61 - clones/lisp/www.cliki.net/simple-stream.html | 53 - clones/lisp/www.cliki.net/simple-tasks.html | 52 - clones/lisp/www.cliki.net/simpledb.html | 51 - .../lisp/www.cliki.net/simplified-types.html | 52 - clones/lisp/www.cliki.net/simplot.html | 59 - .../www.cliki.net/single-threaded-ccl.html | 52 - clones/lisp/www.cliki.net/site-generator.html | 52 - clones/lisp/www.cliki.net/skippy.html | 51 - clones/lisp/www.cliki.net/skitter.html | 51 - clones/lisp/www.cliki.net/slashcachelisp.html | 52 - clones/lisp/www.cliki.net/slashdotlisp.html | 52 - clones/lisp/www.cliki.net/slime.html | 88 -- clones/lisp/www.cliki.net/smackjack.html | 62 - clones/lisp/www.cliki.net/sml.html | 53 - clones/lisp/www.cliki.net/smta.html | 51 - clones/lisp/www.cliki.net/smtp4cl.html | 52 - clones/lisp/www.cliki.net/snakes.html | 98 -- clones/lisp/www.cliki.net/snmp.html | 60 - clones/lisp/www.cliki.net/snow.html | 51 - clones/lisp/www.cliki.net/soundex.html | 52 - clones/lisp/www.cliki.net/soundlab.html | 52 - clones/lisp/www.cliki.net/spack.html | 52 - clones/lisp/www.cliki.net/sparklines.html | 52 - clones/lisp/www.cliki.net/sparse-streams.html | 52 - clones/lisp/www.cliki.net/spartns.html | 60 - clones/lisp/www.cliki.net/spath.html | 52 - clones/lisp/www.cliki.net/spatial-trees.html | 58 - .../speaker - Speech synthesis library.html | 55 - clones/lisp/www.cliki.net/spinneret.html | 51 - clones/lisp/www.cliki.net/split-sequence.html | 84 -- clones/lisp/www.cliki.net/ssqlfs.html | 57 - clones/lisp/www.cliki.net/sst.html | 61 - clones/lisp/www.cliki.net/st-json.html | 51 - clones/lisp/www.cliki.net/standards.html | 116 -- .../lisp/www.cliki.net/stassats-inotify.html | 52 - clones/lisp/www.cliki.net/stassats-mpd.html | 52 - clones/lisp/www.cliki.net/stassats-ogg.html | 52 - .../lisp/www.cliki.net/stassats-storage.html | 51 - .../www.cliki.net/stassats-subtitles.html | 52 - clones/lisp/www.cliki.net/static-vectors.html | 60 - .../www.cliki.net/static/css/colorize.css | 29 - .../lisp/www.cliki.net/static/css/style.css | 371 ----- .../www.cliki.net/static/img/contentbg.png | Bin 302 -> 0 bytes .../www.cliki.net/static/img/headerbg.png | Bin 256 -> 0 bytes clones/lisp/www.cliki.net/static/img/logo.png | Bin 6870 -> 0 bytes clones/lisp/www.cliki.net/statistics.html | 107 -- clones/lisp/www.cliki.net/stella.html | 51 - clones/lisp/www.cliki.net/stl-io.html | 52 - clones/lisp/www.cliki.net/stl.html | 52 - clones/lisp/www.cliki.net/stmx.html | 97 -- clones/lisp/www.cliki.net/str.html | 52 - clones/lisp/www.cliki.net/stream.html | 150 -- clones/lisp/www.cliki.net/string-case.html | 52 - clones/lisp/www.cliki.net/string.html | 145 -- clones/lisp/www.cliki.net/stumpwm.html | 54 - clones/lisp/www.cliki.net/supportcentre.html | 52 - clones/lisp/www.cliki.net/sw-http.html | 51 - clones/lisp/www.cliki.net/swank-client.html | 52 - clones/lisp/www.cliki.net/swank-daemon.html | 51 - clones/lisp/www.cliki.net/swank.html | 74 - clones/lisp/www.cliki.net/swap-bytes.html | 52 - clones/lisp/www.cliki.net/swclos.html | 52 - clones/lisp/www.cliki.net/swig.html | 51 - clones/lisp/www.cliki.net/sxql.html | 52 - .../lisp/www.cliki.net/symbol-namespaces.html | 52 - clones/lisp/www.cliki.net/syntax-case.html | 63 - .../www.cliki.net/system programming.html | 374 ----- clones/lisp/www.cliki.net/system-menu.html | 51 - clones/lisp/www.cliki.net/taglib.html | 52 - clones/lisp/www.cliki.net/tail recursion.html | 81 - clones/lisp/www.cliki.net/tar-file.html | 61 - clones/lisp/www.cliki.net/teepeedee2.html | 52 - clones/lisp/www.cliki.net/telnetlib.html | 235 --- .../www.cliki.net/templating library.html | 145 -- clones/lisp/www.cliki.net/terse-ppcre.html | 51 - clones/lisp/www.cliki.net/test framework.html | 201 --- clones/lisp/www.cliki.net/testbild.html | 61 - clones/lisp/www.cliki.net/tester.html | 52 - clones/lisp/www.cliki.net/texatl.html | 52 - clones/lisp/www.cliki.net/texp.html | 51 - .../lisp/www.cliki.net/text formatting.html | 98 -- clones/lisp/www.cliki.net/text-query.html | 69 - clones/lisp/www.cliki.net/text.html | 581 -------- .../www.cliki.net/the-cost-of-nothing.html | 67 - clones/lisp/www.cliki.net/the.html | 52 - clones/lisp/www.cliki.net/thnappy.html | 51 - clones/lisp/www.cliki.net/thodg.html | 119 -- clones/lisp/www.cliki.net/thread-pool.html | 53 - clones/lisp/www.cliki.net/thread.html | 153 -- .../lisp/www.cliki.net/threading-queue.html | 53 - clones/lisp/www.cliki.net/tiff4cl.html | 51 - .../lisp/www.cliki.net/time management.html | 54 - clones/lisp/www.cliki.net/time.html | 128 -- clones/lisp/www.cliki.net/timer.html | 52 - clones/lisp/www.cliki.net/tinaa.html | 52 - clones/lisp/www.cliki.net/tinywm-lisp.html | 126 -- clones/lisp/www.cliki.net/tmpdir.html | 52 - clones/lisp/www.cliki.net/tmux.html | 52 - clones/lisp/www.cliki.net/token-stream.html | 55 - clones/lisp/www.cliki.net/toot.html | 53 - clones/lisp/www.cliki.net/topic markers.html | 52 - clones/lisp/www.cliki.net/track-best.html | 57 - clones/lisp/www.cliki.net/translate.html | 51 - clones/lisp/www.cliki.net/trees.html | 57 - clones/lisp/www.cliki.net/trivia.html | 51 - .../lisp/www.cliki.net/trivial-backtrace.html | 52 - .../lisp/www.cliki.net/trivial-benchmark.html | 52 - .../www.cliki.net/trivial-bit-streams.html | 54 - .../lisp/www.cliki.net/trivial-clipboard.html | 52 - clones/lisp/www.cliki.net/trivial-cltl2.html | 52 - clones/lisp/www.cliki.net/trivial-do.html | 58 - .../lisp/www.cliki.net/trivial-download.html | 52 - .../lisp/www.cliki.net/trivial-dump-core.html | 123 -- .../www.cliki.net/trivial-email-utf-8.html | 51 - .../lisp/www.cliki.net/trivial-extract.html | 52 - .../lisp/www.cliki.net/trivial-features.html | 65 - clones/lisp/www.cliki.net/trivial-feed.html | 52 - .../lisp/www.cliki.net/trivial-file-size.html | 52 - .../lisp/www.cliki.net/trivial-garbage.html | 52 - .../www.cliki.net/trivial-gray-streams.html | 70 - clones/lisp/www.cliki.net/trivial-http.html | 52 - clones/lisp/www.cliki.net/trivial-https.html | 52 - clones/lisp/www.cliki.net/trivial-irc.html | 52 - .../www.cliki.net/trivial-jumptables.html | 52 - clones/lisp/www.cliki.net/trivial-ldap.html | 82 - .../trivial-macroexpand-all.html | 52 - .../www.cliki.net/trivial-main-thread.html | 54 - clones/lisp/www.cliki.net/trivial-mmap.html | 52 - .../trivial-monitored-thread.html | 52 - .../trivial-package-local-nicknames.html | 62 - .../www.cliki.net/trivial-package-locks.html | 58 - clones/lisp/www.cliki.net/trivial-raw-io.html | 52 - clones/lisp/www.cliki.net/trivial-shell.html | 51 - .../lisp/www.cliki.net/trivial-sockets.html | 51 - .../lisp/www.cliki.net/trivial-template.html | 52 - .../lisp/www.cliki.net/trivial-timeout.html | 51 - clones/lisp/www.cliki.net/trivial-timers.html | 52 - clones/lisp/www.cliki.net/trivial-types.html | 62 - clones/lisp/www.cliki.net/trivial-update.html | 52 - clones/lisp/www.cliki.net/trivial-utf-8.html | 52 - clones/lisp/www.cliki.net/trivial.html | 180 --- clones/lisp/www.cliki.net/try.html | 82 - clones/lisp/www.cliki.net/turtl.html | 52 - clones/lisp/www.cliki.net/twinql.html | 58 - clones/lisp/www.cliki.net/type-r.html | 68 - clones/lisp/www.cliki.net/uLisp.html | 51 - clones/lisp/www.cliki.net/ubiquitous.html | 52 - clones/lisp/www.cliki.net/ucw.html | 55 - clones/lisp/www.cliki.net/uffi.html | 67 - .../www.cliki.net/ugly-tiny-infix-macro.html | 57 - clones/lisp/www.cliki.net/uiop.html | 52 - clones/lisp/www.cliki.net/ulimyhmpqs.html | 88 -- clones/lisp/www.cliki.net/umlisp.html | 51 - clones/lisp/www.cliki.net/umpa-lumpa.html | 51 - clones/lisp/www.cliki.net/unicly.html | 53 - .../lisp/www.cliki.net/unicode support.html | 110 -- clones/lisp/www.cliki.net/unification.html | 60 - clones/lisp/www.cliki.net/unistd-stream.html | 51 - .../lisp/www.cliki.net/unit-conversion.html | 73 - clones/lisp/www.cliki.net/unit-formula.html | 51 - clones/lisp/www.cliki.net/unit-test.html | 51 - clones/lisp/www.cliki.net/units.html | 204 --- clones/lisp/www.cliki.net/unix-options.html | 69 - clones/lisp/www.cliki.net/unix-opts.html | 110 -- clones/lisp/www.cliki.net/unix.html | 168 --- clones/lisp/www.cliki.net/uri-template.html | 55 - clones/lisp/www.cliki.net/url-rewrite.html | 52 - clones/lisp/www.cliki.net/userial.html | 85 -- clones/lisp/www.cliki.net/usocket-udp.html | 79 - clones/lisp/www.cliki.net/usocket.html | 51 - clones/lisp/www.cliki.net/utilities.html | 236 --- clones/lisp/www.cliki.net/utm.html | 83 -- clones/lisp/www.cliki.net/uuid.html | 52 - clones/lisp/www.cliki.net/validation.html | 64 - clones/lisp/www.cliki.net/vana-inflector.html | 72 - .../www.cliki.net/vas-string-metrics.html | 51 - clones/lisp/www.cliki.net/vcr.html | 53 - clones/lisp/www.cliki.net/vcs-tree.html | 51 - clones/lisp/www.cliki.net/vecto.html | 51 - .../lisp/www.cliki.net/version control.html | 80 - .../lisp/www.cliki.net/versioned-objects.html | 51 - clones/lisp/www.cliki.net/vgplot.html | 52 - clones/lisp/www.cliki.net/vial.html | 52 - clones/lisp/www.cliki.net/videoVertov.html | 63 - clones/lisp/www.cliki.net/vim.html | 75 - clones/lisp/www.cliki.net/vindarel.html | 57 - clones/lisp/www.cliki.net/visualization.html | 68 - clones/lisp/www.cliki.net/vom.html | 51 - clones/lisp/www.cliki.net/vp-trees.html | 52 - .../www.cliki.net/vseloved-date-utils.html | 51 - clones/lisp/www.cliki.net/wcp-termcap.html | 52 - clones/lisp/www.cliki.net/web API.html | 260 ---- clones/lisp/www.cliki.net/web api.html | 260 ---- clones/lisp/www.cliki.net/web framework.html | 188 --- clones/lisp/www.cliki.net/web.html | 1085 -------------- clones/lisp/www.cliki.net/web4r.html | 51 - clones/lisp/www.cliki.net/webactions.html | 55 - .../www.cliki.net/webframeworkmatrix.html | 203 --- .../lisp/www.cliki.net/weblocks-stores.html | 54 - .../lisp/www.cliki.net/websocket-driver.html | 51 - clones/lisp/www.cliki.net/weirdo.html | 52 - clones/lisp/www.cliki.net/which.html | 51 - clones/lisp/www.cliki.net/wiki.html | 65 - clones/lisp/www.cliki.net/win32.html | 53 - clones/lisp/www.cliki.net/window manager.html | 72 - clones/lisp/www.cliki.net/windows.html | 128 -- clones/lisp/www.cliki.net/winhttp.html | 52 - clones/lisp/www.cliki.net/wire format.html | 84 -- .../www.cliki.net/with-output-to-stream.html | 52 - .../www.cliki.net/with-shadowed-bindings.html | 52 - .../lisp/www.cliki.net/with-unique-names.html | 90 -- clones/lisp/www.cliki.net/workout-timer.html | 55 - .../lisp/www.cliki.net/wrapping-standard.html | 52 - clones/lisp/www.cliki.net/wu-decimal.html | 51 - clones/lisp/www.cliki.net/wxCL.html | 51 - .../lisp/www.cliki.net/x-html-template.html | 51 - clones/lisp/www.cliki.net/x11.html | 112 -- clones/lisp/www.cliki.net/xarray.html | 70 - clones/lisp/www.cliki.net/xcvb.html | 51 - clones/lisp/www.cliki.net/xelf.html | 52 - clones/lisp/www.cliki.net/xgboost.html | 52 - clones/lisp/www.cliki.net/xhtmlgen.html | 51 - clones/lisp/www.cliki.net/xindy.html | 51 - clones/lisp/www.cliki.net/xlunit.html | 58 - clones/lisp/www.cliki.net/xml-emitter.html | 100 -- clones/lisp/www.cliki.net/xml-mop.html | 52 - .../lisp/www.cliki.net/xml-psychiatrist.html | 54 - clones/lisp/www.cliki.net/xml-rpc.html | 51 - clones/lisp/www.cliki.net/xml.html | 221 --- clones/lisp/www.cliki.net/xmls-tools.html | 51 - clones/lisp/www.cliki.net/xmls-valid.html | 51 - clones/lisp/www.cliki.net/xmls.html | 60 - clones/lisp/www.cliki.net/xmlutils.html | 52 - clones/lisp/www.cliki.net/xujizhe.html | 51 - clones/lisp/www.cliki.net/xuriella.html | 68 - clones/lisp/www.cliki.net/yaclml.html | 102 -- clones/lisp/www.cliki.net/yason.html | 116 -- clones/lisp/www.cliki.net/yid.html | 58 - clones/lisp/www.cliki.net/yotta-zoomer.html | 51 - clones/lisp/www.cliki.net/zen.html | 52 - clones/lisp/www.cliki.net/zip.html | 52 - clones/lisp/www.cliki.net/zlib.html | 75 - clones/lisp/www.cliki.net/zpb-ttf.html | 51 - clones/lisp/www.cliki.net/zpng.html | 51 - 3192 files changed, 236278 deletions(-) delete mode 100644 clones/lisp/www.cliki.net/(X)HTMΛ.html delete mode 100644 clones/lisp/www.cliki.net/.NET.html delete mode 100644 clones/lisp/www.cliki.net/.Net.html delete mode 100644 clones/lisp/www.cliki.net/0BSD.html delete mode 100644 clones/lisp/www.cliki.net/1am.html delete mode 100644 clones/lisp/www.cliki.net/1st European LISP and Scheme Workshop.html delete mode 100644 clones/lisp/www.cliki.net/2nd European LISP and Scheme Workshop.html delete mode 100644 clones/lisp/www.cliki.net/3bmd.html delete mode 100644 clones/lisp/www.cliki.net/3d-matrices.html delete mode 100644 clones/lisp/www.cliki.net/3d-vectors.html delete mode 100644 clones/lisp/www.cliki.net/A Turing machine.html delete mode 100644 clones/lisp/www.cliki.net/ABCL.html delete mode 100644 clones/lisp/www.cliki.net/AC Toolkit.html delete mode 100644 clones/lisp/www.cliki.net/ACL-COMPAT.html delete mode 100644 clones/lisp/www.cliki.net/ACL.html delete mode 100644 clones/lisp/www.cliki.net/ACL2.html delete mode 100644 clones/lisp/www.cliki.net/ACUTE-TERMINAL-CONTROL.html delete mode 100644 clones/lisp/www.cliki.net/AGPL.html delete mode 100644 clones/lisp/www.cliki.net/AI.html delete mode 100644 clones/lisp/www.cliki.net/AJAX.html delete mode 100644 clones/lisp/www.cliki.net/ALBERT.html delete mode 100644 clones/lisp/www.cliki.net/ALEXANDRIA.html delete mode 100644 clones/lisp/www.cliki.net/ALIW.html delete mode 100644 clones/lisp/www.cliki.net/ALU.html delete mode 100644 clones/lisp/www.cliki.net/AMOP.html delete mode 100644 clones/lisp/www.cliki.net/ANAPHORA.html delete mode 100644 clones/lisp/www.cliki.net/ANSI Clarifications and Errata.html delete mode 100644 clones/lisp/www.cliki.net/ANSI.html delete mode 100644 clones/lisp/www.cliki.net/ARC4.html delete mode 100644 clones/lisp/www.cliki.net/ARNESI.html delete mode 100644 clones/lisp/www.cliki.net/ARRAY-OPERATIONS.html delete mode 100644 clones/lisp/www.cliki.net/ASDF System Connections.html delete mode 100644 clones/lisp/www.cliki.net/ASDF encoding.html delete mode 100644 clones/lisp/www.cliki.net/ASDF-Binary-Locations.html delete mode 100644 clones/lisp/www.cliki.net/ASDF-Binary-locations.html delete mode 100644 clones/lisp/www.cliki.net/ASDF-DEPENDENCY-GROVEL.html delete mode 100644 clones/lisp/www.cliki.net/ASDF-Extension.html delete mode 100644 clones/lisp/www.cliki.net/ASDF-INSTALL.html delete mode 100644 clones/lisp/www.cliki.net/ASDF-Install.html delete mode 100644 clones/lisp/www.cliki.net/ASDF-System-Connections.html delete mode 100644 clones/lisp/www.cliki.net/ASDF-extension.html delete mode 100644 clones/lisp/www.cliki.net/ASDF-install.html delete mode 100644 clones/lisp/www.cliki.net/ASDF.html delete mode 100644 clones/lisp/www.cliki.net/ASDlite.html delete mode 100644 clones/lisp/www.cliki.net/ASN.1.html delete mode 100644 clones/lisp/www.cliki.net/AWK Lisp.html delete mode 100644 clones/lisp/www.cliki.net/Aanand.html delete mode 100644 clones/lisp/www.cliki.net/Abhishek Reddy.html delete mode 100644 clones/lisp/www.cliki.net/Able.html delete mode 100644 clones/lisp/www.cliki.net/AccelerationNet.html delete mode 100644 clones/lisp/www.cliki.net/Acclaim.html delete mode 100644 clones/lisp/www.cliki.net/Acclimation.html delete mode 100644 clones/lisp/www.cliki.net/Adam Di Carlo.html delete mode 100644 clones/lisp/www.cliki.net/Adam Houston.html delete mode 100644 clones/lisp/www.cliki.net/Adlai.html delete mode 100644 clones/lisp/www.cliki.net/Adler32.html delete mode 100644 clones/lisp/www.cliki.net/Adopt.html delete mode 100644 clones/lisp/www.cliki.net/Agent0.html delete mode 100644 clones/lisp/www.cliki.net/Ajax.html delete mode 100644 clones/lisp/www.cliki.net/Akshay Srinivasan.html delete mode 100644 clones/lisp/www.cliki.net/Alan Crowe.html delete mode 100644 clones/lisp/www.cliki.net/Alan Shields.html delete mode 100644 clones/lisp/www.cliki.net/AlanRuttenberg.html delete mode 100644 clones/lisp/www.cliki.net/Albert.html delete mode 100644 clones/lisp/www.cliki.net/Aleksandr Skobelev.html delete mode 100644 clones/lisp/www.cliki.net/Alexander Kahl.html delete mode 100644 clones/lisp/www.cliki.net/Alexandria.html delete mode 100644 clones/lisp/www.cliki.net/Algorithm.html delete mode 100644 clones/lisp/www.cliki.net/Alive.html delete mode 100644 clones/lisp/www.cliki.net/Allegro Maild.html delete mode 100644 clones/lisp/www.cliki.net/Allegro NFS Server.html delete mode 100644 clones/lisp/www.cliki.net/Allegro.html delete mode 100644 clones/lisp/www.cliki.net/AllegroServe.html delete mode 100644 clones/lisp/www.cliki.net/Alpaca.html delete mode 100644 clones/lisp/www.cliki.net/AmOS.html delete mode 100644 clones/lisp/www.cliki.net/Amazon Web Services.html delete mode 100644 clones/lisp/www.cliki.net/Anaphora.html delete mode 100644 clones/lisp/www.cliki.net/Andreas Fuchs.html delete mode 100644 clones/lisp/www.cliki.net/Annotations for Infrequently Asked Questions.html delete mode 100644 clones/lisp/www.cliki.net/Ant colony optimization.html delete mode 100644 clones/lisp/www.cliki.net/Anthony Ventimiglia.html delete mode 100644 clones/lisp/www.cliki.net/Antik.html delete mode 100644 clones/lisp/www.cliki.net/Antiweb.html delete mode 100644 clones/lisp/www.cliki.net/Apache 2.html delete mode 100644 clones/lisp/www.cliki.net/Apple II archaeology.html delete mode 100644 clones/lisp/www.cliki.net/Application.html delete mode 100644 clones/lisp/www.cliki.net/Apply-argv.html delete mode 100644 clones/lisp/www.cliki.net/Araneida.html delete mode 100644 clones/lisp/www.cliki.net/Arduino Lisp.html delete mode 100644 clones/lisp/www.cliki.net/Arduino.html delete mode 100644 clones/lisp/www.cliki.net/Arnesi.html delete mode 100644 clones/lisp/www.cliki.net/Artificial Intelligence.html delete mode 100644 clones/lisp/www.cliki.net/Artistic License.html delete mode 100644 clones/lisp/www.cliki.net/Ask Uncle Peter.html delete mode 100644 clones/lisp/www.cliki.net/Assem.html delete mode 100644 clones/lisp/www.cliki.net/Asteroid Wars.html delete mode 100644 clones/lisp/www.cliki.net/Attila Lendvai.html delete mode 100644 clones/lisp/www.cliki.net/Audio.html delete mode 100644 clones/lisp/www.cliki.net/August S.Sigov.html delete mode 100644 clones/lisp/www.cliki.net/Axiom.html delete mode 100644 clones/lisp/www.cliki.net/Azamat S. Kalimoulline.html delete mode 100644 clones/lisp/www.cliki.net/B-Tries.html delete mode 100644 clones/lisp/www.cliki.net/BASIC.html delete mode 100644 clones/lisp/www.cliki.net/BIND.html delete mode 100644 clones/lisp/www.cliki.net/BITMOP.html delete mode 100644 clones/lisp/www.cliki.net/BRL.html delete mode 100644 clones/lisp/www.cliki.net/BSD LICENSE.html delete mode 100644 clones/lisp/www.cliki.net/BSD License.html delete mode 100644 clones/lisp/www.cliki.net/BSD license.html delete mode 100644 clones/lisp/www.cliki.net/BSD sockets.html delete mode 100644 clones/lisp/www.cliki.net/BSD.html delete mode 100644 clones/lisp/www.cliki.net/BSL.html delete mode 100644 clones/lisp/www.cliki.net/BST.html delete mode 100644 clones/lisp/www.cliki.net/BYTES.html delete mode 100644 clones/lisp/www.cliki.net/Babel.html delete mode 100644 clones/lisp/www.cliki.net/Babel2.html delete mode 100644 clones/lisp/www.cliki.net/Bach Chorales.html delete mode 100644 clones/lisp/www.cliki.net/Base64.html delete mode 100644 clones/lisp/www.cliki.net/Basic-English-Grammar.html delete mode 100644 clones/lisp/www.cliki.net/Ben Hyde.html delete mode 100644 clones/lisp/www.cliki.net/Ben Lee.html delete mode 100644 clones/lisp/www.cliki.net/Benchmark.html delete mode 100644 clones/lisp/www.cliki.net/Berlin Brown.html delete mode 100644 clones/lisp/www.cliki.net/Bill Newman.html delete mode 100644 clones/lisp/www.cliki.net/Binary-types.html delete mode 100644 clones/lisp/www.cliki.net/Binghe.html delete mode 100644 clones/lisp/www.cliki.net/BioBike.html delete mode 100644 clones/lisp/www.cliki.net/Bioinformatics.html delete mode 100644 clones/lisp/www.cliki.net/Birch.html delete mode 100644 clones/lisp/www.cliki.net/Bits from Mark Triggs's .emacs.html delete mode 100644 clones/lisp/www.cliki.net/Blocky.html delete mode 100644 clones/lisp/www.cliki.net/Blowfish.html delete mode 100644 clones/lisp/www.cliki.net/Bobstopper.html delete mode 100644 clones/lisp/www.cliki.net/Bonn.html delete mode 100644 clones/lisp/www.cliki.net/Bordeaux-FFT.html delete mode 100644 clones/lisp/www.cliki.net/Bordeaux-Threads.html delete mode 100644 clones/lisp/www.cliki.net/Bordeaux-threads.html delete mode 100644 clones/lisp/www.cliki.net/Boris Smilga.html delete mode 100644 clones/lisp/www.cliki.net/Bouquet.html delete mode 100644 clones/lisp/www.cliki.net/Brad Lucas.html delete mode 100644 clones/lisp/www.cliki.net/Bradford W. Miller.html delete mode 100644 clones/lisp/www.cliki.net/Brainfuck in Lisp.html delete mode 100644 clones/lisp/www.cliki.net/Brian Crowder of Rutherfordton nc.html delete mode 100644 clones/lisp/www.cliki.net/Brian Crowder.html delete mode 100644 clones/lisp/www.cliki.net/Brian Cully.html delete mode 100644 clones/lisp/www.cliki.net/Brian Deaton.html delete mode 100644 clones/lisp/www.cliki.net/Brian Gaeke.html delete mode 100644 clones/lisp/www.cliki.net/Brian Mastenbrook.html delete mode 100644 clones/lisp/www.cliki.net/Brian Spilsbury.html delete mode 100644 clones/lisp/www.cliki.net/BrianRowe.html delete mode 100644 clones/lisp/www.cliki.net/BrianTRice.html delete mode 100644 clones/lisp/www.cliki.net/Bruce Durling.html delete mode 100644 clones/lisp/www.cliki.net/Bruce Nagel.html delete mode 100644 clones/lisp/www.cliki.net/Bruno Haible.html delete mode 100644 clones/lisp/www.cliki.net/Buclet.html delete mode 100644 clones/lisp/www.cliki.net/Buildapp.html delete mode 100644 clones/lisp/www.cliki.net/Buildnode.html delete mode 100644 clones/lisp/www.cliki.net/Business.html delete mode 100644 clones/lisp/www.cliki.net/C++.html delete mode 100644 clones/lisp/www.cliki.net/C-Mera.html delete mode 100644 clones/lisp/www.cliki.net/C.html delete mode 100644 clones/lisp/www.cliki.net/C3 superclass linearization MRO.html delete mode 100644 clones/lisp/www.cliki.net/CAD.html delete mode 100644 clones/lisp/www.cliki.net/CAPTURED-STREAM.html delete mode 100644 clones/lisp/www.cliki.net/CCL.html delete mode 100644 clones/lisp/www.cliki.net/CCLAN.html delete mode 100644 clones/lisp/www.cliki.net/CCLDOC.html delete mode 100644 clones/lisp/www.cliki.net/CCLDoc.html delete mode 100644 clones/lisp/www.cliki.net/CDR.html delete mode 100644 clones/lisp/www.cliki.net/CFFI-SDL.html delete mode 100644 clones/lisp/www.cliki.net/CFFI.html delete mode 100644 clones/lisp/www.cliki.net/CGI.html delete mode 100644 clones/lisp/www.cliki.net/CIM.html delete mode 100644 clones/lisp/www.cliki.net/CIRCUIT-SIM.html delete mode 100644 clones/lisp/www.cliki.net/CL Enumerations.html delete mode 100644 clones/lisp/www.cliki.net/CL SBML.html delete mode 100644 clones/lisp/www.cliki.net/CL-ACE.html delete mode 100644 clones/lisp/www.cliki.net/CL-API.html delete mode 100644 clones/lisp/www.cliki.net/CL-BibTeX.html delete mode 100644 clones/lisp/www.cliki.net/CL-CONTAINERS.html delete mode 100644 clones/lisp/www.cliki.net/CL-CSV.html delete mode 100644 clones/lisp/www.cliki.net/CL-CTRNN.html delete mode 100644 clones/lisp/www.cliki.net/CL-CXX.html delete mode 100644 clones/lisp/www.cliki.net/CL-Containers.html delete mode 100644 clones/lisp/www.cliki.net/CL-DATA-FORMAT-VALIDATION.html delete mode 100644 clones/lisp/www.cliki.net/CL-DBI.html delete mode 100644 clones/lisp/www.cliki.net/CL-DBUS.html delete mode 100644 clones/lisp/www.cliki.net/CL-DIFFLIB.html delete mode 100644 clones/lisp/www.cliki.net/CL-DNA.html delete mode 100644 clones/lisp/www.cliki.net/CL-DOCUTILS.html delete mode 100644 clones/lisp/www.cliki.net/CL-DTYPE.html delete mode 100644 clones/lisp/www.cliki.net/CL-EARLEY-PARSER.html delete mode 100644 clones/lisp/www.cliki.net/CL-EC2.html delete mode 100644 clones/lisp/www.cliki.net/CL-ECMA-48.html delete mode 100644 clones/lisp/www.cliki.net/CL-EMB.html delete mode 100644 clones/lisp/www.cliki.net/CL-Emacs.html delete mode 100644 clones/lisp/www.cliki.net/CL-FAD.html delete mode 100644 clones/lisp/www.cliki.net/CL-FTP.html delete mode 100644 clones/lisp/www.cliki.net/CL-FUSE.html delete mode 100644 clones/lisp/www.cliki.net/CL-GD.html delete mode 100644 clones/lisp/www.cliki.net/CL-GODB.html delete mode 100644 clones/lisp/www.cliki.net/CL-Graph.html delete mode 100644 clones/lisp/www.cliki.net/CL-HRAC.html delete mode 100644 clones/lisp/www.cliki.net/CL-HTML-DIFF.html delete mode 100644 clones/lisp/www.cliki.net/CL-HTML-Parse.html delete mode 100644 clones/lisp/www.cliki.net/CL-ID3.html delete mode 100644 clones/lisp/www.cliki.net/CL-IO-ELF.html delete mode 100644 clones/lisp/www.cliki.net/CL-IO-MOD.html delete mode 100644 clones/lisp/www.cliki.net/CL-IPC.html delete mode 100644 clones/lisp/www.cliki.net/CL-ISBN.html delete mode 100644 clones/lisp/www.cliki.net/CL-JPEG.html delete mode 100644 clones/lisp/www.cliki.net/CL-JSON.html delete mode 100644 clones/lisp/www.cliki.net/CL-JavaScript.html delete mode 100644 clones/lisp/www.cliki.net/CL-LDAP.html delete mode 100644 clones/lisp/www.cliki.net/CL-LEDGER.html delete mode 100644 clones/lisp/www.cliki.net/CL-LIA.html delete mode 100644 clones/lisp/www.cliki.net/CL-Librarian.html delete mode 100644 clones/lisp/www.cliki.net/CL-MD5.html delete mode 100644 clones/lisp/www.cliki.net/CL-MEMCACHED.html delete mode 100644 clones/lisp/www.cliki.net/CL-MIME.html delete mode 100644 clones/lisp/www.cliki.net/CL-MPD.html delete mode 100644 clones/lisp/www.cliki.net/CL-MUPROC.html delete mode 100644 clones/lisp/www.cliki.net/CL-MUSTACHE.html delete mode 100644 clones/lisp/www.cliki.net/CL-Markdown.html delete mode 100644 clones/lisp/www.cliki.net/CL-MediaWiki.html delete mode 100644 clones/lisp/www.cliki.net/CL-NUM-UTILS.html delete mode 100644 clones/lisp/www.cliki.net/CL-Ncurses.html delete mode 100644 clones/lisp/www.cliki.net/CL-ObjC.html delete mode 100644 clones/lisp/www.cliki.net/CL-OpenGL.html delete mode 100644 clones/lisp/www.cliki.net/CL-PACK.html delete mode 100644 clones/lisp/www.cliki.net/CL-PACKAGE-LOCKS.html delete mode 100644 clones/lisp/www.cliki.net/CL-PDF.html delete mode 100644 clones/lisp/www.cliki.net/CL-PLOT.html delete mode 100644 clones/lisp/www.cliki.net/CL-PLUS-SSL.html delete mode 100644 clones/lisp/www.cliki.net/CL-PNG.html delete mode 100644 clones/lisp/www.cliki.net/CL-PPCRE.html delete mode 100644 clones/lisp/www.cliki.net/CL-Pango.html delete mode 100644 clones/lisp/www.cliki.net/CL-RCFiles.html delete mode 100644 clones/lisp/www.cliki.net/CL-RDFXML.html delete mode 100644 clones/lisp/www.cliki.net/CL-REACTIVE.html delete mode 100644 clones/lisp/www.cliki.net/CL-READLINE.html delete mode 100644 clones/lisp/www.cliki.net/CL-RFC2047.html delete mode 100644 clones/lisp/www.cliki.net/CL-RIFF.html delete mode 100644 clones/lisp/www.cliki.net/CL-S3.html delete mode 100644 clones/lisp/www.cliki.net/CL-SDL.html delete mode 100644 clones/lisp/www.cliki.net/CL-SES4.html delete mode 100644 clones/lisp/www.cliki.net/CL-SMTP.html delete mode 100644 clones/lisp/www.cliki.net/CL-SOAP.html delete mode 100644 clones/lisp/www.cliki.net/CL-Selenium.html delete mode 100644 clones/lisp/www.cliki.net/CL-Sendmail.html delete mode 100644 clones/lisp/www.cliki.net/CL-Sokoban.html delete mode 100644 clones/lisp/www.cliki.net/CL-SpiderMonkey.html delete mode 100644 clones/lisp/www.cliki.net/CL-TELNETD.html delete mode 100644 clones/lisp/www.cliki.net/CL-TLS.html delete mode 100644 clones/lisp/www.cliki.net/CL-UNIFICATION.html delete mode 100644 clones/lisp/www.cliki.net/CL-UTILITIES.html delete mode 100644 clones/lisp/www.cliki.net/CL-V4L2.html delete mode 100644 clones/lisp/www.cliki.net/CL-VECTORS.html delete mode 100644 clones/lisp/www.cliki.net/CL-WEBDAV.html delete mode 100644 clones/lisp/www.cliki.net/CL-WHO.html delete mode 100644 clones/lisp/www.cliki.net/CL-WIKI.html delete mode 100644 clones/lisp/www.cliki.net/CL-Weblocks.html delete mode 100644 clones/lisp/www.cliki.net/CL-Wiki.html delete mode 100644 clones/lisp/www.cliki.net/CL-Wise.html delete mode 100644 clones/lisp/www.cliki.net/CL-XML.html delete mode 100644 clones/lisp/www.cliki.net/CL-Yacc.html delete mode 100644 clones/lisp/www.cliki.net/CL-ZEROCONF.html delete mode 100644 clones/lisp/www.cliki.net/CLACHE.html delete mode 100644 clones/lisp/www.cliki.net/CLAD.html delete mode 100644 clones/lisp/www.cliki.net/CLAIM.html delete mode 100644 clones/lisp/www.cliki.net/CLAW.html delete mode 100644 clones/lisp/www.cliki.net/CLAWK.html delete mode 100644 clones/lisp/www.cliki.net/CLCB.html delete mode 100644 clones/lisp/www.cliki.net/CLCE.html delete mode 100644 clones/lisp/www.cliki.net/CLDB.html delete mode 100644 clones/lisp/www.cliki.net/CLDOC.html delete mode 100644 clones/lisp/www.cliki.net/CLEE.html delete mode 100644 clones/lisp/www.cliki.net/CLERIC.html delete mode 100644 clones/lisp/www.cliki.net/CLEWS.html delete mode 100644 clones/lisp/www.cliki.net/CLFSWM.html delete mode 100644 clones/lisp/www.cliki.net/CLG.html delete mode 100644 clones/lisp/www.cliki.net/CLHP.html delete mode 100644 clones/lisp/www.cliki.net/CLHS.html delete mode 100644 clones/lisp/www.cliki.net/CLIM-desktop.html delete mode 100644 clones/lisp/www.cliki.net/CLIM.html delete mode 100644 clones/lisp/www.cliki.net/CLIO.html delete mode 100644 clones/lisp/www.cliki.net/CLISP-Shell.html delete mode 100644 clones/lisp/www.cliki.net/CLISP.html delete mode 100644 clones/lisp/www.cliki.net/CLJWT.html delete mode 100644 clones/lisp/www.cliki.net/CLLIB.html delete mode 100644 clones/lisp/www.cliki.net/CLM.html delete mode 100644 clones/lisp/www.cliki.net/CLNUPlot.html delete mode 100644 clones/lisp/www.cliki.net/CLOCC-PORT.html delete mode 100644 clones/lisp/www.cliki.net/CLOCC.html delete mode 100644 clones/lisp/www.cliki.net/CLOG.html delete mode 100644 clones/lisp/www.cliki.net/CLON.html delete mode 100644 clones/lisp/www.cliki.net/CLORB.html delete mode 100644 clones/lisp/www.cliki.net/CLOS.html delete mode 100644 clones/lisp/www.cliki.net/CLOSER-MOP.html delete mode 100644 clones/lisp/www.cliki.net/CLPM.html delete mode 100644 clones/lisp/www.cliki.net/CLPMR.html delete mode 100644 clones/lisp/www.cliki.net/CLPfAI.html delete mode 100644 clones/lisp/www.cliki.net/CLPython.html delete mode 100644 clones/lisp/www.cliki.net/CLSQL-ORM.html delete mode 100644 clones/lisp/www.cliki.net/CLSQL-helper.html delete mode 100644 clones/lisp/www.cliki.net/CLSQL.html delete mode 100644 clones/lisp/www.cliki.net/CLSS.html delete mode 100644 clones/lisp/www.cliki.net/CLTIO.html delete mode 100644 clones/lisp/www.cliki.net/CLTL2.html delete mode 100644 clones/lisp/www.cliki.net/CLUE.html delete mode 100644 clones/lisp/www.cliki.net/CLUS.html delete mode 100644 clones/lisp/www.cliki.net/CLUnit.html delete mode 100644 clones/lisp/www.cliki.net/CLUnit2.html delete mode 100644 clones/lisp/www.cliki.net/CLVM.html delete mode 100644 clones/lisp/www.cliki.net/CLWeb.html delete mode 100644 clones/lisp/www.cliki.net/CLX Manual.html delete mode 100644 clones/lisp/www.cliki.net/CLX-CURSOR.html delete mode 100644 clones/lisp/www.cliki.net/CLX-TRUETYPE.html delete mode 100644 clones/lisp/www.cliki.net/CLX.html delete mode 100644 clones/lisp/www.cliki.net/CLXS.html delete mode 100644 clones/lisp/www.cliki.net/CLiCC.html delete mode 100644 clones/lisp/www.cliki.net/CLiMP.html delete mode 100644 clones/lisp/www.cliki.net/CLiki Bugs.html delete mode 100644 clones/lisp/www.cliki.net/CLiki Content.html delete mode 100644 clones/lisp/www.cliki.net/CLiki Sandbox.html delete mode 100644 clones/lisp/www.cliki.net/CLiki Style.html delete mode 100644 clones/lisp/www.cliki.net/CLiki.html delete mode 100644 clones/lisp/www.cliki.net/CLimacs.html delete mode 100644 clones/lisp/www.cliki.net/CLinch.html delete mode 100644 clones/lisp/www.cliki.net/CLisp.html delete mode 100644 clones/lisp/www.cliki.net/CLplusJ.html delete mode 100644 clones/lisp/www.cliki.net/CLtL2.html delete mode 100644 clones/lisp/www.cliki.net/CMS.html delete mode 100644 clones/lisp/www.cliki.net/CMU AI Repository.html delete mode 100644 clones/lisp/www.cliki.net/CMU AI repository.html delete mode 100644 clones/lisp/www.cliki.net/CMUCL Hints.html delete mode 100644 clones/lisp/www.cliki.net/CMUCL on Debian.html delete mode 100644 clones/lisp/www.cliki.net/CMUCL.html delete mode 100644 clones/lisp/www.cliki.net/COLLECTING.html delete mode 100644 clones/lisp/www.cliki.net/COM.INFORMATIMAGO.SUSV3.html delete mode 100644 clones/lisp/www.cliki.net/COMFY-6502.html delete mode 100644 clones/lisp/www.cliki.net/COMPOSE.html delete mode 100644 clones/lisp/www.cliki.net/COMPUTABLE-REALS.html delete mode 100644 clones/lisp/www.cliki.net/CONSPACK.html delete mode 100644 clones/lisp/www.cliki.net/CORBA.html delete mode 100644 clones/lisp/www.cliki.net/CPS.html delete mode 100644 clones/lisp/www.cliki.net/CRACL.html delete mode 100644 clones/lisp/www.cliki.net/CRC-32.html delete mode 100644 clones/lisp/www.cliki.net/CSS-Selectors.html delete mode 100644 clones/lisp/www.cliki.net/CSS.html delete mode 100644 clones/lisp/www.cliki.net/CSV (library).html delete mode 100644 clones/lisp/www.cliki.net/CSV.html delete mode 100644 clones/lisp/www.cliki.net/CXML.html delete mode 100644 clones/lisp/www.cliki.net/Calispel.html delete mode 100644 clones/lisp/www.cliki.net/Case sensitivity.html delete mode 100644 clones/lisp/www.cliki.net/Caveman.html delete mode 100644 clones/lisp/www.cliki.net/Cedilla.html delete mode 100644 clones/lisp/www.cliki.net/Cells.html delete mode 100644 clones/lisp/www.cliki.net/Celtk.html delete mode 100644 clones/lisp/www.cliki.net/Cerberus.html delete mode 100644 clones/lisp/www.cliki.net/Chameleon.html delete mode 100644 clones/lisp/www.cliki.net/ChanL.html delete mode 100644 clones/lisp/www.cliki.net/Character encoding.html delete mode 100644 clones/lisp/www.cliki.net/Charles Stewart.html delete mode 100644 clones/lisp/www.cliki.net/CheckL.html delete mode 100644 clones/lisp/www.cliki.net/Chemboy.html delete mode 100644 clones/lisp/www.cliki.net/Chipz.html delete mode 100644 clones/lisp/www.cliki.net/Chirp.html delete mode 100644 clones/lisp/www.cliki.net/Chris Capel.html delete mode 100644 clones/lisp/www.cliki.net/Christian Lynbech.html delete mode 100644 clones/lisp/www.cliki.net/Christophe.html delete mode 100644 clones/lisp/www.cliki.net/Christopher Browne.html delete mode 100644 clones/lisp/www.cliki.net/Chun Tian (binghe).html delete mode 100644 clones/lisp/www.cliki.net/Chunga.html delete mode 100644 clones/lisp/www.cliki.net/Cl-BUNNY - RabbitMQ Client.html delete mode 100644 clones/lisp/www.cliki.net/Clack.html delete mode 100644 clones/lisp/www.cliki.net/Clasp.html delete mode 100644 clones/lisp/www.cliki.net/Clavier.html delete mode 100644 clones/lisp/www.cliki.net/Cldoc.html delete mode 100644 clones/lisp/www.cliki.net/Cletris.html delete mode 100644 clones/lisp/www.cliki.net/Clickr.html delete mode 100644 clones/lisp/www.cliki.net/Cliconv.html delete mode 100644 clones/lisp/www.cliki.net/Clifford Thompson.html delete mode 100644 clones/lisp/www.cliki.net/Climacs.html delete mode 100644 clones/lisp/www.cliki.net/Climc.html delete mode 100644 clones/lisp/www.cliki.net/Climon.html delete mode 100644 clones/lisp/www.cliki.net/Clint Moore.html delete mode 100644 clones/lisp/www.cliki.net/Clip.html delete mode 100644 clones/lisp/www.cliki.net/Clisp.html delete mode 100644 clones/lisp/www.cliki.net/Clobber.html delete mode 100644 clones/lisp/www.cliki.net/Clocc.html delete mode 100644 clones/lisp/www.cliki.net/Clon.html delete mode 100644 clones/lisp/www.cliki.net/Closer to MOP.html delete mode 100644 clones/lisp/www.cliki.net/CloserLookAtCharacters.html delete mode 100644 clones/lisp/www.cliki.net/CloserLookAtHemlock.html delete mode 100644 clones/lisp/www.cliki.net/CloserLookAtSyntax.html delete mode 100644 clones/lisp/www.cliki.net/Closette.html delete mode 100644 clones/lisp/www.cliki.net/Closure-html.html delete mode 100644 clones/lisp/www.cliki.net/Closure.html delete mode 100644 clones/lisp/www.cliki.net/Clot.html delete mode 100644 clones/lisp/www.cliki.net/Clouseau.html delete mode 100644 clones/lisp/www.cliki.net/Clozure.html delete mode 100644 clones/lisp/www.cliki.net/Clss.html delete mode 100644 clones/lisp/www.cliki.net/Cmucl.html delete mode 100644 clones/lisp/www.cliki.net/Cobstor.html delete mode 100644 clones/lisp/www.cliki.net/Cocoa.html delete mode 100644 clones/lisp/www.cliki.net/Coding Convention.html delete mode 100644 clones/lisp/www.cliki.net/Colleen.html delete mode 100644 clones/lisp/www.cliki.net/Common Lisp Controller.html delete mode 100644 clones/lisp/www.cliki.net/Common Lisp GTK-Server Wrapper.html delete mode 100644 clones/lisp/www.cliki.net/Common Lisp Implementation.html delete mode 100644 clones/lisp/www.cliki.net/Common Lisp Library Audience Expansion Toolkit.html delete mode 100644 clones/lisp/www.cliki.net/Common Lisp Music.html delete mode 100644 clones/lisp/www.cliki.net/Common Lisp Persistency Manager.html delete mode 100644 clones/lisp/www.cliki.net/Common Lisp Reasoner.html delete mode 100644 clones/lisp/www.cliki.net/Common Lisp Recipes.html delete mode 100644 clones/lisp/www.cliki.net/Common Lisp Utilities.html delete mode 100644 clones/lisp/www.cliki.net/Common Lisp and gnuplot.html delete mode 100644 clones/lisp/www.cliki.net/Common Lisp implementation.html delete mode 100644 clones/lisp/www.cliki.net/Common Lisp utilities.html delete mode 100644 clones/lisp/www.cliki.net/Common Lisp.html delete mode 100644 clones/lisp/www.cliki.net/Common Music Notation.html delete mode 100644 clones/lisp/www.cliki.net/Common Music.html delete mode 100644 clones/lisp/www.cliki.net/Common lisp implementation.html delete mode 100644 clones/lisp/www.cliki.net/Common-Lisp-Controller.html delete mode 100644 clones/lisp/www.cliki.net/Common-Lisp.net.html delete mode 100644 clones/lisp/www.cliki.net/CommonLispPrevalence.html delete mode 100644 clones/lisp/www.cliki.net/CommonQt.html delete mode 100644 clones/lisp/www.cliki.net/Community.html delete mode 100644 clones/lisp/www.cliki.net/Compo.html delete mode 100644 clones/lisp/www.cliki.net/Compression.html delete mode 100644 clones/lisp/www.cliki.net/Concrete-Syntax-Tree.html delete mode 100644 clones/lisp/www.cliki.net/Concurrency.html delete mode 100644 clones/lisp/www.cliki.net/Conference.html delete mode 100644 clones/lisp/www.cliki.net/Configuration.html delete mode 100644 clones/lisp/www.cliki.net/Conrad Barski.html delete mode 100644 clones/lisp/www.cliki.net/Consfigurator.html delete mode 100644 clones/lisp/www.cliki.net/Consolidation.html delete mode 100644 clones/lisp/www.cliki.net/Context Lite.html delete mode 100644 clones/lisp/www.cliki.net/ContextL.html delete mode 100644 clones/lisp/www.cliki.net/Convenience library.html delete mode 100644 clones/lisp/www.cliki.net/Corba.html delete mode 100644 clones/lisp/www.cliki.net/CoreServer.html delete mode 100644 clones/lisp/www.cliki.net/Corman Common Lisp.html delete mode 100644 clones/lisp/www.cliki.net/Cornel.html delete mode 100644 clones/lisp/www.cliki.net/Cosmin Stejerean.html delete mode 100644 clones/lisp/www.cliki.net/Craig Brozefsky.html delete mode 100644 clones/lisp/www.cliki.net/Craig Lanning.html delete mode 100644 clones/lisp/www.cliki.net/Creating Executables.html delete mode 100644 clones/lisp/www.cliki.net/Cryptography.html delete mode 100644 clones/lisp/www.cliki.net/Curl.html delete mode 100644 clones/lisp/www.cliki.net/Current recommended libraries.html delete mode 100644 clones/lisp/www.cliki.net/Cusp.html delete mode 100644 clones/lisp/www.cliki.net/Cyclosis.html delete mode 100644 clones/lisp/www.cliki.net/Cygwin.html delete mode 100644 clones/lisp/www.cliki.net/Cyrus Harmon.html delete mode 100644 clones/lisp/www.cliki.net/D.html delete mode 100644 clones/lisp/www.cliki.net/DBC.html delete mode 100644 clones/lisp/www.cliki.net/DECIMAL-NUMBER.html delete mode 100644 clones/lisp/www.cliki.net/DEFINER.html delete mode 100644 clones/lisp/www.cliki.net/DEFLATE.html delete mode 100644 clones/lisp/www.cliki.net/DEFLEXER.html delete mode 100644 clones/lisp/www.cliki.net/DEXADOR.html delete mode 100644 clones/lisp/www.cliki.net/DFSG.html delete mode 100644 clones/lisp/www.cliki.net/DOM.html delete mode 100644 clones/lisp/www.cliki.net/DRAKMA.html delete mode 100644 clones/lisp/www.cliki.net/DTP Prover.html delete mode 100644 clones/lisp/www.cliki.net/Dan Moniz.html delete mode 100644 clones/lisp/www.cliki.net/DanMuller.html delete mode 100644 clones/lisp/www.cliki.net/Dandelion.html delete mode 100644 clones/lisp/www.cliki.net/Daniel Barlow.html delete mode 100644 clones/lisp/www.cliki.net/Daniel Kochmański.html delete mode 100644 clones/lisp/www.cliki.net/Daniel Lowe.html delete mode 100644 clones/lisp/www.cliki.net/Daniel Weinreb.html delete mode 100644 clones/lisp/www.cliki.net/Darian Lanx.html delete mode 100644 clones/lisp/www.cliki.net/Darwin.html delete mode 100644 clones/lisp/www.cliki.net/Data Structure.html delete mode 100644 clones/lisp/www.cliki.net/Data formats.html delete mode 100644 clones/lisp/www.cliki.net/Data structure.html delete mode 100644 clones/lisp/www.cliki.net/DataMiningTools Lisp slides.html delete mode 100644 clones/lisp/www.cliki.net/Database.html delete mode 100644 clones/lisp/www.cliki.net/Dataflow.html delete mode 100644 clones/lisp/www.cliki.net/Date-Calc.html delete mode 100644 clones/lisp/www.cliki.net/Datoura.html delete mode 100644 clones/lisp/www.cliki.net/Dave Cooper.html delete mode 100644 clones/lisp/www.cliki.net/Dave Pearson.html delete mode 100644 clones/lisp/www.cliki.net/Dave Warner.html delete mode 100644 clones/lisp/www.cliki.net/David A. Wheeler.html delete mode 100644 clones/lisp/www.cliki.net/David Botton.html delete mode 100644 clones/lisp/www.cliki.net/David Golden.html delete mode 100644 clones/lisp/www.cliki.net/David Lindes.html delete mode 100644 clones/lisp/www.cliki.net/David Mullen.html delete mode 100644 clones/lisp/www.cliki.net/David O'Toole.html delete mode 100644 clones/lisp/www.cliki.net/David Owen.html delete mode 100644 clones/lisp/www.cliki.net/David Steuber.html delete mode 100644 clones/lisp/www.cliki.net/David_Douthitt.html delete mode 100644 clones/lisp/www.cliki.net/Debian Package.html delete mode 100644 clones/lisp/www.cliki.net/Debian package.html delete mode 100644 clones/lisp/www.cliki.net/Debian.html delete mode 100644 clones/lisp/www.cliki.net/DebianIRC.html delete mode 100644 clones/lisp/www.cliki.net/Debugging.html delete mode 100644 clones/lisp/www.cliki.net/Decimals.html delete mode 100644 clones/lisp/www.cliki.net/Declt.html delete mode 100644 clones/lisp/www.cliki.net/Demyltify.html delete mode 100644 clones/lisp/www.cliki.net/Dennis Decker Jensen.html delete mode 100644 clones/lisp/www.cliki.net/Deployment.html delete mode 100644 clones/lisp/www.cliki.net/Design by contract.html delete mode 100644 clones/lisp/www.cliki.net/Development.html delete mode 100644 clones/lisp/www.cliki.net/Dexador.html delete mode 100644 clones/lisp/www.cliki.net/Didier Verna.html delete mode 100644 clones/lisp/www.cliki.net/Difference between JSON libraries.html delete mode 100644 clones/lisp/www.cliki.net/Dimitry Gashinsky.html delete mode 100644 clones/lisp/www.cliki.net/Distributed.html delete mode 100644 clones/lisp/www.cliki.net/Djula.html delete mode 100644 clones/lisp/www.cliki.net/Dmitri Ivanov.html delete mode 100644 clones/lisp/www.cliki.net/Dmitry Zhukov.html delete mode 100644 clones/lisp/www.cliki.net/Document preparation.html delete mode 100644 clones/lisp/www.cliki.net/Document.html delete mode 100644 clones/lisp/www.cliki.net/Documentation Tool.html delete mode 100644 clones/lisp/www.cliki.net/Documentation tool.html delete mode 100644 clones/lisp/www.cliki.net/Documentation.html delete mode 100644 clones/lisp/www.cliki.net/Donald Fisk.html delete mode 100644 clones/lisp/www.cliki.net/Doors.html delete mode 100644 clones/lisp/www.cliki.net/Doug Tolton.html delete mode 100644 clones/lisp/www.cliki.net/Drakma-async.html delete mode 100644 clones/lisp/www.cliki.net/Drakma.html delete mode 100644 clones/lisp/www.cliki.net/Drew McDermott.html delete mode 100644 clones/lisp/www.cliki.net/Duologue.html delete mode 100644 clones/lisp/www.cliki.net/Dwight Holman.html delete mode 100644 clones/lisp/www.cliki.net/Dynamic ADTs.html delete mode 100644 clones/lisp/www.cliki.net/E-on-CL.html delete mode 100644 clones/lisp/www.cliki.net/ECL.html delete mode 100644 clones/lisp/www.cliki.net/ELASTIC-NEWLINE.html delete mode 100644 clones/lisp/www.cliki.net/ELI.html delete mode 100644 clones/lisp/www.cliki.net/ELisp.html delete mode 100644 clones/lisp/www.cliki.net/EMACS.html delete mode 100644 clones/lisp/www.cliki.net/EMI.html delete mode 100644 clones/lisp/www.cliki.net/EQL.html delete mode 100644 clones/lisp/www.cliki.net/ESRAP.html delete mode 100644 clones/lisp/www.cliki.net/EXPT-MOD.html delete mode 100644 clones/lisp/www.cliki.net/EXTREMUM.html delete mode 100644 clones/lisp/www.cliki.net/Eager Future2.html delete mode 100644 clones/lisp/www.cliki.net/Eager-Future.html delete mode 100644 clones/lisp/www.cliki.net/Eclipse.html delete mode 100644 clones/lisp/www.cliki.net/Edgar Goncalves.html delete mode 100644 clones/lisp/www.cliki.net/Edi Weitz.html delete mode 100644 clones/lisp/www.cliki.net/Editing Lisp Code with Emacs.html delete mode 100644 clones/lisp/www.cliki.net/Editor Hints.html delete mode 100644 clones/lisp/www.cliki.net/Edward O'Connor.html delete mode 100644 clones/lisp/www.cliki.net/Eirik Mikkelsen.html delete mode 100644 clones/lisp/www.cliki.net/Electronics.html delete mode 100644 clones/lisp/www.cliki.net/Elephant.html delete mode 100644 clones/lisp/www.cliki.net/Emacs customizations.html delete mode 100644 clones/lisp/www.cliki.net/Emacs to CL Porting Attempts.html delete mode 100644 clones/lisp/www.cliki.net/Emacs.html delete mode 100644 clones/lisp/www.cliki.net/Enchant.html delete mode 100644 clones/lisp/www.cliki.net/Encline.html delete mode 100644 clones/lisp/www.cliki.net/Engelke Eschner.html delete mode 100644 clones/lisp/www.cliki.net/Eos.html delete mode 100644 clones/lisp/www.cliki.net/Epilog System and Episodic Logic.html delete mode 100644 clones/lisp/www.cliki.net/Erik Enge.html delete mode 100644 clones/lisp/www.cliki.net/Erik Greenwald.html delete mode 100644 clones/lisp/www.cliki.net/Erik Winkels.html delete mode 100644 clones/lisp/www.cliki.net/Ernestine.html delete mode 100644 clones/lisp/www.cliki.net/Erudite.html delete mode 100644 clones/lisp/www.cliki.net/Erwin J. Prinz.html delete mode 100644 clones/lisp/www.cliki.net/Esrap.html delete mode 100644 clones/lisp/www.cliki.net/Etiquette.html delete mode 100644 clones/lisp/www.cliki.net/Eugene Zaikonnikov.html delete mode 100644 clones/lisp/www.cliki.net/European Common Lisp Meeting, April 2005.html delete mode 100644 clones/lisp/www.cliki.net/European Common Lisp Meeting, April 2006.html delete mode 100644 clones/lisp/www.cliki.net/European Common Lisp Meeting, April 2008.html delete mode 100644 clones/lisp/www.cliki.net/European LISP and Scheme Workshop.html delete mode 100644 clones/lisp/www.cliki.net/European Lisp Symposium 2009.html delete mode 100644 clones/lisp/www.cliki.net/European Lisp and Scheme Workshop.html delete mode 100644 clones/lisp/www.cliki.net/Exercises.html delete mode 100644 clones/lisp/www.cliki.net/Exporting Struct-Related Functions.html delete mode 100644 clones/lisp/www.cliki.net/Express Engine.html delete mode 100644 clones/lisp/www.cliki.net/Exscribe.html delete mode 100644 clones/lisp/www.cliki.net/Extension webactions.html delete mode 100644 clones/lisp/www.cliki.net/F2CL.html delete mode 100644 clones/lisp/www.cliki.net/FAQ.html delete mode 100644 clones/lisp/www.cliki.net/FEMLISP.html delete mode 100644 clones/lisp/www.cliki.net/FFA.html delete mode 100644 clones/lisp/www.cliki.net/FFI.html delete mode 100644 clones/lisp/www.cliki.net/FFIGEN.html delete mode 100644 clones/lisp/www.cliki.net/FFT.html delete mode 100644 clones/lisp/www.cliki.net/FILE-TYPES.html delete mode 100644 clones/lisp/www.cliki.net/FORMAT cheat sheet.html delete mode 100644 clones/lisp/www.cliki.net/FORMAT.html delete mode 100644 clones/lisp/www.cliki.net/FReT.html delete mode 100644 clones/lisp/www.cliki.net/FSET.html delete mode 100644 clones/lisp/www.cliki.net/FSF.html delete mode 100644 clones/lisp/www.cliki.net/FSVD.html delete mode 100644 clones/lisp/www.cliki.net/FSet.html delete mode 100644 clones/lisp/www.cliki.net/FTP.html delete mode 100644 clones/lisp/www.cliki.net/FTW.html delete mode 100644 clones/lisp/www.cliki.net/FUCC.html delete mode 100644 clones/lisp/www.cliki.net/Fabricio Chalub.html delete mode 100644 clones/lisp/www.cliki.net/Factorial.html delete mode 100644 clones/lisp/www.cliki.net/Fare Rideau.html delete mode 100644 clones/lisp/www.cliki.net/Fare-matcher.html delete mode 100644 clones/lisp/www.cliki.net/Faré.html delete mode 100644 clones/lisp/www.cliki.net/FastCGI.html delete mode 100644 clones/lisp/www.cliki.net/FastIndex.html delete mode 100644 clones/lisp/www.cliki.net/Favorite Lisp books.html delete mode 100644 clones/lisp/www.cliki.net/Fear of Lisp.html delete mode 100644 clones/lisp/www.cliki.net/Features.html delete mode 100644 clones/lisp/www.cliki.net/Felip.html delete mode 100644 clones/lisp/www.cliki.net/Femlisp.html delete mode 100644 clones/lisp/www.cliki.net/Fibonacci.html delete mode 100644 clones/lisp/www.cliki.net/File Format.html delete mode 100644 clones/lisp/www.cliki.net/Fileworthy.html delete mode 100644 clones/lisp/www.cliki.net/Filtered Functions.html delete mode 100644 clones/lisp/www.cliki.net/Firephp.html delete mode 100644 clones/lisp/www.cliki.net/FiveAM.html delete mode 100644 clones/lisp/www.cliki.net/Flexi-streams.html delete mode 100644 clones/lisp/www.cliki.net/Flexichain.html delete mode 100644 clones/lisp/www.cliki.net/Foil.html delete mode 100644 clones/lisp/www.cliki.net/Fons Haffmans.html delete mode 100644 clones/lisp/www.cliki.net/Foo.html delete mode 100644 clones/lisp/www.cliki.net/Formlets.html delete mode 100644 clones/lisp/www.cliki.net/Forth.html delete mode 100644 clones/lisp/www.cliki.net/Fortran.html delete mode 100644 clones/lisp/www.cliki.net/Forward Discrete Cosine Transform.html delete mode 100644 clones/lisp/www.cliki.net/Fract.html delete mode 100644 clones/lisp/www.cliki.net/Fractal hacks.html delete mode 100644 clones/lisp/www.cliki.net/Francis Leboutte.html delete mode 100644 clones/lisp/www.cliki.net/Francisco Vides.html delete mode 100644 clones/lisp/www.cliki.net/Fred Nicolier.html delete mode 100644 clones/lisp/www.cliki.net/Free Software.html delete mode 100644 clones/lisp/www.cliki.net/Free.html delete mode 100644 clones/lisp/www.cliki.net/FreeBSD.html delete mode 100644 clones/lisp/www.cliki.net/FriedrichDominicus.html delete mode 100644 clones/lisp/www.cliki.net/Funds.html delete mode 100644 clones/lisp/www.cliki.net/GBBOpen.html delete mode 100644 clones/lisp/www.cliki.net/GBBopen.html delete mode 100644 clones/lisp/www.cliki.net/GCL ANSI Test Suite.html delete mode 100644 clones/lisp/www.cliki.net/GCL.html delete mode 100644 clones/lisp/www.cliki.net/GECO.html delete mode 100644 clones/lisp/www.cliki.net/GENHASH.html delete mode 100644 clones/lisp/www.cliki.net/GENSYMLET.html delete mode 100644 clones/lisp/www.cliki.net/GLOS.html delete mode 100644 clones/lisp/www.cliki.net/GMane.html delete mode 100644 clones/lisp/www.cliki.net/GNOME.html delete mode 100644 clones/lisp/www.cliki.net/GNU emacs.html delete mode 100644 clones/lisp/www.cliki.net/GNU.html delete mode 100644 clones/lisp/www.cliki.net/GPGME.html delete mode 100644 clones/lisp/www.cliki.net/GPL.html delete mode 100644 clones/lisp/www.cliki.net/GPL3.html delete mode 100644 clones/lisp/www.cliki.net/GRT Raytracer.html delete mode 100644 clones/lisp/www.cliki.net/GSLL.html delete mode 100644 clones/lisp/www.cliki.net/GSoC 2011 Parenscript project page.html delete mode 100644 clones/lisp/www.cliki.net/GSoC.html delete mode 100644 clones/lisp/www.cliki.net/GTFL.html delete mode 100644 clones/lisp/www.cliki.net/GTK binding.html delete mode 100644 clones/lisp/www.cliki.net/GTK-CFFI.html delete mode 100644 clones/lisp/www.cliki.net/GTK.html delete mode 100644 clones/lisp/www.cliki.net/GUD.html delete mode 100644 clones/lisp/www.cliki.net/GUI.html delete mode 100644 clones/lisp/www.cliki.net/Gabor Melis.html delete mode 100644 clones/lisp/www.cliki.net/Gambol.html delete mode 100644 clones/lisp/www.cliki.net/Game.html delete mode 100644 clones/lisp/www.cliki.net/Garnet.html delete mode 100644 clones/lisp/www.cliki.net/Gary King.html delete mode 100644 clones/lisp/www.cliki.net/Geiriadur.html delete mode 100644 clones/lisp/www.cliki.net/Gelisp.html delete mode 100644 clones/lisp/www.cliki.net/Gene Michael Stover.html delete mode 100644 clones/lisp/www.cliki.net/General accumulator.html delete mode 100644 clones/lisp/www.cliki.net/Gentoo.html delete mode 100644 clones/lisp/www.cliki.net/Geoff Cant.html delete mode 100644 clones/lisp/www.cliki.net/Geospatial.html delete mode 100644 clones/lisp/www.cliki.net/Getting Started.html delete mode 100644 clones/lisp/www.cliki.net/GettingStartedWithHemlock.html delete mode 100644 clones/lisp/www.cliki.net/Giovanni Gigante.html delete mode 100644 clones/lisp/www.cliki.net/Glade.html delete mode 100644 clones/lisp/www.cliki.net/Gmane.html delete mode 100644 clones/lisp/www.cliki.net/Gnome.html delete mode 100644 clones/lisp/www.cliki.net/Goatee.html delete mode 100644 clones/lisp/www.cliki.net/Goheeca.html delete mode 100644 clones/lisp/www.cliki.net/Gordon.html delete mode 100644 clones/lisp/www.cliki.net/Graduate Student.html delete mode 100644 clones/lisp/www.cliki.net/Graph.html delete mode 100644 clones/lisp/www.cliki.net/Grapher-Server.html delete mode 100644 clones/lisp/www.cliki.net/Graphic-Forms.html delete mode 100644 clones/lisp/www.cliki.net/Graphics Library.html delete mode 100644 clones/lisp/www.cliki.net/Graphics Toolkit.html delete mode 100644 clones/lisp/www.cliki.net/Graphics library.html delete mode 100644 clones/lisp/www.cliki.net/Gray Streams.html delete mode 100644 clones/lisp/www.cliki.net/Gray streams.html delete mode 100644 clones/lisp/www.cliki.net/Greg Pfeil.html delete mode 100644 clones/lisp/www.cliki.net/Gregory Bird.html delete mode 100644 clones/lisp/www.cliki.net/Gsharp.html delete mode 100644 clones/lisp/www.cliki.net/Gsoc.html delete mode 100644 clones/lisp/www.cliki.net/Gtk.html delete mode 100644 clones/lisp/www.cliki.net/Gustavo Lacerda.html delete mode 100644 clones/lisp/www.cliki.net/HEΛP.html delete mode 100644 clones/lisp/www.cliki.net/HEΛP.html delete mode 100644 clones/lisp/www.cliki.net/HH-AWS.html delete mode 100644 clones/lisp/www.cliki.net/HT-AJAX.html delete mode 100644 clones/lisp/www.cliki.net/HT-SIMPLE-AJAX.html delete mode 100644 clones/lisp/www.cliki.net/HTML Generator.html delete mode 100644 clones/lisp/www.cliki.net/HTML Parser.html delete mode 100644 clones/lisp/www.cliki.net/HTML Template.html delete mode 100644 clones/lisp/www.cliki.net/HTML generator.html delete mode 100644 clones/lisp/www.cliki.net/HTML parser.html delete mode 100644 clones/lisp/www.cliki.net/HTML template.html delete mode 100644 clones/lisp/www.cliki.net/HTML-TEMPLATE.html delete mode 100644 clones/lisp/www.cliki.net/HTML-template.html delete mode 100644 clones/lisp/www.cliki.net/HTML.html delete mode 100644 clones/lisp/www.cliki.net/HTTP Client.html delete mode 100644 clones/lisp/www.cliki.net/HTTP Server.html delete mode 100644 clones/lisp/www.cliki.net/HTTP client.html delete mode 100644 clones/lisp/www.cliki.net/HTTP server.html delete mode 100644 clones/lisp/www.cliki.net/HTTPD0.html delete mode 100644 clones/lisp/www.cliki.net/HUNCHENTOOT.html delete mode 100644 clones/lisp/www.cliki.net/Harald Hanche-Olsen.html delete mode 100644 clones/lisp/www.cliki.net/Harley Gorrell.html delete mode 100644 clones/lisp/www.cliki.net/HaroldoStenger.html delete mode 100644 clones/lisp/www.cliki.net/Hemlock.html delete mode 100644 clones/lisp/www.cliki.net/Henry Baker.html delete mode 100644 clones/lisp/www.cliki.net/Heresy.html delete mode 100644 clones/lisp/www.cliki.net/Hiper.html delete mode 100644 clones/lisp/www.cliki.net/Hoan Ton-That.html delete mode 100644 clones/lisp/www.cliki.net/Humbler.html delete mode 100644 clones/lisp/www.cliki.net/Humor.html delete mode 100644 clones/lisp/www.cliki.net/Hunchensocket.html delete mode 100644 clones/lisp/www.cliki.net/Hunchentoot LSP.html delete mode 100644 clones/lisp/www.cliki.net/Hunchentoot.html delete mode 100644 clones/lisp/www.cliki.net/HyperSpec.html delete mode 100644 clones/lisp/www.cliki.net/Hyperspec-Info.html delete mode 100644 clones/lisp/www.cliki.net/Hyperspec.html delete mode 100644 clones/lisp/www.cliki.net/IAmRasputin.html delete mode 100644 clones/lisp/www.cliki.net/ICanCAD.html delete mode 100644 clones/lisp/www.cliki.net/IDE.html delete mode 100644 clones/lisp/www.cliki.net/IE3FP.html delete mode 100644 clones/lisp/www.cliki.net/IGS Client.html delete mode 100644 clones/lisp/www.cliki.net/ILC 2003 Sightseeing.html delete mode 100644 clones/lisp/www.cliki.net/ILC 2003 sightseeing.html delete mode 100644 clones/lisp/www.cliki.net/ILISP.html delete mode 100644 clones/lisp/www.cliki.net/IMAGO.html delete mode 100644 clones/lisp/www.cliki.net/IMAP.html delete mode 100644 clones/lisp/www.cliki.net/IMCL.html delete mode 100644 clones/lisp/www.cliki.net/IMHO.html delete mode 100644 clones/lisp/www.cliki.net/IMPS.html delete mode 100644 clones/lisp/www.cliki.net/IOLib.html delete mode 100644 clones/lisp/www.cliki.net/IOlib-POSIX.html delete mode 100644 clones/lisp/www.cliki.net/IOlib.html delete mode 100644 clones/lisp/www.cliki.net/IPC.html delete mode 100644 clones/lisp/www.cliki.net/IPMI.html delete mode 100644 clones/lisp/www.cliki.net/IRC Quotes.html delete mode 100644 clones/lisp/www.cliki.net/IRC.html delete mode 100644 clones/lisp/www.cliki.net/IRONCLAD.html delete mode 100644 clones/lisp/www.cliki.net/IRS.html delete mode 100644 clones/lisp/www.cliki.net/ISC.html delete mode 100644 clones/lisp/www.cliki.net/ITERATE.html delete mode 100644 clones/lisp/www.cliki.net/ITS.html delete mode 100644 clones/lisp/www.cliki.net/Ian Eslick.html delete mode 100644 clones/lisp/www.cliki.net/Ignas Mikalajunas.html delete mode 100644 clones/lisp/www.cliki.net/Inaimathi.html delete mode 100644 clones/lisp/www.cliki.net/Incongruent Methods.html delete mode 100644 clones/lisp/www.cliki.net/Incudine.html delete mode 100644 clones/lisp/www.cliki.net/Infix.html delete mode 100644 clones/lisp/www.cliki.net/Infrequently Asked Questions.html delete mode 100644 clones/lisp/www.cliki.net/Integrate.html delete mode 100644 clones/lisp/www.cliki.net/International Lisp Conference 2002.html delete mode 100644 clones/lisp/www.cliki.net/International Lisp Conference 2003.html delete mode 100644 clones/lisp/www.cliki.net/International Lisp Conference 2005.html delete mode 100644 clones/lisp/www.cliki.net/International Lisp Conference 2007.html delete mode 100644 clones/lisp/www.cliki.net/International Lisp Conference 2009.html delete mode 100644 clones/lisp/www.cliki.net/International Lisp Conference 2010.html delete mode 100644 clones/lisp/www.cliki.net/Internationalization.html delete mode 100644 clones/lisp/www.cliki.net/Irc.html delete mode 100644 clones/lisp/www.cliki.net/Ironclad.html delete mode 100644 clones/lisp/www.cliki.net/Issue ADJOIN-SPECIFICATION.html delete mode 100644 clones/lisp/www.cliki.net/Issue APPLY-EXAMPLE-WRONG.html delete mode 100644 clones/lisp/www.cliki.net/Issue ARRAY-ELEMENT-TYPE-NIL.html delete mode 100644 clones/lisp/www.cliki.net/Issue ARRAY-UPGRADING-UNDECIDABLE.html delete mode 100644 clones/lisp/www.cliki.net/Issue BUTLAST-DOTTED-LIST.html delete mode 100644 clones/lisp/www.cliki.net/Issue CHECK-TYPE-EXAMPLE.html delete mode 100644 clones/lisp/www.cliki.net/Issue CLOSE-FILE-OPENED-WITH-SUPERSEDE.html delete mode 100644 clones/lisp/www.cliki.net/Issue COMPILER-MACRO-IMPLICIT-BLOCK.html delete mode 100644 clones/lisp/www.cliki.net/Issue DEFCLASS-READER-FUNCTION-NAME.html delete mode 100644 clones/lisp/www.cliki.net/Issue DEFCONSTANT-PREVIOUS-VALUE.html delete mode 100644 clones/lisp/www.cliki.net/Issue DEFGENERIC-METHOD-COMBINATION-NAME.html delete mode 100644 clones/lisp/www.cliki.net/Issue DEFGENERIC-MULTIPLE-DECLARE.html delete mode 100644 clones/lisp/www.cliki.net/Issue DEFINE-COMPILER-MACRO-DECLINE.html delete mode 100644 clones/lisp/www.cliki.net/Issue DEFINE-CONDITION-DOCUMENTATION.html delete mode 100644 clones/lisp/www.cliki.net/Issue DEFINE-CONDITION-SLOT-NAME.html delete mode 100644 clones/lisp/www.cliki.net/Issue DEFINE-CONDITION-WRITERS.html delete mode 100644 clones/lisp/www.cliki.net/Issue DEFINE-SETF-METHOD.html delete mode 100644 clones/lisp/www.cliki.net/Issue DEFMACRO-VALUES.html delete mode 100644 clones/lisp/www.cliki.net/Issue DESTRUCTURING-NIL.html delete mode 100644 clones/lisp/www.cliki.net/Issue DIGIT-CHAR-P-NOT-AN-ACTUAL-PREDICATE.html delete mode 100644 clones/lisp/www.cliki.net/Issue DO-SEMANTICS.html delete mode 100644 clones/lisp/www.cliki.net/Issue EQUAL-CIRCULAR-LIST.html delete mode 100644 clones/lisp/www.cliki.net/Issue ERROR-EXAMPLE.html delete mode 100644 clones/lisp/www.cliki.net/Issue FORMAT-RADIX-COMMACHAR.html delete mode 100644 clones/lisp/www.cliki.net/Issue FORMAT-RADIX-MISSING-RADIX.html delete mode 100644 clones/lisp/www.cliki.net/Issue FORMAT-RADIX-NONINTEGER.html delete mode 100644 clones/lisp/www.cliki.net/Issue FORMAT-TABULATE.html delete mode 100644 clones/lisp/www.cliki.net/Issue INCOMPLETE-CLASS.html delete mode 100644 clones/lisp/www.cliki.net/Issue LOOP-FINALLY-VARIABLES.html delete mode 100644 clones/lisp/www.cliki.net/Issue LOOP-WITH-NIL.html delete mode 100644 clones/lisp/www.cliki.net/Issue MAKE-INSTANCES-OBSOLETE-SYMBOL.html delete mode 100644 clones/lisp/www.cliki.net/Issue MERGE-PREDICATE-CALL.html delete mode 100644 clones/lisp/www.cliki.net/Issue PRINT-LENGTH-AND-STRUCTURES.html delete mode 100644 clones/lisp/www.cliki.net/Issue PRINTING-ARRAYS-READABLY.html delete mode 100644 clones/lisp/www.cliki.net/Issue PRINTING-SPACE.html delete mode 100644 clones/lisp/www.cliki.net/Issue PROG2-RETURN-VALUE.html delete mode 100644 clones/lisp/www.cliki.net/Issue READER-MACRO-VALUES.html delete mode 100644 clones/lisp/www.cliki.net/Issue RESTART-CASE-EXAMPLE.html delete mode 100644 clones/lisp/www.cliki.net/Issue SOME.html delete mode 100644 clones/lisp/www.cliki.net/Issue STANDARD-PACKAGE-NICKNAMES.html delete mode 100644 clones/lisp/www.cliki.net/Issue STANDARDIZED-RESTART-NAMES.html delete mode 100644 clones/lisp/www.cliki.net/Issue THE-VALUES.html delete mode 100644 clones/lisp/www.cliki.net/Issue TIME-ALWAYS-PRINTS.html delete mode 100644 clones/lisp/www.cliki.net/Issue VALUES-&ALLOW-OTHER-KEYS.html delete mode 100644 clones/lisp/www.cliki.net/Issue WITH-HASH-TABLE-ITERATOR-BINDING-TYPE.html delete mode 100644 clones/lisp/www.cliki.net/Issue template.html delete mode 100644 clones/lisp/www.cliki.net/Issue.html delete mode 100644 clones/lisp/www.cliki.net/Issue: FASL-DISTRIBUTION-BY-DEFAULT.html delete mode 100644 clones/lisp/www.cliki.net/Iterate.html delete mode 100644 clones/lisp/www.cliki.net/Ivan A. Kudryavtsev.html delete mode 100644 clones/lisp/www.cliki.net/Ivan Toshkov.html delete mode 100644 clones/lisp/www.cliki.net/JACOL.html delete mode 100644 clones/lisp/www.cliki.net/JARW.html delete mode 100644 clones/lisp/www.cliki.net/JCh.html delete mode 100644 clones/lisp/www.cliki.net/JPL-QUEUES.html delete mode 100644 clones/lisp/www.cliki.net/JSCL.html delete mode 100644 clones/lisp/www.cliki.net/JSON.html delete mode 100644 clones/lisp/www.cliki.net/JSS.html delete mode 100644 clones/lisp/www.cliki.net/Jabberwocky.html delete mode 100644 clones/lisp/www.cliki.net/Jack Unrue.html delete mode 100644 clones/lisp/www.cliki.net/James A. Crippen.html delete mode 100644 clones/lisp/www.cliki.net/James Wright.html delete mode 100644 clones/lisp/www.cliki.net/Jan Hoekstra.html delete mode 100644 clones/lisp/www.cliki.net/Janis Dzerins.html delete mode 100644 clones/lisp/www.cliki.net/Jason Stover.html delete mode 100644 clones/lisp/www.cliki.net/Jatha.html delete mode 100644 clones/lisp/www.cliki.net/Java.html delete mode 100644 clones/lisp/www.cliki.net/JavaScript.html delete mode 100644 clones/lisp/www.cliki.net/Javascript.html delete mode 100644 clones/lisp/www.cliki.net/Jean-Claude Beaudoin.html delete mode 100644 clones/lisp/www.cliki.net/Jean-Philippe Paradis.html delete mode 100644 clones/lisp/www.cliki.net/Jeff Bowden.html delete mode 100644 clones/lisp/www.cliki.net/Jens Grabarske.html delete mode 100644 clones/lisp/www.cliki.net/Jesper Louis Andersen.html delete mode 100644 clones/lisp/www.cliki.net/Jin-Cheng Guu.html delete mode 100644 clones/lisp/www.cliki.net/Jochen Schmidt.html delete mode 100644 clones/lisp/www.cliki.net/Joey Smith.html delete mode 100644 clones/lisp/www.cliki.net/Johannes Grødem.html delete mode 100644 clones/lisp/www.cliki.net/John Connors.html delete mode 100644 clones/lisp/www.cliki.net/John Fremlin.html delete mode 100644 clones/lisp/www.cliki.net/John Landahl.html delete mode 100644 clones/lisp/www.cliki.net/John Leuner.html delete mode 100644 clones/lisp/www.cliki.net/John Maraist.html delete mode 100644 clones/lisp/www.cliki.net/John McCarthy.html delete mode 100644 clones/lisp/www.cliki.net/John Wiseman.html delete mode 100644 clones/lisp/www.cliki.net/Jonathan.html delete mode 100644 clones/lisp/www.cliki.net/Jordan Katz.html delete mode 100644 clones/lisp/www.cliki.net/JosephOswald.html delete mode 100644 clones/lisp/www.cliki.net/Joshua Taylor.html delete mode 100644 clones/lisp/www.cliki.net/José María Ruiz.html delete mode 100644 clones/lisp/www.cliki.net/Juan Jose Garcia-Ripoll.html delete mode 100644 clones/lisp/www.cliki.net/Juan M. Bello Rivas.html delete mode 100644 clones/lisp/www.cliki.net/Juho Snellman.html delete mode 100644 clones/lisp/www.cliki.net/Julian Stecklina.html delete mode 100644 clones/lisp/www.cliki.net/Juri Pakaste.html delete mode 100644 clones/lisp/www.cliki.net/Jörg Höhle.html delete mode 100644 clones/lisp/www.cliki.net/KCL Family.html delete mode 100644 clones/lisp/www.cliki.net/KDE.html delete mode 100644 clones/lisp/www.cliki.net/KLMNEA.html delete mode 100644 clones/lisp/www.cliki.net/KPAX.html delete mode 100644 clones/lisp/www.cliki.net/KR.html delete mode 100644 clones/lisp/www.cliki.net/Kai Grossjohann.html delete mode 100644 clones/lisp/www.cliki.net/Keene.html delete mode 100644 clones/lisp/www.cliki.net/Keeping up with CLiki.html delete mode 100644 clones/lisp/www.cliki.net/Keith Bauer.html delete mode 100644 clones/lisp/www.cliki.net/Kelly McDonald.html delete mode 100644 clones/lisp/www.cliki.net/Kenneth Dickey.html delete mode 100644 clones/lisp/www.cliki.net/Kenny Tilton.html delete mode 100644 clones/lisp/www.cliki.net/Kevin Raison.html delete mode 100644 clones/lisp/www.cliki.net/Kevin Reid.html delete mode 100644 clones/lisp/www.cliki.net/Kevin Rosenberg.html delete mode 100644 clones/lisp/www.cliki.net/Kilian Sprotte.html delete mode 100644 clones/lisp/www.cliki.net/Knowledge Representation Systems.html delete mode 100644 clones/lisp/www.cliki.net/Knut Arild Erstad.html delete mode 100644 clones/lisp/www.cliki.net/L4.html delete mode 100644 clones/lisp/www.cliki.net/LALR.html delete mode 100644 clones/lisp/www.cliki.net/LASS.html delete mode 100644 clones/lisp/www.cliki.net/LDAP.html delete mode 100644 clones/lisp/www.cliki.net/LENS.html delete mode 100644 clones/lisp/www.cliki.net/LEXER.html delete mode 100644 clones/lisp/www.cliki.net/LGPL.html delete mode 100644 clones/lisp/www.cliki.net/LIFT.html delete mode 100644 clones/lisp/www.cliki.net/LIJOS.html delete mode 100644 clones/lisp/www.cliki.net/LISA.html delete mode 100644 clones/lisp/www.cliki.net/LISP-BINARY.html delete mode 100644 clones/lisp/www.cliki.net/LISP.html delete mode 100644 clones/lisp/www.cliki.net/LISPDEBUG.html delete mode 100644 clones/lisp/www.cliki.net/LISPWORKS.html delete mode 100644 clones/lisp/www.cliki.net/LLA.html delete mode 100644 clones/lisp/www.cliki.net/LLGPL.html delete mode 100644 clones/lisp/www.cliki.net/LLVM.html delete mode 100644 clones/lisp/www.cliki.net/LMDB.html delete mode 100644 clones/lisp/www.cliki.net/LML.html delete mode 100644 clones/lisp/www.cliki.net/LML2.html delete mode 100644 clones/lisp/www.cliki.net/LMud.html delete mode 100644 clones/lisp/www.cliki.net/LOCAL-TIME.html delete mode 100644 clones/lisp/www.cliki.net/LSE.html delete mode 100644 clones/lisp/www.cliki.net/LSP.html delete mode 100644 clones/lisp/www.cliki.net/LTK.html delete mode 100644 clones/lisp/www.cliki.net/LW-ADD-ONS.html delete mode 100644 clones/lisp/www.cliki.net/Land of Lisp.html delete mode 100644 clones/lisp/www.cliki.net/Langband.html delete mode 100644 clones/lisp/www.cliki.net/Language extension.html delete mode 100644 clones/lisp/www.cliki.net/Larry Clapp.html delete mode 100644 clones/lisp/www.cliki.net/Lars Brinkhoff.html delete mode 100644 clones/lisp/www.cliki.net/Lars Magne Ingebrigtsen.html delete mode 100644 clones/lisp/www.cliki.net/Lawrence Mitchell.html delete mode 100644 clones/lisp/www.cliki.net/Le Sursis.html delete mode 100644 clones/lisp/www.cliki.net/Lem.html delete mode 100644 clones/lisp/www.cliki.net/Lennart Staflin.html delete mode 100644 clones/lisp/www.cliki.net/Leonardo Varuzza.html delete mode 100644 clones/lisp/www.cliki.net/Let Over Lambda.html delete mode 100644 clones/lisp/www.cliki.net/Levenshtein.html delete mode 100644 clones/lisp/www.cliki.net/Levente Mészáros.html delete mode 100644 clones/lisp/www.cliki.net/Lexer.html delete mode 100644 clones/lisp/www.cliki.net/Libraries.html delete mode 100644 clones/lisp/www.cliki.net/Library.html delete mode 100644 clones/lisp/www.cliki.net/Libre Software Meeting 2002.html delete mode 100644 clones/lisp/www.cliki.net/Libre Software Meeting 2004.html delete mode 100644 clones/lisp/www.cliki.net/Libre Software Meeting 2005.html delete mode 100644 clones/lisp/www.cliki.net/Libre Software Meeting 2006.html delete mode 100644 clones/lisp/www.cliki.net/Libre Software Meeting.html delete mode 100644 clones/lisp/www.cliki.net/License.html delete mode 100644 clones/lisp/www.cliki.net/Limp.html delete mode 100644 clones/lisp/www.cliki.net/LinJ.html delete mode 100644 clones/lisp/www.cliki.net/Lindenmayer systems.html delete mode 100644 clones/lisp/www.cliki.net/Linear Algebra.html delete mode 100644 clones/lisp/www.cliki.net/Linear-algebra.html delete mode 100644 clones/lisp/www.cliki.net/Linedit.html delete mode 100644 clones/lisp/www.cliki.net/Lint.html delete mode 100644 clones/lisp/www.cliki.net/Linux VLM workarounds.html delete mode 100644 clones/lisp/www.cliki.net/Linux.html delete mode 100644 clones/lisp/www.cliki.net/Liskell.html delete mode 100644 clones/lisp/www.cliki.net/Lisp - Next Generation.html delete mode 100644 clones/lisp/www.cliki.net/Lisp Books.html delete mode 100644 clones/lisp/www.cliki.net/Lisp Companies.html delete mode 100644 clones/lisp/www.cliki.net/Lisp History.html delete mode 100644 clones/lisp/www.cliki.net/Lisp IDE.html delete mode 100644 clones/lisp/www.cliki.net/Lisp IRC Bots.html delete mode 100644 clones/lisp/www.cliki.net/Lisp Irc Bots.html delete mode 100644 clones/lisp/www.cliki.net/Lisp Machines.html delete mode 100644 clones/lisp/www.cliki.net/Lisp Markup Languages.html delete mode 100644 clones/lisp/www.cliki.net/Lisp Server Pages.html delete mode 100644 clones/lisp/www.cliki.net/Lisp Videos.html delete mode 100644 clones/lisp/www.cliki.net/Lisp Web Tales.html delete mode 100644 clones/lisp/www.cliki.net/Lisp as a shell.html delete mode 100644 clones/lisp/www.cliki.net/Lisp books.html delete mode 100644 clones/lisp/www.cliki.net/Lisp in a Box.html delete mode 100644 clones/lisp/www.cliki.net/Lisp machines.html delete mode 100644 clones/lisp/www.cliki.net/Lisp newbie.html delete mode 100644 clones/lisp/www.cliki.net/Lisp-SNMP.html delete mode 100644 clones/lisp/www.cliki.net/Lisp-Stat.html delete mode 100644 clones/lisp/www.cliki.net/Lisp.html delete mode 100644 clones/lisp/www.cliki.net/LispBuilder.html delete mode 100644 clones/lisp/www.cliki.net/LispDoc.html delete mode 100644 clones/lisp/www.cliki.net/LispEdit.html delete mode 100644 clones/lisp/www.cliki.net/LispGameDevelopers.html delete mode 100644 clones/lisp/www.cliki.net/LispGameIssues.html delete mode 100644 clones/lisp/www.cliki.net/LispIDE.html delete mode 100644 clones/lisp/www.cliki.net/LispLab.html delete mode 100644 clones/lisp/www.cliki.net/LispWorks-UDP.html delete mode 100644 clones/lisp/www.cliki.net/LispWorks.html delete mode 100644 clones/lisp/www.cliki.net/Lispbuilder.html delete mode 100644 clones/lisp/www.cliki.net/Lispix.html delete mode 100644 clones/lisp/www.cliki.net/Lisplets.html delete mode 100644 clones/lisp/www.cliki.net/Lisppaste.html delete mode 100644 clones/lisp/www.cliki.net/Lispvirt.html delete mode 100644 clones/lisp/www.cliki.net/Lispworks.html delete mode 100644 clones/lisp/www.cliki.net/Lispy.html delete mode 100644 clones/lisp/www.cliki.net/List Comprehension.html delete mode 100644 clones/lisp/www.cliki.net/List comprehension.html delete mode 100644 clones/lisp/www.cliki.net/Literate Programming.html delete mode 100644 clones/lisp/www.cliki.net/LoGS.html delete mode 100644 clones/lisp/www.cliki.net/Log4CL.html delete mode 100644 clones/lisp/www.cliki.net/Log5.html delete mode 100644 clones/lisp/www.cliki.net/Logging.html delete mode 100644 clones/lisp/www.cliki.net/Loki Davison.html delete mode 100644 clones/lisp/www.cliki.net/Lou Glassy.html delete mode 100644 clones/lisp/www.cliki.net/Lquery.html delete mode 100644 clones/lisp/www.cliki.net/Ltk.html delete mode 100644 clones/lisp/www.cliki.net/Lucerne.html delete mode 100644 clones/lisp/www.cliki.net/Luigi Panzeri.html delete mode 100644 clones/lisp/www.cliki.net/Luke Gorrie.html delete mode 100644 clones/lisp/www.cliki.net/Lycurgus.html delete mode 100644 clones/lisp/www.cliki.net/Lyn Headley.html delete mode 100644 clones/lisp/www.cliki.net/MACRO-HTML.html delete mode 100644 clones/lisp/www.cliki.net/MARCH.html delete mode 100644 clones/lisp/www.cliki.net/MCL.html delete mode 100644 clones/lisp/www.cliki.net/MCLIDE.html delete mode 100644 clones/lisp/www.cliki.net/MCPat.html delete mode 100644 clones/lisp/www.cliki.net/MD5.html delete mode 100644 clones/lisp/www.cliki.net/META.html delete mode 100644 clones/lisp/www.cliki.net/METATILITIES.html delete mode 100644 clones/lisp/www.cliki.net/MGL-GPR.html delete mode 100644 clones/lisp/www.cliki.net/MGL-MAT.html delete mode 100644 clones/lisp/www.cliki.net/MGL-PAX.html delete mode 100644 clones/lisp/www.cliki.net/MGL.html delete mode 100644 clones/lisp/www.cliki.net/MICROLISP.html delete mode 100644 clones/lisp/www.cliki.net/MIME.html delete mode 100644 clones/lisp/www.cliki.net/MIME4CL.html delete mode 100644 clones/lisp/www.cliki.net/MIPS.html delete mode 100644 clones/lisp/www.cliki.net/MIT-LICENSE.html delete mode 100644 clones/lisp/www.cliki.net/MIT-License.html delete mode 100644 clones/lisp/www.cliki.net/MIT-license.html delete mode 100644 clones/lisp/www.cliki.net/MIT.html delete mode 100644 clones/lisp/www.cliki.net/MK-DEFSYSTEM.html delete mode 100644 clones/lisp/www.cliki.net/MKCL.html delete mode 100644 clones/lisp/www.cliki.net/MOP design patterns.html delete mode 100644 clones/lisp/www.cliki.net/MOP-features.html delete mode 100644 clones/lisp/www.cliki.net/MOP-standards-discussion.html delete mode 100644 clones/lisp/www.cliki.net/MOP.html delete mode 100644 clones/lisp/www.cliki.net/MPC.html delete mode 100644 clones/lisp/www.cliki.net/MPD4CL.html delete mode 100644 clones/lisp/www.cliki.net/MSL-Test.html delete mode 100644 clones/lisp/www.cliki.net/MT19937.html delete mode 100644 clones/lisp/www.cliki.net/MW-EQUIV.html delete mode 100644 clones/lisp/www.cliki.net/MacOS X.html delete mode 100644 clones/lisp/www.cliki.net/Machine Learning.html delete mode 100644 clones/lisp/www.cliki.net/Macro Characters.html delete mode 100644 clones/lisp/www.cliki.net/Mad70.html delete mode 100644 clones/lisp/www.cliki.net/Magrathea.html delete mode 100644 clones/lisp/www.cliki.net/Maiden.html delete mode 100644 clones/lisp/www.cliki.net/Make Old CMUCL CLX Work With Magic Cookies.html delete mode 100644 clones/lisp/www.cliki.net/Mandelbrot Set explorer.html delete mode 100644 clones/lisp/www.cliki.net/Mandelbrot set explorer.html delete mode 100644 clones/lisp/www.cliki.net/Manuel Odendahl.html delete mode 100644 clones/lisp/www.cliki.net/Marc Battyani.html delete mode 100644 clones/lisp/www.cliki.net/Marc Mertens.html delete mode 100644 clones/lisp/www.cliki.net/Marco Antoniotti.html delete mode 100644 clones/lisp/www.cliki.net/Marco Baringer.html delete mode 100644 clones/lisp/www.cliki.net/Marco Heisig.html delete mode 100644 clones/lisp/www.cliki.net/Marcus Breiing.html delete mode 100644 clones/lisp/www.cliki.net/Mark .html delete mode 100644 clones/lisp/www.cliki.net/Mark Carter.html delete mode 100644 clones/lisp/www.cliki.net/Mark Davidson.html delete mode 100644 clones/lisp/www.cliki.net/Mark Karpov.html delete mode 100644 clones/lisp/www.cliki.net/Mark Simpson.html delete mode 100644 clones/lisp/www.cliki.net/MarkCarter.html delete mode 100644 clones/lisp/www.cliki.net/MarkHoemmen.html delete mode 100644 clones/lisp/www.cliki.net/Markup.html delete mode 100644 clones/lisp/www.cliki.net/Markus Fix.html delete mode 100644 clones/lisp/www.cliki.net/Martin Atzmueller.html delete mode 100644 clones/lisp/www.cliki.net/Martin Dengler.html delete mode 100644 clones/lisp/www.cliki.net/MartySchrader.html delete mode 100644 clones/lisp/www.cliki.net/Mason Smith.html delete mode 100644 clones/lisp/www.cliki.net/Massimiliano Campagnoli.html delete mode 100644 clones/lisp/www.cliki.net/MatLisp.html delete mode 100644 clones/lisp/www.cliki.net/Mathematics.html delete mode 100644 clones/lisp/www.cliki.net/Matt Revelle.html delete mode 100644 clones/lisp/www.cliki.net/Matt Sottile.html delete mode 100644 clones/lisp/www.cliki.net/Matthew Danish.html delete mode 100644 clones/lisp/www.cliki.net/Matthew Kennedy.html delete mode 100644 clones/lisp/www.cliki.net/MatthewAstley.html delete mode 100644 clones/lisp/www.cliki.net/Matthias Koeppe.html delete mode 100644 clones/lisp/www.cliki.net/Max Mouratov.html delete mode 100644 clones/lisp/www.cliki.net/Max Rottenkolber.html delete mode 100644 clones/lisp/www.cliki.net/Max-Gerd Retzlaff.html delete mode 100644 clones/lisp/www.cliki.net/MaxPC.html delete mode 100644 clones/lisp/www.cliki.net/Maxima.html delete mode 100644 clones/lisp/www.cliki.net/McCLIM Listener.html delete mode 100644 clones/lisp/www.cliki.net/McCLIM.html delete mode 100644 clones/lisp/www.cliki.net/McClim.html delete mode 100644 clones/lisp/www.cliki.net/McPixel.html delete mode 100644 clones/lisp/www.cliki.net/Measures.html delete mode 100644 clones/lisp/www.cliki.net/Mersenne Twister.html delete mode 100644 clones/lisp/www.cliki.net/Messaging.html delete mode 100644 clones/lisp/www.cliki.net/Meta-CVS.html delete mode 100644 clones/lisp/www.cliki.net/Meta.html delete mode 100644 clones/lisp/www.cliki.net/Metatilities.html delete mode 100644 clones/lisp/www.cliki.net/Metering.html delete mode 100644 clones/lisp/www.cliki.net/Michael Bobak.html delete mode 100644 clones/lisp/www.cliki.net/Michael Wolber.html delete mode 100644 clones/lisp/www.cliki.net/Mike Maul.html delete mode 100644 clones/lisp/www.cliki.net/Mike Shaver.html delete mode 100644 clones/lisp/www.cliki.net/Misc-Extensions.html delete mode 100644 clones/lisp/www.cliki.net/Miscellaneous humour.html delete mode 100644 clones/lisp/www.cliki.net/Mitch's LISP Mathematical Library.html delete mode 100644 clones/lisp/www.cliki.net/Mito.html delete mode 100644 clones/lisp/www.cliki.net/Mixalot.html delete mode 100644 clones/lisp/www.cliki.net/Modularize-Hooks.html delete mode 100644 clones/lisp/www.cliki.net/Modularize-Interfaces.html delete mode 100644 clones/lisp/www.cliki.net/Modularize.html delete mode 100644 clones/lisp/www.cliki.net/Moira.html delete mode 100644 clones/lisp/www.cliki.net/Monitoring.html delete mode 100644 clones/lisp/www.cliki.net/Montezuma.html delete mode 100644 clones/lisp/www.cliki.net/Monty Python and comp lang lisp.html delete mode 100644 clones/lisp/www.cliki.net/Moon, on a stick.html delete mode 100644 clones/lisp/www.cliki.net/Morn.html delete mode 100644 clones/lisp/www.cliki.net/MorphiCL.html delete mode 100644 clones/lisp/www.cliki.net/Movitz.html delete mode 100644 clones/lisp/www.cliki.net/Music Mind Machine.html delete mode 100644 clones/lisp/www.cliki.net/Music.html delete mode 100644 clones/lisp/www.cliki.net/NET.QUADIUM.LDAP.html delete mode 100644 clones/lisp/www.cliki.net/NET.QUADIUM.LDIF.html delete mode 100644 clones/lisp/www.cliki.net/NET.QUADIUM.RPC-API.html delete mode 100644 clones/lisp/www.cliki.net/NET4CL.html delete mode 100644 clones/lisp/www.cliki.net/NLISP.html delete mode 100644 clones/lisp/www.cliki.net/NPG.html delete mode 100644 clones/lisp/www.cliki.net/NST.html delete mode 100644 clones/lisp/www.cliki.net/Named multiple-values.html delete mode 100644 clones/lisp/www.cliki.net/Naming conventions.html delete mode 100644 clones/lisp/www.cliki.net/Nasal Demons.html delete mode 100644 clones/lisp/www.cliki.net/Natural Language Processing.html delete mode 100644 clones/lisp/www.cliki.net/Neil Van Dyke.html delete mode 100644 clones/lisp/www.cliki.net/Neonsquare.html delete mode 100644 clones/lisp/www.cliki.net/NetBSD.html delete mode 100644 clones/lisp/www.cliki.net/NetCLOS.html delete mode 100644 clones/lisp/www.cliki.net/Netfarm.html delete mode 100644 clones/lisp/www.cliki.net/Networking.html delete mode 100644 clones/lisp/www.cliki.net/Nick Levine.html delete mode 100644 clones/lisp/www.cliki.net/Nicolas Hafner.html delete mode 100644 clones/lisp/www.cliki.net/Nicolas Neuss.html delete mode 100644 clones/lisp/www.cliki.net/Nikodemus Siivola.html delete mode 100644 clones/lisp/www.cliki.net/Nils Glanz.html delete mode 100644 clones/lisp/www.cliki.net/North.html delete mode 100644 clones/lisp/www.cliki.net/Ntccrt.html delete mode 100644 clones/lisp/www.cliki.net/Nuprl.html delete mode 100644 clones/lisp/www.cliki.net/Nyxt.html delete mode 100644 clones/lisp/www.cliki.net/OCML.html delete mode 100644 clones/lisp/www.cliki.net/ODS4CL.html delete mode 100644 clones/lisp/www.cliki.net/OMax.html delete mode 100644 clones/lisp/www.cliki.net/OPENMCL.html delete mode 100644 clones/lisp/www.cliki.net/ORF.html delete mode 100644 clones/lisp/www.cliki.net/ORM.html delete mode 100644 clones/lisp/www.cliki.net/OSC.html delete mode 100644 clones/lisp/www.cliki.net/OSICAT.html delete mode 100644 clones/lisp/www.cliki.net/OWL.html delete mode 100644 clones/lisp/www.cliki.net/Object Representation.html delete mode 100644 clones/lisp/www.cliki.net/ObjectStore.html delete mode 100644 clones/lisp/www.cliki.net/Objective-CL.html delete mode 100644 clones/lisp/www.cliki.net/Obsolete.html delete mode 100644 clones/lisp/www.cliki.net/Obtain libraries.html delete mode 100644 clones/lisp/www.cliki.net/Oct.html delete mode 100644 clones/lisp/www.cliki.net/Odd Benchmarks.html delete mode 100644 clones/lisp/www.cliki.net/Okra.html delete mode 100644 clones/lisp/www.cliki.net/Ola Rinta-Koski.html delete mode 100644 clones/lisp/www.cliki.net/Ole Arndt.html delete mode 100644 clones/lisp/www.cliki.net/Oliver Markovic.html delete mode 100644 clones/lisp/www.cliki.net/On Lisp.html delete mode 100644 clones/lisp/www.cliki.net/Online Tutorial.html delete mode 100644 clones/lisp/www.cliki.net/Online tutorial.html delete mode 100644 clones/lisp/www.cliki.net/Open Agent Engine.html delete mode 100644 clones/lisp/www.cliki.net/OpenGL.html delete mode 100644 clones/lisp/www.cliki.net/OpenMCL.html delete mode 100644 clones/lisp/www.cliki.net/OpenMusic.html delete mode 100644 clones/lisp/www.cliki.net/Osicat.html delete mode 100644 clones/lisp/www.cliki.net/Other CLikis.html delete mode 100644 clones/lisp/www.cliki.net/Overlord.html delete mode 100644 clones/lisp/www.cliki.net/PAIP.html delete mode 100644 clones/lisp/www.cliki.net/PARENSCRIPT.html delete mode 100644 clones/lisp/www.cliki.net/PARSE-NUMBER.html delete mode 100644 clones/lisp/www.cliki.net/PCALL.html delete mode 100644 clones/lisp/www.cliki.net/PCL.html delete mode 100644 clones/lisp/www.cliki.net/PCall.html delete mode 100644 clones/lisp/www.cliki.net/PERCENT-ENCODING.html delete mode 100644 clones/lisp/www.cliki.net/PLOB!.html delete mode 100644 clones/lisp/www.cliki.net/PLisp.html delete mode 100644 clones/lisp/www.cliki.net/PNG.html delete mode 100644 clones/lisp/www.cliki.net/POSE.html delete mode 100644 clones/lisp/www.cliki.net/PRBS.html delete mode 100644 clones/lisp/www.cliki.net/PREPL.html delete mode 100644 clones/lisp/www.cliki.net/PRL.html delete mode 100644 clones/lisp/www.cliki.net/PURI.html delete mode 100644 clones/lisp/www.cliki.net/PURL.html delete mode 100644 clones/lisp/www.cliki.net/PVS Specification and Verification System.html delete mode 100644 clones/lisp/www.cliki.net/Paolo Amoroso.html delete mode 100644 clones/lisp/www.cliki.net/ParenScript.html delete mode 100644 clones/lisp/www.cliki.net/ParenScriptObjectSystem.html delete mode 100644 clones/lisp/www.cliki.net/Parenscript.html delete mode 100644 clones/lisp/www.cliki.net/ParenscriptClassicOO.html delete mode 100644 clones/lisp/www.cliki.net/ParenscriptTipsAndTricks.html delete mode 100644 clones/lisp/www.cliki.net/ParenscriptWithApachePHP.html delete mode 100644 clones/lisp/www.cliki.net/Parser.html delete mode 100644 clones/lisp/www.cliki.net/Pascal Bourguignon.html delete mode 100644 clones/lisp/www.cliki.net/Pascal Costanza.html delete mode 100644 clones/lisp/www.cliki.net/Patrick Anderson.html delete mode 100644 clones/lisp/www.cliki.net/Patrick Stein.html delete mode 100644 clones/lisp/www.cliki.net/Paul Dietz.html delete mode 100644 clones/lisp/www.cliki.net/Paul Foley.html delete mode 100644 clones/lisp/www.cliki.net/Paul Graham.html delete mode 100644 clones/lisp/www.cliki.net/Performance Benchmarks.html delete mode 100644 clones/lisp/www.cliki.net/Performance Benchmarks2.html delete mode 100644 clones/lisp/www.cliki.net/Performance.html delete mode 100644 clones/lisp/www.cliki.net/Persistence.html delete mode 100644 clones/lisp/www.cliki.net/Person.html delete mode 100644 clones/lisp/www.cliki.net/Petalisp.html delete mode 100644 clones/lisp/www.cliki.net/Peter Buchlovsky.html delete mode 100644 clones/lisp/www.cliki.net/Peter Denno.html delete mode 100644 clones/lisp/www.cliki.net/Peter Eddy.html delete mode 100644 clones/lisp/www.cliki.net/Peter Graves.html delete mode 100644 clones/lisp/www.cliki.net/Peter Keller.html delete mode 100644 clones/lisp/www.cliki.net/Peter S Housel.html delete mode 100644 clones/lisp/www.cliki.net/Peter Scott.html delete mode 100644 clones/lisp/www.cliki.net/Peter Seibel.html delete mode 100644 clones/lisp/www.cliki.net/Peter Szilagyi.html delete mode 100644 clones/lisp/www.cliki.net/Peter Van Eynde.html delete mode 100644 clones/lisp/www.cliki.net/Peter Ward.html delete mode 100644 clones/lisp/www.cliki.net/Pg.html delete mode 100644 clones/lisp/www.cliki.net/PgUtils.html delete mode 100644 clones/lisp/www.cliki.net/Philippe Brochard.html delete mode 100644 clones/lisp/www.cliki.net/Phorx.html delete mode 100644 clones/lisp/www.cliki.net/Pieter Breed.html delete mode 100644 clones/lisp/www.cliki.net/Pietro Braione.html delete mode 100644 clones/lisp/www.cliki.net/Pinot.html delete mode 100644 clones/lisp/www.cliki.net/Planet of the Feebs.html delete mode 100644 clones/lisp/www.cliki.net/Plotting.html delete mode 100644 clones/lisp/www.cliki.net/Plump.html delete mode 100644 clones/lisp/www.cliki.net/PonzuDB.html delete mode 100644 clones/lisp/www.cliki.net/PopLog.html delete mode 100644 clones/lisp/www.cliki.net/Poplog.html delete mode 100644 clones/lisp/www.cliki.net/Portable CommonLoops.html delete mode 100644 clones/lisp/www.cliki.net/Portable Exit.html delete mode 100644 clones/lisp/www.cliki.net/Portable Hemlock.html delete mode 100644 clones/lisp/www.cliki.net/Portable-Threads.html delete mode 100644 clones/lisp/www.cliki.net/Portableaserve.html delete mode 100644 clones/lisp/www.cliki.net/Portal.html delete mode 100644 clones/lisp/www.cliki.net/PorterStemmer.html delete mode 100644 clones/lisp/www.cliki.net/PostScript.html delete mode 100644 clones/lisp/www.cliki.net/Postmodern.html delete mode 100644 clones/lisp/www.cliki.net/Postscript.html delete mode 100644 clones/lisp/www.cliki.net/PowerLoom.html delete mode 100644 clones/lisp/www.cliki.net/PowerShell.html delete mode 100644 clones/lisp/www.cliki.net/Practical Common Lisp.html delete mode 100644 clones/lisp/www.cliki.net/Pretzil.html delete mode 100644 clones/lisp/www.cliki.net/PrevaylerStorage.html delete mode 100644 clones/lisp/www.cliki.net/Privacy Statement.html delete mode 100644 clones/lisp/www.cliki.net/Programming Tips.html delete mode 100644 clones/lisp/www.cliki.net/Programming language.html delete mode 100644 clones/lisp/www.cliki.net/Programming style.html delete mode 100644 clones/lisp/www.cliki.net/Prolog Technology Theorem Prover.html delete mode 100644 clones/lisp/www.cliki.net/Prolog.html delete mode 100644 clones/lisp/www.cliki.net/Proposed ANSI Changes.html delete mode 100644 clones/lisp/www.cliki.net/Proposed ANSI Revisions and Clarifications.html delete mode 100644 clones/lisp/www.cliki.net/Proposed Extensions To ANSI.html delete mode 100644 clones/lisp/www.cliki.net/Proposed Extensions to ANSI.html delete mode 100644 clones/lisp/www.cliki.net/Protocol.html delete mode 100644 clones/lisp/www.cliki.net/PseudoScheme.html delete mode 100644 clones/lisp/www.cliki.net/Public Domain.html delete mode 100644 clones/lisp/www.cliki.net/Pupeno.html delete mode 100644 clones/lisp/www.cliki.net/Puri.html delete mode 100644 clones/lisp/www.cliki.net/Purity Test.html delete mode 100644 clones/lisp/www.cliki.net/Pyffi.html delete mode 100644 clones/lisp/www.cliki.net/Python programming language.html delete mode 100644 clones/lisp/www.cliki.net/Python-On-Lisp.html delete mode 100644 clones/lisp/www.cliki.net/Python-on-Lisp.html delete mode 100644 clones/lisp/www.cliki.net/Python.html delete mode 100644 clones/lisp/www.cliki.net/Q-THREAD-POOL.html delete mode 100644 clones/lisp/www.cliki.net/QITAB.html delete mode 100644 clones/lisp/www.cliki.net/Qi.html delete mode 100644 clones/lisp/www.cliki.net/Qlot.html delete mode 100644 clones/lisp/www.cliki.net/Qtools.html delete mode 100644 clones/lisp/www.cliki.net/Quantile estimator.html delete mode 100644 clones/lisp/www.cliki.net/Quick Arrays.html delete mode 100644 clones/lisp/www.cliki.net/QuickLisp.html delete mode 100644 clones/lisp/www.cliki.net/QuickProject.html delete mode 100644 clones/lisp/www.cliki.net/Quicklisp tutorial.html delete mode 100644 clones/lisp/www.cliki.net/Quicklisp.html delete mode 100644 clones/lisp/www.cliki.net/Quickproject.html delete mode 100644 clones/lisp/www.cliki.net/Quickref.html delete mode 100644 clones/lisp/www.cliki.net/R Scott McIntire.html delete mode 100644 clones/lisp/www.cliki.net/R.html delete mode 100644 clones/lisp/www.cliki.net/RCL.html delete mode 100644 clones/lisp/www.cliki.net/RCLG.html delete mode 100644 clones/lisp/www.cliki.net/RDF.html delete mode 100644 clones/lisp/www.cliki.net/RDNZL.html delete mode 100644 clones/lisp/www.cliki.net/RE.html delete mode 100644 clones/lisp/www.cliki.net/READ-DELIMITED.html delete mode 100644 clones/lisp/www.cliki.net/REGEX.html delete mode 100644 clones/lisp/www.cliki.net/REPL.html delete mode 100644 clones/lisp/www.cliki.net/RESOURCE-UTILIZATION.html delete mode 100644 clones/lisp/www.cliki.net/RESTAS.html delete mode 100644 clones/lisp/www.cliki.net/RFC.html delete mode 100644 clones/lisp/www.cliki.net/RIFF-WAVE.html delete mode 100644 clones/lisp/www.cliki.net/RLX.html delete mode 100644 clones/lisp/www.cliki.net/ROTATE-BYTE.html delete mode 100644 clones/lisp/www.cliki.net/RSS.html delete mode 100644 clones/lisp/www.cliki.net/RSSParser.html delete mode 100644 clones/lisp/www.cliki.net/Raffaele Arecchi.html delete mode 100644 clones/lisp/www.cliki.net/Rahul Jain.html delete mode 100644 clones/lisp/www.cliki.net/Ralph Möritz.html delete mode 100644 clones/lisp/www.cliki.net/Reactive.html delete mode 100644 clones/lisp/www.cliki.net/Red-Black-trees.html delete mode 100644 clones/lisp/www.cliki.net/RegEx.html delete mode 100644 clones/lisp/www.cliki.net/Regex.html delete mode 100644 clones/lisp/www.cliki.net/Regional Lisp groups.html delete mode 100644 clones/lisp/www.cliki.net/Regular Expression.html delete mode 100644 clones/lisp/www.cliki.net/Regular expression.html delete mode 100644 clones/lisp/www.cliki.net/Reini Urban.html delete mode 100644 clones/lisp/www.cliki.net/ReiniUrban.html delete mode 100644 clones/lisp/www.cliki.net/Relational.html delete mode 100644 clones/lisp/www.cliki.net/Repo.html delete mode 100644 clones/lisp/www.cliki.net/Reticule.html delete mode 100644 clones/lisp/www.cliki.net/Riastradh's Lisp Style Rules [for Common Lisp].html delete mode 100644 clones/lisp/www.cliki.net/Richard Newman.html delete mode 100644 clones/lisp/www.cliki.net/Rick Taube.html delete mode 100644 clones/lisp/www.cliki.net/Rob Linwood.html delete mode 100644 clones/lisp/www.cliki.net/Robert Church.html delete mode 100644 clones/lisp/www.cliki.net/Robert Goldman.html delete mode 100644 clones/lisp/www.cliki.net/Robert Marlow.html delete mode 100644 clones/lisp/www.cliki.net/Robert Smith.html delete mode 100644 clones/lisp/www.cliki.net/Robert Strandh.html delete mode 100644 clones/lisp/www.cliki.net/Robotics.html delete mode 100644 clones/lisp/www.cliki.net/Roger Barraud.html delete mode 100644 clones/lisp/www.cliki.net/Roland Kaufmann.html delete mode 100644 clones/lisp/www.cliki.net/RossLonstein.html delete mode 100644 clones/lisp/www.cliki.net/Roswell.html delete mode 100644 clones/lisp/www.cliki.net/Ruby-objects.html delete mode 100644 clones/lisp/www.cliki.net/Rucksack.html delete mode 100644 clones/lisp/www.cliki.net/Ryszard Szopa.html delete mode 100644 clones/lisp/www.cliki.net/S-PROTOBUF.html delete mode 100644 clones/lisp/www.cliki.net/S-XML-RPC.html delete mode 100644 clones/lisp/www.cliki.net/S-XML.html delete mode 100644 clones/lisp/www.cliki.net/S-exp syntax.html delete mode 100644 clones/lisp/www.cliki.net/SAFER.html delete mode 100644 clones/lisp/www.cliki.net/SB-HEAPDUMP.html delete mode 100644 clones/lisp/www.cliki.net/SB-X86-PORTIO.html delete mode 100644 clones/lisp/www.cliki.net/SBCL Internals.html delete mode 100644 clones/lisp/www.cliki.net/SBCL.html delete mode 100644 clones/lisp/www.cliki.net/SC Language.html delete mode 100644 clones/lisp/www.cliki.net/SCLF.html delete mode 100644 clones/lisp/www.cliki.net/SCOLI.html delete mode 100644 clones/lisp/www.cliki.net/SDL.html delete mode 100644 clones/lisp/www.cliki.net/SEMI-PRECIOUS.html delete mode 100644 clones/lisp/www.cliki.net/SERIES.html delete mode 100644 clones/lisp/www.cliki.net/SHA1.html delete mode 100644 clones/lisp/www.cliki.net/SHALLOW-COPY-ARRAY.html delete mode 100644 clones/lisp/www.cliki.net/SHCL.html delete mode 100644 clones/lisp/www.cliki.net/SHUT-IT-DOWN.html delete mode 100644 clones/lisp/www.cliki.net/SICL.html delete mode 100644 clones/lisp/www.cliki.net/SICP.html delete mode 100644 clones/lisp/www.cliki.net/SLIK.html delete mode 100644 clones/lisp/www.cliki.net/SLIMA.html delete mode 100644 clones/lisp/www.cliki.net/SLIME Features.html delete mode 100644 clones/lisp/www.cliki.net/SLIME Tips.html delete mode 100644 clones/lisp/www.cliki.net/SLIME-HOWTO.html delete mode 100644 clones/lisp/www.cliki.net/SLIME.html delete mode 100644 clones/lisp/www.cliki.net/SLUG.html delete mode 100644 clones/lisp/www.cliki.net/SNARK.html delete mode 100644 clones/lisp/www.cliki.net/SNMP.html delete mode 100644 clones/lisp/www.cliki.net/SNePS.html delete mode 100644 clones/lisp/www.cliki.net/SOUNDLAB.html delete mode 100644 clones/lisp/www.cliki.net/SPLASH.html delete mode 100644 clones/lisp/www.cliki.net/SPLIT-SEQUENCE.html delete mode 100644 clones/lisp/www.cliki.net/SPath.html delete mode 100644 clones/lisp/www.cliki.net/SQL.html delete mode 100644 clones/lisp/www.cliki.net/SQLite Lisp interface.html delete mode 100644 clones/lisp/www.cliki.net/SRFI.html delete mode 100644 clones/lisp/www.cliki.net/SSL-CMUCL.html delete mode 100644 clones/lisp/www.cliki.net/SWANK.html delete mode 100644 clones/lisp/www.cliki.net/SWIG.html delete mode 100644 clones/lisp/www.cliki.net/SWINE.html delete mode 100644 clones/lisp/www.cliki.net/SYMTABLE.html delete mode 100644 clones/lisp/www.cliki.net/Sacla.html delete mode 100644 clones/lisp/www.cliki.net/Saluto.html delete mode 100644 clones/lisp/www.cliki.net/Salza.html delete mode 100644 clones/lisp/www.cliki.net/Salza2.html delete mode 100644 clones/lisp/www.cliki.net/Sbcl.html delete mode 100644 clones/lisp/www.cliki.net/Schedulers.html delete mode 100644 clones/lisp/www.cliki.net/Scheme.html delete mode 100644 clones/lisp/www.cliki.net/Scheme88.html delete mode 100644 clones/lisp/www.cliki.net/Science.html delete mode 100644 clones/lisp/www.cliki.net/Scone.html delete mode 100644 clones/lisp/www.cliki.net/Scott L. Burson.html delete mode 100644 clones/lisp/www.cliki.net/Scott Williams.html delete mode 100644 clones/lisp/www.cliki.net/Screamer.html delete mode 100644 clones/lisp/www.cliki.net/Scribble.html delete mode 100644 clones/lisp/www.cliki.net/Sean Champ.html delete mode 100644 clones/lisp/www.cliki.net/SeanRoss.html delete mode 100644 clones/lisp/www.cliki.net/Self-Generation.html delete mode 100644 clones/lisp/www.cliki.net/Semantic Web.html delete mode 100644 clones/lisp/www.cliki.net/Serapeum.html delete mode 100644 clones/lisp/www.cliki.net/Serialization.html delete mode 100644 clones/lisp/www.cliki.net/Series.html delete mode 100644 clones/lisp/www.cliki.net/Shawn Betts.html delete mode 100644 clones/lisp/www.cliki.net/Sheafhom.html delete mode 100644 clones/lisp/www.cliki.net/Sheeple.html delete mode 100644 clones/lisp/www.cliki.net/Shinmera.html delete mode 100644 clones/lisp/www.cliki.net/Shuffletron.html delete mode 100644 clones/lisp/www.cliki.net/SimLab.html delete mode 100644 clones/lisp/www.cliki.net/SimpSamp.html delete mode 100644 clones/lisp/www.cliki.net/Simple 3D viewing.html delete mode 100644 clones/lisp/www.cliki.net/Simple-Finalizer.html delete mode 100644 clones/lisp/www.cliki.net/Skippy.html delete mode 100644 clones/lisp/www.cliki.net/Slime.html delete mode 100644 clones/lisp/www.cliki.net/Slitch.html delete mode 100644 clones/lisp/www.cliki.net/SmackJack.html delete mode 100644 clones/lisp/www.cliki.net/Smart cards.html delete mode 100644 clones/lisp/www.cliki.net/Snooze.html delete mode 100644 clones/lisp/www.cliki.net/Solaris.html delete mode 100644 clones/lisp/www.cliki.net/Solid-engine.html delete mode 100644 clones/lisp/www.cliki.net/Soundex.html delete mode 100644 clones/lisp/www.cliki.net/South.html delete mode 100644 clones/lisp/www.cliki.net/Spam Reversion.html delete mode 100644 clones/lisp/www.cliki.net/Special Slots.html delete mode 100644 clones/lisp/www.cliki.net/Standards.html delete mode 100644 clones/lisp/www.cliki.net/Staple.html delete mode 100644 clones/lisp/www.cliki.net/Star Trek.html delete mode 100644 clones/lisp/www.cliki.net/Statistics.html delete mode 100644 clones/lisp/www.cliki.net/Stats.html delete mode 100644 clones/lisp/www.cliki.net/Steeldump.html delete mode 100644 clones/lisp/www.cliki.net/Stefan Scholl.html delete mode 100644 clones/lisp/www.cliki.net/StefanKamphausen.html delete mode 100644 clones/lisp/www.cliki.net/Stefil.html delete mode 100644 clones/lisp/www.cliki.net/Stencl.html delete mode 100644 clones/lisp/www.cliki.net/Stephen De Gabrielle.html delete mode 100644 clones/lisp/www.cliki.net/Stephen Horner.html delete mode 100644 clones/lisp/www.cliki.net/Steve Dunham.html delete mode 100644 clones/lisp/www.cliki.net/Steve Eichblatt.html delete mode 100644 clones/lisp/www.cliki.net/Stig E Sandø.html delete mode 100644 clones/lisp/www.cliki.net/Storable Functions.html delete mode 100644 clones/lisp/www.cliki.net/StructuredStorage.html delete mode 100644 clones/lisp/www.cliki.net/StudlyCaps.html delete mode 100644 clones/lisp/www.cliki.net/StumpWM.html delete mode 100644 clones/lisp/www.cliki.net/Stumpwm.html delete mode 100644 clones/lisp/www.cliki.net/Submarine.html delete mode 100644 clones/lisp/www.cliki.net/Sudhir Shenoy.html delete mode 100644 clones/lisp/www.cliki.net/Suggested Programming Projects.html delete mode 100644 clones/lisp/www.cliki.net/Sunil Mishra.html delete mode 100644 clones/lisp/www.cliki.net/Surendra Singhi.html delete mode 100644 clones/lisp/www.cliki.net/Surf-Hippo.html delete mode 100644 clones/lisp/www.cliki.net/Susam.html delete mode 100644 clones/lisp/www.cliki.net/Sven Van Caekenberghe.html delete mode 100644 clones/lisp/www.cliki.net/Swank.html delete mode 100644 clones/lisp/www.cliki.net/Swap-bytes.html delete mode 100644 clones/lisp/www.cliki.net/Swine.html delete mode 100644 clones/lisp/www.cliki.net/Switch Date 1980s.html delete mode 100644 clones/lisp/www.cliki.net/Switch Date 1990s.html delete mode 100644 clones/lisp/www.cliki.net/Switch Date 2000.html delete mode 100644 clones/lisp/www.cliki.net/SxQL.html delete mode 100644 clones/lisp/www.cliki.net/Sycamore.html delete mode 100644 clones/lisp/www.cliki.net/Sykopomp.html delete mode 100644 clones/lisp/www.cliki.net/Symbol-Munger.html delete mode 100644 clones/lisp/www.cliki.net/SymbolicWeb.html delete mode 100644 clones/lisp/www.cliki.net/System programming.html delete mode 100644 clones/lisp/www.cliki.net/TALCL.html delete mode 100644 clones/lisp/www.cliki.net/TEXP.html delete mode 100644 clones/lisp/www.cliki.net/TIMER.html delete mode 100644 clones/lisp/www.cliki.net/TODO List.html delete mode 100644 clones/lisp/www.cliki.net/TPS.html delete mode 100644 clones/lisp/www.cliki.net/TREES.html delete mode 100644 clones/lisp/www.cliki.net/TRIVIAL-HTTP.html delete mode 100644 clones/lisp/www.cliki.net/TRIVIAL.html delete mode 100644 clones/lisp/www.cliki.net/Tagger.html delete mode 100644 clones/lisp/www.cliki.net/Tail Recursion.html delete mode 100644 clones/lisp/www.cliki.net/Targa Image Loading for Common Lisp.html delete mode 100644 clones/lisp/www.cliki.net/Tayssir John Gabbour.html delete mode 100644 clones/lisp/www.cliki.net/Teemu Kalvas.html delete mode 100644 clones/lisp/www.cliki.net/Terminfo.html delete mode 100644 clones/lisp/www.cliki.net/Test Framework.html delete mode 100644 clones/lisp/www.cliki.net/Text Formatting.html delete mode 100644 clones/lisp/www.cliki.net/Text.html delete mode 100644 clones/lisp/www.cliki.net/The Dying Programmers.html delete mode 100644 clones/lisp/www.cliki.net/The Feebs War.html delete mode 100644 clones/lisp/www.cliki.net/The Great Macro Debate.html delete mode 100644 clones/lisp/www.cliki.net/The Invaders.html delete mode 100644 clones/lisp/www.cliki.net/The Old Cliki.html delete mode 100644 clones/lisp/www.cliki.net/The Regex Coach.html delete mode 100644 clones/lisp/www.cliki.net/Theorem Provers.html delete mode 100644 clones/lisp/www.cliki.net/ThinLisp.html delete mode 100644 clones/lisp/www.cliki.net/Thinlisp.html delete mode 100644 clones/lisp/www.cliki.net/Thomas Atkins.html delete mode 100644 clones/lisp/www.cliki.net/Thomas F. Burdick.html delete mode 100644 clones/lisp/www.cliki.net/Thomas Stenhaug.html delete mode 100644 clones/lisp/www.cliki.net/Thot.html delete mode 100644 clones/lisp/www.cliki.net/Thread.html delete mode 100644 clones/lisp/www.cliki.net/Three Comma Programmer.html delete mode 100644 clones/lisp/www.cliki.net/Tim Moore.html delete mode 100644 clones/lisp/www.cliki.net/Time management.html delete mode 100644 clones/lisp/www.cliki.net/Toadstool.html delete mode 100644 clones/lisp/www.cliki.net/Toplevel.html delete mode 100644 clones/lisp/www.cliki.net/Torta.html delete mode 100644 clones/lisp/www.cliki.net/Towers of Hanoi.html delete mode 100644 clones/lisp/www.cliki.net/Trent Buck's Emacs file.html delete mode 100644 clones/lisp/www.cliki.net/Trivia.html delete mode 100644 clones/lisp/www.cliki.net/Trivial-HTTP.html delete mode 100644 clones/lisp/www.cliki.net/Tunes.html delete mode 100644 clones/lisp/www.cliki.net/TutorialClispDebugger.html delete mode 100644 clones/lisp/www.cliki.net/TutorialDebuggingDeadLock.html delete mode 100644 clones/lisp/www.cliki.net/TutorialSpecialVariables.html delete mode 100644 clones/lisp/www.cliki.net/Tyler Eaves.html delete mode 100644 clones/lisp/www.cliki.net/TypeL.html delete mode 100644 clones/lisp/www.cliki.net/UABCL.html delete mode 100644 clones/lisp/www.cliki.net/UCW Tricks and Cookbook.html delete mode 100644 clones/lisp/www.cliki.net/UCW.html delete mode 100644 clones/lisp/www.cliki.net/UFFI.html delete mode 100644 clones/lisp/www.cliki.net/UIOP.html delete mode 100644 clones/lisp/www.cliki.net/UNIX.html delete mode 100644 clones/lisp/www.cliki.net/URI.html delete mode 100644 clones/lisp/www.cliki.net/USN Journal.html delete mode 100644 clones/lisp/www.cliki.net/USOCKET.html delete mode 100644 clones/lisp/www.cliki.net/UUID.html delete mode 100644 clones/lisp/www.cliki.net/UfasoftCommonLisp.html delete mode 100644 clones/lisp/www.cliki.net/Unicode Support.html delete mode 100644 clones/lisp/www.cliki.net/Unicode and Lisp.html delete mode 100644 clones/lisp/www.cliki.net/Unicode support.html delete mode 100644 clones/lisp/www.cliki.net/Units.html delete mode 100644 clones/lisp/www.cliki.net/Universal-Config.html delete mode 100644 clones/lisp/www.cliki.net/Unix shell scripting.html delete mode 100644 clones/lisp/www.cliki.net/Unix.html delete mode 100644 clones/lisp/www.cliki.net/Unlicense.html delete mode 100644 clones/lisp/www.cliki.net/Usocket-UDP.html delete mode 100644 clones/lisp/www.cliki.net/Utilities.html delete mode 100644 clones/lisp/www.cliki.net/Utopiah.html delete mode 100644 clones/lisp/www.cliki.net/VECTO.html delete mode 100644 clones/lisp/www.cliki.net/VLM_on_Linux.html delete mode 100644 clones/lisp/www.cliki.net/Vacietis.html delete mode 100644 clones/lisp/www.cliki.net/Valery Khamenya.html delete mode 100644 clones/lisp/www.cliki.net/Vamsee Kanakala.html delete mode 100644 clones/lisp/www.cliki.net/Vapourware.html delete mode 100644 clones/lisp/www.cliki.net/Vebjorn Ljosa.html delete mode 100644 clones/lisp/www.cliki.net/Vecto.html delete mode 100644 clones/lisp/www.cliki.net/Verbose.html delete mode 100644 clones/lisp/www.cliki.net/Verrazano.html delete mode 100644 clones/lisp/www.cliki.net/Version Control.html delete mode 100644 clones/lisp/www.cliki.net/Victor Sovetov.html delete mode 100644 clones/lisp/www.cliki.net/Vim.html delete mode 100644 clones/lisp/www.cliki.net/Virgil.html delete mode 100644 clones/lisp/www.cliki.net/Virtualization.html delete mode 100644 clones/lisp/www.cliki.net/Vladimir Sedach.html delete mode 100644 clones/lisp/www.cliki.net/Volemad.html delete mode 100644 clones/lisp/www.cliki.net/WAAF-CFFI.html delete mode 100644 clones/lisp/www.cliki.net/WCL.html delete mode 100644 clones/lisp/www.cliki.net/WITH-UNIQUE-NAMES.html delete mode 100644 clones/lisp/www.cliki.net/WSCL.html delete mode 100644 clones/lisp/www.cliki.net/Warren Wilkinson.html delete mode 100644 clones/lisp/www.cliki.net/Web API.html delete mode 100644 clones/lisp/www.cliki.net/Web Framework.html delete mode 100644 clones/lisp/www.cliki.net/Web.html delete mode 100644 clones/lisp/www.cliki.net/WebSocket server.html delete mode 100644 clones/lisp/www.cliki.net/WeirdIRC.html delete mode 100644 clones/lisp/www.cliki.net/Weyl.html delete mode 100644 clones/lisp/www.cliki.net/Wiki.html delete mode 100644 clones/lisp/www.cliki.net/Wilbur.html delete mode 100644 clones/lisp/www.cliki.net/William Bland.html delete mode 100644 clones/lisp/www.cliki.net/William Halliburton.html delete mode 100644 clones/lisp/www.cliki.net/William Robinson.html delete mode 100644 clones/lisp/www.cliki.net/Wimpie Nortje.html delete mode 100644 clones/lisp/www.cliki.net/Win32.html delete mode 100644 clones/lisp/www.cliki.net/WinCommand.html delete mode 100644 clones/lisp/www.cliki.net/Window Manager.html delete mode 100644 clones/lisp/www.cliki.net/Windows.html delete mode 100644 clones/lisp/www.cliki.net/Wm Annis.html delete mode 100644 clones/lisp/www.cliki.net/Woo.html delete mode 100644 clones/lisp/www.cliki.net/Wookie.html delete mode 100644 clones/lisp/www.cliki.net/WuWei.html delete mode 100644 clones/lisp/www.cliki.net/X-Chat Common Lisp Plugin.html delete mode 100644 clones/lisp/www.cliki.net/X.FDATATYPES.html delete mode 100644 clones/lisp/www.cliki.net/X.LET-STAR.html delete mode 100644 clones/lisp/www.cliki.net/X11.html delete mode 100644 clones/lisp/www.cliki.net/XCL.html delete mode 100644 clones/lisp/www.cliki.net/XCVB.html delete mode 100644 clones/lisp/www.cliki.net/XHTMΛ.html delete mode 100644 clones/lisp/www.cliki.net/XIT.html delete mode 100644 clones/lisp/www.cliki.net/XL-Wiki.html delete mode 100644 clones/lisp/www.cliki.net/XML-RPC.html delete mode 100644 clones/lisp/www.cliki.net/XML.html delete mode 100644 clones/lisp/www.cliki.net/XMLS-Tools.html delete mode 100644 clones/lisp/www.cliki.net/XMLS.html delete mode 100644 clones/lisp/www.cliki.net/XMLisp.html delete mode 100644 clones/lisp/www.cliki.net/XPATH.html delete mode 100644 clones/lisp/www.cliki.net/XPath.html delete mode 100644 clones/lisp/www.cliki.net/XXTEA.html delete mode 100644 clones/lisp/www.cliki.net/Xelf.html delete mode 100644 clones/lisp/www.cliki.net/YAML.html delete mode 100644 clones/lisp/www.cliki.net/YASON.html delete mode 100644 clones/lisp/www.cliki.net/YHTML-TEMPLATE.html delete mode 100644 clones/lisp/www.cliki.net/YHTML-Template.html delete mode 100644 clones/lisp/www.cliki.net/YTools.html delete mode 100644 clones/lisp/www.cliki.net/Yakov Zaytsev.html delete mode 100644 clones/lisp/www.cliki.net/Yale Haskell.html delete mode 100644 clones/lisp/www.cliki.net/Yarden Katz.html delete mode 100644 clones/lisp/www.cliki.net/YoungLispers.html delete mode 100644 clones/lisp/www.cliki.net/Ystok-Local-Time.html delete mode 100644 clones/lisp/www.cliki.net/Ystok-MD5.html delete mode 100644 clones/lisp/www.cliki.net/Ystok-URI.html delete mode 100644 clones/lisp/www.cliki.net/YstokCard.html delete mode 100644 clones/lisp/www.cliki.net/YstokGrid.html delete mode 100644 clones/lisp/www.cliki.net/YstokHTML.html delete mode 100644 clones/lisp/www.cliki.net/YstokSQL.html delete mode 100644 clones/lisp/www.cliki.net/Yurii Rashkovskii.html delete mode 100644 clones/lisp/www.cliki.net/ZACL.html delete mode 100644 clones/lisp/www.cliki.net/ZCDB.html delete mode 100644 clones/lisp/www.cliki.net/ZIP.html delete mode 100644 clones/lisp/www.cliki.net/ZLIB.html delete mode 100644 clones/lisp/www.cliki.net/ZPB-EXIF.html delete mode 100644 clones/lisp/www.cliki.net/ZPB-TTF.html delete mode 100644 clones/lisp/www.cliki.net/ZPNG.html delete mode 100644 clones/lisp/www.cliki.net/ZS3.html delete mode 100644 clones/lisp/www.cliki.net/Zach Beane.html delete mode 100644 clones/lisp/www.cliki.net/Zach Smith.html delete mode 100644 clones/lisp/www.cliki.net/Zebu.html delete mode 100644 clones/lisp/www.cliki.net/Zeta-C.html delete mode 100644 clones/lisp/www.cliki.net/a-cl-logger.html delete mode 100644 clones/lisp/www.cliki.net/abcl-jazz.html delete mode 100644 clones/lisp/www.cliki.net/abuse.html delete mode 100644 clones/lisp/www.cliki.net/access.html delete mode 100644 clones/lisp/www.cliki.net/acclaim.html delete mode 100644 clones/lisp/www.cliki.net/acclimation.html delete mode 100644 clones/lisp/www.cliki.net/accumulators.html delete mode 100644 clones/lisp/www.cliki.net/acl-compat.html delete mode 100644 clones/lisp/www.cliki.net/acl.html delete mode 100644 clones/lisp/www.cliki.net/actors.html delete mode 100644 clones/lisp/www.cliki.net/adler32.html delete mode 100644 clones/lisp/www.cliki.net/adopt-subcommands.html delete mode 100644 clones/lisp/www.cliki.net/adopt.html delete mode 100644 clones/lisp/www.cliki.net/adw-charting.html delete mode 100644 clones/lisp/www.cliki.net/aftpd.html delete mode 100644 clones/lisp/www.cliki.net/agnostic-lizard.html delete mode 100644 clones/lisp/www.cliki.net/ah2cl.html delete mode 100644 clones/lisp/www.cliki.net/ai.html delete mode 100644 clones/lisp/www.cliki.net/akater.html delete mode 100644 clones/lisp/www.cliki.net/alexandria.html delete mode 100644 clones/lisp/www.cliki.net/algorithm.html delete mode 100644 clones/lisp/www.cliki.net/allegroserve.html delete mode 100644 clones/lisp/www.cliki.net/alpaca.html delete mode 100644 clones/lisp/www.cliki.net/amazon web services.html delete mode 100644 clones/lisp/www.cliki.net/anaphora.html delete mode 100644 clones/lisp/www.cliki.net/anaphoric-variants.html delete mode 100644 clones/lisp/www.cliki.net/anardb.html delete mode 100644 clones/lisp/www.cliki.net/annual European Lisp Symposiums (ELS).html delete mode 100644 clones/lisp/www.cliki.net/ap5.html delete mode 100644 clones/lisp/www.cliki.net/application.html delete mode 100644 clones/lisp/www.cliki.net/april.html delete mode 100644 clones/lisp/www.cliki.net/araneida.html delete mode 100644 clones/lisp/www.cliki.net/archive.html delete mode 100644 clones/lisp/www.cliki.net/arduino-experiments.html delete mode 100644 clones/lisp/www.cliki.net/arduino.html delete mode 100644 clones/lisp/www.cliki.net/argdoc.html delete mode 100644 clones/lisp/www.cliki.net/argparse.html delete mode 100644 clones/lisp/www.cliki.net/armish.html delete mode 100644 clones/lisp/www.cliki.net/arnesi.html delete mode 100644 clones/lisp/www.cliki.net/aromyxo.html delete mode 100644 clones/lisp/www.cliki.net/array-operations.html delete mode 100644 clones/lisp/www.cliki.net/arrow-macros.html delete mode 100644 clones/lisp/www.cliki.net/asd-generator.html delete mode 100644 clones/lisp/www.cliki.net/asdf binary locations.html delete mode 100644 clones/lisp/www.cliki.net/asdf-config.html delete mode 100644 clones/lisp/www.cliki.net/asdf-dependency-grovel.html delete mode 100644 clones/lisp/www.cliki.net/asdf-flv.html delete mode 100644 clones/lisp/www.cliki.net/asdf-install.html delete mode 100644 clones/lisp/www.cliki.net/asdf-package-system.html delete mode 100644 clones/lisp/www.cliki.net/asdf-packaging-tools.html delete mode 100644 clones/lisp/www.cliki.net/asdf-system-connections.html delete mode 100644 clones/lisp/www.cliki.net/asdf-upgrade.html delete mode 100644 clones/lisp/www.cliki.net/asdf-world.html delete mode 100644 clones/lisp/www.cliki.net/asdf.html delete mode 100644 clones/lisp/www.cliki.net/aserve.html delete mode 100644 clones/lisp/www.cliki.net/asia.html delete mode 100644 clones/lisp/www.cliki.net/astine.html delete mode 100644 clones/lisp/www.cliki.net/atdoc.html delete mode 100644 clones/lisp/www.cliki.net/atom-slime.html delete mode 100644 clones/lisp/www.cliki.net/audio.html delete mode 100644 clones/lisp/www.cliki.net/avl-tree.html delete mode 100644 clones/lisp/www.cliki.net/axiom.html delete mode 100644 clones/lisp/www.cliki.net/babel-stream.html delete mode 100644 clones/lisp/www.cliki.net/babel.html delete mode 100644 clones/lisp/www.cliki.net/bailout.html delete mode 100644 clones/lisp/www.cliki.net/base64.html delete mode 100644 clones/lisp/www.cliki.net/basic-binary-ipc.html delete mode 100644 clones/lisp/www.cliki.net/beirc.html delete mode 100644 clones/lisp/www.cliki.net/benchmark.html delete mode 100644 clones/lisp/www.cliki.net/berkeley-db.html delete mode 100644 clones/lisp/www.cliki.net/bike.html delete mode 100644 clones/lisp/www.cliki.net/binary format.html delete mode 100644 clones/lisp/www.cliki.net/binary-types.html delete mode 100644 clones/lisp/www.cliki.net/binascii.html delete mode 100644 clones/lisp/www.cliki.net/bind.html delete mode 100644 clones/lisp/www.cliki.net/binghe.html delete mode 100644 clones/lisp/www.cliki.net/binomial-heap.html delete mode 100644 clones/lisp/www.cliki.net/bintype.html delete mode 100644 clones/lisp/www.cliki.net/bioinformatics.html delete mode 100644 clones/lisp/www.cliki.net/bk-tree.html delete mode 100644 clones/lisp/www.cliki.net/bknr-datastore.html delete mode 100644 clones/lisp/www.cliki.net/bknr-impex.html delete mode 100644 clones/lisp/www.cliki.net/bknr-skip-list.html delete mode 100644 clones/lisp/www.cliki.net/bknr-utils.html delete mode 100644 clones/lisp/www.cliki.net/bknr.html delete mode 100644 clones/lisp/www.cliki.net/blackbird.html delete mode 100644 clones/lisp/www.cliki.net/blocky.html delete mode 100644 clones/lisp/www.cliki.net/blog software.html delete mode 100644 clones/lisp/www.cliki.net/bobbin.html delete mode 100644 clones/lisp/www.cliki.net/bocl.html delete mode 100644 clones/lisp/www.cliki.net/boinkmarks.html delete mode 100644 clones/lisp/www.cliki.net/book.html delete mode 100644 clones/lisp/www.cliki.net/bordeaux-threads.html delete mode 100644 clones/lisp/www.cliki.net/boxen.html delete mode 100644 clones/lisp/www.cliki.net/bpm2.html delete mode 100644 clones/lisp/www.cliki.net/bratwurst.html delete mode 100644 clones/lisp/www.cliki.net/bt-semaphore.html delete mode 100644 clones/lisp/www.cliki.net/bubble-operator-upwards.html delete mode 100644 clones/lisp/www.cliki.net/buclet.html delete mode 100644 clones/lisp/www.cliki.net/build.html delete mode 100644 clones/lisp/www.cliki.net/buildapp.html delete mode 100644 clones/lisp/www.cliki.net/bundler.html delete mode 100644 clones/lisp/www.cliki.net/burgled-batteries.html delete mode 100644 clones/lisp/www.cliki.net/bytecurry.mocks.html delete mode 100644 clones/lisp/www.cliki.net/bytes.html delete mode 100644 clones/lisp/www.cliki.net/c-amplify.html delete mode 100644 clones/lisp/www.cliki.net/c.html delete mode 100644 clones/lisp/www.cliki.net/c2ffi.html delete mode 100644 clones/lisp/www.cliki.net/cCLan.html delete mode 100644 clones/lisp/www.cliki.net/cache.html delete mode 100644 clones/lisp/www.cliki.net/cacle.html delete mode 100644 clones/lisp/www.cliki.net/call-next-macro.html delete mode 100644 clones/lisp/www.cliki.net/call-with style.html delete mode 100644 clones/lisp/www.cliki.net/canonicalized-initargs.html delete mode 100644 clones/lisp/www.cliki.net/carrier.html delete mode 100644 clones/lisp/www.cliki.net/cartesian-product-switch.html delete mode 100644 clones/lisp/www.cliki.net/caveman.html delete mode 100644 clones/lisp/www.cliki.net/cc-bnc.html delete mode 100644 clones/lisp/www.cliki.net/ccl-compat.html delete mode 100644 clones/lisp/www.cliki.net/ccl.html delete mode 100644 clones/lisp/www.cliki.net/cclan-get.html delete mode 100644 clones/lisp/www.cliki.net/cclan.html delete mode 100644 clones/lisp/www.cliki.net/cdr_assoc.html delete mode 100644 clones/lisp/www.cliki.net/cells-gtk.html delete mode 100644 clones/lisp/www.cliki.net/cells.html delete mode 100644 clones/lisp/www.cliki.net/cesdi.html delete mode 100644 clones/lisp/www.cliki.net/cffi-cairo.html delete mode 100644 clones/lisp/www.cliki.net/cffi-clutter.html delete mode 100644 clones/lisp/www.cliki.net/cffi-dirent.html delete mode 100644 clones/lisp/www.cliki.net/cffi-epoll.html delete mode 100644 clones/lisp/www.cliki.net/cffi-errno.html delete mode 100644 clones/lisp/www.cliki.net/cffi-fcntl.html delete mode 100644 clones/lisp/www.cliki.net/cffi-gdbm.html delete mode 100644 clones/lisp/www.cliki.net/cffi-j.html delete mode 100644 clones/lisp/www.cliki.net/cffi-objects.html delete mode 100644 clones/lisp/www.cliki.net/cffi-posix Berkeley sockets.html delete mode 100644 clones/lisp/www.cliki.net/cffi-posix Linux extensions.html delete mode 100644 clones/lisp/www.cliki.net/cffi-posix POSIX headers.html delete mode 100644 clones/lisp/www.cliki.net/cffi-posix.html delete mode 100644 clones/lisp/www.cliki.net/cffi-redland.html delete mode 100644 clones/lisp/www.cliki.net/cffi-socket.html delete mode 100644 clones/lisp/www.cliki.net/cffi-stat.html delete mode 100644 clones/lisp/www.cliki.net/cffi-stfl.html delete mode 100644 clones/lisp/www.cliki.net/cffi-unistd.html delete mode 100644 clones/lisp/www.cliki.net/cffi-wordnet.html delete mode 100644 clones/lisp/www.cliki.net/cffi.html delete mode 100644 clones/lisp/www.cliki.net/cgn.html delete mode 100644 clones/lisp/www.cliki.net/ch-image.html delete mode 100644 clones/lisp/www.cliki.net/ch-util.html delete mode 100644 clones/lisp/www.cliki.net/change-class dangers.html delete mode 100644 clones/lisp/www.cliki.net/changed-stream.html delete mode 100644 clones/lisp/www.cliki.net/chanl.html delete mode 100644 clones/lisp/www.cliki.net/chaos-lisp.html delete mode 100644 clones/lisp/www.cliki.net/character encoding.html delete mode 100644 clones/lisp/www.cliki.net/charseq.html delete mode 100644 clones/lisp/www.cliki.net/check-it.html delete mode 100644 clones/lisp/www.cliki.net/chemical-compounds.html delete mode 100644 clones/lisp/www.cliki.net/chillax.html delete mode 100644 clones/lisp/www.cliki.net/chipz.html delete mode 100644 clones/lisp/www.cliki.net/chronicity.html delete mode 100644 clones/lisp/www.cliki.net/cirCLe.html delete mode 100644 clones/lisp/www.cliki.net/circular-streams.html delete mode 100644 clones/lisp/www.cliki.net/cl-2d.html delete mode 100644 clones/lisp/www.cliki.net/cl-2dsyntax.html delete mode 100644 clones/lisp/www.cliki.net/cl-aa.html delete mode 100644 clones/lisp/www.cliki.net/cl-actors.html delete mode 100644 clones/lisp/www.cliki.net/cl-agraph.html delete mode 100644 clones/lisp/www.cliki.net/cl-amazonproduct.html delete mode 100644 clones/lisp/www.cliki.net/cl-ana.html delete mode 100644 clones/lisp/www.cliki.net/cl-annot.html delete mode 100644 clones/lisp/www.cliki.net/cl-anonfun.html delete mode 100644 clones/lisp/www.cliki.net/cl-ansi-term.html delete mode 100644 clones/lisp/www.cliki.net/cl-ansi-text.html delete mode 100644 clones/lisp/www.cliki.net/cl-apertium-stream-parser.html delete mode 100644 clones/lisp/www.cliki.net/cl-applescript.html delete mode 100644 clones/lisp/www.cliki.net/cl-ascii-table.html delete mode 100644 clones/lisp/www.cliki.net/cl-async-future.html delete mode 100644 clones/lisp/www.cliki.net/cl-async.html delete mode 100644 clones/lisp/www.cliki.net/cl-audioscrobbler.html delete mode 100644 clones/lisp/www.cliki.net/cl-autorepo.html delete mode 100644 clones/lisp/www.cliki.net/cl-autowrap.html delete mode 100644 clones/lisp/www.cliki.net/cl-azure.html delete mode 100644 clones/lisp/www.cliki.net/cl-base32.html delete mode 100644 clones/lisp/www.cliki.net/cl-base58.html delete mode 100644 clones/lisp/www.cliki.net/cl-base64.html delete mode 100644 clones/lisp/www.cliki.net/cl-bench.html delete mode 100644 clones/lisp/www.cliki.net/cl-bencode.html delete mode 100644 clones/lisp/www.cliki.net/cl-bibtex.html delete mode 100644 clones/lisp/www.cliki.net/cl-binary-file.html delete mode 100644 clones/lisp/www.cliki.net/cl-binaural.html delete mode 100644 clones/lisp/www.cliki.net/cl-bio.html delete mode 100644 clones/lisp/www.cliki.net/cl-blapack.html delete mode 100644 clones/lisp/www.cliki.net/cl-blog-generator.html delete mode 100644 clones/lisp/www.cliki.net/cl-blogger.html delete mode 100644 clones/lisp/www.cliki.net/cl-bloom.html delete mode 100644 clones/lisp/www.cliki.net/cl-btree.html delete mode 100644 clones/lisp/www.cliki.net/cl-buchberger.html delete mode 100644 clones/lisp/www.cliki.net/cl-bzip2.html delete mode 100644 clones/lisp/www.cliki.net/cl-cache-tables.html delete mode 100644 clones/lisp/www.cliki.net/cl-cairo2.html delete mode 100644 clones/lisp/www.cliki.net/cl-cbr.html delete mode 100644 clones/lisp/www.cliki.net/cl-cffi-gtk.html delete mode 100644 clones/lisp/www.cliki.net/cl-change-case.html delete mode 100644 clones/lisp/www.cliki.net/cl-charms.html delete mode 100644 clones/lisp/www.cliki.net/cl-cidr-notation.html delete mode 100644 clones/lisp/www.cliki.net/cl-closure-template.html delete mode 100644 clones/lisp/www.cliki.net/cl-clsparse.html delete mode 100644 clones/lisp/www.cliki.net/cl-collider.html delete mode 100644 clones/lisp/www.cliki.net/cl-colors.html delete mode 100644 clones/lisp/www.cliki.net/cl-colors2.html delete mode 100644 clones/lisp/www.cliki.net/cl-comfy-arm.html delete mode 100644 clones/lisp/www.cliki.net/cl-competitive.html delete mode 100644 clones/lisp/www.cliki.net/cl-configuration.html delete mode 100644 clones/lisp/www.cliki.net/cl-conspack.html delete mode 100644 clones/lisp/www.cliki.net/cl-cont.html delete mode 100644 clones/lisp/www.cliki.net/cl-containers.html delete mode 100644 clones/lisp/www.cliki.net/cl-couchdb.html delete mode 100644 clones/lisp/www.cliki.net/cl-covid19.html delete mode 100644 clones/lisp/www.cliki.net/cl-cracklib.html delete mode 100644 clones/lisp/www.cliki.net/cl-crc64.html delete mode 100644 clones/lisp/www.cliki.net/cl-creditcard.html delete mode 100644 clones/lisp/www.cliki.net/cl-cron.html delete mode 100644 clones/lisp/www.cliki.net/cl-css.html delete mode 100644 clones/lisp/www.cliki.net/cl-csv.html delete mode 100644 clones/lisp/www.cliki.net/cl-cuda.html delete mode 100644 clones/lisp/www.cliki.net/cl-cudd.html delete mode 100644 clones/lisp/www.cliki.net/cl-curl.html delete mode 100644 clones/lisp/www.cliki.net/cl-curlex.html delete mode 100644 clones/lisp/www.cliki.net/cl-custom-hash-table.html delete mode 100644 clones/lisp/www.cliki.net/cl-daemonize.html delete mode 100644 clones/lisp/www.cliki.net/cl-darcs.html delete mode 100644 clones/lisp/www.cliki.net/cl-date-time-parser.html delete mode 100644 clones/lisp/www.cliki.net/cl-dawg.html delete mode 100644 clones/lisp/www.cliki.net/cl-dbi.html delete mode 100644 clones/lisp/www.cliki.net/cl-devil.html delete mode 100644 clones/lisp/www.cliki.net/cl-difflib.html delete mode 100644 clones/lisp/www.cliki.net/cl-digg.html delete mode 100644 clones/lisp/www.cliki.net/cl-docweaver.html delete mode 100644 clones/lisp/www.cliki.net/cl-dormouse.html delete mode 100644 clones/lisp/www.cliki.net/cl-dot.html delete mode 100644 clones/lisp/www.cliki.net/cl-dsl.html delete mode 100644 clones/lisp/www.cliki.net/cl-echonest.html delete mode 100644 clones/lisp/www.cliki.net/cl-elf.html delete mode 100644 clones/lisp/www.cliki.net/cl-emacs.html delete mode 100644 clones/lisp/www.cliki.net/cl-emb.html delete mode 100644 clones/lisp/www.cliki.net/cl-en.html delete mode 100644 clones/lisp/www.cliki.net/cl-environment.html delete mode 100644 clones/lisp/www.cliki.net/cl-eshop.html delete mode 100644 clones/lisp/www.cliki.net/cl-etsy.html delete mode 100644 clones/lisp/www.cliki.net/cl-event.html delete mode 100644 clones/lisp/www.cliki.net/cl-events.html delete mode 100644 clones/lisp/www.cliki.net/cl-ewkb.html delete mode 100644 clones/lisp/www.cliki.net/cl-facebook.html delete mode 100644 clones/lisp/www.cliki.net/cl-factoradic.html delete mode 100644 clones/lisp/www.cliki.net/cl-fad.html delete mode 100644 clones/lisp/www.cliki.net/cl-famix.html delete mode 100644 clones/lisp/www.cliki.net/cl-fann.html delete mode 100644 clones/lisp/www.cliki.net/cl-fbclient.html delete mode 100644 clones/lisp/www.cliki.net/cl-fftw3.html delete mode 100644 clones/lisp/www.cliki.net/cl-fix.html delete mode 100644 clones/lisp/www.cliki.net/cl-flow.html delete mode 100644 clones/lisp/www.cliki.net/cl-flowd.html delete mode 100644 clones/lisp/www.cliki.net/cl-fltk.html delete mode 100644 clones/lisp/www.cliki.net/cl-fond.html delete mode 100644 clones/lisp/www.cliki.net/cl-freetype2.html delete mode 100644 clones/lisp/www.cliki.net/cl-fswatch.html delete mode 100644 clones/lisp/www.cliki.net/cl-ftgl.html delete mode 100644 clones/lisp/www.cliki.net/cl-fu.html delete mode 100644 clones/lisp/www.cliki.net/cl-fuse-meta-fs.html delete mode 100644 clones/lisp/www.cliki.net/cl-fuse.html delete mode 100644 clones/lisp/www.cliki.net/cl-future.html delete mode 100644 clones/lisp/www.cliki.net/cl-fxml.html delete mode 100644 clones/lisp/www.cliki.net/cl-gcalc.html delete mode 100644 clones/lisp/www.cliki.net/cl-gd.html delete mode 100644 clones/lisp/www.cliki.net/cl-gdata.html delete mode 100644 clones/lisp/www.cliki.net/cl-gendoc.html delete mode 100644 clones/lisp/www.cliki.net/cl-geometry.html delete mode 100644 clones/lisp/www.cliki.net/cl-geonames.html delete mode 100644 clones/lisp/www.cliki.net/cl-gettext.html delete mode 100644 clones/lisp/www.cliki.net/cl-github.html delete mode 100644 clones/lisp/www.cliki.net/cl-gitlab.html delete mode 100644 clones/lisp/www.cliki.net/cl-glfw.html delete mode 100644 clones/lisp/www.cliki.net/cl-glfw3.html delete mode 100644 clones/lisp/www.cliki.net/cl-gpu.html delete mode 100644 clones/lisp/www.cliki.net/cl-gpx.html delete mode 100644 clones/lisp/www.cliki.net/cl-graph.html delete mode 100644 clones/lisp/www.cliki.net/cl-graphicsmagick.html delete mode 100644 clones/lisp/www.cliki.net/cl-graphviz.html delete mode 100644 clones/lisp/www.cliki.net/cl-grip.html delete mode 100644 clones/lisp/www.cliki.net/cl-grnm.html delete mode 100644 clones/lisp/www.cliki.net/cl-groupby.html delete mode 100644 clones/lisp/www.cliki.net/cl-growl.html delete mode 100644 clones/lisp/www.cliki.net/cl-gsl.html delete mode 100644 clones/lisp/www.cliki.net/cl-gtk.html delete mode 100644 clones/lisp/www.cliki.net/cl-gtk2.html delete mode 100644 clones/lisp/www.cliki.net/cl-gui.html delete mode 100644 clones/lisp/www.cliki.net/cl-hash-util.html delete mode 100644 clones/lisp/www.cliki.net/cl-heap.html delete mode 100644 clones/lisp/www.cliki.net/cl-heredoc.html delete mode 100644 clones/lisp/www.cliki.net/cl-hooks.html delete mode 100644 clones/lisp/www.cliki.net/cl-horde3d.html delete mode 100644 clones/lisp/www.cliki.net/cl-html-parse.html delete mode 100644 clones/lisp/www.cliki.net/cl-html-template.html delete mode 100644 clones/lisp/www.cliki.net/cl-html5-parser.html delete mode 100644 clones/lisp/www.cliki.net/cl-hue.html delete mode 100644 clones/lisp/www.cliki.net/cl-i18n.html delete mode 100644 clones/lisp/www.cliki.net/cl-icalendar.html delete mode 100644 clones/lisp/www.cliki.net/cl-icebox.html delete mode 100644 clones/lisp/www.cliki.net/cl-icu.html delete mode 100644 clones/lisp/www.cliki.net/cl-image2text.html delete mode 100644 clones/lisp/www.cliki.net/cl-indeterminism.html delete mode 100644 clones/lisp/www.cliki.net/cl-inflector.html delete mode 100644 clones/lisp/www.cliki.net/cl-influxdb.html delete mode 100644 clones/lisp/www.cliki.net/cl-inotify.html delete mode 100644 clones/lisp/www.cliki.net/cl-intbytes.html delete mode 100644 clones/lisp/www.cliki.net/cl-interpol.html delete mode 100644 clones/lisp/www.cliki.net/cl-irc.html delete mode 100644 clones/lisp/www.cliki.net/cl-irregsexp.html delete mode 100644 clones/lisp/www.cliki.net/cl-iso3166.html delete mode 100644 clones/lisp/www.cliki.net/cl-iso4217.html delete mode 100644 clones/lisp/www.cliki.net/cl-itertools.html delete mode 100644 clones/lisp/www.cliki.net/cl-iup.html delete mode 100644 clones/lisp/www.cliki.net/cl-jointgen.html delete mode 100644 clones/lisp/www.cliki.net/cl-jpeg.html delete mode 100644 clones/lisp/www.cliki.net/cl-jpl-util.html delete mode 100644 clones/lisp/www.cliki.net/cl-json.html delete mode 100644 clones/lisp/www.cliki.net/cl-kappa.html delete mode 100644 clones/lisp/www.cliki.net/cl-keycloak.html delete mode 100644 clones/lisp/www.cliki.net/cl-l10n.html delete mode 100644 clones/lisp/www.cliki.net/cl-larval.html delete mode 100644 clones/lisp/www.cliki.net/cl-lastfm.html delete mode 100644 clones/lisp/www.cliki.net/cl-launch.html delete mode 100644 clones/lisp/www.cliki.net/cl-launchpad.html delete mode 100644 clones/lisp/www.cliki.net/cl-leb128.html delete mode 100644 clones/lisp/www.cliki.net/cl-ledger.html delete mode 100644 clones/lisp/www.cliki.net/cl-lex.html delete mode 100644 clones/lisp/www.cliki.net/cl-liballegro-nuklear.html delete mode 100644 clones/lisp/www.cliki.net/cl-liballegro.html delete mode 100644 clones/lisp/www.cliki.net/cl-libserialport.html delete mode 100644 clones/lisp/www.cliki.net/cl-libsvm.html delete mode 100644 clones/lisp/www.cliki.net/cl-libusb.html delete mode 100644 clones/lisp/www.cliki.net/cl-libxml2.html delete mode 100644 clones/lisp/www.cliki.net/cl-locale.html delete mode 100644 clones/lisp/www.cliki.net/cl-log.html delete mode 100644 clones/lisp/www.cliki.net/cl-m4.html delete mode 100644 clones/lisp/www.cliki.net/cl-magic-cad.html delete mode 100644 clones/lisp/www.cliki.net/cl-magick.html delete mode 100644 clones/lisp/www.cliki.net/cl-marc.html delete mode 100644 clones/lisp/www.cliki.net/cl-markdown.html delete mode 100644 clones/lisp/www.cliki.net/cl-markup.html delete mode 100644 clones/lisp/www.cliki.net/cl-marshal.html delete mode 100644 clones/lisp/www.cliki.net/cl-match.html delete mode 100644 clones/lisp/www.cliki.net/cl-mathstats.html delete mode 100644 clones/lisp/www.cliki.net/cl-maxminddb.html delete mode 100644 clones/lisp/www.cliki.net/cl-mechanize.html delete mode 100644 clones/lisp/www.cliki.net/cl-menusystem.html delete mode 100644 clones/lisp/www.cliki.net/cl-migrations.html delete mode 100644 clones/lisp/www.cliki.net/cl-migratum.html delete mode 100644 clones/lisp/www.cliki.net/cl-mill.html delete mode 100644 clones/lisp/www.cliki.net/cl-mime.html delete mode 100644 clones/lisp/www.cliki.net/cl-mock.html delete mode 100644 clones/lisp/www.cliki.net/cl-modlisp.html delete mode 100644 clones/lisp/www.cliki.net/cl-moneris.html delete mode 100644 clones/lisp/www.cliki.net/cl-mongo.html delete mode 100644 clones/lisp/www.cliki.net/cl-mongrel2.html delete mode 100644 clones/lisp/www.cliki.net/cl-mop.html delete mode 100644 clones/lisp/www.cliki.net/cl-mpi.html delete mode 100644 clones/lisp/www.cliki.net/cl-mssql.html delete mode 100644 clones/lisp/www.cliki.net/cl-muproc.html delete mode 100644 clones/lisp/www.cliki.net/cl-mw.html delete mode 100644 clones/lisp/www.cliki.net/cl-mysql.html delete mode 100644 clones/lisp/www.cliki.net/cl-naive-store.html delete mode 100644 clones/lisp/www.cliki.net/cl-namegen.html delete mode 100644 clones/lisp/www.cliki.net/cl-ncurses.html delete mode 100644 clones/lisp/www.cliki.net/cl-neo4j.html delete mode 100644 clones/lisp/www.cliki.net/cl-net-snmp.html delete mode 100644 clones/lisp/www.cliki.net/cl-netstrings.html delete mode 100644 clones/lisp/www.cliki.net/cl-notify.html delete mode 100644 clones/lisp/www.cliki.net/cl-ntriples.html delete mode 100644 clones/lisp/www.cliki.net/cl-num-utils.html delete mode 100644 clones/lisp/www.cliki.net/cl-oauth.html delete mode 100644 clones/lisp/www.cliki.net/cl-octave.html delete mode 100644 clones/lisp/www.cliki.net/cl-ode.html delete mode 100644 clones/lisp/www.cliki.net/cl-one-time-passwords.html delete mode 100644 clones/lisp/www.cliki.net/cl-op.html delete mode 100644 clones/lisp/www.cliki.net/cl-openal.html delete mode 100644 clones/lisp/www.cliki.net/cl-openbox.html delete mode 100644 clones/lisp/www.cliki.net/cl-opencalais.html delete mode 100644 clones/lisp/www.cliki.net/cl-opengl.html delete mode 100644 clones/lisp/www.cliki.net/cl-openid.html delete mode 100644 clones/lisp/www.cliki.net/cl-opossum.html delete mode 100644 clones/lisp/www.cliki.net/cl-pack.html delete mode 100644 clones/lisp/www.cliki.net/cl-package-aliases.html delete mode 100644 clones/lisp/www.cliki.net/cl-parametric-types.html delete mode 100644 clones/lisp/www.cliki.net/cl-parsec.html delete mode 100644 clones/lisp/www.cliki.net/cl-pass.html delete mode 100644 clones/lisp/www.cliki.net/cl-password-store.html delete mode 100644 clones/lisp/www.cliki.net/cl-pastebin.html delete mode 100644 clones/lisp/www.cliki.net/cl-pattern.html delete mode 100644 clones/lisp/www.cliki.net/cl-paymill.html delete mode 100644 clones/lisp/www.cliki.net/cl-paypal.html delete mode 100644 clones/lisp/www.cliki.net/cl-pdb.html delete mode 100644 clones/lisp/www.cliki.net/cl-pdf.arglists.html delete mode 100644 clones/lisp/www.cliki.net/cl-pdf.html delete mode 100644 clones/lisp/www.cliki.net/cl-peg.html delete mode 100644 clones/lisp/www.cliki.net/cl-perec.html delete mode 100644 clones/lisp/www.cliki.net/cl-period.html delete mode 100644 clones/lisp/www.cliki.net/cl-permutation.html delete mode 100644 clones/lisp/www.cliki.net/cl-pgplot.html delete mode 100644 clones/lisp/www.cliki.net/cl-phonetic.html delete mode 100644 clones/lisp/www.cliki.net/cl-photo.html delete mode 100644 clones/lisp/www.cliki.net/cl-plplot.html delete mode 100644 clones/lisp/www.cliki.net/cl-plus-ssl.html delete mode 100644 clones/lisp/www.cliki.net/cl-pop.html delete mode 100644 clones/lisp/www.cliki.net/cl-portaudio.html delete mode 100644 clones/lisp/www.cliki.net/cl-posix-dirent-susv3-lisp.html delete mode 100644 clones/lisp/www.cliki.net/cl-posix-dirent.html delete mode 100644 clones/lisp/www.cliki.net/cl-posix-generalities.html delete mode 100644 clones/lisp/www.cliki.net/cl-posix-header-list.html delete mode 100644 clones/lisp/www.cliki.net/cl-ppcre.html delete mode 100644 clones/lisp/www.cliki.net/cl-prevalence.html delete mode 100644 clones/lisp/www.cliki.net/cl-proj.html delete mode 100644 clones/lisp/www.cliki.net/cl-protobufs.html delete mode 100644 clones/lisp/www.cliki.net/cl-pubmed.html delete mode 100644 clones/lisp/www.cliki.net/cl-qprint.html delete mode 100644 clones/lisp/www.cliki.net/cl-quickcheck.html delete mode 100644 clones/lisp/www.cliki.net/cl-randist.html delete mode 100644 clones/lisp/www.cliki.net/cl-random.html delete mode 100644 clones/lisp/www.cliki.net/cl-raytracer.html delete mode 100644 clones/lisp/www.cliki.net/cl-rdbms.html delete mode 100644 clones/lisp/www.cliki.net/cl-read-macro-tokens.html delete mode 100644 clones/lisp/www.cliki.net/cl-readline.html delete mode 100644 clones/lisp/www.cliki.net/cl-recaptcha.html delete mode 100644 clones/lisp/www.cliki.net/cl-redis.html delete mode 100644 clones/lisp/www.cliki.net/cl-reexport.html delete mode 100644 clones/lisp/www.cliki.net/cl-reversi.html delete mode 100644 clones/lisp/www.cliki.net/cl-rfc4251.html delete mode 100644 clones/lisp/www.cliki.net/cl-riff.html delete mode 100644 clones/lisp/www.cliki.net/cl-rmath.html delete mode 100644 clones/lisp/www.cliki.net/cl-routes.html delete mode 100644 clones/lisp/www.cliki.net/cl-rss-gen.html delete mode 100644 clones/lisp/www.cliki.net/cl-rss.html delete mode 100644 clones/lisp/www.cliki.net/cl-rsvg.html delete mode 100644 clones/lisp/www.cliki.net/cl-rttemplate.html delete mode 100644 clones/lisp/www.cliki.net/cl-sane.html delete mode 100644 clones/lisp/www.cliki.net/cl-sanitize.html delete mode 100644 clones/lisp/www.cliki.net/cl-sap.html delete mode 100644 clones/lisp/www.cliki.net/cl-sasl.html delete mode 100644 clones/lisp/www.cliki.net/cl-satwrap.html delete mode 100644 clones/lisp/www.cliki.net/cl-schedule.html delete mode 100644 clones/lisp/www.cliki.net/cl-scripting.html delete mode 100644 clones/lisp/www.cliki.net/cl-scrobbler.html delete mode 100644 clones/lisp/www.cliki.net/cl-sdl.html delete mode 100644 clones/lisp/www.cliki.net/cl-sdl2.html delete mode 100644 clones/lisp/www.cliki.net/cl-secure-read.html delete mode 100644 clones/lisp/www.cliki.net/cl-semantic.html delete mode 100644 clones/lisp/www.cliki.net/cl-serializer.html delete mode 100644 clones/lisp/www.cliki.net/cl-sgdos-csv.html delete mode 100644 clones/lisp/www.cliki.net/cl-sipc.html delete mode 100644 clones/lisp/www.cliki.net/cl-skip-list.html delete mode 100644 clones/lisp/www.cliki.net/cl-slice.html delete mode 100644 clones/lisp/www.cliki.net/cl-slug.html delete mode 100644 clones/lisp/www.cliki.net/cl-smoke.html delete mode 100644 clones/lisp/www.cliki.net/cl-smtp.html delete mode 100644 clones/lisp/www.cliki.net/cl-smugmug.html delete mode 100644 clones/lisp/www.cliki.net/cl-soil.html delete mode 100644 clones/lisp/www.cliki.net/cl-speedy-queue.html delete mode 100644 clones/lisp/www.cliki.net/cl-sphinx-search.html delete mode 100644 clones/lisp/www.cliki.net/cl-splicing-macro.html delete mode 100644 clones/lisp/www.cliki.net/cl-sqlite.html delete mode 100644 clones/lisp/www.cliki.net/cl-srpc.html delete mode 100644 clones/lisp/www.cliki.net/cl-statsd.html delete mode 100644 clones/lisp/www.cliki.net/cl-stirling-engine.html delete mode 100644 clones/lisp/www.cliki.net/cl-stomp.html delete mode 100644 clones/lisp/www.cliki.net/cl-store.html delete mode 100644 clones/lisp/www.cliki.net/cl-stream.html delete mode 100644 clones/lisp/www.cliki.net/cl-strftime.html delete mode 100644 clones/lisp/www.cliki.net/cl-string-complete.html delete mode 100644 clones/lisp/www.cliki.net/cl-string-match.html delete mode 100644 clones/lisp/www.cliki.net/cl-strings.html delete mode 100644 clones/lisp/www.cliki.net/cl-svg.html delete mode 100644 clones/lisp/www.cliki.net/cl-svm.html delete mode 100644 clones/lisp/www.cliki.net/cl-swap-file.html delete mode 100644 clones/lisp/www.cliki.net/cl-syntax-sugar.html delete mode 100644 clones/lisp/www.cliki.net/cl-syntax.html delete mode 100644 clones/lisp/www.cliki.net/cl-syslog.html delete mode 100644 clones/lisp/www.cliki.net/cl-tc.html delete mode 100644 clones/lisp/www.cliki.net/cl-tcod.html delete mode 100644 clones/lisp/www.cliki.net/cl-template.html delete mode 100644 clones/lisp/www.cliki.net/cl-termbox.html delete mode 100644 clones/lisp/www.cliki.net/cl-terrace.html delete mode 100644 clones/lisp/www.cliki.net/cl-test-grid.html delete mode 100644 clones/lisp/www.cliki.net/cl-textmagic.html delete mode 100644 clones/lisp/www.cliki.net/cl-tga.html delete mode 100644 clones/lisp/www.cliki.net/cl-tk.html delete mode 100644 clones/lisp/www.cliki.net/cl-toolbox.html delete mode 100644 clones/lisp/www.cliki.net/cl-trane.html delete mode 100644 clones/lisp/www.cliki.net/cl-transmission.html delete mode 100644 clones/lisp/www.cliki.net/cl-travis.html delete mode 100644 clones/lisp/www.cliki.net/cl-treemaps.html delete mode 100644 clones/lisp/www.cliki.net/cl-tumblr.html delete mode 100644 clones/lisp/www.cliki.net/cl-tuples.html delete mode 100644 clones/lisp/www.cliki.net/cl-twitter.html delete mode 100644 clones/lisp/www.cliki.net/cl-typed.html delete mode 100644 clones/lisp/www.cliki.net/cl-typesetting.html delete mode 100644 clones/lisp/www.cliki.net/cl-uglify-js.html delete mode 100644 clones/lisp/www.cliki.net/cl-unicode.html delete mode 100644 clones/lisp/www.cliki.net/cl-unification.html delete mode 100644 clones/lisp/www.cliki.net/cl-unit-test.html delete mode 100644 clones/lisp/www.cliki.net/cl-uri-templates.html delete mode 100644 clones/lisp/www.cliki.net/cl-utilities.html delete mode 100644 clones/lisp/www.cliki.net/cl-variates.html delete mode 100644 clones/lisp/www.cliki.net/cl-vectors.html delete mode 100644 clones/lisp/www.cliki.net/cl-video.html delete mode 100644 clones/lisp/www.cliki.net/cl-virtualbox.html delete mode 100644 clones/lisp/www.cliki.net/cl-wal.html delete mode 100644 clones/lisp/www.cliki.net/cl-walker.html delete mode 100644 clones/lisp/www.cliki.net/cl-wav-synth.html delete mode 100644 clones/lisp/www.cliki.net/cl-wbxml.html delete mode 100644 clones/lisp/www.cliki.net/cl-weather-util.html delete mode 100644 clones/lisp/www.cliki.net/cl-web-crawler.html delete mode 100644 clones/lisp/www.cliki.net/cl-web-utils.html delete mode 100644 clones/lisp/www.cliki.net/cl-webkit.html delete mode 100644 clones/lisp/www.cliki.net/cl-weblocks.html delete mode 100644 clones/lisp/www.cliki.net/cl-wfx.html delete mode 100644 clones/lisp/www.cliki.net/cl-who.html delete mode 100644 clones/lisp/www.cliki.net/cl-win32ole.html delete mode 100644 clones/lisp/www.cliki.net/cl-xml-parser.html delete mode 100644 clones/lisp/www.cliki.net/cl-xmlspam.html delete mode 100644 clones/lisp/www.cliki.net/cl-xmpp.html delete mode 100644 clones/lisp/www.cliki.net/cl-xspf.html delete mode 100644 clones/lisp/www.cliki.net/cl-xul.html delete mode 100644 clones/lisp/www.cliki.net/cl-yacc.html delete mode 100644 clones/lisp/www.cliki.net/cl-yaclyaml.html delete mode 100644 clones/lisp/www.cliki.net/cl-yahoo.html delete mode 100644 clones/lisp/www.cliki.net/cl-yaml.html delete mode 100644 clones/lisp/www.cliki.net/cl-youtube.html delete mode 100644 clones/lisp/www.cliki.net/cl-z.html delete mode 100644 clones/lisp/www.cliki.net/cl-z85.html delete mode 100644 clones/lisp/www.cliki.net/cl-zlib.html delete mode 100644 clones/lisp/www.cliki.net/cl-zmq.html delete mode 100644 clones/lisp/www.cliki.net/cl4py.html delete mode 100644 clones/lisp/www.cliki.net/clTcl.html delete mode 100644 clones/lisp/www.cliki.net/clack.html delete mode 100644 clones/lisp/www.cliki.net/class-options.html delete mode 100644 clones/lisp/www.cliki.net/classimp.html delete mode 100644 clones/lisp/www.cliki.net/clath.html delete mode 100644 clones/lisp/www.cliki.net/clave.html delete mode 100644 clones/lisp/www.cliki.net/clavier.html delete mode 100644 clones/lisp/www.cliki.net/clawk.html delete mode 100644 clones/lisp/www.cliki.net/clbuild.html delete mode 100644 clones/lisp/www.cliki.net/clem.html delete mode 100644 clones/lisp/www.cliki.net/clerk.html delete mode 100644 clones/lisp/www.cliki.net/clesh.html delete mode 100644 clones/lisp/www.cliki.net/cleven.html delete mode 100644 clones/lisp/www.cliki.net/clfswm.html delete mode 100644 clones/lisp/www.cliki.net/clg.html delete mode 100644 clones/lisp/www.cliki.net/clhp.html delete mode 100644 clones/lisp/www.cliki.net/clhs ASDF wrapper.html delete mode 100644 clones/lisp/www.cliki.net/clickr.html delete mode 100644 clones/lisp/www.cliki.net/cliki.html delete mode 100644 clones/lisp/www.cliki.net/clim-chess.html delete mode 100644 clones/lisp/www.cliki.net/clim-desktop.html delete mode 100644 clones/lisp/www.cliki.net/clim.html delete mode 100644 clones/lisp/www.cliki.net/climacs.html delete mode 100644 clones/lisp/www.cliki.net/clinch.html delete mode 100644 clones/lisp/www.cliki.net/clinicap.html delete mode 100644 clones/lisp/www.cliki.net/clisp-sqlite.html delete mode 100644 clones/lisp/www.cliki.net/clisp.html delete mode 100644 clones/lisp/www.cliki.net/clmath.html delete mode 100644 clones/lisp/www.cliki.net/clnuplot.html delete mode 100644 clones/lisp/www.cliki.net/cloak.html delete mode 100644 clones/lisp/www.cliki.net/clocc-port.html delete mode 100644 clones/lisp/www.cliki.net/clod.html delete mode 100644 clones/lisp/www.cliki.net/clods-export.html delete mode 100644 clones/lisp/www.cliki.net/clois-lane.html delete mode 100644 clones/lisp/www.cliki.net/clon.html delete mode 100644 clones/lisp/www.cliki.net/clones.html delete mode 100644 clones/lisp/www.cliki.net/clonsigna.html delete mode 100644 clones/lisp/www.cliki.net/clos-diff.html delete mode 100644 clones/lisp/www.cliki.net/clos.html delete mode 100644 clones/lisp/www.cliki.net/closer-mop.html delete mode 100644 clones/lisp/www.cliki.net/closer-weak.html delete mode 100644 clones/lisp/www.cliki.net/closure-common.html delete mode 100644 clones/lisp/www.cliki.net/closure-html.html delete mode 100644 clones/lisp/www.cliki.net/closure.html delete mode 100644 clones/lisp/www.cliki.net/clouchdb.html delete mode 100644 clones/lisp/www.cliki.net/clsql-pg-introspect.html delete mode 100644 clones/lisp/www.cliki.net/clsql.html delete mode 100644 clones/lisp/www.cliki.net/clss.html delete mode 100644 clones/lisp/www.cliki.net/cluck.html delete mode 100644 clones/lisp/www.cliki.net/cluecc.html delete mode 100644 clones/lisp/www.cliki.net/clufs.html delete mode 100644 clones/lisp/www.cliki.net/clunit2.html delete mode 100644 clones/lisp/www.cliki.net/clutter.html delete mode 100644 clones/lisp/www.cliki.net/clws.html delete mode 100644 clones/lisp/www.cliki.net/clx.html delete mode 100644 clones/lisp/www.cliki.net/cmpl.html delete mode 100644 clones/lisp/www.cliki.net/cmucl.html delete mode 100644 clones/lisp/www.cliki.net/cocoa-mail.html delete mode 100644 clones/lisp/www.cliki.net/coding convention.html delete mode 100644 clones/lisp/www.cliki.net/coleslaw.html delete mode 100644 clones/lisp/www.cliki.net/collapse-string.html delete mode 100644 clones/lisp/www.cliki.net/collectors.html delete mode 100644 clones/lisp/www.cliki.net/colliflower.html delete mode 100644 clones/lisp/www.cliki.net/color-gradients.html delete mode 100644 clones/lisp/www.cliki.net/colorize.html delete mode 100644 clones/lisp/www.cliki.net/com.google.base.html delete mode 100644 clones/lisp/www.cliki.net/com.informatimago.common-lisp.interactive.html delete mode 100644 clones/lisp/www.cliki.net/com.informatimago.hangman.html delete mode 100644 clones/lisp/www.cliki.net/com.nklein.parser-generator.html delete mode 100644 clones/lisp/www.cliki.net/command-line options parser.html delete mode 100644 clones/lisp/www.cliki.net/command-line-arguments.html delete mode 100644 clones/lisp/www.cliki.net/common lisp implementation.html delete mode 100644 clones/lisp/www.cliki.net/common-db.html delete mode 100644 clones/lisp/www.cliki.net/common-lisp-controller.html delete mode 100644 clones/lisp/www.cliki.net/common-lisp-stat.html delete mode 100644 clones/lisp/www.cliki.net/common-lisp.net.html delete mode 100644 clones/lisp/www.cliki.net/community.html delete mode 100644 clones/lisp/www.cliki.net/comp.lang.lisp.html delete mode 100644 clones/lisp/www.cliki.net/comparisons.html delete mode 100644 clones/lisp/www.cliki.net/compatibility layers.html delete mode 100644 clones/lisp/www.cliki.net/compatible-metaclasses.html delete mode 100644 clones/lisp/www.cliki.net/compression.html delete mode 100644 clones/lisp/www.cliki.net/computable-reals.html delete mode 100644 clones/lisp/www.cliki.net/computed-class.html delete mode 100644 clones/lisp/www.cliki.net/concurrency.html delete mode 100644 clones/lisp/www.cliki.net/conduit-packages.html delete mode 100644 clones/lisp/www.cliki.net/conference.html delete mode 100644 clones/lisp/www.cliki.net/configuration.html delete mode 100644 clones/lisp/www.cliki.net/conium.html delete mode 100644 clones/lisp/www.cliki.net/console.html delete mode 100644 clones/lisp/www.cliki.net/continuations.html delete mode 100644 clones/lisp/www.cliki.net/convenience library.html delete mode 100644 clones/lisp/www.cliki.net/copying problem.html delete mode 100644 clones/lisp/www.cliki.net/corba.html delete mode 100644 clones/lisp/www.cliki.net/corona.html delete mode 100644 clones/lisp/www.cliki.net/cparse.html delete mode 100644 clones/lisp/www.cliki.net/creating executables.html delete mode 100644 clones/lisp/www.cliki.net/creole.html delete mode 100644 clones/lisp/www.cliki.net/croatoan.html delete mode 100644 clones/lisp/www.cliki.net/cryptography.html delete mode 100644 clones/lisp/www.cliki.net/cserial-port.html delete mode 100644 clones/lisp/www.cliki.net/csp.html delete mode 100644 clones/lisp/www.cliki.net/css-lexer.html delete mode 100644 clones/lisp/www.cliki.net/css-lite.html delete mode 100644 clones/lisp/www.cliki.net/csv.html delete mode 100644 clones/lisp/www.cliki.net/cube.html delete mode 100644 clones/lisp/www.cliki.net/curl.html delete mode 100644 clones/lisp/www.cliki.net/curly.html delete mode 100644 clones/lisp/www.cliki.net/currensea.html delete mode 100644 clones/lisp/www.cliki.net/current recommended libraries.html delete mode 100644 clones/lisp/www.cliki.net/cxml-rng.html delete mode 100644 clones/lisp/www.cliki.net/cxml-stp.html delete mode 100644 clones/lisp/www.cliki.net/cxml.html delete mode 100644 clones/lisp/www.cliki.net/cy.html delete mode 100644 clones/lisp/www.cliki.net/data format.html delete mode 100644 clones/lisp/www.cliki.net/data formats.html delete mode 100644 clones/lisp/www.cliki.net/data structure.html delete mode 100644 clones/lisp/www.cliki.net/data-lens.html delete mode 100644 clones/lisp/www.cliki.net/data-table.html delete mode 100644 clones/lisp/www.cliki.net/database-migrations.html delete mode 100644 clones/lisp/www.cliki.net/database.html delete mode 100644 clones/lisp/www.cliki.net/dataflow.html delete mode 100644 clones/lisp/www.cliki.net/datafly.html delete mode 100644 clones/lisp/www.cliki.net/dawg.html delete mode 100644 clones/lisp/www.cliki.net/db-sockets.html delete mode 100644 clones/lisp/www.cliki.net/ddist.html delete mode 100644 clones/lisp/www.cliki.net/de.setf.amqp.html delete mode 100644 clones/lisp/www.cliki.net/de.setf.atn-parser.html delete mode 100644 clones/lisp/www.cliki.net/de.setf.cassandra.html delete mode 100644 clones/lisp/www.cliki.net/de.setf.graphics.html delete mode 100644 clones/lisp/www.cliki.net/de.setf.resource.html delete mode 100644 clones/lisp/www.cliki.net/de.setf.thrift.html delete mode 100644 clones/lisp/www.cliki.net/de.setf.utility.html delete mode 100644 clones/lisp/www.cliki.net/de.setf.wilbur.html delete mode 100644 clones/lisp/www.cliki.net/debian.html delete mode 100644 clones/lisp/www.cliki.net/debugging.html delete mode 100644 clones/lisp/www.cliki.net/decaf.html delete mode 100644 clones/lisp/www.cliki.net/decimals.html delete mode 100644 clones/lisp/www.cliki.net/decisiontree.html delete mode 100644 clones/lisp/www.cliki.net/declt.html delete mode 100644 clones/lisp/www.cliki.net/deeds.html delete mode 100644 clones/lisp/www.cliki.net/defclass*.html delete mode 100644 clones/lisp/www.cliki.net/defclass-std.html delete mode 100644 clones/lisp/www.cliki.net/definer.html delete mode 100644 clones/lisp/www.cliki.net/definitions-systems.html delete mode 100644 clones/lisp/www.cliki.net/deflate.html delete mode 100644 clones/lisp/www.cliki.net/defmacro-enhance.html delete mode 100644 clones/lisp/www.cliki.net/defrest.html delete mode 100644 clones/lisp/www.cliki.net/defstar.html delete mode 100644 clones/lisp/www.cliki.net/defsystem-compatibility.html delete mode 100644 clones/lisp/www.cliki.net/demacs.html delete mode 100644 clones/lisp/www.cliki.net/deployment.html delete mode 100644 clones/lisp/www.cliki.net/deprecations.html delete mode 100644 clones/lisp/www.cliki.net/detachtty.html delete mode 100644 clones/lisp/www.cliki.net/development.html delete mode 100644 clones/lisp/www.cliki.net/dexador.html delete mode 100644 clones/lisp/www.cliki.net/dialogue.html delete mode 100644 clones/lisp/www.cliki.net/dict.html delete mode 100644 clones/lisp/www.cliki.net/diff-match-patch.html delete mode 100644 clones/lisp/www.cliki.net/diff.html delete mode 100644 clones/lisp/www.cliki.net/directory listing.html delete mode 100644 clones/lisp/www.cliki.net/dissect.html delete mode 100644 clones/lisp/www.cliki.net/distributed.html delete mode 100644 clones/lisp/www.cliki.net/djula.html delete mode 100644 clones/lisp/www.cliki.net/dlist.html delete mode 100644 clones/lisp/www.cliki.net/do-backup.html delete mode 100644 clones/lisp/www.cliki.net/docudown.html delete mode 100644 clones/lisp/www.cliki.net/document format.html delete mode 100644 clones/lisp/www.cliki.net/document preparation.html delete mode 100644 clones/lisp/www.cliki.net/document.html delete mode 100644 clones/lisp/www.cliki.net/documentation tool.html delete mode 100644 clones/lisp/www.cliki.net/documentation-template.html delete mode 100644 clones/lisp/www.cliki.net/documentation-utils.html delete mode 100644 clones/lisp/www.cliki.net/documentation.html delete mode 100644 clones/lisp/www.cliki.net/doors.html delete mode 100644 clones/lisp/www.cliki.net/doplus.html delete mode 100644 clones/lisp/www.cliki.net/dpans2texi.html delete mode 100644 clones/lisp/www.cliki.net/drakma.html delete mode 100644 clones/lisp/www.cliki.net/dso-binary-class.html delete mode 100644 clones/lisp/www.cliki.net/dso-csv.html delete mode 100644 clones/lisp/www.cliki.net/dso-lex.html delete mode 100644 clones/lisp/www.cliki.net/dso-parse.html delete mode 100644 clones/lisp/www.cliki.net/dso-util.html delete mode 100644 clones/lisp/www.cliki.net/dwim.hu.html delete mode 100644 clones/lisp/www.cliki.net/dynamic-classes.html delete mode 100644 clones/lisp/www.cliki.net/eager-future.html delete mode 100644 clones/lisp/www.cliki.net/easyweb.html delete mode 100644 clones/lisp/www.cliki.net/eazy-gnuplot.html delete mode 100644 clones/lisp/www.cliki.net/ebnf-parser.html delete mode 100644 clones/lisp/www.cliki.net/ecl-readline.html delete mode 100644 clones/lisp/www.cliki.net/ecl.html delete mode 100644 clones/lisp/www.cliki.net/eclipse.html delete mode 100644 clones/lisp/www.cliki.net/eco.html delete mode 100644 clones/lisp/www.cliki.net/editor hints.html delete mode 100644 clones/lisp/www.cliki.net/editor-hints.html delete mode 100644 clones/lisp/www.cliki.net/ediware.html delete mode 100644 clones/lisp/www.cliki.net/electronics.html delete mode 100644 clones/lisp/www.cliki.net/elisp.html delete mode 100644 clones/lisp/www.cliki.net/emacs-cl.html delete mode 100644 clones/lisp/www.cliki.net/emacs.html delete mode 100644 clones/lisp/www.cliki.net/email.html delete mode 100644 clones/lisp/www.cliki.net/embeddable-maxima.html delete mode 100644 clones/lisp/www.cliki.net/embedded.html delete mode 100644 clones/lisp/www.cliki.net/enchant.html delete mode 100644 clones/lisp/www.cliki.net/enhanced-boolean.html delete mode 100644 clones/lisp/www.cliki.net/enhanced-defclass.html delete mode 100644 clones/lisp/www.cliki.net/enhanced-eval-when.html delete mode 100644 clones/lisp/www.cliki.net/enhanced-find-class.html delete mode 100644 clones/lisp/www.cliki.net/enhanced-multiple-value-bind.html delete mode 100644 clones/lisp/www.cliki.net/enhanced-typep.html delete mode 100644 clones/lisp/www.cliki.net/eql.html delete mode 100644 clones/lisp/www.cliki.net/erlangen.html delete mode 100644 clones/lisp/www.cliki.net/esa.html delete mode 100644 clones/lisp/www.cliki.net/esmtp-client.html delete mode 100644 clones/lisp/www.cliki.net/esrap-liquid.html delete mode 100644 clones/lisp/www.cliki.net/esrap-peg.html delete mode 100644 clones/lisp/www.cliki.net/esrap.html delete mode 100644 clones/lisp/www.cliki.net/evaled-when.html delete mode 100644 clones/lisp/www.cliki.net/evol.html delete mode 100644 clones/lisp/www.cliki.net/executor.html delete mode 100644 clones/lisp/www.cliki.net/exifinfo.html delete mode 100644 clones/lisp/www.cliki.net/exit-hooks.html delete mode 100644 clones/lisp/www.cliki.net/exscribe.html delete mode 100644 clones/lisp/www.cliki.net/ext-blog.html delete mode 100644 clones/lisp/www.cliki.net/external-program.html delete mode 100644 clones/lisp/www.cliki.net/extsort.html delete mode 100644 clones/lisp/www.cliki.net/f-underscore.html delete mode 100644 clones/lisp/www.cliki.net/fact-base.html delete mode 100644 clones/lisp/www.cliki.net/fakenil.html delete mode 100644 clones/lisp/www.cliki.net/fare-csv.html delete mode 100644 clones/lisp/www.cliki.net/fare-matcher-docs.html delete mode 100644 clones/lisp/www.cliki.net/fare-matcher.html delete mode 100644 clones/lisp/www.cliki.net/fare-memoization.html delete mode 100644 clones/lisp/www.cliki.net/fare-mop.html delete mode 100644 clones/lisp/www.cliki.net/fare-quasiquote.html delete mode 100644 clones/lisp/www.cliki.net/fare-scripts.html delete mode 100644 clones/lisp/www.cliki.net/fare-utils.html delete mode 100644 clones/lisp/www.cliki.net/faslpath.html delete mode 100644 clones/lisp/www.cliki.net/fast-generic-functions.html delete mode 100644 clones/lisp/www.cliki.net/fast-http.html delete mode 100644 clones/lisp/www.cliki.net/fast-io.html delete mode 100644 clones/lisp/www.cliki.net/favorite Lisp books.html delete mode 100644 clones/lisp/www.cliki.net/fern.html delete mode 100644 clones/lisp/www.cliki.net/ffa.html delete mode 100644 clones/lisp/www.cliki.net/ffi.html delete mode 100644 clones/lisp/www.cliki.net/ffigen.html delete mode 100644 clones/lisp/www.cliki.net/file format.html delete mode 100644 clones/lisp/www.cliki.net/file-position on non-files.html delete mode 100644 clones/lisp/www.cliki.net/file-types.html delete mode 100644 clones/lisp/www.cliki.net/filesystem.html delete mode 100644 clones/lisp/www.cliki.net/firephp.html delete mode 100644 clones/lisp/www.cliki.net/first-time-value.html delete mode 100644 clones/lisp/www.cliki.net/flexi-streams.html delete mode 100644 clones/lisp/www.cliki.net/flexichain.html delete mode 100644 clones/lisp/www.cliki.net/flexoplan.html delete mode 100644 clones/lisp/www.cliki.net/float-features.html delete mode 100644 clones/lisp/www.cliki.net/floating-point.html delete mode 100644 clones/lisp/www.cliki.net/flood.html delete mode 100644 clones/lisp/www.cliki.net/floyd-warshall.html delete mode 100644 clones/lisp/www.cliki.net/folio.html delete mode 100644 clones/lisp/www.cliki.net/folio2.html delete mode 100644 clones/lisp/www.cliki.net/foo.html delete mode 100644 clones/lisp/www.cliki.net/foreign-numeric-vector.html delete mode 100644 clones/lisp/www.cliki.net/format.html delete mode 100644 clones/lisp/www.cliki.net/fprog.html delete mode 100644 clones/lisp/www.cliki.net/free software.html delete mode 100644 clones/lisp/www.cliki.net/free.html delete mode 100644 clones/lisp/www.cliki.net/froute.html delete mode 100644 clones/lisp/www.cliki.net/fset.html delete mode 100644 clones/lisp/www.cliki.net/ftp.html delete mode 100644 clones/lisp/www.cliki.net/fukacl.html delete mode 100644 clones/lisp/www.cliki.net/function-cache.html delete mode 100644 clones/lisp/www.cliki.net/funds.html delete mode 100644 clones/lisp/www.cliki.net/fuzzy-match.html delete mode 100644 clones/lisp/www.cliki.net/game.html delete mode 100644 clones/lisp/www.cliki.net/garbage-pools.html delete mode 100644 clones/lisp/www.cliki.net/gcl.html delete mode 100644 clones/lisp/www.cliki.net/gecol.html delete mode 100644 clones/lisp/www.cliki.net/generators.html delete mode 100644 clones/lisp/www.cliki.net/genhash.html delete mode 100644 clones/lisp/www.cliki.net/gentoo.html delete mode 100644 clones/lisp/www.cliki.net/geocoder.html delete mode 100644 clones/lisp/www.cliki.net/geohash.html delete mode 100644 clones/lisp/www.cliki.net/geospatial.html delete mode 100644 clones/lisp/www.cliki.net/getopt.html delete mode 100644 clones/lisp/www.cliki.net/glass.html delete mode 100644 clones/lisp/www.cliki.net/glitter.html delete mode 100644 clones/lisp/www.cliki.net/global-vars.html delete mode 100644 clones/lisp/www.cliki.net/glop.html delete mode 100644 clones/lisp/www.cliki.net/graph-utils.html delete mode 100644 clones/lisp/www.cliki.net/graph.html delete mode 100644 clones/lisp/www.cliki.net/graphics library.html delete mode 100644 clones/lisp/www.cliki.net/graphics toolkit.html delete mode 100644 clones/lisp/www.cliki.net/graylex.html delete mode 100644 clones/lisp/www.cliki.net/green-threads.html delete mode 100644 clones/lisp/www.cliki.net/group-by.html delete mode 100644 clones/lisp/www.cliki.net/gsharp.html delete mode 100644 clones/lisp/www.cliki.net/gsll.html delete mode 100644 clones/lisp/www.cliki.net/gtfl.html delete mode 100644 clones/lisp/www.cliki.net/gtk-cffi.html delete mode 100644 clones/lisp/www.cliki.net/guess.html delete mode 100644 clones/lisp/www.cliki.net/gui.html delete mode 100644 clones/lisp/www.cliki.net/gy.mr.html delete mode 100644 clones/lisp/www.cliki.net/gzip-stream.html delete mode 100644 clones/lisp/www.cliki.net/halftone.html delete mode 100644 clones/lisp/www.cliki.net/heap.html delete mode 100644 clones/lisp/www.cliki.net/hh-parse.html delete mode 100644 clones/lisp/www.cliki.net/hh-redblack.html delete mode 100644 clones/lisp/www.cliki.net/hh-web.html delete mode 100644 clones/lisp/www.cliki.net/house.html delete mode 100644 clones/lisp/www.cliki.net/ht-simple-ajax.html delete mode 100644 clones/lisp/www.cliki.net/html generator.html delete mode 100644 clones/lisp/www.cliki.net/html->string.html delete mode 100644 clones/lisp/www.cliki.net/html-encode.html delete mode 100644 clones/lisp/www.cliki.net/html-extract.html delete mode 100644 clones/lisp/www.cliki.net/html-template.html delete mode 100644 clones/lisp/www.cliki.net/html.html delete mode 100644 clones/lisp/www.cliki.net/htmlgen.html delete mode 100644 clones/lisp/www.cliki.net/htout.html delete mode 100644 clones/lisp/www.cliki.net/http-response-handler.html delete mode 100644 clones/lisp/www.cliki.net/http-routes.html delete mode 100644 clones/lisp/www.cliki.net/hu.dwim.logger.html delete mode 100644 clones/lisp/www.cliki.net/hu.dwim.util.html delete mode 100644 clones/lisp/www.cliki.net/hu.dwim.zlib.html delete mode 100644 clones/lisp/www.cliki.net/huffman.html delete mode 100644 clones/lisp/www.cliki.net/humor.html delete mode 100644 clones/lisp/www.cliki.net/hunchentoot-auth.html delete mode 100644 clones/lisp/www.cliki.net/hunchentoot-vhost.html delete mode 100644 clones/lisp/www.cliki.net/hunchentoot.html delete mode 100644 clones/lisp/www.cliki.net/hyde.html delete mode 100644 clones/lisp/www.cliki.net/hyperdoc.html delete mode 100644 clones/lisp/www.cliki.net/hyperobject.html delete mode 100644 clones/lisp/www.cliki.net/hyperspec-lookup.html delete mode 100644 clones/lisp/www.cliki.net/ia-hash-table.html delete mode 100644 clones/lisp/www.cliki.net/id3v2.html delete mode 100644 clones/lisp/www.cliki.net/idna.html delete mode 100644 clones/lisp/www.cliki.net/ieee-floats.html delete mode 100644 clones/lisp/www.cliki.net/iescrypt.html delete mode 100644 clones/lisp/www.cliki.net/ilisp.html delete mode 100644 clones/lisp/www.cliki.net/image file.html delete mode 100644 clones/lisp/www.cliki.net/image.html delete mode 100644 clones/lisp/www.cliki.net/imago.html delete mode 100644 clones/lisp/www.cliki.net/imap.html delete mode 100644 clones/lisp/www.cliki.net/incf-cl.html delete mode 100644 clones/lisp/www.cliki.net/incless.html delete mode 100644 clones/lisp/www.cliki.net/incognito-keywords.html delete mode 100644 clones/lisp/www.cliki.net/index.html delete mode 100644 clones/lisp/www.cliki.net/inferior-shell.html delete mode 100644 clones/lisp/www.cliki.net/infix.html delete mode 100644 clones/lisp/www.cliki.net/ingvar.html delete mode 100644 clones/lisp/www.cliki.net/inheriting-readers.html delete mode 100644 clones/lisp/www.cliki.net/inlined-generic-function.html delete mode 100644 clones/lisp/www.cliki.net/installer.html delete mode 100644 clones/lisp/www.cliki.net/internationalization.html delete mode 100644 clones/lisp/www.cliki.net/iolib.html delete mode 100644 clones/lisp/www.cliki.net/ip-interfaces.html delete mode 100644 clones/lisp/www.cliki.net/ipcalc.html delete mode 100644 clones/lisp/www.cliki.net/irc-logger.html delete mode 100644 clones/lisp/www.cliki.net/irc.html delete mode 100644 clones/lisp/www.cliki.net/ironclad.html delete mode 100644 clones/lisp/www.cliki.net/isaac.html delete mode 100644 clones/lisp/www.cliki.net/iso-2533.html delete mode 100644 clones/lisp/www.cliki.net/iso-3166-1.html delete mode 100644 clones/lisp/www.cliki.net/issue.html delete mode 100644 clones/lisp/www.cliki.net/iterate-keywords.html delete mode 100644 clones/lisp/www.cliki.net/iterate.html delete mode 100644 clones/lisp/www.cliki.net/its-library.html delete mode 100644 clones/lisp/www.cliki.net/ivan4th.html delete mode 100644 clones/lisp/www.cliki.net/jarw-dictionary.html delete mode 100644 clones/lisp/www.cliki.net/jarw-inet.html delete mode 100644 clones/lisp/www.cliki.net/jarw-markup.html delete mode 100644 clones/lisp/www.cliki.net/jarw-media.html delete mode 100644 clones/lisp/www.cliki.net/jarw.html delete mode 100644 clones/lisp/www.cliki.net/java.html delete mode 100644 clones/lisp/www.cliki.net/javascript.html delete mode 100644 clones/lisp/www.cliki.net/jd-time-utils.html delete mode 100644 clones/lisp/www.cliki.net/jfli.html delete mode 100644 clones/lisp/www.cliki.net/jmt.lisp.html delete mode 100644 clones/lisp/www.cliki.net/joelh.html delete mode 100644 clones/lisp/www.cliki.net/jonathan.html delete mode 100644 clones/lisp/www.cliki.net/journal.html delete mode 100644 clones/lisp/www.cliki.net/jpeg.html delete mode 100644 clones/lisp/www.cliki.net/jpl-queues.html delete mode 100644 clones/lisp/www.cliki.net/jscl.html delete mode 100644 clones/lisp/www.cliki.net/jsgen.html delete mode 100644 clones/lisp/www.cliki.net/json-streams.html delete mode 100644 clones/lisp/www.cliki.net/json-template.html delete mode 100644 clones/lisp/www.cliki.net/jsown.html delete mode 100644 clones/lisp/www.cliki.net/jss.html delete mode 100644 clones/lisp/www.cliki.net/jwacs.html delete mode 100644 clones/lisp/www.cliki.net/kdtree-jk.html delete mode 100644 clones/lisp/www.cliki.net/kl-verify.html delete mode 100644 clones/lisp/www.cliki.net/klatschbase.html delete mode 100644 clones/lisp/www.cliki.net/kmrcl.html delete mode 100644 clones/lisp/www.cliki.net/knowledge representation systems.html delete mode 100644 clones/lisp/www.cliki.net/kpax.html delete mode 100644 clones/lisp/www.cliki.net/l-math.html delete mode 100644 clones/lisp/www.cliki.net/lQuery.html delete mode 100644 clones/lisp/www.cliki.net/lambda-gtk.html delete mode 100644 clones/lisp/www.cliki.net/lambda-reader.html delete mode 100644 clones/lisp/www.cliki.net/language extension.html delete mode 100644 clones/lisp/www.cliki.net/langutils.html delete mode 100644 clones/lisp/www.cliki.net/lapax.html delete mode 100644 clones/lisp/www.cliki.net/lass.html delete mode 100644 clones/lisp/www.cliki.net/lassie.html delete mode 100644 clones/lisp/www.cliki.net/latex-table.html delete mode 100644 clones/lisp/www.cliki.net/lazy.html delete mode 100644 clones/lisp/www.cliki.net/lep.html delete mode 100644 clones/lisp/www.cliki.net/let-plus.html delete mode 100644 clones/lisp/www.cliki.net/lexer.html delete mode 100644 clones/lisp/www.cliki.net/lfarm.html delete mode 100644 clones/lisp/www.cliki.net/lfe.html delete mode 100644 clones/lisp/www.cliki.net/lgtk.html delete mode 100644 clones/lisp/www.cliki.net/lh-usb.html delete mode 100644 clones/lisp/www.cliki.net/liards.html delete mode 100644 clones/lisp/www.cliki.net/libgpg-error.html delete mode 100644 clones/lisp/www.cliki.net/libraries.html delete mode 100644 clones/lisp/www.cliki.net/library.html delete mode 100644 clones/lisp/www.cliki.net/license.html delete mode 100644 clones/lisp/www.cliki.net/lightgbm.html delete mode 100644 clones/lisp/www.cliki.net/linear algebra.html delete mode 100644 clones/lisp/www.cliki.net/linedit.html delete mode 100644 clones/lisp/www.cliki.net/linewise-template.html delete mode 100644 clones/lisp/www.cliki.net/linux-packaging.html delete mode 100644 clones/lisp/www.cliki.net/linux.html delete mode 100644 clones/lisp/www.cliki.net/lisp IDE.html delete mode 100644 clones/lisp/www.cliki.net/lisp books.html delete mode 100644 clones/lisp/www.cliki.net/lisp-cgi-utils.html delete mode 100644 clones/lisp/www.cliki.net/lisp-executable.html delete mode 100644 clones/lisp/www.cliki.net/lisp-gflags.html delete mode 100644 clones/lisp/www.cliki.net/lisp-interface-library.html delete mode 100644 clones/lisp/www.cliki.net/lisp-magick.html delete mode 100644 clones/lisp/www.cliki.net/lisp-matrix.html delete mode 100644 clones/lisp/www.cliki.net/lisp-network-server.html delete mode 100644 clones/lisp/www.cliki.net/lisp-on-lines.html delete mode 100644 clones/lisp/www.cliki.net/lisp-stat.html delete mode 100644 clones/lisp/www.cliki.net/lisp-unit.html delete mode 100644 clones/lisp/www.cliki.net/lisp-unit2.html delete mode 100644 clones/lisp/www.cliki.net/lisp-xl.html delete mode 100644 clones/lisp/www.cliki.net/lisp.html delete mode 100644 clones/lisp/www.cliki.net/lisp2wish.html delete mode 100644 clones/lisp/www.cliki.net/lispbuilder-clawk.html delete mode 100644 clones/lisp/www.cliki.net/lispbuilder-lexer.html delete mode 100644 clones/lisp/www.cliki.net/lispbuilder-regex.html delete mode 100644 clones/lisp/www.cliki.net/lispbuilder-sdl-gfx.html delete mode 100644 clones/lisp/www.cliki.net/lispbuilder-sdl-image.html delete mode 100644 clones/lisp/www.cliki.net/lispbuilder-sdl-mixer.html delete mode 100644 clones/lisp/www.cliki.net/lispbuilder-sdl-ttf.html delete mode 100644 clones/lisp/www.cliki.net/lispbuilder-sdl.html delete mode 100644 clones/lisp/www.cliki.net/lispbuilder.html delete mode 100644 clones/lisp/www.cliki.net/lispc.html delete mode 100644 clones/lisp/www.cliki.net/lispcafe.html delete mode 100644 clones/lisp/www.cliki.net/lispdebug.html delete mode 100644 clones/lisp/www.cliki.net/lisppaste.html delete mode 100644 clones/lisp/www.cliki.net/lispweb.html delete mode 100644 clones/lisp/www.cliki.net/lispworks-udp.html delete mode 100644 clones/lisp/www.cliki.net/lispx-proxy.html delete mode 100644 clones/lisp/www.cliki.net/literate programming.html delete mode 100644 clones/lisp/www.cliki.net/literate-lisp.html delete mode 100644 clones/lisp/www.cliki.net/littleb.html delete mode 100644 clones/lisp/www.cliki.net/lml.html delete mode 100644 clones/lisp/www.cliki.net/lml2.html delete mode 100644 clones/lisp/www.cliki.net/local-time.html delete mode 100644 clones/lisp/www.cliki.net/lodematron.html delete mode 100644 clones/lisp/www.cliki.net/log4cl.html delete mode 100644 clones/lisp/www.cliki.net/log5.html delete mode 100644 clones/lisp/www.cliki.net/logging.html delete mode 100644 clones/lisp/www.cliki.net/logv.html delete mode 100644 clones/lisp/www.cliki.net/lol-re.html delete mode 100644 clones/lisp/www.cliki.net/lparallel.html delete mode 100644 clones/lisp/www.cliki.net/ltd.html delete mode 100644 clones/lisp/www.cliki.net/ltk.html delete mode 100644 clones/lisp/www.cliki.net/lw-compat.html delete mode 100644 clones/lisp/www.cliki.net/m2cl.html delete mode 100644 clones/lisp/www.cliki.net/machina-policy.html delete mode 100644 clones/lisp/www.cliki.net/machine code.html delete mode 100644 clones/lisp/www.cliki.net/machine learning.html delete mode 100644 clones/lisp/www.cliki.net/macho.html delete mode 100644 clones/lisp/www.cliki.net/macos x.html delete mode 100644 clones/lisp/www.cliki.net/macro example.html delete mode 100644 clones/lisp/www.cliki.net/macro-eval.html delete mode 100644 clones/lisp/www.cliki.net/macro-html.html delete mode 100644 clones/lisp/www.cliki.net/macro-level.html delete mode 100644 clones/lisp/www.cliki.net/macrodynamics.html delete mode 100644 clones/lisp/www.cliki.net/macroexpand-dammit.html delete mode 100644 clones/lisp/www.cliki.net/magicffi.html delete mode 100644 clones/lisp/www.cliki.net/magicl.html delete mode 100644 clones/lisp/www.cliki.net/manardb.html delete mode 100644 clones/lisp/www.cliki.net/manifest.html delete mode 100644 clones/lisp/www.cliki.net/map-bind.html delete mode 100644 clones/lisp/www.cliki.net/marcoxa.html delete mode 100644 clones/lisp/www.cliki.net/markdown.cl.html delete mode 100644 clones/lisp/www.cliki.net/mathematics.html delete mode 100644 clones/lisp/www.cliki.net/matrix.html delete mode 100644 clones/lisp/www.cliki.net/maxima-json-rpc.html delete mode 100644 clones/lisp/www.cliki.net/maxima.html delete mode 100644 clones/lisp/www.cliki.net/maxpc.html delete mode 100644 clones/lisp/www.cliki.net/mcclim-desktop.html delete mode 100644 clones/lisp/www.cliki.net/mcclim.html delete mode 100644 clones/lisp/www.cliki.net/mccme-helpers.html delete mode 100644 clones/lisp/www.cliki.net/md5.html delete mode 100644 clones/lisp/www.cliki.net/mel-base.html delete mode 100644 clones/lisp/www.cliki.net/memento-mori.html delete mode 100644 clones/lisp/www.cliki.net/memoization.html delete mode 100644 clones/lisp/www.cliki.net/memoize-form.html delete mode 100644 clones/lisp/www.cliki.net/memoize.html delete mode 100644 clones/lisp/www.cliki.net/messaging.html delete mode 100644 clones/lisp/www.cliki.net/meta-sexp.html delete mode 100644 clones/lisp/www.cliki.net/meta.html delete mode 100644 clones/lisp/www.cliki.net/metacopy.html delete mode 100644 clones/lisp/www.cliki.net/metapeg.html delete mode 100644 clones/lisp/www.cliki.net/metaprogramming.html delete mode 100644 clones/lisp/www.cliki.net/metatilities-base.html delete mode 100644 clones/lisp/www.cliki.net/metatilities.html delete mode 100644 clones/lisp/www.cliki.net/metering.html delete mode 100644 clones/lisp/www.cliki.net/method-combination-utilities.html delete mode 100644 clones/lisp/www.cliki.net/method-versions.html delete mode 100644 clones/lisp/www.cliki.net/mexpr.html delete mode 100644 clones/lisp/www.cliki.net/micmac.html delete mode 100644 clones/lisp/www.cliki.net/microlisp.html delete mode 100644 clones/lisp/www.cliki.net/midi.html delete mode 100644 clones/lisp/www.cliki.net/mime4cl.html delete mode 100644 clones/lisp/www.cliki.net/minheap.html delete mode 100644 clones/lisp/www.cliki.net/minion.html delete mode 100644 clones/lisp/www.cliki.net/mit-license.html delete mode 100644 clones/lisp/www.cliki.net/mixalot.html delete mode 100644 clones/lisp/www.cliki.net/mixamesh.html delete mode 100644 clones/lisp/www.cliki.net/mk-defsystem.html delete mode 100644 clones/lisp/www.cliki.net/mk-string-metrics.html delete mode 100644 clones/lisp/www.cliki.net/mock.html delete mode 100644 clones/lisp/www.cliki.net/mockingbird.html delete mode 100644 clones/lisp/www.cliki.net/mod_ecl.html delete mode 100644 clones/lisp/www.cliki.net/mod_lisp.html delete mode 100644 clones/lisp/www.cliki.net/modf.html delete mode 100644 clones/lisp/www.cliki.net/monitoring.html delete mode 100644 clones/lisp/www.cliki.net/monkeylib-atom.html delete mode 100644 clones/lisp/www.cliki.net/monkeylib-json.html delete mode 100644 clones/lisp/www.cliki.net/monkeylib-parser.html delete mode 100644 clones/lisp/www.cliki.net/monkeylib-prose-diff.html delete mode 100644 clones/lisp/www.cliki.net/monkeylib-utilities.html delete mode 100644 clones/lisp/www.cliki.net/montezuma.html delete mode 100644 clones/lisp/www.cliki.net/mop-utils.html delete mode 100644 clones/lisp/www.cliki.net/moptilities.html delete mode 100644 clones/lisp/www.cliki.net/mpc.html delete mode 100644 clones/lisp/www.cliki.net/multiple-value-variants.html delete mode 100644 clones/lisp/www.cliki.net/music.html delete mode 100644 clones/lisp/www.cliki.net/mw-diff-sexp.html delete mode 100644 clones/lisp/www.cliki.net/my-util.html delete mode 100644 clones/lisp/www.cliki.net/myweb.html delete mode 100644 clones/lisp/www.cliki.net/named-readtables.html delete mode 100644 clones/lisp/www.cliki.net/naming conventions.html delete mode 100644 clones/lisp/www.cliki.net/nary-tree.html delete mode 100644 clones/lisp/www.cliki.net/natural language processing.html delete mode 100644 clones/lisp/www.cliki.net/neo4cl.html delete mode 100644 clones/lisp/www.cliki.net/net-telent-date.html delete mode 100644 clones/lisp/www.cliki.net/net4cl.html delete mode 100644 clones/lisp/www.cliki.net/networking.html delete mode 100644 clones/lisp/www.cliki.net/nibbles.html delete mode 100644 clones/lisp/www.cliki.net/ningle.html delete mode 100644 clones/lisp/www.cliki.net/ninglex.html delete mode 100644 clones/lisp/www.cliki.net/nodgui.html delete mode 100644 clones/lisp/www.cliki.net/non-free.html delete mode 100644 clones/lisp/www.cliki.net/north.html delete mode 100644 clones/lisp/www.cliki.net/noss.html delete mode 100644 clones/lisp/www.cliki.net/nrw-xmcl.html delete mode 100644 clones/lisp/www.cliki.net/nuclblog.html delete mode 100644 clones/lisp/www.cliki.net/oauth2.html delete mode 100644 clones/lisp/www.cliki.net/object-class.html delete mode 100644 clones/lisp/www.cliki.net/obsolete.html delete mode 100644 clones/lisp/www.cliki.net/ocml.html delete mode 100644 clones/lisp/www.cliki.net/odd-streams.html delete mode 100644 clones/lisp/www.cliki.net/okra.html delete mode 100644 clones/lisp/www.cliki.net/online tutorial.html delete mode 100644 clones/lisp/www.cliki.net/openMCL.html delete mode 100644 clones/lisp/www.cliki.net/opengl-extensions.html delete mode 100644 clones/lisp/www.cliki.net/opengl-text.html delete mode 100644 clones/lisp/www.cliki.net/opengl.html delete mode 100644 clones/lisp/www.cliki.net/opticl.html delete mode 100644 clones/lisp/www.cliki.net/optima.html delete mode 100644 clones/lisp/www.cliki.net/optparser.html delete mode 100644 clones/lisp/www.cliki.net/org-davep-cldict.html delete mode 100644 clones/lisp/www.cliki.net/org-davep-dict.html delete mode 100644 clones/lisp/www.cliki.net/org-davep-dictrepl.html delete mode 100644 clones/lisp/www.cliki.net/org-davep-newsrc.html delete mode 100644 clones/lisp/www.cliki.net/org-davep-nntp.html delete mode 100644 clones/lisp/www.cliki.net/osicat.html delete mode 100644 clones/lisp/www.cliki.net/outer-parentheses-free-repl.html delete mode 100644 clones/lisp/www.cliki.net/package-renaming.html delete mode 100644 clones/lisp/www.cliki.net/packer.html delete mode 100644 clones/lisp/www.cliki.net/pal.html delete mode 100644 clones/lisp/www.cliki.net/parachute.html delete mode 100644 clones/lisp/www.cliki.net/parenscript.html delete mode 100644 clones/lisp/www.cliki.net/parenscriptm.html delete mode 100644 clones/lisp/www.cliki.net/parenscriptx.html delete mode 100644 clones/lisp/www.cliki.net/parse-declarations.html delete mode 100644 clones/lisp/www.cliki.net/parse-float.html delete mode 100644 clones/lisp/www.cliki.net/parse-js.html delete mode 100644 clones/lisp/www.cliki.net/parse-number-range.html delete mode 100644 clones/lisp/www.cliki.net/parse-number.html delete mode 100644 clones/lisp/www.cliki.net/parse.html delete mode 100644 clones/lisp/www.cliki.net/parseq.html delete mode 100644 clones/lisp/www.cliki.net/parser generator.html delete mode 100644 clones/lisp/www.cliki.net/parser-combinators.html delete mode 100644 clones/lisp/www.cliki.net/parser.html delete mode 100644 clones/lisp/www.cliki.net/path-parse.html delete mode 100644 clones/lisp/www.cliki.net/pathname-utils.html delete mode 100644 clones/lisp/www.cliki.net/patron.html delete mode 100644 clones/lisp/www.cliki.net/pattern matching.html delete mode 100644 clones/lisp/www.cliki.net/patty.html delete mode 100644 clones/lisp/www.cliki.net/patxi-2.html delete mode 100644 clones/lisp/www.cliki.net/paul.html delete mode 100644 clones/lisp/www.cliki.net/pavelpenev.html delete mode 100644 clones/lisp/www.cliki.net/pcall.html delete mode 100644 clones/lisp/www.cliki.net/pcl.html delete mode 100644 clones/lisp/www.cliki.net/percent-encoding.html delete mode 100644 clones/lisp/www.cliki.net/performance benchmarks.html delete mode 100644 clones/lisp/www.cliki.net/performance.html delete mode 100644 clones/lisp/www.cliki.net/perfpiece.html delete mode 100644 clones/lisp/www.cliki.net/pergamum.html delete mode 100644 clones/lisp/www.cliki.net/periodic-table.html delete mode 100644 clones/lisp/www.cliki.net/perl-in-lisp.html delete mode 100644 clones/lisp/www.cliki.net/persistence.html delete mode 100644 clones/lisp/www.cliki.net/persistent-variables.html delete mode 100644 clones/lisp/www.cliki.net/person.html delete mode 100644 clones/lisp/www.cliki.net/pgl.html delete mode 100644 clones/lisp/www.cliki.net/pgloader.html delete mode 100644 clones/lisp/www.cliki.net/philip-jose.html delete mode 100644 clones/lisp/www.cliki.net/phos.html delete mode 100644 clones/lisp/www.cliki.net/phtml.html delete mode 100644 clones/lisp/www.cliki.net/physical-quantities.html delete mode 100644 clones/lisp/www.cliki.net/picard-csv-parser.html delete mode 100644 clones/lisp/www.cliki.net/pipes.html delete mode 100644 clones/lisp/www.cliki.net/pithy-xml.html delete mode 100644 clones/lisp/www.cliki.net/place-modifiers.html delete mode 100644 clones/lisp/www.cliki.net/place-utils.html delete mode 100644 clones/lisp/www.cliki.net/plain-odbc.html delete mode 100644 clones/lisp/www.cliki.net/plank.html delete mode 100644 clones/lisp/www.cliki.net/plexippus-xpath.html delete mode 100644 clones/lisp/www.cliki.net/plokami.html delete mode 100644 clones/lisp/www.cliki.net/plot-2d.html delete mode 100644 clones/lisp/www.cliki.net/plotting.html delete mode 100644 clones/lisp/www.cliki.net/plump-sexp.html delete mode 100644 clones/lisp/www.cliki.net/plump.html delete mode 100644 clones/lisp/www.cliki.net/pml.html delete mode 100644 clones/lisp/www.cliki.net/png-read.html delete mode 100644 clones/lisp/www.cliki.net/png.html delete mode 100644 clones/lisp/www.cliki.net/point-polygon.html delete mode 100644 clones/lisp/www.cliki.net/poiu.html delete mode 100644 clones/lisp/www.cliki.net/polisher.html delete mode 100644 clones/lisp/www.cliki.net/poly-pen.html delete mode 100644 clones/lisp/www.cliki.net/portable hemlock.html delete mode 100644 clones/lisp/www.cliki.net/portable-clx.html delete mode 100644 clones/lisp/www.cliki.net/portableaserve.html delete mode 100644 clones/lisp/www.cliki.net/portch.html delete mode 100644 clones/lisp/www.cliki.net/positional-lambda.html delete mode 100644 clones/lisp/www.cliki.net/postmodern.html delete mode 100644 clones/lisp/www.cliki.net/postscript.html delete mode 100644 clones/lisp/www.cliki.net/pregexp.html delete mode 100644 clones/lisp/www.cliki.net/pretend-event-loop.html delete mode 100644 clones/lisp/www.cliki.net/pretty-function.html delete mode 100644 clones/lisp/www.cliki.net/primecount.html delete mode 100644 clones/lisp/www.cliki.net/princ-ut-interval.html delete mode 100644 clones/lisp/www.cliki.net/profiler.html delete mode 100644 clones/lisp/www.cliki.net/programming language.html delete mode 100644 clones/lisp/www.cliki.net/programming tips.html delete mode 100644 clones/lisp/www.cliki.net/prolog.html delete mode 100644 clones/lisp/www.cliki.net/prometheus.cl.html delete mode 100644 clones/lisp/www.cliki.net/prompt-for.html delete mode 100644 clones/lisp/www.cliki.net/proposed extensions to ANSI.html delete mode 100644 clones/lisp/www.cliki.net/protocol.html delete mode 100644 clones/lisp/www.cliki.net/psgraph.html delete mode 100644 clones/lisp/www.cliki.net/ptester.html delete mode 100644 clones/lisp/www.cliki.net/public domain.html delete mode 100644 clones/lisp/www.cliki.net/puri.html delete mode 100644 clones/lisp/www.cliki.net/pxmlutils.html delete mode 100644 clones/lisp/www.cliki.net/py-configparser.html delete mode 100644 clones/lisp/www.cliki.net/py-random.html delete mode 100644 clones/lisp/www.cliki.net/python.html delete mode 100644 clones/lisp/www.cliki.net/q-thread-pool.html delete mode 100644 clones/lisp/www.cliki.net/qbase64.html delete mode 100644 clones/lisp/www.cliki.net/qbook.html delete mode 100644 clones/lisp/www.cliki.net/qitab.html delete mode 100644 clones/lisp/www.cliki.net/qooxlisp.html delete mode 100644 clones/lisp/www.cliki.net/qt-libs.html delete mode 100644 clones/lisp/www.cliki.net/qtools-ui.html delete mode 100644 clones/lisp/www.cliki.net/qtools.html delete mode 100644 clones/lisp/www.cliki.net/quasiquote-2.0.html delete mode 100644 clones/lisp/www.cliki.net/query-fs.html delete mode 100644 clones/lisp/www.cliki.net/queues.html delete mode 100644 clones/lisp/www.cliki.net/quick-arrays.html delete mode 100644 clones/lisp/www.cliki.net/quickapp.html delete mode 100644 clones/lisp/www.cliki.net/quicklisp.html delete mode 100644 clones/lisp/www.cliki.net/quid-pro-quo.html delete mode 100644 clones/lisp/www.cliki.net/quri.html delete mode 100644 clones/lisp/www.cliki.net/quux-hunchentoot.html delete mode 100644 clones/lisp/www.cliki.net/quux-time.html delete mode 100644 clones/lisp/www.cliki.net/radiance.html delete mode 100644 clones/lisp/www.cliki.net/random-state.html delete mode 100644 clones/lisp/www.cliki.net/ratmath.html delete mode 100644 clones/lisp/www.cliki.net/rclg.html delete mode 100644 clones/lisp/www.cliki.net/rdp.html delete mode 100644 clones/lisp/www.cliki.net/re.html delete mode 100644 clones/lisp/www.cliki.net/reactive.html delete mode 100644 clones/lisp/www.cliki.net/read-csv.html delete mode 100644 clones/lisp/www.cliki.net/read-macros.html delete mode 100644 clones/lisp/www.cliki.net/readable.html delete mode 100644 clones/lisp/www.cliki.net/reader-interception.html delete mode 100644 clones/lisp/www.cliki.net/reattatchabe slime.html delete mode 100644 clones/lisp/www.cliki.net/rebinding.html delete mode 100644 clones/lisp/www.cliki.net/recursive-regex.html delete mode 100644 clones/lisp/www.cliki.net/reeder.html delete mode 100644 clones/lisp/www.cliki.net/regex (library by asciian).html delete mode 100644 clones/lisp/www.cliki.net/regular expression.html delete mode 100644 clones/lisp/www.cliki.net/repl.html delete mode 100644 clones/lisp/www.cliki.net/replay-streams.html delete mode 100644 clones/lisp/www.cliki.net/repo-install.html delete mode 100644 clones/lisp/www.cliki.net/require-module.html delete mode 100644 clones/lisp/www.cliki.net/reserve-channel.html delete mode 100644 clones/lisp/www.cliki.net/resolver.html delete mode 100644 clones/lisp/www.cliki.net/restas.html delete mode 100644 clones/lisp/www.cliki.net/retrospectiff.html delete mode 100644 clones/lisp/www.cliki.net/rfc2109.html delete mode 100644 clones/lisp/www.cliki.net/rfc2388.html delete mode 100644 clones/lisp/www.cliki.net/rfc2822.html delete mode 100644 clones/lisp/www.cliki.net/rfc3339-timestamp.html delete mode 100644 clones/lisp/www.cliki.net/rif.html delete mode 100644 clones/lisp/www.cliki.net/riff-wave.html delete mode 100644 clones/lisp/www.cliki.net/rip-l.html delete mode 100644 clones/lisp/www.cliki.net/rlc.html delete mode 100644 clones/lisp/www.cliki.net/rlwrap.html delete mode 100644 clones/lisp/www.cliki.net/robotics.html delete mode 100644 clones/lisp/www.cliki.net/robots.txt.html delete mode 100644 clones/lisp/www.cliki.net/rock.html delete mode 100644 clones/lisp/www.cliki.net/rootkit.html delete mode 100644 clones/lisp/www.cliki.net/ropes.html delete mode 100644 clones/lisp/www.cliki.net/roswell.html delete mode 100644 clones/lisp/www.cliki.net/rove.html delete mode 100644 clones/lisp/www.cliki.net/rpc4cl.html delete mode 100644 clones/lisp/www.cliki.net/rpm.html delete mode 100644 clones/lisp/www.cliki.net/rt.html delete mode 100644 clones/lisp/www.cliki.net/rtch.html delete mode 100644 clones/lisp/www.cliki.net/rtm-lisp-api.html delete mode 100644 clones/lisp/www.cliki.net/rtorrent-controller.html delete mode 100644 clones/lisp/www.cliki.net/rutils.html delete mode 100644 clones/lisp/www.cliki.net/rw-ut.html delete mode 100644 clones/lisp/www.cliki.net/s-base64.html delete mode 100644 clones/lisp/www.cliki.net/s-dot.html delete mode 100644 clones/lisp/www.cliki.net/s-exp syntax.html delete mode 100644 clones/lisp/www.cliki.net/s-http-client.html delete mode 100644 clones/lisp/www.cliki.net/s-http-server.html delete mode 100644 clones/lisp/www.cliki.net/s-protobuf.html delete mode 100644 clones/lisp/www.cliki.net/s-sysdeps.html delete mode 100644 clones/lisp/www.cliki.net/s-utils.html delete mode 100644 clones/lisp/www.cliki.net/s-xml-rpc.html delete mode 100644 clones/lisp/www.cliki.net/s-xml.html delete mode 100644 clones/lisp/www.cliki.net/safe-queue.html delete mode 100644 clones/lisp/www.cliki.net/salza-png.html delete mode 100644 clones/lisp/www.cliki.net/salza.html delete mode 100644 clones/lisp/www.cliki.net/salza2.html delete mode 100644 clones/lisp/www.cliki.net/sapaclisp.html delete mode 100644 clones/lisp/www.cliki.net/save-object.html delete mode 100644 clones/lisp/www.cliki.net/sb-cga.html delete mode 100644 clones/lisp/www.cliki.net/sb-cpu-affinity.html delete mode 100644 clones/lisp/www.cliki.net/sb-dxf.html delete mode 100644 clones/lisp/www.cliki.net/sb-heapdump.html delete mode 100644 clones/lisp/www.cliki.net/sb-screen.html delete mode 100644 clones/lisp/www.cliki.net/sb-sequence.html delete mode 100644 clones/lisp/www.cliki.net/sb-simple-audio.html delete mode 100644 clones/lisp/www.cliki.net/sb-texinfo.html delete mode 100644 clones/lisp/www.cliki.net/sbcl.html delete mode 100644 clones/lisp/www.cliki.net/scalpl.html delete mode 100644 clones/lisp/www.cliki.net/scheme.html delete mode 100644 clones/lisp/www.cliki.net/science.html delete mode 100644 clones/lisp/www.cliki.net/screamer.html delete mode 100644 clones/lisp/www.cliki.net/screen.html delete mode 100644 clones/lisp/www.cliki.net/scribble.html delete mode 100644 clones/lisp/www.cliki.net/secure-random.html delete mode 100644 clones/lisp/www.cliki.net/selenium-lisp-connector.html delete mode 100644 clones/lisp/www.cliki.net/semantic web.html delete mode 100644 clones/lisp/www.cliki.net/sequence-search-replace.html delete mode 100644 clones/lisp/www.cliki.net/serapeum.html delete mode 100644 clones/lisp/www.cliki.net/serialization.html delete mode 100644 clones/lisp/www.cliki.net/series.html delete mode 100644 clones/lisp/www.cliki.net/session-token.html delete mode 100644 clones/lisp/www.cliki.net/sha3.html delete mode 100644 clones/lisp/www.cliki.net/shallow-copy-array.html delete mode 100644 clones/lisp/www.cliki.net/shared-preferences.html delete mode 100644 clones/lisp/www.cliki.net/sharplispers.html delete mode 100644 clones/lisp/www.cliki.net/shelisp.html delete mode 100644 clones/lisp/www.cliki.net/shell.html delete mode 100644 clones/lisp/www.cliki.net/shtookovina.html delete mode 100644 clones/lisp/www.cliki.net/signal processing.html delete mode 100644 clones/lisp/www.cliki.net/simple-actors.html delete mode 100644 clones/lisp/www.cliki.net/simple-currency.html delete mode 100644 clones/lisp/www.cliki.net/simple-date-time.html delete mode 100644 clones/lisp/www.cliki.net/simple-guess.html delete mode 100644 clones/lisp/www.cliki.net/simple-gui.html delete mode 100644 clones/lisp/www.cliki.net/simple-http.html delete mode 100644 clones/lisp/www.cliki.net/simple-rgb.html delete mode 100644 clones/lisp/www.cliki.net/simple-routes.html delete mode 100644 clones/lisp/www.cliki.net/simple-stream.html delete mode 100644 clones/lisp/www.cliki.net/simple-tasks.html delete mode 100644 clones/lisp/www.cliki.net/simpledb.html delete mode 100644 clones/lisp/www.cliki.net/simplified-types.html delete mode 100644 clones/lisp/www.cliki.net/simplot.html delete mode 100644 clones/lisp/www.cliki.net/single-threaded-ccl.html delete mode 100644 clones/lisp/www.cliki.net/site-generator.html delete mode 100644 clones/lisp/www.cliki.net/skippy.html delete mode 100644 clones/lisp/www.cliki.net/skitter.html delete mode 100644 clones/lisp/www.cliki.net/slashcachelisp.html delete mode 100644 clones/lisp/www.cliki.net/slashdotlisp.html delete mode 100644 clones/lisp/www.cliki.net/slime.html delete mode 100644 clones/lisp/www.cliki.net/smackjack.html delete mode 100644 clones/lisp/www.cliki.net/sml.html delete mode 100644 clones/lisp/www.cliki.net/smta.html delete mode 100644 clones/lisp/www.cliki.net/smtp4cl.html delete mode 100644 clones/lisp/www.cliki.net/snakes.html delete mode 100644 clones/lisp/www.cliki.net/snmp.html delete mode 100644 clones/lisp/www.cliki.net/snow.html delete mode 100644 clones/lisp/www.cliki.net/soundex.html delete mode 100644 clones/lisp/www.cliki.net/soundlab.html delete mode 100644 clones/lisp/www.cliki.net/spack.html delete mode 100644 clones/lisp/www.cliki.net/sparklines.html delete mode 100644 clones/lisp/www.cliki.net/sparse-streams.html delete mode 100644 clones/lisp/www.cliki.net/spartns.html delete mode 100644 clones/lisp/www.cliki.net/spath.html delete mode 100644 clones/lisp/www.cliki.net/spatial-trees.html delete mode 100644 clones/lisp/www.cliki.net/speaker - Speech synthesis library.html delete mode 100644 clones/lisp/www.cliki.net/spinneret.html delete mode 100644 clones/lisp/www.cliki.net/split-sequence.html delete mode 100644 clones/lisp/www.cliki.net/ssqlfs.html delete mode 100644 clones/lisp/www.cliki.net/sst.html delete mode 100644 clones/lisp/www.cliki.net/st-json.html delete mode 100644 clones/lisp/www.cliki.net/standards.html delete mode 100644 clones/lisp/www.cliki.net/stassats-inotify.html delete mode 100644 clones/lisp/www.cliki.net/stassats-mpd.html delete mode 100644 clones/lisp/www.cliki.net/stassats-ogg.html delete mode 100644 clones/lisp/www.cliki.net/stassats-storage.html delete mode 100644 clones/lisp/www.cliki.net/stassats-subtitles.html delete mode 100644 clones/lisp/www.cliki.net/static-vectors.html delete mode 100644 clones/lisp/www.cliki.net/static/css/colorize.css delete mode 100644 clones/lisp/www.cliki.net/static/css/style.css delete mode 100644 clones/lisp/www.cliki.net/static/img/contentbg.png delete mode 100644 clones/lisp/www.cliki.net/static/img/headerbg.png delete mode 100644 clones/lisp/www.cliki.net/static/img/logo.png delete mode 100644 clones/lisp/www.cliki.net/statistics.html delete mode 100644 clones/lisp/www.cliki.net/stella.html delete mode 100644 clones/lisp/www.cliki.net/stl-io.html delete mode 100644 clones/lisp/www.cliki.net/stl.html delete mode 100644 clones/lisp/www.cliki.net/stmx.html delete mode 100644 clones/lisp/www.cliki.net/str.html delete mode 100644 clones/lisp/www.cliki.net/stream.html delete mode 100644 clones/lisp/www.cliki.net/string-case.html delete mode 100644 clones/lisp/www.cliki.net/string.html delete mode 100644 clones/lisp/www.cliki.net/stumpwm.html delete mode 100644 clones/lisp/www.cliki.net/supportcentre.html delete mode 100644 clones/lisp/www.cliki.net/sw-http.html delete mode 100644 clones/lisp/www.cliki.net/swank-client.html delete mode 100644 clones/lisp/www.cliki.net/swank-daemon.html delete mode 100644 clones/lisp/www.cliki.net/swank.html delete mode 100644 clones/lisp/www.cliki.net/swap-bytes.html delete mode 100644 clones/lisp/www.cliki.net/swclos.html delete mode 100644 clones/lisp/www.cliki.net/swig.html delete mode 100644 clones/lisp/www.cliki.net/sxql.html delete mode 100644 clones/lisp/www.cliki.net/symbol-namespaces.html delete mode 100644 clones/lisp/www.cliki.net/syntax-case.html delete mode 100644 clones/lisp/www.cliki.net/system programming.html delete mode 100644 clones/lisp/www.cliki.net/system-menu.html delete mode 100644 clones/lisp/www.cliki.net/taglib.html delete mode 100644 clones/lisp/www.cliki.net/tail recursion.html delete mode 100644 clones/lisp/www.cliki.net/tar-file.html delete mode 100644 clones/lisp/www.cliki.net/teepeedee2.html delete mode 100644 clones/lisp/www.cliki.net/telnetlib.html delete mode 100644 clones/lisp/www.cliki.net/templating library.html delete mode 100644 clones/lisp/www.cliki.net/terse-ppcre.html delete mode 100644 clones/lisp/www.cliki.net/test framework.html delete mode 100644 clones/lisp/www.cliki.net/testbild.html delete mode 100644 clones/lisp/www.cliki.net/tester.html delete mode 100644 clones/lisp/www.cliki.net/texatl.html delete mode 100644 clones/lisp/www.cliki.net/texp.html delete mode 100644 clones/lisp/www.cliki.net/text formatting.html delete mode 100644 clones/lisp/www.cliki.net/text-query.html delete mode 100644 clones/lisp/www.cliki.net/text.html delete mode 100644 clones/lisp/www.cliki.net/the-cost-of-nothing.html delete mode 100644 clones/lisp/www.cliki.net/the.html delete mode 100644 clones/lisp/www.cliki.net/thnappy.html delete mode 100644 clones/lisp/www.cliki.net/thodg.html delete mode 100644 clones/lisp/www.cliki.net/thread-pool.html delete mode 100644 clones/lisp/www.cliki.net/thread.html delete mode 100644 clones/lisp/www.cliki.net/threading-queue.html delete mode 100644 clones/lisp/www.cliki.net/tiff4cl.html delete mode 100644 clones/lisp/www.cliki.net/time management.html delete mode 100644 clones/lisp/www.cliki.net/time.html delete mode 100644 clones/lisp/www.cliki.net/timer.html delete mode 100644 clones/lisp/www.cliki.net/tinaa.html delete mode 100644 clones/lisp/www.cliki.net/tinywm-lisp.html delete mode 100644 clones/lisp/www.cliki.net/tmpdir.html delete mode 100644 clones/lisp/www.cliki.net/tmux.html delete mode 100644 clones/lisp/www.cliki.net/token-stream.html delete mode 100644 clones/lisp/www.cliki.net/toot.html delete mode 100644 clones/lisp/www.cliki.net/topic markers.html delete mode 100644 clones/lisp/www.cliki.net/track-best.html delete mode 100644 clones/lisp/www.cliki.net/translate.html delete mode 100644 clones/lisp/www.cliki.net/trees.html delete mode 100644 clones/lisp/www.cliki.net/trivia.html delete mode 100644 clones/lisp/www.cliki.net/trivial-backtrace.html delete mode 100644 clones/lisp/www.cliki.net/trivial-benchmark.html delete mode 100644 clones/lisp/www.cliki.net/trivial-bit-streams.html delete mode 100644 clones/lisp/www.cliki.net/trivial-clipboard.html delete mode 100644 clones/lisp/www.cliki.net/trivial-cltl2.html delete mode 100644 clones/lisp/www.cliki.net/trivial-do.html delete mode 100644 clones/lisp/www.cliki.net/trivial-download.html delete mode 100644 clones/lisp/www.cliki.net/trivial-dump-core.html delete mode 100644 clones/lisp/www.cliki.net/trivial-email-utf-8.html delete mode 100644 clones/lisp/www.cliki.net/trivial-extract.html delete mode 100644 clones/lisp/www.cliki.net/trivial-features.html delete mode 100644 clones/lisp/www.cliki.net/trivial-feed.html delete mode 100644 clones/lisp/www.cliki.net/trivial-file-size.html delete mode 100644 clones/lisp/www.cliki.net/trivial-garbage.html delete mode 100644 clones/lisp/www.cliki.net/trivial-gray-streams.html delete mode 100644 clones/lisp/www.cliki.net/trivial-http.html delete mode 100644 clones/lisp/www.cliki.net/trivial-https.html delete mode 100644 clones/lisp/www.cliki.net/trivial-irc.html delete mode 100644 clones/lisp/www.cliki.net/trivial-jumptables.html delete mode 100644 clones/lisp/www.cliki.net/trivial-ldap.html delete mode 100644 clones/lisp/www.cliki.net/trivial-macroexpand-all.html delete mode 100644 clones/lisp/www.cliki.net/trivial-main-thread.html delete mode 100644 clones/lisp/www.cliki.net/trivial-mmap.html delete mode 100644 clones/lisp/www.cliki.net/trivial-monitored-thread.html delete mode 100644 clones/lisp/www.cliki.net/trivial-package-local-nicknames.html delete mode 100644 clones/lisp/www.cliki.net/trivial-package-locks.html delete mode 100644 clones/lisp/www.cliki.net/trivial-raw-io.html delete mode 100644 clones/lisp/www.cliki.net/trivial-shell.html delete mode 100644 clones/lisp/www.cliki.net/trivial-sockets.html delete mode 100644 clones/lisp/www.cliki.net/trivial-template.html delete mode 100644 clones/lisp/www.cliki.net/trivial-timeout.html delete mode 100644 clones/lisp/www.cliki.net/trivial-timers.html delete mode 100644 clones/lisp/www.cliki.net/trivial-types.html delete mode 100644 clones/lisp/www.cliki.net/trivial-update.html delete mode 100644 clones/lisp/www.cliki.net/trivial-utf-8.html delete mode 100644 clones/lisp/www.cliki.net/trivial.html delete mode 100644 clones/lisp/www.cliki.net/try.html delete mode 100644 clones/lisp/www.cliki.net/turtl.html delete mode 100644 clones/lisp/www.cliki.net/twinql.html delete mode 100644 clones/lisp/www.cliki.net/type-r.html delete mode 100644 clones/lisp/www.cliki.net/uLisp.html delete mode 100644 clones/lisp/www.cliki.net/ubiquitous.html delete mode 100644 clones/lisp/www.cliki.net/ucw.html delete mode 100644 clones/lisp/www.cliki.net/uffi.html delete mode 100644 clones/lisp/www.cliki.net/ugly-tiny-infix-macro.html delete mode 100644 clones/lisp/www.cliki.net/uiop.html delete mode 100644 clones/lisp/www.cliki.net/ulimyhmpqs.html delete mode 100644 clones/lisp/www.cliki.net/umlisp.html delete mode 100644 clones/lisp/www.cliki.net/umpa-lumpa.html delete mode 100644 clones/lisp/www.cliki.net/unicly.html delete mode 100644 clones/lisp/www.cliki.net/unicode support.html delete mode 100644 clones/lisp/www.cliki.net/unification.html delete mode 100644 clones/lisp/www.cliki.net/unistd-stream.html delete mode 100644 clones/lisp/www.cliki.net/unit-conversion.html delete mode 100644 clones/lisp/www.cliki.net/unit-formula.html delete mode 100644 clones/lisp/www.cliki.net/unit-test.html delete mode 100644 clones/lisp/www.cliki.net/units.html delete mode 100644 clones/lisp/www.cliki.net/unix-options.html delete mode 100644 clones/lisp/www.cliki.net/unix-opts.html delete mode 100644 clones/lisp/www.cliki.net/unix.html delete mode 100644 clones/lisp/www.cliki.net/uri-template.html delete mode 100644 clones/lisp/www.cliki.net/url-rewrite.html delete mode 100644 clones/lisp/www.cliki.net/userial.html delete mode 100644 clones/lisp/www.cliki.net/usocket-udp.html delete mode 100644 clones/lisp/www.cliki.net/usocket.html delete mode 100644 clones/lisp/www.cliki.net/utilities.html delete mode 100644 clones/lisp/www.cliki.net/utm.html delete mode 100644 clones/lisp/www.cliki.net/uuid.html delete mode 100644 clones/lisp/www.cliki.net/validation.html delete mode 100644 clones/lisp/www.cliki.net/vana-inflector.html delete mode 100644 clones/lisp/www.cliki.net/vas-string-metrics.html delete mode 100644 clones/lisp/www.cliki.net/vcr.html delete mode 100644 clones/lisp/www.cliki.net/vcs-tree.html delete mode 100644 clones/lisp/www.cliki.net/vecto.html delete mode 100644 clones/lisp/www.cliki.net/version control.html delete mode 100644 clones/lisp/www.cliki.net/versioned-objects.html delete mode 100644 clones/lisp/www.cliki.net/vgplot.html delete mode 100644 clones/lisp/www.cliki.net/vial.html delete mode 100644 clones/lisp/www.cliki.net/videoVertov.html delete mode 100644 clones/lisp/www.cliki.net/vim.html delete mode 100644 clones/lisp/www.cliki.net/vindarel.html delete mode 100644 clones/lisp/www.cliki.net/visualization.html delete mode 100644 clones/lisp/www.cliki.net/vom.html delete mode 100644 clones/lisp/www.cliki.net/vp-trees.html delete mode 100644 clones/lisp/www.cliki.net/vseloved-date-utils.html delete mode 100644 clones/lisp/www.cliki.net/wcp-termcap.html delete mode 100644 clones/lisp/www.cliki.net/web API.html delete mode 100644 clones/lisp/www.cliki.net/web api.html delete mode 100644 clones/lisp/www.cliki.net/web framework.html delete mode 100644 clones/lisp/www.cliki.net/web.html delete mode 100644 clones/lisp/www.cliki.net/web4r.html delete mode 100644 clones/lisp/www.cliki.net/webactions.html delete mode 100644 clones/lisp/www.cliki.net/webframeworkmatrix.html delete mode 100644 clones/lisp/www.cliki.net/weblocks-stores.html delete mode 100644 clones/lisp/www.cliki.net/websocket-driver.html delete mode 100644 clones/lisp/www.cliki.net/weirdo.html delete mode 100644 clones/lisp/www.cliki.net/which.html delete mode 100644 clones/lisp/www.cliki.net/wiki.html delete mode 100644 clones/lisp/www.cliki.net/win32.html delete mode 100644 clones/lisp/www.cliki.net/window manager.html delete mode 100644 clones/lisp/www.cliki.net/windows.html delete mode 100644 clones/lisp/www.cliki.net/winhttp.html delete mode 100644 clones/lisp/www.cliki.net/wire format.html delete mode 100644 clones/lisp/www.cliki.net/with-output-to-stream.html delete mode 100644 clones/lisp/www.cliki.net/with-shadowed-bindings.html delete mode 100644 clones/lisp/www.cliki.net/with-unique-names.html delete mode 100644 clones/lisp/www.cliki.net/workout-timer.html delete mode 100644 clones/lisp/www.cliki.net/wrapping-standard.html delete mode 100644 clones/lisp/www.cliki.net/wu-decimal.html delete mode 100644 clones/lisp/www.cliki.net/wxCL.html delete mode 100644 clones/lisp/www.cliki.net/x-html-template.html delete mode 100644 clones/lisp/www.cliki.net/x11.html delete mode 100644 clones/lisp/www.cliki.net/xarray.html delete mode 100644 clones/lisp/www.cliki.net/xcvb.html delete mode 100644 clones/lisp/www.cliki.net/xelf.html delete mode 100644 clones/lisp/www.cliki.net/xgboost.html delete mode 100644 clones/lisp/www.cliki.net/xhtmlgen.html delete mode 100644 clones/lisp/www.cliki.net/xindy.html delete mode 100644 clones/lisp/www.cliki.net/xlunit.html delete mode 100644 clones/lisp/www.cliki.net/xml-emitter.html delete mode 100644 clones/lisp/www.cliki.net/xml-mop.html delete mode 100644 clones/lisp/www.cliki.net/xml-psychiatrist.html delete mode 100644 clones/lisp/www.cliki.net/xml-rpc.html delete mode 100644 clones/lisp/www.cliki.net/xml.html delete mode 100644 clones/lisp/www.cliki.net/xmls-tools.html delete mode 100644 clones/lisp/www.cliki.net/xmls-valid.html delete mode 100644 clones/lisp/www.cliki.net/xmls.html delete mode 100644 clones/lisp/www.cliki.net/xmlutils.html delete mode 100644 clones/lisp/www.cliki.net/xujizhe.html delete mode 100644 clones/lisp/www.cliki.net/xuriella.html delete mode 100644 clones/lisp/www.cliki.net/yaclml.html delete mode 100644 clones/lisp/www.cliki.net/yason.html delete mode 100644 clones/lisp/www.cliki.net/yid.html delete mode 100644 clones/lisp/www.cliki.net/yotta-zoomer.html delete mode 100644 clones/lisp/www.cliki.net/zen.html delete mode 100644 clones/lisp/www.cliki.net/zip.html delete mode 100644 clones/lisp/www.cliki.net/zlib.html delete mode 100644 clones/lisp/www.cliki.net/zpb-ttf.html delete mode 100644 clones/lisp/www.cliki.net/zpng.html diff --git a/clones/lisp/www.cliki.net/(X)HTMΛ.html b/clones/lisp/www.cliki.net/(X)HTMΛ.html deleted file mode 100644 index 57b243b0..00000000 --- a/clones/lisp/www.cliki.net/(X)HTMΛ.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: (X)HTMΛ - - - - - - - -
(X)HTMΛ
(X)HTMΛ is a HTML generator library that strives to produce pretty printed (X)HTML for human consumption. It is used by the document preparation tool HEΛP.
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/.NET.html b/clones/lisp/www.cliki.net/.NET.html deleted file mode 100644 index 6c47378d..00000000 --- a/clones/lisp/www.cliki.net/.NET.html +++ /dev/null @@ -1,64 +0,0 @@ - - - - - CLiki: .NET - - - - - - - -
.NET
Packages that help with Common Lisp/.NET integration:

    -
  • -bike - - bike is a library which implements cross-platform Common Lisp interface to .Net Core platform, using lisp compatibility layers -
  • -
  • -Foil - - Foil (Foreign Object Interface for Lisp) consists of a protocol and a set of libraries that facilitate access to popular object runtimes, such as the JVM (Java) and the CLI/CLR (.NET), and their libraries, from Lisp -
  • -
  • -RDNZL - - RDNZL (pronounced "Redunzl") enables Common Lisp applications to interact with dot-NET libraries -
  • -
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/.Net.html b/clones/lisp/www.cliki.net/.Net.html deleted file mode 100644 index 6c47378d..00000000 --- a/clones/lisp/www.cliki.net/.Net.html +++ /dev/null @@ -1,64 +0,0 @@ - - - - - CLiki: .NET - - - - - - - -
.NET
Packages that help with Common Lisp/.NET integration:

    -
  • -bike - - bike is a library which implements cross-platform Common Lisp interface to .Net Core platform, using lisp compatibility layers -
  • -
  • -Foil - - Foil (Foreign Object Interface for Lisp) consists of a protocol and a set of libraries that facilitate access to popular object runtimes, such as the JVM (Java) and the CLI/CLR (.NET), and their libraries, from Lisp -
  • -
  • -RDNZL - - RDNZL (pronounced "Redunzl") enables Common Lisp applications to interact with dot-NET libraries -
  • -
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/0BSD.html b/clones/lisp/www.cliki.net/0BSD.html deleted file mode 100644 index b508df9c..00000000 --- a/clones/lisp/www.cliki.net/0BSD.html +++ /dev/null @@ -1,68 +0,0 @@ - - - - - CLiki: 0BSD - - - - - - - -
0BSD
Zero-Clause BSD is a variant of the ISC license.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/1am.html b/clones/lisp/www.cliki.net/1am.html deleted file mode 100644 index 3e590602..00000000 --- a/clones/lisp/www.cliki.net/1am.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: 1am - - - - - - - -
1am
a minimal test framework used in lparallel and lfarm, written by the same author.

Available on QuickLisp and github.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/1st European LISP and Scheme Workshop.html b/clones/lisp/www.cliki.net/1st European LISP and Scheme Workshop.html deleted file mode 100644 index def6e5e8..00000000 --- a/clones/lisp/www.cliki.net/1st European LISP and Scheme Workshop.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: 1st European LISP and Scheme Workshop - - - - - - - -
1st European LISP and Scheme Workshop
The 1st European Lisp and Scheme Workshop has been held in Oslo, Norway, on June 13th, 2004. It was co-located with the ECOOP (European Conference on Object-Oriented Programming) 2004.

For more information visit http://p-cos.net/lisp-ecoop/cfp.htm or contact Pascal Costanza.

From the Call for Papers:

-This one-day workshop will address the near-future role of Lisp-based languages in those and related areas. We want to solicit papers that discuss the opportunities Lisp provides to capture and enhance the possibilities in software engineering. We also want to promote lively discussion between researchers proposing new approaches and practitioners reporting on their experience with the strengths and limitations of current Lisp technologies. -

The workshop is being organized by Pascal Costanza and Richard Gabriel, among others.

(There is a longer version of the section in an entry of John Wiseman's weblog (Lemonodor.com). Is this an earlier version?)


-Topic: Conference
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/2nd European LISP and Scheme Workshop.html b/clones/lisp/www.cliki.net/2nd European LISP and Scheme Workshop.html deleted file mode 100644 index d6c803d4..00000000 --- a/clones/lisp/www.cliki.net/2nd European LISP and Scheme Workshop.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - CLiki: 2nd European LISP and Scheme Workshop - - - - - - - -
2nd European LISP and Scheme Workshop
The 2nd European Lisp and Scheme Workshop has been in Glasgow, Scotland, on July 26th, 2005. It was co-located with the ECOOP 2005 (European Conference on Object-Oriented Programming).

For more information visit http://lisp-ecoop05.bknr.net or contact -Pascal Costanza.

From the Call for Papers:

-This two-day workshop will address the near-future role of Lisp-based languages in research, industry and education. We want to solicit papers and suggestions for breakout groups that discuss the opportunities Lisp provides to capture and enhance the possibilities in software engineering. We also want to promote lively discussion between researchers proposing new approaches and practitioners reporting on their experience with the strengths and limitations of current Lisp technologies.

The workshop will be split into two parts: The first part is for talks with a more classroom-like atmosphere, the second will consist of a number of sessions for breakout groups discussing or working on particular topics. -


-Topic: Conference
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/3bmd.html b/clones/lisp/www.cliki.net/3bmd.html deleted file mode 100644 index 928a690b..00000000 --- a/clones/lisp/www.cliki.net/3bmd.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: 3bmd - - - - - - - -
3bmd
3bmd is a Markdown to HTML converter. It uses esrap for parsing, and a grammar based on peg-markdown.

Homepage: https://github.com/3b/3bmd

License: MIT


-Topics: document preparation
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/3d-matrices.html b/clones/lisp/www.cliki.net/3d-matrices.html deleted file mode 100644 index ce071c51..00000000 --- a/clones/lisp/www.cliki.net/3d-matrices.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: 3d-matrices - - - - - - - -
3d-matrices
This is a library implementing common matrix operations, mainly intended as the counterpiece to 3d-vectors and thus being aimed at operations in 3D space. Still, it also implements other common matrix tasks such as LU and QR factorisation, determinant computation, and sub-matrix selection. 2x2, 3x3, and 4x4 matrices are specially treated and often have specifically optimised or inlined variants in the operations to ensure as high a speed as possible. NxM matrices are also available, but will always use a general algorithm in the operations.

This library by no means attempts, nor comes in any way close to replacing or imitating things such as BLAS and LIN/LAPACK. The main purpose is to have a library that allows convenient matrix operations in conjunction with the 3d-vectors library. It should be sufficiently fast and accurate for most purposes, but should not be used for serious matrix based calculations. Please use industry-standard packages for that.

The project can be found on github including a fully documented symbol index and a getting started tutorial.
-3d-matrices is on Quicklisp.

3d-matrices is licensed under the Artistic License 2.0.


-linear algebra 3d-vectors
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/3d-vectors.html b/clones/lisp/www.cliki.net/3d-vectors.html deleted file mode 100644 index 868449b8..00000000 --- a/clones/lisp/www.cliki.net/3d-vectors.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: 3d-vectors - - - - - - - -
3d-vectors
This is a simple library for 3D vectors. It contains most of the vector operations one would usually expect out of such a library and offers them both in non-modifying and modifying versions where applicable. It also tries to be efficient where plausible. Each vector is made up of a triplet of double-floats, which should offer sufficient precision for the majority of scenarios.

The project can be found on github including a fully documented symbol index and a getting started tutorial.
-As of 2015, 3d-vectors is on Quicklisp.

3d-vectors is licensed under the Artistic License 2.0.


-linear algebra 3d-matrices
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/A Turing machine.html b/clones/lisp/www.cliki.net/A Turing machine.html deleted file mode 100644 index b675a7ae..00000000 --- a/clones/lisp/www.cliki.net/A Turing machine.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: A Turing machine - - - - - - - -
A Turing machine
This simulation of a simple Turing machine is an application written in Common Lisp (by Edi Weitz).
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ABCL.html b/clones/lisp/www.cliki.net/ABCL.html deleted file mode 100644 index bb82dfbf..00000000 --- a/clones/lisp/www.cliki.net/ABCL.html +++ /dev/null @@ -1,105 +0,0 @@ - - - - - CLiki: ABCL - - - - - - - -
ABCL
Armed Bear Common Lisp (aka ABCL) is a -Common Lisp implementation that runs on a Java Virtual Machine; -ABCL 1.8.0 was released in October 2020. It includes an integrated -compiler to Java bytecodes, and allows access to Java libraries from -Common Lisp.

Armed Bear Common Lisp is distributed under the GNU GPL with -Classpath exception. It was originally created as a component of the -Armed Bear J -editor, where it serves as an extension language (rather like -Emacs Lisp for Emacs). It is now maintained as a standalone -implementation.

ABCL runs quite well with SLIME, which allows you to connect to an -ABCL process from within Emacs.

Portability

Armed Bear Common Lisp requires Java 1.6 or -later. It runs much better with a JVM that features a JIT, such as -(for Linux/x86) the IBM or Sun virtual machines. It also runs, though -very slowly, with the GNU gij virtual machine, as of version 3.3, and -(with some exceptions) with SableVM as of version 1.0.9. It is also -possible to use recent versions of the GNU Java compiler gcj to -produce a standalone native executable.

Accessing Java from ABCL

ABCL gives you access to all those methods in the Java runtime -environment. This is implemented using the Java Reflection API. To -call a static method, use the jstatic function:

 (jstatic "gc" "java.lang.System") (jstatic "getProperty"
-"java.lang.System" "user.dir") 

To obtain a reference to a Java method, call jmethod with the -class name, method name, and parameter types:

 (jmethod "java.lang.Runtime" "availableProcessors") 

To invoke a (non-static) Java method, use jcall with the -reference to the method, a reference to the invoked object, and the -method arguments:

 (jcall (jmethod "java.lang.Runtime" "availableProcessors")
-(jstatic "getRuntime" "java.lang.Runtime")) 

To invoke a constructor, use jconstructor and -jnew in place of jmethod and -jcall.

 (jnew (jconstructor "java.lang.Object")) 

There are a fair number of (poorly) documented Java specific Lisp -extensions in the JAVA package. Currently, reading the source to -'java.lisp' while experimenting with the REPL is probably the best -way to come to an understanding of what is available.

Of common interest is the JAVA:JINTERFACE-IMPLEMENTATION function, -which allows one to implement a Java interface in Common Lisp.

Extensions

Alan Ruttenberg's JSS provides a more convenient syntax for calling -Java. It is now packaged with the distribution as part of -ABCL-CONTRIB.

Obtaining

This project is now hosted at common-lisp.net http://common-lisp.net/project/armedbear/.

-Source distribution

abcl-src-1.8.0.tar.gz

abcl-src-1.8.0.zip

-Binary distribution

A pre-built JAR binary can be downloaded from

abcl-bin-1.8.0.tar.gz

abcl-bin-1.8.0.zip

It can be utilized via

java -jar abcl.jar

-

-Source

The source code for the ABCL implementation is synchronized -between the following locations:

 cmd$ cd abcl; ant 

This compiles ABCL, then creates an executable ('abcl.bat' under -win32, 'abcl' otherwise) which can be used to invoke the Bear.

-

Issues

A Trac instance for ABCL issues has -been created on common-lisp.net. Login is possible with an -OpenID, such as a google.com account. Additional issues may be raised -by posting a message to the mailing list -noted below.

We also accept issues requests on Github and the Common-Lisp.net -hosted Gitlab.

Mailing List -

ABCL developers use the https://mailman.common-lisp.net/pipermail/armedbear-devel/ -mailing list hosted on common-lisp.net. This supersedes the mailing -list associated with armedbear-j development, which is still monitored -for contributions.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/AC Toolkit.html b/clones/lisp/www.cliki.net/AC Toolkit.html deleted file mode 100644 index 0c0e9d94..00000000 --- a/clones/lisp/www.cliki.net/AC Toolkit.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: AC Toolkit - - - - - - - -
AC Toolkit
AC Toolkit is an open source Common Lisp application aimed at aiding music composition, ideas are based on AC Toolbox.

Available here (old snapshot): http://web.archive.org/web/20090503024239/http://www.koncon.nl/sono-bits/actkit.html

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ACL-COMPAT.html b/clones/lisp/www.cliki.net/ACL-COMPAT.html deleted file mode 100644 index 3692eb99..00000000 --- a/clones/lisp/www.cliki.net/ACL-COMPAT.html +++ /dev/null @@ -1,76 +0,0 @@ - - - - - CLiki: ACL-COMPAT - - - - - - - -
ACL-COMPAT
ACL-COMPAT is a free set of compatibility layers for parts of Franz's ACL system programming API for several Common Lisp implementations -. -It provides ACL-like interfaces for:

    -
  • -threads (including run- and arrest-reasons) -
  • -
  • Sockets (including chunked transfer encoding on some implementations) -
  • -
  • Parts of the EXCL package -
  • -
  • Parts of ACL's SYS package -
  • -
  • ACL's NET.URI (networking) stuff -
  • -
-It is maintained together with Portableaserve the portable implementation of Franz' AllegroServe Webserver, but can be installed without Portableaserve.

As of now ACL-COMPAT supports the following Lisp systems, in varying degrees of testedness:

-The latest version of ACL-COMPAT is included within the Portableaserve code tree from Git at the Portableaserve SF Project site.
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ACL.html b/clones/lisp/www.cliki.net/ACL.html deleted file mode 100644 index 3afb6924..00000000 --- a/clones/lisp/www.cliki.net/ACL.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: ACL - - - - - - - - -
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ACL2.html b/clones/lisp/www.cliki.net/ACL2.html deleted file mode 100644 index 326d21ac..00000000 --- a/clones/lisp/www.cliki.net/ACL2.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: ACL2 - - - - - - - -
ACL2
ACL2 (A Computational Logic for Applicative Common Lisp) is a theorem prover for industrial Applications. It is both a mathematical logic and a system of tools for constructing proofs in the logic.

This system is intended for specifying and proving properties of computing machines. It has also been used in several projects (some described here). A listing of publications about ACL2 can be found here.) for modeling and proving properties of commercial microprocessor products by Motorola, AMD, Rockwell Collins, and IBM.

ACL2 works with GCL, CMUCL, CLISP and a number of commercial Common Lisp systems. Source code distributed under the terms of the GPL, and a lot of documentation, are available at the project page.


-Theorem Provers
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ACUTE-TERMINAL-CONTROL.html b/clones/lisp/www.cliki.net/ACUTE-TERMINAL-CONTROL.html deleted file mode 100644 index 2679e4d0..00000000 --- a/clones/lisp/www.cliki.net/ACUTE-TERMINAL-CONTROL.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: ACUTE-TERMINAL-CONTROL - - - - - - - -
ACUTE-TERMINAL-CONTROL
Permit fast control of a terminal device.

The ACUTE-TERMINAL-CONTROL library was created to serve the author's needs when writing an interactive program that creates a more complex terminal interface.

It uses the CL-ECMA-48 library and provides a more pleasant and abstract interface for controlling a terminal device.

The author has a large disgust with the use of Curses varieties in Common Lisp programs, as this unnecessarily and substantially complicates using such a program. Risking memory leaks shouldn't be necessary to control a terminal.

Here is the page dedicated to this program.


-text console GUI AGPL
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/AGPL.html b/clones/lisp/www.cliki.net/AGPL.html deleted file mode 100644 index a378243d..00000000 --- a/clones/lisp/www.cliki.net/AGPL.html +++ /dev/null @@ -1,127 +0,0 @@ - - - - - CLiki: AGPL - - - - - - - -
AGPL
The GNU Affero General Public License (AGPL) is a strong copyleft license in the vein of the GPL, but focusing on server based applications.

Of particular interest is section 13, "Remote Network Interaction; Use with the GNU General Public License."

-Notwithstanding any other provision of this License, if you modify the
-Program, your modified version must prominently offer all users
-interacting with it remotely through a computer network (if your version
-supports such interaction) an opportunity to receive the Corresponding
-Source of your version by providing access to the Corresponding Source
-from a network server at no charge, through some standard or customary
-means of facilitating copying of software.  This Corresponding Source
-shall include the Corresponding Source for any work covered by version 3
-of the GNU General Public License that is incorporated pursuant to the
-following paragraph.
-
-Notwithstanding any other provision of this License, you have
-permission to link or combine any covered work with a work licensed
-under version 3 of the GNU General Public License into a single
-combined work, and to convey the resulting work.  The terms of this
-License will continue to apply to the part which is the covered work,
-but the work with which it is combined will remain governed by version
-3 of the GNU General Public License.
-

which attempts to guarantee the four freedoms to users of a network application.

This has implications for the licensing of projects with AGPL components, especially in languages like Common Lisp where there isn't always a clear distinction between calling an external library and creating a derivative work of that library.

AGPL projects

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/AI.html b/clones/lisp/www.cliki.net/AI.html deleted file mode 100644 index a45f4e1f..00000000 --- a/clones/lisp/www.cliki.net/AI.html +++ /dev/null @@ -1,80 +0,0 @@ - - - - - CLiki: AI - - - - - - - -
AI
Common Lisp Artificial Intelligence tools by topic:

The CMU Artificial Intelligence Repository contains a wealth of both Lisp and AI (as well as Scheme and Prolog) related documents and code.


AI Books

-

  • -Emperical Methods for Artificial Intelligence Paul R. Cohen; MIT Press; ISBN 0-262-03225-2 - Computer science and artificial intelligence in particular have no curriculum in research methods, as other sciences do. This book presents empirical methods for studying complex computer programs: exploratory tools to help find patterns in data, experiment designs and hypothesis-testing tools to help data speak convincingly, and modeling tools to help explain data. Although many of these techniques are statistical, the book discusses statistics in the context of the broader empirical enterprise. The first three chapters introduce empirical questions, exploratory data analysis, and experiment design. The blunt interrogation of statistical hypothesis testing is postponed until chapters 4 and 5, which present classical parametric methods and computer-intensive (Monte Carlo) resampling methods, respectively. This is one of few books to present these new, flexible resampling techniques in an accurate, accessible manner. - Much of the book is devoted to research strategies and tactics, introducing new methods in the context of case studies. Chapter 6 covers performance assessment, chapter 7 shows how to identify interactions and dependencies among several factors that explain performance, and chapter 8 discusses predictive models of programs, including causal models. The final chapter asks what counts as a theory in AI, and how empirical methods -- whiping cch deal with specific systems -- can foster general theories.
  • -The Limits of Mathematics, The Unknowable G. J. Chaitin; Springer-Verlag Singapore; 1997; ISBN 981-3083-59-X; ISBN 1-85233-668-4. - The Limits of Mathematics presents the final version of Chaitin's course on the limits of mathematical reasoning. This course uses algorithmic information theory to show that mathematics has serious limitations, and features a new more didactic approach to algorithmic information theory using LISP and Mathematica software. The thesis of the book is that the incompleteness phenomenon discovered by Goedel is much more widespread and serious than hitherto suspected. Also Goedel and Einstein's views on the foundations of mathematics are discussed, and it is suggested that mathematics is quasi-empirical and that experimental mathematics should be used more freely. [Publisher's Abstract] - The companion "prequel" volume, The Unknowable Springer-Verlag Singapore; 1999; ISBN: 981-4021-72-5; presents an accessible historical survey contrasting Chaitin's ideas on the limits and structure of mathematical understanding with Goedel's concept of incompleteness and Turing's concept of uncomputability.
  • -LISP 3rd edition; Patrick H. Winston, Berthold K. P. Horn; Addison-Wesley (Reading, MA); 1989; ISBN 0-201-08319-1 Covers the basic concepts of the language, but also gives a lot of detail about programming AI topics such as rule-based expert systems, forward chaining, interpreting transition trees, compiling transition trees, object oriented programming, and finding patterns in images.
  • -The Elements of Artificial Intelligence Using Common Lisp 2nd edition; Steven Tanimoto; Computer Science Press; 1995; ISBN 0-71-67826-9-3; ISBN 0-71-67823-0-8
  • -Common LISP Modules: Artificial Intelligence in the Era of Neural Networks and Chaos Theory Mark Watson; Springer-Verlag; 1991; ISBN 0-387-97614-0
  • -Natural language understanding James Allen; 1994; Addison-Wesley; ISBN 0-8053-0334-0
  • -Genetic Programming: On the Programming of Computers by Means of Natural Selection John Koza; 1992; MIT Press
  • -Genetic Programming II: Automatic Discovery of Reusable Programs John Koza; 1994; MIT Press
  • -Books on Artificial Intelligence and Mathematics, with a Lisp language emphasis; ALU list dead link, redirected to archive.org
  • -Building Problem Solvers describes how to build reasoning systems, using Common Lisp source code available at this web site. The code includes a variety of rule engines, truth maintenance systems, and constraint systems.
  • -Paradigms of Artificial Intelligence Programming: Case Studies in Common Lisp by Peter Norvig.

  • -
  • -Natural Language Processing in Lisp ­ An Introduction to Computational Linguistics Gerald Gazdar, Chris Mellish; 1989; Addison-Wesley Publishing Company; ISBN 0-201-17825-7
  • -Common Lisp Programming for Artificial Intelligence Tony Hasemer, John Domingue; 1989; Addison-Wesley Publishing Company; ISBN 0-201-17579-7 - This book presents an introduction to Artificial Intelligence with an emphasis on the role of knowledge representation. Three chapters focus on object-oriented programming, including the construction and use of a subset of CLOS. - The authors' research into the problems faced by novice Lisp users influenced the content and style of the book. (The authors are members of the Human Cognition Research Laboratory at the Open University in the United Kingdom.) The book employs a tutorial approach, especially in areas that students often find difficult, such as recursion. Early and progressive treatment of the evaluator promotes understanding of program execution. Hands-on exercises are used to reinforce basic concepts. - The book assumes no prior knowledge of Lisp or AI and is a suitable textbook for students in Cognitive Science, Computer Science and other disciplines taking courses in Lisp or AI programming as well as being invaluable for professional programmers who are learning Lisp for developing AI applications.
  • -Artificial Intelligence with Common Lisp ­ Fundamental of Symbolic and Numeric Processing James L. Noyes; 1992; D.C.Heath and Company; ISBN 978-0-669-19473-9; ISBN 0-669-19473-5
  • Artificial Intelligence Programming Eugene Charniak, Christopher K. Riesbeck, Drew V. McDermott, James R. Meehon; 1987; Lawrence Erlbaum Associates Publishers; ISBN 0-89859-609-2
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/AJAX.html b/clones/lisp/www.cliki.net/AJAX.html deleted file mode 100644 index 3a63933f..00000000 --- a/clones/lisp/www.cliki.net/AJAX.html +++ /dev/null @@ -1,68 +0,0 @@ - - - - - CLiki: AJAX - - - - - - - -
AJAX
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ALBERT.html b/clones/lisp/www.cliki.net/ALBERT.html deleted file mode 100644 index 3ee556c2..00000000 --- a/clones/lisp/www.cliki.net/ALBERT.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Albert - - - - - - - -
Albert
Albert is a Common Lisp doc-generator, comparable to Javadoc and Doxygen. Currently it generates DocBook. It reads an ASDF system definition and documents the system but is incompatible with current versions of ASDF. It has been an experimental system that I've used for my own projects, but others have found it useful too. Give it a go and let me know what you think.

http://albert.sourceforge.net/


-Documentation Tool
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ALEXANDRIA.html b/clones/lisp/www.cliki.net/ALEXANDRIA.html deleted file mode 100644 index a962cbd9..00000000 --- a/clones/lisp/www.cliki.net/ALEXANDRIA.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Alexandria - - - - - - - -
Alexandria
Alexandria is a collection of portable public domain utilities.

Official home

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ALIW.html b/clones/lisp/www.cliki.net/ALIW.html deleted file mode 100644 index 8c21d731..00000000 --- a/clones/lisp/www.cliki.net/ALIW.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: ALIW - - - - - - - -
ALIW
A Lisp in Wonderland (ALIW) is a wiki software written in Common Lisp, to ease the collaboration on editable web pages.

Depends on: cl-difflib, cl-fad, cl-ppcre, cl-who, flexi-streams, hunchentoot, md5, meta-sexp, montezuma

Repository: https://github.com/vy/aliw

License: BSD 2-Clause

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ALU.html b/clones/lisp/www.cliki.net/ALU.html deleted file mode 100644 index fd57f319..00000000 --- a/clones/lisp/www.cliki.net/ALU.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: ALU - - - - - - - -
ALU
The Association of Lisp Users (ALU) is a user group which was set up to promote Lisp, help inform and educate Lisp users in general, and help represent Lisp users as a group to the vendors.

In recent years it has altered its constitution so that vendors may also be members, so perhaps the last of those objectives is not as relevant as it used to be.

Their web site is at http://www.alu.org/, which is admitted to look a little dated.

-Topic: Community

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/AMOP.html b/clones/lisp/www.cliki.net/AMOP.html deleted file mode 100644 index 7dcd232a..00000000 --- a/clones/lisp/www.cliki.net/AMOP.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: AMOP - - - - - - - -
AMOP
AMOP is an acronym used in reference to the book The Art of the Metaobject Protocol, by Gregor Kiczales, and which was published by MIT Press, 1991.

AMOP chapters 5 and 6 (basically, "the MOP specification") have been kindly released into the public domain by the original authors.

As of 15 October 2017, a modern public domain online version of AMOP chapters 5 and 6 (MOP specification) is available. -Full faithfulness to the contents of the book has been a top priority, which was ensured by carefully auditing the new version against the actual book, so this should be very complete and safe to use. -This version was initially derived from Robert Strandh's public domain conversion to HTML.

Scanned version on Google books.

Closette implements AMOP.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ANAPHORA.html b/clones/lisp/www.cliki.net/ANAPHORA.html deleted file mode 100644 index b4a20161..00000000 --- a/clones/lisp/www.cliki.net/ANAPHORA.html +++ /dev/null @@ -1,86 +0,0 @@ - - - - - CLiki: Anaphora - - - - - - - -
Anaphora
Anaphora is the anaphoric macro collection from Hell; it includes many new fiends in addition to old friends like AIF and AWHEN.

Anaphora is in the Public Domain.

Anaphora homepage; some documentation.

ANAPHORA> (do-symbols (i (find-package :anaphora)) (when (eql (symbol-package i) (find-package :anaphora)) (cond ((fboundp i) (format t "~A~%" (cons i (sb-introspect:function-arglist i))) (awhen (documentation i 'function) (format t "   ~A~%" it))) (t (format t "~A~%" i)))))
-OP
-ELSE
-RESULT
-REC
-(SYMBOLIC OP TEST &BODY BODY)
-TEST
-BODY
-(ANAPHORIC OP TEST &BODY BODY)
-THEN
-FORM
-I
-CASES
-CLAUSES
-(ATYPECASE FORM &BODY CASES)
-(AECASE FORM &BODY CASES)
-(SWHEN TEST &BODY BODY)
-(ACCASE FORM &BODY CASES)
-(AETYPECASE FORM &BODY CASES)
-(AWHEN TEST &BODY BODY)
-(ASIF TEST THEN &OPTIONAL ELSE)
-(ACASE FORM &BODY CASES)
-(SCCASE FORM &BODY CASES)
-(SCOND &BODY CLAUSES)
-(SIF TEST THEN &OPTIONAL ELSE)
-(SECASE FORM &BODY CASES)
-(ACTYPECASE FORM &BODY CASES)
-(ACOND &BODY CLAUSES)
-(AIF TEST THEN &OPTIONAL ELSE)
-(STYPECASE FORM &BODY CASES)
-(SCTYPECASE FORM &BODY CASES)
-(SETYPECASE FORM &BODY CASES)
-(SUNLESS TEST &BODY BODY)
-(SCASE FORM &BODY CASES)
-IT

See anaphoric-variants for an alternative.


-convenience library
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ANSI Clarifications and Errata.html b/clones/lisp/www.cliki.net/ANSI Clarifications and Errata.html deleted file mode 100644 index 56e24422..00000000 --- a/clones/lisp/www.cliki.net/ANSI Clarifications and Errata.html +++ /dev/null @@ -1,384 +0,0 @@ - - - - - CLiki: ANSI Clarifications and Errata - - - - - - - -
ANSI Clarifications and Errata

Overview

- This page is a listing of errors, inconsistencies and ambiguities in the ANSI standard, organized by chapter.

For minor revisions suggested for the ANSI standard, see Proposed ANSI Changes.

For extra functionality that could be standardized in the future, see Proposed Extensions to ANSI.

1. Introduction

-
    -
  • -1.1.2 History has a typo in penultimate paragraph "Common Lisp esearch..." which should be "Common Lisp research...". -
  • -

2. Syntax

-
    -
  • -Issue READER-MACRO-VALUES: Ok for reader macros to return more than one value? -
  • -
  • The invalid constituent character trait is defined in the standard syntax for whitespace characters. The standard states (glossary and 2.1.4.3) that "Characters with the constituent trait invalid cannot ever appear in a token except under the control of a single escape character." However, the reader algorithm causes such characters to be treated as alphabetic if they are found inside multiple escape characters (so that the last case of step 9 of the reader algorithm never applies). Resolve this contradiction. -
  • -

3. Evaluation and Compilation

-
    -
  • -Issue DESTRUCTURING-NIL: Confirm or disconfirm that NIL in a destructuring lambda list (or a macro lambda list) acts as a "don't care" symbol, matching any object without causing a binding. -
  • -
  • -Issue THE-VALUES: The entry for THE seems to imply that the number of values is not important. However, the entry for VALUES says that using &optional or &rest constrains the number of values. -
  • -
  • -3.4.4 Macro Lambda Lists describes a grammar for a destructuring-bind like "pattern", but doesn't use it to define reqvars and other vars. It probably should be fixed. -
  • -
  • -Issue DEFMACRO-VALUES: If the body of DEFMACRO returns multiple values, can the macro function return them too? -
  • -
  • -Issue DEFINE-COMPILER-MACRO-DECLINE: Clarify what a compiler macro function should return if it declines to expand the form. -
  • -
  • -MACROEXPAND: The returned value in the third form in the examples should be DELTA rather than EPSILON. -
  • -

4. Types and Classes

-
    -
  • -Issue THE-VALUES: The entry for THE seems to imply that the number of values is not important. However, the entry for VALUES says that using &optional or &rest constrains the number of values. -
  • -
  • -Issue VALUES-&ALLOW-OTHER-KEYS: (values &ALLOW-OTHER-KEYS) matches the syntax for the VALUES type specifier, but the description doesn't say what it means. Because the syntax does not allow &KEY, &allow-other-keys was probably a mistake. -
  • -
  • -4.2.3 Type Specifiers: The atomic type specifier BOOLEAN is neither listed in “Figure 4-2. Standardized Atomic Type Specifiers” nor in “Figure 4-6. Standardized Type Specifier Names”.
  • -

5. Data and Control Flow

-
    -
  • -Issue DEFCONSTANT-PREVIOUS-VALUE: DEFCONSTANT says "The consequences are undefined if there are any bindings of the variable named by name at the time defconstant is executed or if the value is not eql to the value of initial-value." Clarify "...or the symbol-value of name...", or equivalent. -
  • -
  • -Issue PROG2-RETURN-VALUE: PROG2 returns the primary value of the second form, as specified under "Arguments and Values". The text under "Description" that claims otherwise is wrong. -
  • -
  • -Issue SOME: In contrast to the paragraphs on EVERY, NOTANY, and NOTEVERY the detail that "some returns as soon as any invocation of predicate returns a non-nil value" is missing form the paragraph on SOME in the CLHS. This probably doesn't give license to an implementation to delay the return and process further elements, since a few paragraphs higher up the text reads "until a termination criterion is met or the end of the shortest of the sequences is reached". -
  • -
  • -Issue APPLY-EXAMPLE-WRONG: The last example for APPLY is wrong, because it assumes particular behavior of TYPE-OF. -
  • -
  • -Issue EQUAL-CIRCULAR-LIST: Change "EQUAL may fail to terminate if x or y is circular" to "if x and y are circular", so that (equal t '#1=(nil #1#)) is required to terminate. (There is no such wording for EQUALP.) -
  • -
  • -rotatef: it seems that "read and written" should be "read and saved". -
  • -
  • -setq The title is given as "Special Form SETQ" instead of "Special Operator SETQ". -
  • -
  • Fix typo in UNLESS form action specifications to read "In an unless form, if the test-form yields false, the forms are evaluated in order from left to right and the values returned by the forms are returned from the unless form. Otherwise, if the test-form yields true, the forms are not evaluated, and the unless form returns nil." -
  • -

6. Iteration

-
    -
  • -Issue DO-SEMANTICS: According to the entry for DO, "do iterates over a group of statements while a test condition holds." But the iteration really continues until the test form returns true, which is more or less the opposite of what that sentence seems to suggest. Change that sentence to read "do iterates over a group of statements until a test form returns true". -
  • -
  • -Issue LOOP-FINALLY-VARIABLES: Clarify whether iteration variables are visible in FINALLY clauses. CLHS 6.1.1.4 requires FINALLY clauses to end up in the same tagbody where the loop body is. The forms that bind iteration variables cannot be inside the tagbody as part of the loop body, because the loop prologue wouldn't then be able to access the variables. Thus, the binding forms must be around the tagbody, so the variables must be visible in FINALLY clauses. CLHS 6.1.1.6 may help deduce the values of the variables. -
  • -
  • -Issue LOOP-WITH-NIL: Is (loop with x of-type nil do (return x)) required to construct and return an "appropriate default value" for type NIL? -
  • -

7. Objects

-
    -
  • -Issue DEFCLASS-READER-FUNCTION-NAME: The specification for DEFCLASS is a bit strange - in particular the use of reader-function-name for both :reader and :accessor, with two different descriptions given. Propose clarification by changing the second to accessor-function-name in both places. -
  • -
  • In DEFCLASS, replace "Form---a form. :init-form can be supplied once at most for a given slot." with "Form---a form. :initform can be supplied once at most for a given slot." -
  • -
  • In CALL-NEXT-METHOD, replace "arg---an object." by "args---arguments to the method." (Just like "args" is described on the page Body/f_funcal.htm#funcall. (There it is "arguments to the function", of course.)) -
  • -
  • In CALL-NEXT-METHOD, clarify that the function object #'CALL-NEXT-METHOD can be passed outside the lexical scope of a method mody, since it has lexical scope but indefinite extent. -
  • -
  • -Issue DEFGENERIC-MULTIPLE-DECLARE: Clarify that multiple DECLARE options can occur in a single DEFGENERIC form. -
  • -
  • -Issue DEFGENERIC-METHOD-COMBINATION-NAME: Clarify that the method-combination in a DEFGENERIC form is specified through a symbol, not a METHOD-COMBINATION object. -
  • -
  • -Issue MAKE-INSTANCES-OBSOLETE-SYMBOL: Clarify that MAKE-INSTANCES-OBSOLETE, when called on the name of a class, returns that name, not the class object itself. -
  • -
  • The notes about WITH-ACCESSORS claim it'll give a binding like (variable-namei () (accessor-namei in)) to SYMBOL-MACROLET, which however does not accept that syntax. The empty parentheses should be removed. -
  • -
  • Issue CLASS-OBJECT-SPECIALIZER:AFFIRM: ANSI CL 7.6.2 says that class objects are usable as parameter-specializer-names. This is consistent with the vote on issue CLASS-OBJECT-SPECIALIZER:AFFIRM. However, in the Syntax section of the macros DEFMETHOD and DEFGENERIC, only symbols and (eql ...) lists are allowed as parameter specializer names in a method lambda list. Proposal: Update the syntax section of DEFMETHOD and DEFGENERIC. Otherwise classes without proper name are nearly useless - since no methods can be defined for them using only ANSI CL facilities. -
  • -
  • -Issue INCOMPLETE-CLASS: The behaviour of a class in section 4.3.1 is ill-defined for classes whose superclasses are not yet defined (which DEFCLASS permits). -
  • -
  • -UNBOUND-SLOT: In the description section, the :instance keyword is not separated by a space from the following word “initialization”.
  • -

8. Structures

-
    -
  • The "Arguments and Values" and "Description" sections on DEFSTRUCT disagree about the top level :type argument. The former says it's list, vector, (vector size), or something implementation-defined, while the latter says it's list, vector, or (vector element-type). Specifying a size would be pointless as it would just be the number of slots defined in the form, and anything implementation-defined would be another subtype of SEQUENCE or something. Plus it would mean you can only represent with T vectors for no reason. As far as I know, all implementations go with the description. -
  • -

9. Conditions

-
    -
  • -Issue STANDARDIZED-RESTART-NAMES: Clarify that ABORT, CONTINUE, MUFFLE-WARNING, STORE-VALUE and USE-VALUE may be bound as restart names by conforming code; this seems to be the intent, but formally CLHS 11.1.2.1.2 (point 18) could be read as disallowing it. -
  • -
  • -Issue DEFINE-CONDITION-WRITERS: The writeability or otherwise of condition slots is a little unclear. DEFINE-CONDITION's Syntax allows :writer and :accessor, though the Description does not specify them, and the issues seem to imply that conditions were meant to be read-only objects. -
  • -
  • -Issue DEFINE-CONDITION-DOCUMENTATION: The :documentation option applies to the whole type in "Syntax" but not to individual slots in "Arguments and Values" and "Description". DEFCLASS allows it in both places. It seems that :documentation was inadvertently omitted from the options BNF, although the text describes it as applicable in both locations per DEFCLASS. -
  • -
  • -Issue DEFINE-CONDITION-SLOT-NAME: The syntax where slot-name is "the list of slot name/slot form pairs" seems redundant, given :initform. Was it left in by accident? -
  • -
  • DEFINE-CONDITION-REPORT: The description of the :report option is put down at the bottom, in with slot-options, rather than normal options. Simple typo, but makes the page a little confusing. -
  • -
  • -Issue ERROR-EXAMPLE: Correct the invalid IF form in the (informational) wargames:no-win-scenario example for ERROR. -
  • -
  • -Issue CHECK-TYPE-EXAMPLE: Correct the example for CHECK-TYPE that suggests that a case conversion of the first letter of the optional string might take place. -
  • -
  • -Issue RESTART-CASE-EXAMPLE: read-new-value should use *query-io* as specified above in the description of :INTERACTIVE option. -
  • -
  • In RESTART-CASE, in defun read-new-value the format string is "Enter a new value: ". In the restart output it shows up as "Enter a new ice cream: ". -
  • -
  • In RESTART-CASE, clarify that the argument to the test function may be a condition or NIL. -
  • -
  • -RESTART-CASE refers to "each arglist" but the "Arguments and Values" sections talks about lambda-list. It should therefore be "each lambda-list". -
  • -
  • -WITH-SIMPLE-RESTART: The compute-power-of-2 example definition is missing a hyphen from the symbol something-big. -
  • -
  • -INVOKE-RESTART: Invoked function "foo" does not exist, it should be "add3" which had just been defined. -
  • -
  • -HANDLER-CASE: The first example expansion inside "Notes" is invalid; SETQ inside the handler binding for TYPE1 should be "(setq #2# temp)" instead of "(setq #1# temp)". -
  • -
  • -MAKE-CONDITION: The first argument is specified to be a "type specifier", which includes AND and OR types; in practice, many implementations don't allow for such and treat it like MAKE-INSTANCE. -
  • -
  • -FIND-RESTART: The equivalence shown in the "Notes" section is too simplistic, as identifier may in fact be a restart object, and the :key argument should be #'restart-name and not a keyword. -
  • -
  • 9.1.4: "That is, if the handler declines, no other handler established by that form will be considered for possible invocation." should instead say "That is, while the handler is executing, ..." -
  • -
  • -9.1.2.1 Condition Designators: The first example defines two ARITHMETIC-ERRORs using the initarg :operator. However, this keyword is invalid for the condition type and should instead be :operation.
  • -
  • -CELL-ERROR: In the description section, the :name keyword is not separated by a space from the following word “initialization”.
  • -

10. Symbols

-
    -
  • BOUNDP refers to "the function bound". It should be "the function boundp". -
  • -

11. Packages

-
    -
  • -Issue STANDARD-PACKAGE-NICKNAMES: Section 11.1.2 gives 'a summary of the names and nicknames of those standardized packages'. Clarify whether this list is exhaustive, or if an implementation may provide other nicknames. -
  • -
  • -Issue DEFINE-SETF-METHOD: 11.1.2.1.2.13. speaks of DEFINE-SETF-METHOD, should be DEFINE-SETF-EXPANDER. -
  • -
  • In SHADOW, under "Examples", (package-shadowing-symbols (make-package 'temp)) should be replaced with (package-shadowing-symbols (make-package 'temp :use '("CL"))). Some Lisps like SBCL don't use the CL package by default, so they will not return what is expected in the next example. -
  • -
  • In SHADOW, under "Examples", (find-symbol 'car 'temp) should be replaced with (find-symbol "CAR" 'temp). The first argument to find-symbol should be a string. -
  • -

12. Numbers

-
    -
  • -System Class float is ambiguous with the exponents in two places. First, "s*f*b^e-p" should be "s*f*b^(e-p)", and second "between b^p-1 and b^p-1" should be "between b^(p-1) and (b^p)-1", where the second set of parentheses is optional if following standard order of operations. -
  • -
  • -LOG specifies two-argument logarithm in terms of division of two on-argument calls to log. There are two separate problems here; the first is trivial, in that the definition (log base number) == (/ (log number) (log base)) has base and number inverted. The second is that this definition in conjunction with the Rule of Float Substitutability (12.1.3.3) will introduce intermediate single-floats into the computation of (log (fact 1000) 10d0), leading to inaccuracy in the final result. Proposed resolution: clarify that the (corrected) definition of two-argument log is for locating the branch cuts rather than for an explicit evaluation strategy. -
  • -

13. Characters

-

14. Conses

-
    -
  • -Issue BUTLAST-DOTTED-LIST: Clarify behaviour of butlast and nbutlast for dotted lists. -
  • -
  • -Issue ADJOIN-SPECIFICATION: The standard is inconsistent in its treatment of the KEY parameter to the ADJOIN function. In the examples and notes, the key function is applied to the item being added, as it is in the related macro PUSHNEW. However, the page points to section 17.2.1, which states explicitly that the key function is never applied to the item being searched for. All implementations do the former, not the latter, so this is probably a spec bug. -
  • -
  • -POP states that the value of the place argument is "possibly, but necessarily, a dotted list or circular list". It should read "possibly, but not necessarily". -
  • -
  • In NCONC, the example (setq x '(a b c)) (setq y '(d e f)) (nconc x y) flies in the face of Section 3.7.1 Modification of Literal Objects. -
  • -
  • -CAR: In the section “Description”, immediately following the label “Figure 14-6. CAR and CDR variants”, the penultimate occurrence of the word “nil” is not separated by a whitespace from the following word “nor”, yielding “nilnor”.
  • -
  • -FIRST: In the section “Notes”, the relationships of the ordinal functions first, second, third and fourth and the equivalent functions car, cadr, caddr and cadddr are mentioned, while fifth and its analogue caddddr are absent. For the sake of completeness, this mapping should be appended. -
  • -

15. Arrays

-
    -
  • -Issue ARRAY-ELEMENT-TYPE-NIL: Explicitly allow or disallow arrays of element type NIL, and clarify whether they are strings or not. -
  • -
  • -Issue ARRAY-UPGRADING-UNDECIDABLE: As defined, array element upgrading is undecidable. -
  • -
  • The page for AREF says "Exceptional situations: none." It should specify that an error of class TYPE-ERROR "should be" (1.4.2) signaled if the subscripts are out of bounds. -
  • -
  • -ADJUST-ARRAY: In the section “See Also:”, the items array-dimension-limit and array-total-size-limit should be hyperlinks, akin to the adjacent entries. This means that the former should point to the relative URL convar_array-_ension-limit.html, while the latter would assume convar_array-_l-size-limit.html.
  • -

16. Strings

-
    -
  • The page for CHAR says "Exceptional situations: none." It should specify that an error of class TYPE-ERROR "should be" (1.4.2) signaled if the subscripts are out of bounds. -
  • -
  • The page for STRING does not mention if the returned strings are fresh when STRING is called on a symbol argument or a char argument. -
  • -

17. Sequences

-
    -
  • -Issue MERGE-PREDICATE-CALL: The order of arguments given for the predicate for MERGE does not allow testing for equality of elements, which is required for merge to be stable. -
  • -
  • In REDUCE, replace "If key is supplied, it is used is used to extract the values to reduce." with "If key is supplied, it is used to extract the values to reduce." -
  • -
  • In POSITION, the text should read "The position returned is the index within sequence of the leftmost (if from-end is false) or of the rightmost (if from-end is true) element that satisfies the test". The value of from-end is opposite from what it should be. -
  • -
  • In SEARCH, the keyword :start-end should instead be :from-end. -
  • -
  • In FILL, the second argument item is stated to accept “a sequence”; but actually any object is homologated, as is demonstrated by the examples. Thus its type should be specified as “an object”.
  • -

18. Hash Tables

-

19. Filenames

-
    -
  • -pathname-directory: the second example of (pathname-directory (parse-namestring "/foo/bar/baz.lisp") :case :local) should probably be using :common instead of :local. Also, the ".*." in the VMS example is suspect and might be just a ".", and/or a :wild might be missing in the example result, but I'll let an expert opine. -
  • -

20. Files

-
    -
  • -FILE-AUTHOR: In the example section, (file-author s) should be (file-author stream) to match the binding.
  • -
  • -FILE-ERROR: In the description section, the :pathname keyword is not separated by a space from the following word “initialization”.
  • -

21. Streams

-

22. Printer

-
    -
  • -22.3.2.2 Tilde D: Decimal: The spec says that the @ modifier causes the number's sign to be printed always, but doesn't say what sign should be used for zero. Most Lisps return "+0" for (format nil "~@D" 0). Also see discussion on comp.lang.lisp. -
  • -
  • -Issue FORMAT-RADIX-COMMACHAR: Clarify or correct the interaction between padchar and commachar in FORMAT (CLHS 22.3.2.1). -
  • -
  • -Issue PRINTING-ARRAYS-READABLY: The description of *PRINT-READABLY* says that throwing a PRINT-NOT-READABLE error is allowed for certain arrays. CLHS 22.1.3.7 seems to imply that no error is allowed. This should probably be clarified one way or the other. -
  • -
  • -Issue FORMAT-TABULATE: CLHS 22.3.6.1, paragraph 1 describes what the ~T format directive does. If colnum is less than the current column, colinc is positive, and (mod (- curcol colnum) colinc) is 0, then it is unclear if this directive causes any spaces to be printed (and similarly for the case in PPRINT-TAB). Existing implementations do print at least one space in this case. Clarify that this is the intended behavior. -
  • -
  • -print-unreadable-object Delete superfluous "the" in "...enclosed in the the angle brackets.". -
  • -
  • -*print-circle* doesn't mention the granularity at which structure sharing and circularity is detected. This can lead to surprising results at times. For example, (let ((*print-circle* t) (name "q")) (format nil "~A ~A" name name)) returns "#1=q #1#" in Clozure CL. -
  • -
  • Issue FORMAT-RADIX-NONINTEGER: Clarify that the ~R directive (and the ~B, ~O, and ~X directives) print like ~A when the argument is not an integer. Also, clarify that in these cases (and ~D) the mincol and padchar arguments are passed along appropriately to the ~A directive, and that the *PRINT-BASE* is bound appropriately. -
  • -
  • Issue FORMAT-RADIX-MISSING-RADIX: Clarify the meaning of the ~R directive when the first parameter is missing but later parameters are not. Also, clarify whether ~VR means the same thing as ~R when the V parameter is NIL. -
  • -
  • Clarify that the ~G directive behaves like the ~E, ~F and ~dollars directives on non-numeric arguments. -
  • -
  • Specify that the tabsize argument to PPRINT-TABULAR may be present and be NIL. This makes ~v/pprint-tabular/ work properly in FORMAT when the argument is NIL, and is consistent with the sample imeplementation given for PPRINT-TABULAR. -
  • -
  • The treatment of ~T is inconsistent depending on the presence of the colon modifier. As stated, the versions with the colon modifier are the same as calls to pprint-tab, but those without are not. This means the former get turned off when printing to something that is not a pretty printing stream or when *print-pretty* is nil, but the latter are always on. Clarify whether this was intended. Note that Lispworks appears to treat all versions as calls to pprint-tab. -
  • -
  • In the ~A format directive, the behavior of minpad format parameter is described as follows: 'The string is padded on the right (or on the left if the @ modifier is used) with at least minpad copies of padchar; padding characters are then inserted colinc characters at a time until the total width is at least mincol.' Clarify that the implementation uses the minimum number of padding characters consistent with this requirement. -
  • -
  • -Issue PRINT-LENGTH-AND-STRUCTURES: clarify the effect the *PRINT-LENGTH* printer control variable has on the default method for printing structure objects. -
  • -
  • Clarify that there should be a predefined method for PRINT-OBJECT on the class CONDITION, not only on the classes STANDARD-OBJECT and STRUCTURE-OBJECT. Rationale: The description of DEFINE-CONDITION says "Condition reporting is mediated through the print-object method..." and "Specifying :REPORT ... is equivalent to (DEFMETHOD PRINT-OBJECT ...)". This implies that conditions are printed through PRINT-OBJECT, and therefore a predefined method needs to be in place. -
  • -
  • Clarification proposal for CLHS 22.3: status of trailing commas and V parameters to FORMAT directives. This proposal is available as CDR 7.
  • -
  • -PPRINT-LOGICAL-BLOCK: change two incorrect references of :pre-line-prefix to :per-line-prefix.
  • -
  • -PRINT-NOT-READABLE: In the description section, the :object keyword is not separated by a space from the following word “initialization”.
  • -

23. Reader

-
    -
  • The READ-DELIMITED-LIST page of the standard says: "It is an error to reach end-of-file during the operation of read-delimited-list." This means the behavior is undefined (see the glossary entry for error), which makes this function useless in practice. This should be defined as an exceptional situation with behavior consistent with READ and other reader functions. -
  • -

25. Environment

-
    -
  • Issue TIME-ALWAYS-PRINTS: The TIME macro prints timing information on a form. Clarify whether it does so only when the form terminates normally, or also when control is transfered from the form by a GO, THROW, RETURN, RETURN-FROM, or by handling a condition. -
  • -

26. Glossary

-
    -
  • -single escape 3. n. states: “a single escape[2] character. (In the standard readtable, slash is the only single escape.)”. However, the single escape character is, according to 2.1 Character Syntax, the backslash (“\”). -
  • -
  • -symbol macro n. replace "See the macro symbol-macrolet." with "See the special operator symbol-macrolet." -
  • -
  • -type expand n. is defined to be a noun, but it should be a verb. -
  • -


-Document Common Lisp
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ANSI.html b/clones/lisp/www.cliki.net/ANSI.html deleted file mode 100644 index 8816f888..00000000 --- a/clones/lisp/www.cliki.net/ANSI.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: ANSI - - - - - - - -
ANSI
ANSI is the American National Standards Institute, the standards setting body in the United States. For the purposes of CLiki, ANSI refers to ANSI INCITS 226-1994 (R2004) (formerly X3.226-1994 (R1999)), the Common Lisp standards document. The document itself may be purchased at the ANSI eStandards store, but in practice the Hyperspec is used as the canonical standards document for Common Lisp.
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ARC4.html b/clones/lisp/www.cliki.net/ARC4.html deleted file mode 100644 index a19799a1..00000000 --- a/clones/lisp/www.cliki.net/ARC4.html +++ /dev/null @@ -1,134 +0,0 @@ - - - - - CLiki: ARC4 - - - - - - - -
ARC4
A Common Lisp implementation of ARC4 (trademark: RC4), a stream cipher, can be found below. Note that experts in sci.crypt do not believe that the key management proposed there is safe. As codified in RFC 7465, RC4 is no longer allowed in TLS, and major browsers have dropped support. Some cryptography packages—including Ironclad and random-state—provide implementations.

Another implementation may be found here, -which discards the first 3072 bytes of the crypto-stream as recommended. It also provides a general-purpose seedable PRNG (pseudo-random number generator) as part of the API (inherently used as part of any stream-cipher implementation but not always exported). It's under a BSD license.

(in-package :cl-user) - -;;; CipherSaber in Common Lisp - Daniel Barlow <dan@telent.net> - -;;; Excessively longer than 16 lines of qbasic due in part to gratuitous -;;; commenting - -;;; "byte" has a perfectly good meaning in Common Lisp already, and as -;;; you'd expect for a language that grew up on weird hardware, it's -;;; not limited to 8 bits. So we say "octet" instead to avoid -;;; confusion, at some small risk of pleasing the French - -(eval-when (:compile-toplevel :load-toplevel) - ;; the `eval-when' form makes sure this gets done before anything - ;; else. In a grown-up program we'd put the deftype in its own file - (deftype octet () '(integer 0 255))) - -(defun octet+ (&rest octets) - ;; XXX fill this chock-full of declarations so it gets inlined and - ;; gratuitously type-inferenced - (mod (apply #'+ octets) 256)) - -;;; CL style note: some people like the LOOP macro. Others don't. -;;; It's a religious point, really. -;;; (And Perl users think that they invented TMTOWTDI - fah) - -(defun make-state-array () - "Return a 256-octet long array of octets with values 0 thru 255" - (coerce (loop for i from 0 to 255 collect i) - '(vector octet))) - -;;; Semi-serious note: this is using your Lisp's default RNG, which -;;; may or may not be any good, and most probably is only pseudorandom -;;; anyway. You could replace it with something -;;; implementation-specific (read /dev/random, say) if you like - -(defun make-initialization-vector () - "Return a random ten-octet initialization vector." - (coerce (loop for i from 0 to 9 collect (random 256)) - '(vector octet))) - -(defun encipher (initial-vector user-key in-stream out-stream) - "CipherSaber en(de)crypt the message on IN-STREAM to OUT-STREAM. -Use the provided INITIAL-VECTOR and USER-KEY" - (let* ((state (make-state-array)) - (key (concatenate '(vector octet) - (map 'vector #'char-code user-key) initial-vector)) - (key-length (length key))) - ;; mix the state - (loop for i from 0 to 255 - for j = (octet+ (or j 0) (elt state i) - (elt key (mod i key-length))) - do (rotatef (elt state i) (elt state j))) - ;; now do the ciphering - (let ((eof (gensym))) - (loop for in = (read-char in-stream nil eof) - until (eq in eof) - for i = 1 then (octet+ 1 i) - for j = (octet+ (or j 0) (elt state i)) - for n = (octet+ (elt state i) (elt state j)) - do (rotatef (elt state i) (elt state j)) - do (princ - (code-char (logxor (elt state n) (char-code in))) - out-stream))))) - -(defun encrypt-message (user-key in-stream out-stream) - "Encrypt the message on IN-STREAM to OUT-STREAM using USER-KEY with -a randomly-generated IV" - (let ((iv (make-initialization-vector))) - (write-sequence (map 'vector #'code-char iv) out-stream) - (encipher iv user-key in-stream out-stream))) - -(defun decrypt-message (user-key in-stream out-stream) - "Decrypt the message on IN-STREAM to OUT-STREAM, using USER-KEY and -the first ten bytes of IN-STREAM as IV" - (let ((iv (make-array 10 :element-type 'octet))) - (read-sequence iv in-stream :end 10) - (encipher iv user-key in-stream out-stream))) - -(defun decrypt-file (user-key pathname) - "Decrypt the file at PATHNAME to *STANDARD-OUTPUT*" - (with-open-file (i pathname) - (decrypt-message user-key i *standard-output*)))
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ARNESI.html b/clones/lisp/www.cliki.net/ARNESI.html deleted file mode 100644 index a983222d..00000000 --- a/clones/lisp/www.cliki.net/ARNESI.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: arnesi - - - - - - - -
arnesi
arnesi is a collection of utilities written by Marco Baringer. It includes some ASDF-extensions.

The current long term maintenance branch of arnesi can be found at github This will be the future quicklisp version of arnesi and is where to report bugs.

Among many other things, arnesi provides pattern matching facilities: a fare-matcher style pattern matcher and "regular" list matcher. optima's CLiki page claims optima had superseded arnesi's pattern matcher.

Topic: continuations, utilities

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ARRAY-OPERATIONS.html b/clones/lisp/www.cliki.net/ARRAY-OPERATIONS.html deleted file mode 100644 index 4d8929f6..00000000 --- a/clones/lisp/www.cliki.net/ARRAY-OPERATIONS.html +++ /dev/null @@ -1,57 +0,0 @@ - - - - - CLiki: array-operations - - - - - - - -
array-operations
Provides commonly used operations on arrays.

Operations provided include elementwise +, -, * and /, the same operations involving an array and a scalar, minimum, maximum and range (the last one is faster then the two of them called separately), and also general functions to implement other, similar functions, including array-reduce, array-map, etc.

It also has a macro for `vectorizing' operations:

(let ((a #(1d0 2d0 3d0)) - (b #(4d0 5d0 6d0)) - (c 0.25d0)) - (vectorize (a b) - (+ a b c 0.25))) ; => #(5.5d0 7.5d0 9.5d0) -

Formerly, many functions in this package were part of FFA, but were split to eliminate the dependency on CFFI. With the fix in SBCL, we no longer need to make a special effort to make arrays "foreign friendly".

Homepage: GitHub (archived original), GitHub (an actively maintained fork)

License: MIT (as stated in asdf:defsystem; the license text in LICENSE file is boilerplate from another project)

See article Multidimensional arrays in The Common Lisp Cookbook for some differences between the fork and the original.


-data structure
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ASDF System Connections.html b/clones/lisp/www.cliki.net/ASDF System Connections.html deleted file mode 100644 index 8adf928b..00000000 --- a/clones/lisp/www.cliki.net/ASDF System Connections.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: ASDF System Connections - - - - - - - -
ASDF System Connections
ASDF-System-Connections provides auto-loading of systems that only make sense when several other systems are loaded. If I'm lucky, the examples on the project home page will make this clear!

This development tool is another one of Gary King's projects.

Repository: https://github.com/gwkkwg/asdf-System-Connections

License: MIT-License

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ASDF encoding.html b/clones/lisp/www.cliki.net/ASDF encoding.html deleted file mode 100644 index e84619d8..00000000 --- a/clones/lisp/www.cliki.net/ASDF encoding.html +++ /dev/null @@ -1,63 +0,0 @@ - - - - - CLiki: ASDF encoding - - - - - - - -
ASDF encoding
The encoding used by lisp implementation to read source files is often depends on environment, -for example the LANG environment variable.

If you source files contain non basic-latin characters, ASDF allows you to specify -the encoding via the :encoding option of components (whole system, files, etc). -UTF-8 is the recommended choice. To be compatible with old versions of ASDF use reader conditional #+asdf-unicode.

(asdf:defsystem :my-system - :author "me" - :version "1" - #+asdf-unicode :encoding #+asdf-unicode :utf-8 - :components ((:file "file-1") - (:file "file-2") - ... -

This way your source code will build independently on the locale.

The chapter about source file encoding in ASDF manual: -http://common-lisp.net/project/asdf/asdf/Miscellaneous-additional-functionality.html#Miscellaneous-additional-functionality


-programming tips
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ASDF-Binary-Locations.html b/clones/lisp/www.cliki.net/ASDF-Binary-Locations.html deleted file mode 100644 index bb3d5449..00000000 --- a/clones/lisp/www.cliki.net/ASDF-Binary-Locations.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: ASDF-Binary-Locations - - - - - - - -
ASDF-Binary-Locations
Note: this system is no longer being maintained.

asdf binary locations is an ASDF extension which organizes your FASLs based on machine type. This page keeps ASDF-Install happy with my ever changing sense of where hyphens belong. More details can be found here on common-lisp.net.

This is another one of Gary King's projects.


-obsolete
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ASDF-Binary-locations.html b/clones/lisp/www.cliki.net/ASDF-Binary-locations.html deleted file mode 100644 index bb3d5449..00000000 --- a/clones/lisp/www.cliki.net/ASDF-Binary-locations.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: ASDF-Binary-Locations - - - - - - - -
ASDF-Binary-Locations
Note: this system is no longer being maintained.

asdf binary locations is an ASDF extension which organizes your FASLs based on machine type. This page keeps ASDF-Install happy with my ever changing sense of where hyphens belong. More details can be found here on common-lisp.net.

This is another one of Gary King's projects.


-obsolete
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ASDF-DEPENDENCY-GROVEL.html b/clones/lisp/www.cliki.net/ASDF-DEPENDENCY-GROVEL.html deleted file mode 100644 index 7332ed96..00000000 --- a/clones/lisp/www.cliki.net/ASDF-DEPENDENCY-GROVEL.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: asdf-dependency-grovel - - - - - - - -
asdf-dependency-grovel
asdf-dependency-grovel makes it possible to generate components with dependencies from serial asdf system definitions. It is possible to merge several systems into one (to work around asdf's inter-module dependency handling), and to generate dependencies for non-serial system definitions.

The asdf-dependency-grovel uses an extended *macroexpand-hook* to find out dependency information. This seems to work better than implementation-provided xref facilities (at least as long as there are no "uses at compile time" queries in xrefs (-:)

There is a more modern and featureful (and better-debugged) version of adg that's part of the xcvb project, at https://gitlab.common-lisp.net/xcvb/asdf-dependency-grovel


-ASDF-Extension
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ASDF-Extension.html b/clones/lisp/www.cliki.net/ASDF-Extension.html deleted file mode 100644 index 689d5db6..00000000 --- a/clones/lisp/www.cliki.net/ASDF-Extension.html +++ /dev/null @@ -1,107 +0,0 @@ - - - - - CLiki: ASDF-extension - - - - - - - -
ASDF-extension
This is the topic page for extensions to ASDF.

Some already have pages on the CLiki

-

Some don't (yet)

-
    -
  • -ASDF Addendum -This file adds three operations to ASDF standard repertoire: -pack-op, tag-op and stat-op. The first one creates a tar/zip -archive of the files in a system. The second one creates a tag -file (Emacs or Vi compatible). The last one, stat-op, gives some -statistics on the system files.

  • -


-This page probably belongs mostly to development.
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ASDF-INSTALL.html b/clones/lisp/www.cliki.net/ASDF-INSTALL.html deleted file mode 100644 index 44c974f0..00000000 --- a/clones/lisp/www.cliki.net/ASDF-INSTALL.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: asdf-install - - - - - - - -
asdf-install
asdf-install completely died more than a decade ago, having been completely superseded by Quicklisp.
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ASDF-Install.html b/clones/lisp/www.cliki.net/ASDF-Install.html deleted file mode 100644 index 44c974f0..00000000 --- a/clones/lisp/www.cliki.net/ASDF-Install.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: asdf-install - - - - - - - -
asdf-install
asdf-install completely died more than a decade ago, having been completely superseded by Quicklisp.
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ASDF-System-Connections.html b/clones/lisp/www.cliki.net/ASDF-System-Connections.html deleted file mode 100644 index 0b75246a..00000000 --- a/clones/lisp/www.cliki.net/ASDF-System-Connections.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: asdf-system-connections - - - - - - - -
asdf-system-connections
Note: this system is no longer being maintained. Use Quicklisp!

ASDF-System-Connections provides auto-loading of systems that only make sense when several other systems are loaded. More details and examples can be found on its home page at Common-Lisp.net.

This is an ASDF-Extension by Gary King.


-obsolete
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ASDF-extension.html b/clones/lisp/www.cliki.net/ASDF-extension.html deleted file mode 100644 index 689d5db6..00000000 --- a/clones/lisp/www.cliki.net/ASDF-extension.html +++ /dev/null @@ -1,107 +0,0 @@ - - - - - CLiki: ASDF-extension - - - - - - - -
ASDF-extension
This is the topic page for extensions to ASDF.

Some already have pages on the CLiki

-

Some don't (yet)

-
    -
  • -ASDF Addendum -This file adds three operations to ASDF standard repertoire: -pack-op, tag-op and stat-op. The first one creates a tar/zip -archive of the files in a system. The second one creates a tag -file (Emacs or Vi compatible). The last one, stat-op, gives some -statistics on the system files.

  • -


-This page probably belongs mostly to development.
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ASDF-install.html b/clones/lisp/www.cliki.net/ASDF-install.html deleted file mode 100644 index 44c974f0..00000000 --- a/clones/lisp/www.cliki.net/ASDF-install.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: asdf-install - - - - - - - -
asdf-install
asdf-install completely died more than a decade ago, having been completely superseded by Quicklisp.
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ASDF.html b/clones/lisp/www.cliki.net/ASDF.html deleted file mode 100644 index 74ddfe77..00000000 --- a/clones/lisp/www.cliki.net/ASDF.html +++ /dev/null @@ -1,61 +0,0 @@ - - - - - CLiki: asdf - - - - - - - -
asdf
ASDF (Another System Definition Facility) is an extensible build facility for Common Lisp software. ASDF comes bundled with all recent releases of active Common Lisp implementations as well as with quicklisp, and it is the most widely used system definition facility for Free Software Lisp libraries.

Documentation on how to use ASDF can be found on its -home page on common-lisp.net. -For more details, see the online ASDF Manual.

The current version of ASDF is ASDF 3.1. -It actually contains two systems: -the runtime support layer UIOP and the defsystem itself ASDF/DEFSYSTEM.

On all actively developed implementations, you can (require "asdf") -and the implementation will provide ASDF 3.1. -ASDF is thus provided by ABCL, Allegro, CCL, CMUCL, ECL, LispWorks, MKCL, SBCL. -ASDF also works with the now inactive or mostly dead implementations CLISP, CormanLisp, GCL, Genera, MOCL, RMCL, SCL, XCL; -their latest release may contain an ancient ASDF (or not ASDF at all), but you can install a recent ASDF on top.

ASDF will not automatically download software. For that, use Quicklisp. -Do NOT use asdf-install anymore, for it is both obsolete and unmaintained. -There is an unrelated project, asdf-vm, that might attract clicks away from this project.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ASDlite.html b/clones/lisp/www.cliki.net/ASDlite.html deleted file mode 100644 index f0909d4e..00000000 --- a/clones/lisp/www.cliki.net/ASDlite.html +++ /dev/null @@ -1,61 +0,0 @@ - - - - - CLiki: ASDlite - - - - - - - -
ASDlite
ASDlite is a light-weight version of ASDF, a popular build facility for Common Lisp.

ASDlite supports basis ASDF functions and operation classes -and can be used as a replacement in many cases.

ASDlite is maintained by Dmitri Ivanov.

License: LLGPL

Homepage: http://lisp.ystok.ru/asdlite/.

ASDlite design goals

-
    -
  • Small footprint.
  • -
  • Ease of embedding into applications and systems not related to - "compile-and-load Lisp files" tasks. - For example: YstokHelp (http://lisp.ystok.ru/yhelp/).
  • -
  • ASDF compatibility for typical needs.
  • -
  • Using keywords as operation designators, e.g. :compile.
  • -
  • Operation arguments specification in dependencies.
  • -
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ASN.1.html b/clones/lisp/www.cliki.net/ASN.1.html deleted file mode 100644 index 692b6798..00000000 --- a/clones/lisp/www.cliki.net/ASN.1.html +++ /dev/null @@ -1,58 +0,0 @@ - - - - - CLiki: ASN.1 - - - - - - - -
ASN.1
Abstract Syntax Notation #1, the Common Lisp implementation and language mapping.

This package is part of cl-net-snmp.

Version History

    -
  • asn.1-4.0 (ship with cl-net-snmp 5.0) -
  • -
  • asn.1-2.3 (ship with cl-net-snmp 3.0) -
  • -
-

API Reference

https://quickref.common-lisp.net/snmp.html#The-asn_20241-package


-Topics: wire format
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/AWK Lisp.html b/clones/lisp/www.cliki.net/AWK Lisp.html deleted file mode 100644 index e8104eba..00000000 --- a/clones/lisp/www.cliki.net/AWK Lisp.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: AWK Lisp - - - - - - - -
AWK Lisp
AWK Lisp is a A Common Lisp interpreter implemented in Awk and written by Roger Rohrbach. It provides intrinsic versions of the basic functions on s-expressions (s-exp syntax), and many others written in LISP.

The interpreter has thirteen built-in functions: car, cdr, cons, eq, atom, set, eval, error, quote, cond, and, or, list. These include the five elementary functions on s-expressions defined by McCarthy; some conditional expression operators; an assignment operator, and some functions to control the evaluation process.

Homepage: AWK Lisp: Lisp implemented in AWK

References: Common Lisp Implementations - The ALU Website

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Aanand.html b/clones/lisp/www.cliki.net/Aanand.html deleted file mode 100644 index 7a559bfd..00000000 --- a/clones/lisp/www.cliki.net/Aanand.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Aanand - - - - - - - -
Aanand
Aanand Deepak is baby Lisper who got curious about Common Lisp recently after some months of Elisp hacking.


-Person
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Abhishek Reddy.html b/clones/lisp/www.cliki.net/Abhishek Reddy.html deleted file mode 100644 index 8f475fb5..00000000 --- a/clones/lisp/www.cliki.net/Abhishek Reddy.html +++ /dev/null @@ -1,68 +0,0 @@ - - - - - CLiki: Abhishek Reddy - - - - - - - -
Abhishek Reddy
Abhishek Reddy is a Person.

He is: -

    -
  • also known as arbscht (or variations thereof)
  • -
  • interested in, and regularly uses, various lisp languages including Common Lisp and Clojure
  • -
  • on the web
  • -
  • in New Zealand
  • -
  • responsible for @lispgames on Twitter -
  • -

He has: -

    -
  • written a little about lisp (see website)
  • -
  • ported ncurses bindings to CFFI: cl-charms -
  • -
  • written slicker-cliki, a Greasemonkey userscript to improve CLiki's user experience
  • -
  • fun with lisp games -
  • -
  • used lisp since 2005
  • -
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Able.html b/clones/lisp/www.cliki.net/Able.html deleted file mode 100644 index b3152aea..00000000 --- a/clones/lisp/www.cliki.net/Able.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Able - - - - - - - -
Able
Able is a basic lisp editor for Windows/Mac/Linux.

Able comes with a bunch of libraries, and installing libraries is done by simply unpacking them in an appropriate folder.

Depends on: ltk, trivial-gray-streams, cl-fad

Repository: https://github.com/dherring/able


-Topics: IDE, Application, MIT-LICENSE
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/AccelerationNet.html b/clones/lisp/www.cliki.net/AccelerationNet.html deleted file mode 100644 index 92f5d0ce..00000000 --- a/clones/lisp/www.cliki.net/AccelerationNet.html +++ /dev/null @@ -1,129 +0,0 @@ - - - - - CLiki: AccelerationNet - - - - - - - -
AccelerationNet
AccelerationNet is a company that has released open source common lisp libraries. This page simply exists to link all these libraries together. These libraries are hosted from our github page

    -
  • -a-cl-logger - - A common lisp logging library providing context sensitive logging of more than just strings to more than just local files / output streams -
  • -
  • -access - - Access is a library to ease getting and setting values in nested dictionary-like objects by providing a unified interface to hash-tables, clos-objects, plists and alists -
  • -
  • -Buildnode - - Buildnode is a libary to ease interaction with CXML:DOM XML documents and nodes -
  • -
  • -cl-cidr-notation - - cl-cidr-notation is a library for converting IP addresses and CIDR blocks from integer to string representations and vice versa -
  • -
  • -cl-creditcard - - cl-creditcard & cl-authorize-net: A common lisp library to enable processing credit card payments -
  • -
  • -CL-CSV - - CL-CSV is a library to parse and write csv (comma-separated-values) files -
  • -
  • -cl-inflector - - cl-inflector is a branch of vana-inflector to make it more standard and loadable / testable -
  • -
  • -CL-MediaWiki - - CL-MediaWiki is a wrapper in Common Lisp around the media wiki web API -
  • -
  • -CLSQL-helper - - CLSQL-helper is an library of utilities to make interacting with clsql easier -
  • -
  • -CLSQL-ORM - - CLSQL-ORM is an library to generate clsql view-classes from existing databases, by introspecting on the "information_schema" of the running database -
  • -
  • -collectors - - collectors is a common lisp library that aims to ease accumulating values (similar to loop/iter's collecting / appending clauses) -
  • -
  • -CSS-Selectors - - CSS-selectors is an XML query language for finding specific nodes in cxml -
  • -
  • -data-table - - data-table is a library providing a data structure that has rows of data and column names and types (ie database results) -
  • -
  • -function-cache - - Function-cache is a Common Lisp function caching / memoization library -
  • -
  • -generators - - Generators is a library that provides python style generators in common lisp, by using cl-cont delimited continuations -
  • -
  • -group-by - - Group-by is a Common Lisp library to help group data into trees (of various formats) based on common/shared values -
  • -
  • -lisp-unit2 - - Lisp-unit2 is a major refactoring of the Common Lisp Test Framework lisp-unit -
  • -
  • -Symbol-Munger - - Symbol-Munger is a small library that provides functionality to ease conversion between the same symbol in different environments -
  • -
  • -TALCL - - TALCL is a templating library that implements XML templates and HTML templates -
  • -


-Lisp Companies
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Acclaim.html b/clones/lisp/www.cliki.net/Acclaim.html deleted file mode 100644 index d6be2647..00000000 --- a/clones/lisp/www.cliki.net/Acclaim.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: acclaim - - - - - - - -
acclaim
Acclaim is a Presentation Graphics Application, which takes an input file of sexps describing each slide and renders them using CLX.

Originally written by Daniel Barlow as a quick hack for a -talk at UKUUG 2003, it has since been enhanced in many ways by Max-Gerd Retzlaff. More information from -http://www.matroid.org/acclaim.html

-

Getting a PDF export of an Acclaim slideset

Actually there is a hack to add another renderer for PDF output in addition to the already present clx-renderer. It is done by Manuel Odendahl in June 2004 and uses CL-PDF as I suggested in a mail to the clump-mailinglist.

Unfortunately this hack is based on an older version of Acclaim before the major refactoring in versions 0.24 and 0.25. Since I had not to do any presentation in the meantime I did not bother to include his pdf-renderer, but if someone is interested in it I would merge it with the current, more powerful version of Acclaim and not wait until I need it (presumedly in May 2005).

In the meantime, there is a quite simple method to generate a PDF version of a slideset without CL-PDF but by creating, converting and concatenating screenshots(sic!) of the slides. I described it in a Lisppaste to the #lisp-IRC-channel: Paste number 1308: pdf export hack for Acclaim. I admit, it is a quite ugly way to get a PDF but it has the advantage that the created PDF will have *exactly* the same look as the Acclaim slideset.

(The file size will be acceptable if your slides do not include background images; the PDF version of a Spartan slideset by Christophe Rhodes has a size of 251kB for 12 slides including three larger images and a smaller one.)

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Acclimation.html b/clones/lisp/www.cliki.net/Acclimation.html deleted file mode 100644 index 06ebc41b..00000000 --- a/clones/lisp/www.cliki.net/Acclimation.html +++ /dev/null @@ -1,84 +0,0 @@ - - - - - CLiki: Acclimation - - - - - - - -
Acclimation
This project is meant to provide tools for internationalizing Common -Lisp programs.

One important aspect of internationalization is of course the language -used in error messages, documentation strings etc. But with this -project we will provide tools for all other aspects of -internationalization as well. To get an idea of what we are aiming -for, here is a partial list of other tools we are thinking of -providing:

    -
  • Showing dates. This is a complex issue because it not only - involves the format of a date, but also the precision. For - example, it is probably not useful to provide more precision for - the time an email was sent than down to the minute.

  • -
  • Measuring weight. There are three important aspects here, namely - the type of object that is being measured, the unit to be used, - and the precision. For instance, in the UK, for measuring the - weight of people, some people like to use the units "stones" and - "pounds" for this purpose, and it is not useful to give more than - one or two digits of precision for the pounds.

  • -
  • Measuring temperature. The same three aspects are involved as - with weight units. Some people might want to use degrees - Fahrenheit for measuring oven temperature, and it is not useful to - have more precision than 10 degrees. The same person might want - to show the temperature of liquid nitrogen in Kelvin.

  • -
  • Names of physical quantities. Even if English is used, some - people (including myself) do not like names of physical quantities - that tie them to a particular unit of measure, such as voltage, - mileage, amperage, wattage, etc. In addition, such quantities can - become ambiguous, because there might be several quantities that - use the same unit, such as length, height, width, or distance. We - intend to provide tools that allow programmers to configure what - names of quantities are used.

  • -
  • Etc. -
  • -
-Repository: https://github.com/robert-strandh/Acclimation

License: FreeBSD

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Adam Di Carlo.html b/clones/lisp/www.cliki.net/Adam Di Carlo.html deleted file mode 100644 index fb3b742c..00000000 --- a/clones/lisp/www.cliki.net/Adam Di Carlo.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Adam Di Carlo - - - - - - - -
Adam Di Carlo
Lisp hacker, semi retired Debian package maintainer.

person

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Adam Houston.html b/clones/lisp/www.cliki.net/Adam Houston.html deleted file mode 100644 index 3c770b14..00000000 --- a/clones/lisp/www.cliki.net/Adam Houston.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Adam Houston - - - - - - - -
Adam Houston
Adam Houston is a Person first infected by Lisp while studying Cognitive Science at UCSD. He has been trying to recapture that Nirvana ever since finding himself back in the real computing world.
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Adlai.html b/clones/lisp/www.cliki.net/Adlai.html deleted file mode 100644 index 686257c9..00000000 --- a/clones/lisp/www.cliki.net/Adlai.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Adlai - - - - - - - -
Adlai
Adlai is a Person who began exploring Common Lisp around April 2009.

Adlai is currently involved in Sheeple, and in developing his own test framework.

Adlai runs StumpWM and bleeding-edge Archlinux x86_64 on his Thinkpad T400, and loves every moment.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Adler32.html b/clones/lisp/www.cliki.net/Adler32.html deleted file mode 100644 index f686fb4c..00000000 --- a/clones/lisp/www.cliki.net/Adler32.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: adler32 - - - - - - - -
adler32
Adler-32 is a hash algorithm like CRC-32, except that it is much faster and carries a slightly higher probability of collisions. The zlib compression library uses Adler-32 as its checksum algorithm. This implementation of Adler-32 (by Nathan Froyd) was released under the BSD license.


-cryptography
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Adopt.html b/clones/lisp/www.cliki.net/Adopt.html deleted file mode 100644 index e8a243d6..00000000 --- a/clones/lisp/www.cliki.net/Adopt.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: adopt - - - - - - - -
adopt
adopt is a damn option parsing library. Adopt aims to be a simple, robust option parser. It can automatically print help information and even generate man pages for you.


-command-line options parser
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Agent0.html b/clones/lisp/www.cliki.net/Agent0.html deleted file mode 100644 index 1c4f567e..00000000 --- a/clones/lisp/www.cliki.net/Agent0.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Agent0 - - - - - - - -
Agent0
Agent0 is a programming language for multi-agent systems. It is based on a model of ascribing mental state (notably intentions, see this page on the Intentional Stance) to software components, and was designed by Yoav Shoham.

An old CL implementation is available. I cannot attest to its functioning.


-AI
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Ajax.html b/clones/lisp/www.cliki.net/Ajax.html deleted file mode 100644 index 3a63933f..00000000 --- a/clones/lisp/www.cliki.net/Ajax.html +++ /dev/null @@ -1,68 +0,0 @@ - - - - - CLiki: AJAX - - - - - - - -
AJAX
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Akshay Srinivasan.html b/clones/lisp/www.cliki.net/Akshay Srinivasan.html deleted file mode 100644 index f1806c1b..00000000 --- a/clones/lisp/www.cliki.net/Akshay Srinivasan.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: Akshay Srinivasan - - - - - - - -
Akshay Srinivasan
Lisper who took a labyrinthine route from Scheme to CL. -Works at the University of Washington (and works on Matlisp -when his boss is not looking :)

person

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Alan Crowe.html b/clones/lisp/www.cliki.net/Alan Crowe.html deleted file mode 100644 index 1abe1767..00000000 --- a/clones/lisp/www.cliki.net/Alan Crowe.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - CLiki: Alan Crowe - - - - - - - -
Alan Crowe
Alan Crowe is carbon based Person.

I mostly run SBCL on FreeBSD. I'm interested in CLX

I've been dabbling in Theorem Proving and have written a pattern matching macro, tuned to -this application. I've implemented it using typecase and -destructuring-bind. I've implemented it again -more directly.

I like the second version better and want to write it up nicely, as an example -of writing a tricky macro.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Alan Shields.html b/clones/lisp/www.cliki.net/Alan Shields.html deleted file mode 100644 index 5179dd08..00000000 --- a/clones/lisp/www.cliki.net/Alan Shields.html +++ /dev/null @@ -1,65 +0,0 @@ - - - - - CLiki: Alan Shields - - - - - - - -
Alan Shields
Alan Shields is a Person: he's just this guy, you know?

His email address is alan@alan.shields.name

He works on the following projects: -

    -
  • -cl-smoketest is a small package for creating does-it-compile tests. -
  • -
  • -araneida a very spiffy web framework for common lisp. -
  • -
  • -rfc2109 is an RFC-compliant (I hope!) package for dealing with version 1 cookies. -
  • -
  • -clsql-pg-introspect is a library for introspecting a PostgreSQL database using CLSQL. Also great for quickly defining CLSQL classes using existing tables. -
  • -
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/AlanRuttenberg.html b/clones/lisp/www.cliki.net/AlanRuttenberg.html deleted file mode 100644 index dc1f5224..00000000 --- a/clones/lisp/www.cliki.net/AlanRuttenberg.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: AlanRuttenberg - - - - - - - -
AlanRuttenberg
Writes programs mostly in common lisp. Put this page here so that jss could be associated with a Person.
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Albert.html b/clones/lisp/www.cliki.net/Albert.html deleted file mode 100644 index 3ee556c2..00000000 --- a/clones/lisp/www.cliki.net/Albert.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Albert - - - - - - - -
Albert
Albert is a Common Lisp doc-generator, comparable to Javadoc and Doxygen. Currently it generates DocBook. It reads an ASDF system definition and documents the system but is incompatible with current versions of ASDF. It has been an experimental system that I've used for my own projects, but others have found it useful too. Give it a go and let me know what you think.

http://albert.sourceforge.net/


-Documentation Tool
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Aleksandr Skobelev.html b/clones/lisp/www.cliki.net/Aleksandr Skobelev.html deleted file mode 100644 index 3a715639..00000000 --- a/clones/lisp/www.cliki.net/Aleksandr Skobelev.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Aleksandr Skobelev - - - - - - - -
Aleksandr Skobelev
Aleksandr Skobelev is a Person. -Supports packages: the.


- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Alexander Kahl.html b/clones/lisp/www.cliki.net/Alexander Kahl.html deleted file mode 100644 index 8a23682a..00000000 --- a/clones/lisp/www.cliki.net/Alexander Kahl.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Alexander Kahl - - - - - - - -
Alexander Kahl
Alexander Kahl is a Person writing Free Software -using Common Lisp.
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Alexandria.html b/clones/lisp/www.cliki.net/Alexandria.html deleted file mode 100644 index a962cbd9..00000000 --- a/clones/lisp/www.cliki.net/Alexandria.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Alexandria - - - - - - - -
Alexandria
Alexandria is a collection of portable public domain utilities.

Official home

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Algorithm.html b/clones/lisp/www.cliki.net/Algorithm.html deleted file mode 100644 index 99d3c288..00000000 --- a/clones/lisp/www.cliki.net/Algorithm.html +++ /dev/null @@ -1,168 +0,0 @@ - - - - - CLiki: algorithm - - - - - - - -
algorithm
Algorithms for doing various complicated things (mostly math-related).

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Alive.html b/clones/lisp/www.cliki.net/Alive.html deleted file mode 100644 index 2678c778..00000000 --- a/clones/lisp/www.cliki.net/Alive.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Alive - - - - - - - -
Alive
An attempt to create a Common Lisp extension for VSCode.

Depends on: usocket, cl-json, bordeaux-threads, flexi-streams, sb-introspect

Repository: https://github.com/nobody-famous/alive

License: Public Domain


-IDE
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Allegro Maild.html b/clones/lisp/www.cliki.net/Allegro Maild.html deleted file mode 100644 index 313b4d78..00000000 --- a/clones/lisp/www.cliki.net/Allegro Maild.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Allegro Maild - - - - - - - -
Allegro Maild
Allegro Maild is an SMTP email server written in Common Lisp.

Homepage: https://github.com/franzinc/maild

License: LLGPL

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Allegro NFS Server.html b/clones/lisp/www.cliki.net/Allegro NFS Server.html deleted file mode 100644 index 1cdaa9de..00000000 --- a/clones/lisp/www.cliki.net/Allegro NFS Server.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Allegro NFS Server - - - - - - - -
Allegro NFS Server
Allegro NFS Server for Microsoft Windows, written in Common Lisp.

Homepage: https://nfsforwindows.com/home

Source repository: https://github.com/franzinc/nfs

License: LLGPL


-Topics: networking
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Allegro.html b/clones/lisp/www.cliki.net/Allegro.html deleted file mode 100644 index 2fb93683..00000000 --- a/clones/lisp/www.cliki.net/Allegro.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Allegro - - - - - - - -
Allegro
Allegro is a common alternative name for ACL.
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/AllegroServe.html b/clones/lisp/www.cliki.net/AllegroServe.html deleted file mode 100644 index 38e9b087..00000000 --- a/clones/lisp/www.cliki.net/AllegroServe.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: AllegroServe - - - - - - - -
AllegroServe
Portable AllegroServe is a portable version of Franz Inc's AllegroServe HTTP server, which also includes an HTML generator and an HTTP client.

It supports LispWorks, Clozure CL, SBCL/Linux, and SBCL/MacOS (SBCL on Windows is questionable due to immature thread support of SBCL on Windows).

You can find it at https://sourceforge.net/projects/portableaserve/, and the best way to load it into a project (as with most CL libraries these days) is via Quicklisp.

AllegroServe (formerly Allegro iServe) is a LLGPLed Web server which is designed for use with Allegro Common Lisp.

AllegroServe has a public repository and online documentation that includes a tutorial.

NOTE - Portable Allegroserve has been maintained with patches recently, for compatibility with LispWorks, SBCL/Linux, and CCL. At some point it could use a refactoring for acl-compat to use now-defacto-standard libraries from Quicklisp (e.g. Bordeaux-threads), and to track the current original AllegroServe. But the current Portable AllegroServe is usable at least on the platforms mentioned.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Alpaca.html b/clones/lisp/www.cliki.net/Alpaca.html deleted file mode 100644 index 6f09a89a..00000000 --- a/clones/lisp/www.cliki.net/Alpaca.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: alpaca - - - - - - - -
alpaca
Alpaca is a new text editing application for authors, written in OpenMCL for MacOS X / Cocoa.

Repository: https://github.com/huangjs/cl/tree/master/lib/alpaca

License: LLGPL

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/AmOS.html b/clones/lisp/www.cliki.net/AmOS.html deleted file mode 100644 index 09b65457..00000000 --- a/clones/lisp/www.cliki.net/AmOS.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - CLiki: AmOS - - - - - - - -
AmOS
AmOS (Ambient Object System) is an object-based computation model aimed at supporting highly dynamic behaviour adaptation to changing contexts. AmOS provides dedicated mechanisms to manage changing contexts and deal with run-time adaptation of applications to those contexts.

An implementation of the proposed object system has been developed -entirely in Common Lisp. It is currently being used at UCL as a -research vehicle to test context-oriented programming language -abstractions.

License: GPL3

Homepage: http://ambience.info.ucl.ac.be/


-Broken snapshot links. SVN wants username/password.
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Amazon Web Services.html b/clones/lisp/www.cliki.net/Amazon Web Services.html deleted file mode 100644 index f0eb6201..00000000 --- a/clones/lisp/www.cliki.net/Amazon Web Services.html +++ /dev/null @@ -1,64 +0,0 @@ - - - - - CLiki: Amazon Web Services - - - - - - - -
Amazon Web Services
    -
  • -CL-S3 - - CL-S3 is a Common Lisp library that implements a client interface to the Amazon S3 Web Service -
  • -
  • -CL-SES4 - - AWS SES email sender using Signature Version 4 of Amazon's API -
  • -
  • -ZS3 - - ZS3 is a library for interacting with Amazon's Simple Storage Service (S3) and CloudFront content distribution service -
  • -
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Anaphora.html b/clones/lisp/www.cliki.net/Anaphora.html deleted file mode 100644 index b4a20161..00000000 --- a/clones/lisp/www.cliki.net/Anaphora.html +++ /dev/null @@ -1,86 +0,0 @@ - - - - - CLiki: Anaphora - - - - - - - -
Anaphora
Anaphora is the anaphoric macro collection from Hell; it includes many new fiends in addition to old friends like AIF and AWHEN.

Anaphora is in the Public Domain.

Anaphora homepage; some documentation.

ANAPHORA> (do-symbols (i (find-package :anaphora)) (when (eql (symbol-package i) (find-package :anaphora)) (cond ((fboundp i) (format t "~A~%" (cons i (sb-introspect:function-arglist i))) (awhen (documentation i 'function) (format t "   ~A~%" it))) (t (format t "~A~%" i)))))
-OP
-ELSE
-RESULT
-REC
-(SYMBOLIC OP TEST &BODY BODY)
-TEST
-BODY
-(ANAPHORIC OP TEST &BODY BODY)
-THEN
-FORM
-I
-CASES
-CLAUSES
-(ATYPECASE FORM &BODY CASES)
-(AECASE FORM &BODY CASES)
-(SWHEN TEST &BODY BODY)
-(ACCASE FORM &BODY CASES)
-(AETYPECASE FORM &BODY CASES)
-(AWHEN TEST &BODY BODY)
-(ASIF TEST THEN &OPTIONAL ELSE)
-(ACASE FORM &BODY CASES)
-(SCCASE FORM &BODY CASES)
-(SCOND &BODY CLAUSES)
-(SIF TEST THEN &OPTIONAL ELSE)
-(SECASE FORM &BODY CASES)
-(ACTYPECASE FORM &BODY CASES)
-(ACOND &BODY CLAUSES)
-(AIF TEST THEN &OPTIONAL ELSE)
-(STYPECASE FORM &BODY CASES)
-(SCTYPECASE FORM &BODY CASES)
-(SETYPECASE FORM &BODY CASES)
-(SUNLESS TEST &BODY BODY)
-(SCASE FORM &BODY CASES)
-IT

See anaphoric-variants for an alternative.


-convenience library
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Andreas Fuchs.html b/clones/lisp/www.cliki.net/Andreas Fuchs.html deleted file mode 100644 index 91eac208..00000000 --- a/clones/lisp/www.cliki.net/Andreas Fuchs.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Andreas Fuchs - - - - - - - -
Andreas Fuchs
A not very, but still strange person living in Austria (Vienna), studying computer science at the local technical university.

So much for the description. http://boinkor.net/ is my no longer terribly outdated web site, and my IRC nick is "antifuchs".

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Annotations for Infrequently Asked Questions.html b/clones/lisp/www.cliki.net/Annotations for Infrequently Asked Questions.html deleted file mode 100644 index 0bdda0d3..00000000 --- a/clones/lisp/www.cliki.net/Annotations for Infrequently Asked Questions.html +++ /dev/null @@ -1,68 +0,0 @@ - - - - - CLiki: Annotations for Infrequently Asked Questions - - - - - - - -
Annotations for Infrequently Asked Questions
WARNING: SPOILER ALERT:

These annotations explain the jokes in Infrequently Asked Questions for the uninitiated. It would be much more fun to discover for yourself why the answers are 'funny', but apparently some have misconstrued the IAQ as a real source of information. If you have no sense of humor and don't like to learn things on your own, feel free to read on :P.

Section 1 : Numbers and Symbols

Most of the answers in this section are playing with the way the reader and printer interact. In Lisp, the external syntax is not set in stone, and is very simple to change by mucking about with the *readtable*. So, while the empty list is usually written as () or the symbol NIL, it is trivial to modify the way lisp is read and printed to produce amusing results.

NIL being equal to 30477 is such a result. In base 36, the number decimal number 30477 would be written as NIL. Since lisp makes it easy to change the *print-base* and *read-base*, the character string "NIL", when read, may not in fact result in the empty list (traditionally NIL or ()), but rather a number!

Since reading/printing numbers in base 36 can use every letter of the alphabet, setfing these variables, rather than say let-binding them, can make it difficult to then change it back, as the string "(setf *read-base* 10)" will be read as the object (1325571 *READ-BASE* 36).

Because of how lisp quotes symbols, and due the the fact that the symbols exported from the COMMON LISP package are in uppercase, you'd have to use "(|SETF| *read-base* A)" or (|SETF| *read-base* 10.) to actually reset the *read-base*. Lispers find this sort of thing funny.

This code, from Pascal Bourguignon on comp.lang.lisp, illustrates the idea:

-(loop for *print-readably* in '(nil t)
-      do (format t "*print-readably* = ~S~%" *print-readably*)
-         (let ((*print-base* 36))
-           (format t "~{~A ~:* ~S ~:* ~W~%~}" '(nil #36rNIL))))
-<i>
-*print-readably* = NIL
-NIL |NIL| |NIL|
-NIL NIL NIL
-*print-readably* = |COMMON-LISP|::|T|
-NIL |COMMON-LISP|::|NIL| |COMMON-LISP|::|NIL|
-NIL 30477. 30477.
-</i>
-

By the way, if you really wanted to enter numbers in hexidecimal, there are reader macros for such things: #16rDEADBEEF or #xDEADBEEF (case insensible). Changing *read-base*, unless you know what you are doing, is not a good idea.

Section 2, Evaluation and functions

READ-FROM-STRING is one of the few functions in common lisp that takes two &optional and also &keyword arguments. Even experienced lispniks forget this, and scratch their heads at things like (READ-FROM-STRING "foobar" :START 3) returning "foobar". This is actually not an error, it's equivalent to (READ-FROM-STRING "foobar" T T). The joke is that (READ-FROM-STRING "foobar" :START 3 :START 3) actually kinda works as intended. hehehe.

Newbies often think they'd like to APPLY AND or OR, but AND and OR are macros, and it doesn't make much sense to apply macros. #'SOME and #'EVERY are the functions you are looking for. move along.

The AND and OR macros are 'short circuiting' in the sense that they do not evaluate the rest of the arguments once the condition has been reached. Thus, (AND NIL (NUKE-THE-WORLD)) does not cause thermonuclear Armageddon. The result is not funny, but the idea can show humorous attributes for certain lispers.

Some functions in CL, like SORT, are destructive. This basically means that lisp can choose to, should it so desire, modify the cons cells that make up the list you pass to it. This does not mean that it has to modify the list, nor does it mean that the place the list came from is modified (though due to the destructive nature of SORT, it can seem this way). (SETF foo (SORT foo)) is your friend. And, since forgetting about SORT has happened to me (Drew Crampsie) during a public demo, i don't find this joke funny at all.

LENGTH is specified to work on proper sequences, meaning no circular lists. It is most likely, and perfectly legal, that you'll throw your lisp into an infinite loop even trying this. LIST-LENGTH is specified to return NIL if the list is circular, and only works with LISTs.

As to which one is faster, this will probably vary by implementation and size of input data. Checking for circularity is likely not cheap, but the genericness of LIST could also be the bottleneck. Silly question, silly answer.

Section 3, Historical facts

This section is mostly poking fun at other Lisp FAQ's, especially the old c.l.l faq.

Section 4, ANSI standardization

This section intentionally left blank.

Section 5, Performance

In a compiled common lisp with support for tail call optimizations enabled, the code presented will compile down to an infinite loop. An infinite amount of time is certainly longer than running the code in a language without TCO (like, say, java) where the stack will blow up eventually, or in a language without recursion at all where the code is an error. For more information about TCO, have a look at this video: !!Con 2019- Tail Call Optimization: The Musical!! by Anjana Vakil & Natalia Margolis. - -
-


That's about all i've got. If somebody adds more IAQ's (which i think are great), i'll annotate them -- Drew Crampsie.


-Document Common Lisp
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Ant colony optimization.html b/clones/lisp/www.cliki.net/Ant colony optimization.html deleted file mode 100644 index 624c4921..00000000 --- a/clones/lisp/www.cliki.net/Ant colony optimization.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Ant colony optimization - - - - - - - -
Ant colony optimization
This ACO demo is an application written in Common Lisp (by Edi Weitz).
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Anthony Ventimiglia.html b/clones/lisp/www.cliki.net/Anthony Ventimiglia.html deleted file mode 100644 index 68b7013d..00000000 --- a/clones/lisp/www.cliki.net/Anthony Ventimiglia.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Anthony Ventimiglia - - - - - - - -
Anthony Ventimiglia
Anthony Ventimiglia is a Person who likes to think of himself as a Computer programmer. This basically means he does free-lance programming, trying (unsuccessfully) to do as little Web programming as possible.

Most of this dreaded web design is done in PHP, which is why he is developing clhp so he can use Lisp to develop the web sites he hates making.

With his fairly new found Lisp addiction, he is setting his long term goals to develop as much as possible in Lisp.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Antik.html b/clones/lisp/www.cliki.net/Antik.html deleted file mode 100644 index 4789ef4e..00000000 --- a/clones/lisp/www.cliki.net/Antik.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Antik - - - - - - - -
Antik
A library for computational mathematics, science, and engineering. It is named after the Antikythera Mechanism, one of the oldest known devices built and used for scientific computation.

Depends on: GSLL

Repository: https://gitlab.common-lisp.net/antik/antik

License: GPL3


-Units
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Antiweb.html b/clones/lisp/www.cliki.net/Antiweb.html deleted file mode 100644 index 84a9f86a..00000000 --- a/clones/lisp/www.cliki.net/Antiweb.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Antiweb - - - - - - - -
Antiweb
Antiweb is an event-based HTTP server that can support a high number of persistent connections in very small memory footprints. Antiweb is designed to support HTTP pipelining, uses vectored I/O operations to limit memory copying, and represents all data internally as UTF-8 even on non-Unicode supporting CL implementations. Unlike most other Common Lisp web servers, Antiweb features privilege-separated virtual hosts (with optional chroot support).

License: GPL3

Homepage: http://hoytech.com/antiweb/

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Apache 2.html b/clones/lisp/www.cliki.net/Apache 2.html deleted file mode 100644 index e486b0a6..00000000 --- a/clones/lisp/www.cliki.net/Apache 2.html +++ /dev/null @@ -1,252 +0,0 @@ - - - - - CLiki: Apache 2 - - - - - - - -
Apache 2
The 2.0 version of the Apache License is an OSI-compatible license.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Apple II archaeology.html b/clones/lisp/www.cliki.net/Apple II archaeology.html deleted file mode 100644 index f69239ec..00000000 --- a/clones/lisp/www.cliki.net/Apple II archaeology.html +++ /dev/null @@ -1,74 +0,0 @@ - - - - - CLiki: Apple II archaeology - - - - - - - -
Apple II archaeology
Apple II archaeology is a collection of Lisp code useful for Apple II retrocomputing.

Includes: -

    -
  • Basic 6502 disassembly -
  • -
  • Support for symbolic disassembly, including auto-generated labels, screen and high-bit ASCII text, and hex data dump sections. -
  • -
  • Code to deal with NIB binary disk images, extracting the de-nibblized data sectors. -
  • -
  • Code to deal with normalized Apple DOS 3.3 or ProDOS disk images, extracting various files from the DOS images. -
  • -
  • Code to de-tokenize binary format AppleSoft BASIC programs. -
  • -
  • Basic support to read Prodos images in DiskCopy 4.2 format -
  • -
  • Beginnings of a Lisp-syntax 6502 assembly language. -
  • -
  • Code to deal with non-standard format of Infocom games for the Apple II. -
  • -
  • Code to disassemble ZIL-language Infocom adventures. -
  • -
  • Example code using the disasm6502-oo code to disassemble the Super Saltine Transcopy program -
  • -

Homepage: http://josephoswald.nfshost.com/AppleII/summary.html

License: ???


-Topics: embedded machine code
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Application.html b/clones/lisp/www.cliki.net/Application.html deleted file mode 100644 index 1de13da3..00000000 --- a/clones/lisp/www.cliki.net/Application.html +++ /dev/null @@ -1,356 +0,0 @@ - - - - - CLiki: Application - - - - - - - -
Application
Applications suitable for (or at least, intended for) end-users

“Please don't assume Lisp is only useful for Animation and Graphics, AI, -Bioinformatics, B2B and Ecommerce, Data Mining, EDA/Semiconductor applications, Expert -Systems, Finance, Intelligent Agents, Knowledge Management, Mechanical CAD, Modeling and -Simulation, Natural Language, Optimization, Research, Risk Analysis, Scheduling, Telecom, -and Web Authoring just because these are the only things they happened to list.” -- Kent Pitman

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Apply-argv.html b/clones/lisp/www.cliki.net/Apply-argv.html deleted file mode 100644 index 820402d5..00000000 --- a/clones/lisp/www.cliki.net/Apply-argv.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Apply-argv - - - - - - - -
Apply-argv
Apply-argv is a lightweight command-line options parser library. It can be installed using Quicklisp.

Homepage

command-line options parser

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Araneida.html b/clones/lisp/www.cliki.net/Araneida.html deleted file mode 100644 index d098005f..00000000 --- a/clones/lisp/www.cliki.net/Araneida.html +++ /dev/null @@ -1,195 +0,0 @@ - - - - - CLiki: Araneida - - - - - - - -
Araneida
Araneida is a fairly small free extensible HTTP server for SBCL and many other Common Lisp implementations. CLiki is an Araneida application.

Araneida has not been under active development for a long time. Seems like hunchentoot is the prime web development framework in recent years.

Salient features -/ -

    -
  • Free - BSD Licence, sans-advertising-clause, but -for the modification that I'm not the Regents of the University of California -
  • -
  • Works with or without multiple threads (depending on the lisp implementation). In single-threaded mode, hooks into the event loop so that you still have the top-level available while it -listens for connections. -
  • -
  • Designed to sit behind a caching proxy; can write appropriate -bits of Apache config. -If this bothers you, pretend that mod_proxy is a typo for -mod_araneida. This includes playing nicely with SSL -
  • -
  • Understands HTTP/1.1 Host: header for multiple host support -
  • -
  • All content is dynamic and created by calling user-defined -handlers (there is a handler in there already that outputs -files, if you need it) -
  • -
  • Pattern-matching tree rewrite functions and HTML-from-sexpr generation makes balancing -tags suddenly trivially simple -
  • -
  • Runs on multiple Lisps. As of version 0.9, these are SBCL, CMUCL, OpenMCL, ABCL, CLisp, Allegro Common Lisp, and LispWorks. MCL is supported in CVS. This makes Araneida the most portable Common Lisp web server. -
  • -
-Note: SBCL and CMUCL are confirmed to work as of araneida-0.9-a3. The others -are believed to work, but are not currently in the test suite. Updates appreciated.

Alan Shields maintains a current Araneida linked here. Darcs repository -and (some) older versions available for download.

It is not currently active. Latest patch to source tree is from january 2006. Seems that hunchentoot stole the show from araneida.

Discussion about Araneida takes place in the lispweb mailing list.

-FWIW, to use SLIME to debug Araneida request handlers, I use :sigio
-and the following method:
-
-  (defmethod handle-request :around ((handler my-handler) request)
-    (if *debug*
-        (let ((*debugger-hook* 'swank:swank-debugger-hook))
-          (handler-bind ((error #'invoke-debugger))
-            (call-next-method)))
-        (call-next-method)))
-
-Because Araneida blocks any other serve-event handlers from running while it's handling a request, it doesn't mix well with :fd-handler if
-you try to invoke the SLIME debugger.
-

(from Thomas F. Burdick on comp.lang.lisp, article id xcv3c0p6nhn.fsf@conquest.OCF.Berkeley.EDU)

Also see this paste


Araneida was originally designed to run behind a reverse-proxying Apache server, and still works best have also found that the reverse works well. Here is my pound.cfg:

ListenHTTP      *,3580
-UrlGroup        "favicon"
-EndGroup
-UrlGroup        ".*"
-BackEnd         127.0.0.1,3500,1
-EndGroup

This filters out the silly favicon.ico requests which are inevitably a 404. It's possibly by using the UrlGroup regexp syntax to redirect requests for static content to an Apache on the same host as well. Though I haven't tested it, Pound does HTTPS too.


I (Dmitri Hrapof) have just finished rewriting web interface for my dictionary server (Geiriadur) from Python to CL (I should say now it's two times smaller, two times faster and infinitely more manageable :-) -As a result of this process I have two suggestions about Araneida + CLISP + Unicode.

First, remove the :external-format argument from listener-accept-stream in compat-clisp.lisp and make it look like:

-(defun listener-accept-stream (listener)
-  (socket:socket-accept (http-listener-socket listener)
-                        :buffered nil
-                        :element-type 'character))
-

The default format will be sufficient, and previously hard-coded iso-8859-1 doesn't permit use of UTF-8.

Second, make urlstring-unescape in url.lisp conditionally evaluated:

-#-(or unicode sb-unicode allegro)
-(defun urlstring-unescape (url-string)
-  (do* ((n 0 (+ n 1))
-        (out '()))
-      ((not (< n (length url-string))) (coerce (reverse out) 'string ))
-    (let ((c (elt url-string n)))
-      (setf out 
-            (cond ((eql c #\%)
-                   (progn (setf n (+ 2 n))
-                          (cons (code-char
-				 (or (parse-integer
-				      url-string :start (- n 1)
-				      :end (+ n 1)
-				      :junk-allowed t
-				      :radix 16) 32))
-                                out)))
-                  ((eql c #\+)
-                   (cons #\Space out))
-                  (t (cons c out)))))))
-
-#+clisp
-(defun baityvstroku (baity)
-  (ext:convert-string-from-bytes baity CUSTOM:*DEFAULT-FILE-ENCODING*))
-
-#+sb-unicode
-(defun baityvstroku (baity)
-  (sb-ext:octets-to-string (coerce baity '(vector (unsigned-byte 8)))))
-
-#+allegro
-(defun baityvstroku (baity)
-  (octets-to-string
-   (coerce baity '(array (unsigned-byte 8) (*))) :external-format :utf-8))
-
-#+(or unicode sb-unicode allegro)
-(defun urlstring-unescape (url-string)
-  (do* ((n 0 (+ n 1))
-        (out nil) (len (length url-string)))
-       ((not (< n len)) 
-	(baityvstroku (apply #'vector (nreverse out))))
-       (let ((c (elt url-string n)))
-	 (cond ((eql c #\%)
-		(progn 
-		  (setf n (+ 2 n))
-		  (if (< n len)
-		      (push (or (parse-integer
-				 url-string :start (- n 1)
-				 :end (+ n 1)
-				 :junk-allowed t
-				 :radix 16) 32)
-			    out))))
-	       ((eql c #\+)
-		(push (char-code #\Space) out))
-	       (t (push (char-code c) out))))))
-

Again, this change will allow use of UTF-8 (or any other encoding) in get and post parameters.


This is my third attempt at getting this into the hands of someone who knows! :)

The Araneida request class has a body for POST requests. read-request-from-stream parses the HTTP body into an assoc list with the following line (line 27, daemon.lisp):

(parsed-body (if body (parse-body body '(#\&) len) nil))

This is perfectly sane behaviour for x-www-form-urlencoded POST bodies (e.g. first=value&second=value). However, for all other bodies it is destructive and nonsensical as (particularly XML, which uses = for attributes). Unfortunately, I'm working with those other bodies e.g. application/rdf+xml.

My initial hack was to put in a simple test on the Content-Type header:

(parsed-body (if body
-                ;; Use member on the raw assoc list to make sure we catch requests
-                ;; with multiple Content-Types.
-			  (if (member "application/x-www-form-urlencoded"
-				      (cdr (assoc :content-type headers)) :test #'string=)
-			    (parse-body body '(#\&) len)
-			    body)
-			  nil))

i.e. only parse the body if we have form-encoded data; otherwise just use the body string (one could also url-unencode the body string). This split has the unfortunate side effect for that for some requests (request-body request) will return an assoc list, and for others a string. I don't know what consequences this would have on existing code. (stringp) is one remedy; another would be to provide body-data and body-parsed (or similar names) slots on request, rather than just body. I would think that if Araneida-based applications are using the parsed data (and it's valid/correct) then their clients must be sending the correct headers (e.g. wget sends x-www-form-urlencoded by default), so putting this check in wouldn't break anything, but I might be wrong.

Thoughts, anyone?

Well, both the parsed and uparsed bodies seem to be passed in as part of your request. Access the one you need. Although it woulud seem quite possible to invoke different parsing methods via a quick lookup and of the content-type in the header - which has already been parsed at this stage.


I (Arnaud Diederen) have been using Araneida to set up a webservice that receives XML requests (based on specs). -To parse the XML I'm using CXML, that accepts a byte stream.

Therefore, I hacked araneida a tad so it doesn't parse it's body content anymore but rather provides the byte stream instead of parsed data. I actually don't think it is be a bad idea to have an access to the raw stream. (Still, I built a set of tools to build 'helpers' on top of the request about (basically, the request's content-type defines what helper to build)).

.. but I keep wondering if I should go on using araneida to do that kind of work, or rather use another web server.

Arnaud Diederen, 12 July 2005


If you use Araneida with recent clisp (2.37), you may want to modify some behaviour to

    -
  • Make it correctly bind the local interface
  • -
  • Accept request while working with REPL (using readline)
  • -
  • Allow setting of length of queue of incoming tcp connections (backlog of listen)
  • -
-The proposed changes to functions defined in compat/compat.clisp are as follows:

-(defun convert-address (address)
-  "Convert IP address to string."
-  (etypecase address
-     (string address)
-     (vector (format nil "~{~d.~^~}" (map 'list #'identity address)))))
-
-(defparameter *default-backlog* 10)
-(defun host-make-listener-socket (address port)
-  (socket:socket-server port :backlog *default-backlog*
-                             :interface (convert-address address)))
-
-(defun host-serve-events-once (&optional block)
-  "one-shot duplicate of host-serve-events. Returns integer."
-  (aif (mapcar #'car *fd-handlers*)
-       (loop for i in *fd-handlers*
-             for j in (socket:socket-status it (if block nil 0))
-             do (if j
-                    (funcall (cdr i) (car i))))) 0)
-
-;  Uncomment this to handle connections while in repl
-; (setf readline:event-hook #'araneida::host-serve-events-once)
-

Few further notes:

    -
  • you can use either "127.0.0.1" and #(127 0 0 1) as :address parameter when -creating listener; araneida only passes it verbatim. THe vector form is more compatible with other implementations.
  • -
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Arduino Lisp.html b/clones/lisp/www.cliki.net/Arduino Lisp.html deleted file mode 100644 index 9e1a5d99..00000000 --- a/clones/lisp/www.cliki.net/Arduino Lisp.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Arduino Lisp - - - - - - - -
Arduino Lisp
Arduino Lisp is a compiler from a subset of Common Lisp to the subset of C++ used by the Arduino C++ compiler. It comes with all of the simple examples that come with the Arduino IDE translated to Lisp.

Homepage: http://sourceforge.net/projects/arduinolisp/develop

License: GPL

Read the project announcement.


-Topics: embedded arduino
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Arduino.html b/clones/lisp/www.cliki.net/Arduino.html deleted file mode 100644 index c7d575b9..00000000 --- a/clones/lisp/www.cliki.net/Arduino.html +++ /dev/null @@ -1,60 +0,0 @@ - - - - - CLiki: Arduino - - - - - - - -
Arduino
    -
  • -Arduino Lisp - - Arduino Lisp is a compiler from a subset of Common Lisp to the subset of C++ used by the Arduino C++ compiler -
  • -
  • -arduino-experiments - - arduino-experiments is a library for interfacing to the Arduino embedded computer via serial I/O from Lisp -
  • -
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Arnesi.html b/clones/lisp/www.cliki.net/Arnesi.html deleted file mode 100644 index a983222d..00000000 --- a/clones/lisp/www.cliki.net/Arnesi.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: arnesi - - - - - - - -
arnesi
arnesi is a collection of utilities written by Marco Baringer. It includes some ASDF-extensions.

The current long term maintenance branch of arnesi can be found at github This will be the future quicklisp version of arnesi and is where to report bugs.

Among many other things, arnesi provides pattern matching facilities: a fare-matcher style pattern matcher and "regular" list matcher. optima's CLiki page claims optima had superseded arnesi's pattern matcher.

Topic: continuations, utilities

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Artificial Intelligence.html b/clones/lisp/www.cliki.net/Artificial Intelligence.html deleted file mode 100644 index d68a7a72..00000000 --- a/clones/lisp/www.cliki.net/Artificial Intelligence.html +++ /dev/null @@ -1,72 +0,0 @@ - - - - - CLiki: Artificial Intelligence - - - - - - - -
Artificial Intelligence
See AI.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Artistic License.html b/clones/lisp/www.cliki.net/Artistic License.html deleted file mode 100644 index 5b2bd9af..00000000 --- a/clones/lisp/www.cliki.net/Artistic License.html +++ /dev/null @@ -1,76 +0,0 @@ - - - - - CLiki: Artistic License - - - - - - - -
Artistic License
A free software license. The OSI recommends that all developers and projects licensing their products with the Artistic License adopt Artistic License 2.0.

    -
  • -deeds - - Deeds is an Extensible Event Delivery System -
  • -
  • -Modularize - - Modularize is an attempt at providing a common interface to segregate major application components -
  • -
  • -parachute - - Parachute is a simple-to-use and extensible testing framework with compatibility layers to other test frameworks -
  • -
  • -pathname-utils - - This is a collection of common tests and operations to help handling pathnames -
  • -
  • -ubiquitous - - Ubiquitous is a very easy-to-use library for persistent configuration storage -
  • -
  • -Universal-Config - - This library tries to provide a layer for configuration files and storage that should be able to map any type of object to any configuration format and back -
  • -
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Ask Uncle Peter.html b/clones/lisp/www.cliki.net/Ask Uncle Peter.html deleted file mode 100644 index 5d2abbb2..00000000 --- a/clones/lisp/www.cliki.net/Ask Uncle Peter.html +++ /dev/null @@ -1,59 +0,0 @@ - - - - - CLiki: Ask Uncle Peter - - - - - - - -
Ask Uncle Peter
Please put your questions here.

It is a poor replacement for being on IRC, but at least I would be able to interact faster. (now only to stop myself pressing enter at the end of lines...)

Peter Van Eynde

Questions

Q Could you elaborate on the physics problem mentioned in the memoization page, the one you solved with a trick that reduced runtime from billions of years to 15 minutes? -- Paolo Amoroso - A It was a program to calculate the number of states in a QM system. You had to go over every particle, do some calculation that involved going over the same system, but with less particles. So for f(N) you would use f(M) with M < N. The way in which you had to go down with the number of particles is pretty complex, so there was no obvious way to reduce the complexity. The program could handle 50 particles in about 10 minutes of runtime, and the runtime would go up with a double or tripple exponential (T=A*exp(B*exp(N))) so calculating N=51 was already a problem. Using memoization on the function reduced runtime for N=51 to a fraction of a second, and what was even nicer was that the time became linear with the amount of particles, so N=51 would still take a fraction of a second. This enabled the program to calculate N=1000 in about 5 minutes. The FORTRAN program my friend had written still took 5 minutes or something for N=50, and could not be converted to use the memoization trick (no hashtables in FORTRAN). Extrapolating the data the program would have needed several million years to calculate N=1000. - This is a nice example how a 'slower language' can beat a 'faster language' with better compilers (CMUCL is nice, but no match for a good FORTRAN compiler) purely by being easier to try out new approaches. I had no idea that memoization would help so much. I just did a tree line change to the function and presto it became very clear that this was a good idea. The fact that I had made the function functional (just depending on the arguments) and the availiblity of hash-tables made this a fast change. FORTRAN would have needed several hundred lines and a re-write of the algorithm.

Q Why use a hash table at all if the indexes are dense? And if they are sparse, wouldn't it have been easier to implement a one-of hash table (at most about a page of code) than to switch to a different language?

A The program was in the Mathematica language. It is pretty Lisp-like (it has Head[] Tail[] etc). I 'converted' it to Lisp by replacing [] with () almost. After cleaning it up and converting it to a more it already became a lot faster (it had a few problems like consing up a list of states and then adding them together at the end instead of just adding the current state to the number of states found). Adding memoization was a question of seconds of work.

A Unicode: This became Unicode and Lisp

Q Why does Common Lisp Controller have to recompile all lisp libraries for all lisp dialects? It makes my crappy computer slower! - A With version 3 of Common Lisp Controller and adapted implementations this should no longer be a problem.

Q What is the difference between the cmucl-source package and the cmucl sources? - A The sources can self-compile. The cmucl-source package should, but I've not tested this. The cmucl-source packages just exists so people can do source-level debugging on cmucl and send in patches :-)

-That's not really what I meant Sir Slappy Pants (cons.org sources rebuild fine too). There's a 221kB patch difference between the upstream (cons.org) sources and the debian binaries, but (AFAIKT) no summary of what these patches do. I can guess some of this by reading the patches, but it would be nice to have it documented somewhere (for example: what kernel versions does the -lazy option work on nicely?). -- Eric Marsden -

A2 You can find the diffs split up here. Most of the high-security stuff nowadays is just compiling the system itself with (debug 3)...

Q What does it mean when Common-Lisp-Controller puts its compiled files in (/var/cache..) numbered directories instead of username directories? I've got two directories named 0 and 1000, with 1000 used as the current build. Also is there a website or place for the CLC project itself? I can't seem to find a relevant one. Thanks!

A - Previously, CLC used the part after "/home/...", which is not good, because multiple Users might share one home directory. This is especially the case when you use sudo, where the Home dir of the underlying user is still present. The problem is the following: CLC checks whether the cache directory is owned and only writable by the user that is currently trying to load code, because otherwise some evil person could preload your cache with evil FASLs that do evil things. If now two users share one home directory, they would also need to share one cache directory. Only one of them would be able to use CLC, because everything else would be insecure. - Since UIDs are the only way in Unix to have an unique distinction between users, CLC now places FASLs to /var/cache/common-lisp-controller/UID. Basically, your "0" directory contains the files that were compiled by "root", when installing CLC and CL implementations and "1000" contains files from your normal User. Please refer to the according changelog entry

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Assem.html b/clones/lisp/www.cliki.net/Assem.html deleted file mode 100644 index 81caf55a..00000000 --- a/clones/lisp/www.cliki.net/Assem.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Assem - - - - - - - -
Assem
Assem is an ISA-level code layer for Common Lisp.

Currently it features a somewhat-arch-independent ISA specification language, an assembler/disassembler on top of that, and a basic block splitter and grapher.

The only architecture all this works on, so far, is MIPS.

Repository: https://github.com/deepfire/assem

License: LGPL


-Topics: machine code
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Asteroid Wars.html b/clones/lisp/www.cliki.net/Asteroid Wars.html deleted file mode 100644 index 18069dfe..00000000 --- a/clones/lisp/www.cliki.net/Asteroid Wars.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Asteroid Wars - - - - - - - -
Asteroid Wars
Asteroid Wars is a remake of the classic space shooter game "asteroids", that originally came out in the arcades in 1979.

The objective of Asteroid Wars is to destroy asteroids and saucers. The player controls a triangular ship that can rotate left and right, fire shots straight forward, and thrust forward. Once the ship begins moving in a direction, it will continue in that direction without player intervention unless the player applies thrust in a different direction.

There is more information on its home page.

You can download the source from github.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Attila Lendvai.html b/clones/lisp/www.cliki.net/Attila Lendvai.html deleted file mode 100644 index 6b5133a3..00000000 --- a/clones/lisp/www.cliki.net/Attila Lendvai.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Attila Lendvai - - - - - - - -
Attila Lendvai
Yet another lisper reachable at google's big mail site under the name 'attila.lendvai'.

One of the cl-dwim guys.

A Person, presumably.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Audio.html b/clones/lisp/www.cliki.net/Audio.html deleted file mode 100644 index 6fa26420..00000000 --- a/clones/lisp/www.cliki.net/Audio.html +++ /dev/null @@ -1,144 +0,0 @@ - - - - - CLiki: audio - - - - - - - -
audio
Audio playing/recording/manipulation libraries and software. See music for musical arrangement and composition software.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/August S.Sigov.html b/clones/lisp/www.cliki.net/August S.Sigov.html deleted file mode 100644 index 0156362b..00000000 --- a/clones/lisp/www.cliki.net/August S.Sigov.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: August S.Sigov - - - - - - - -
August S.Sigov
August S.Sigov is a Person.

I am the shortest Latin sentence :). -Or actually a Common Lisp programmer, currently working for Jensen Technologies, St.-Petersbourg, Russia.

After around three years of working with Common Lisp, I found it a pain to program in any other language, including java and C++. Currently, I work with SBCL and ACL.

Resume (and photo) is here.


-
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Axiom.html b/clones/lisp/www.cliki.net/Axiom.html deleted file mode 100644 index 79cb4faf..00000000 --- a/clones/lisp/www.cliki.net/Axiom.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: axiom - - - - - - - -
axiom
Axiom is a general purpose Computer Algebra application. It is useful for doing general mathematics by computer and for research and development of mathematical algorithms. The Axiom Language provides a very high level way to express abstract mathematical concepts that are collected in the Axiom Library which defines over 1,000 strongly-typed mathematical domains and categories.
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Azamat S. Kalimoulline.html b/clones/lisp/www.cliki.net/Azamat S. Kalimoulline.html deleted file mode 100644 index 9455cb45..00000000 --- a/clones/lisp/www.cliki.net/Azamat S. Kalimoulline.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Azamat S. Kalimoulline - - - - - - - -
Azamat S. Kalimoulline
Azamat S. Kalimoulline is a Person

nickname: turtle

e-mail: turtle [at] bazon.ru

-

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/B-Tries.html b/clones/lisp/www.cliki.net/B-Tries.html deleted file mode 100644 index cf0a86f5..00000000 --- a/clones/lisp/www.cliki.net/B-Tries.html +++ /dev/null @@ -1,516 +0,0 @@ - - - - - CLiki: B-Tries - - - - - - - -
B-Tries
An implementation of the data structure described in the paper "B-tries for disk-based string management" (PDF). The authors present B-tries as a possible alternative to B-trees, the variants of which are used in database systems, most commonly B+ trees (also seen in NTFS); Oracle is said to use B* trees. This B-trie implementation, while far from being an Allegro Btrees killer, makes a decent starting point. In the interest of generality, both keys and values are (unsigned-byte 8) vectors rather than strings.

The code

Written by David Mullen and licensed under Apache 2.

;;; 8 KB blocks, four-byte pointers. -(defconstant +block-size+ 8192) -(defconstant +pointer-size+ 4) -(defconstant +header-size+ 8) -(defconstant +trie-tag+ 78) -(defconstant +bucket-tag+ 66) -(defconstant +trie-size+ 2048) -(defconstant +split-factor+ 3/4) -(defconstant +cache-size+ 128) - -;;; The B-trie STREAM/ARRAY-ELEMENT-TYPE. -(deftype octet () '(unsigned-byte 8)) - -(defstruct bt - (stream nil) - (blocks nil)) - -(defmethod print-object ((bt bt) stream) - (cond ((eq (bt-stream bt) nil) (call-next-method)) - ((let* ((bt-name (namestring (bt-stream bt))) - (length (file-length (bt-stream bt))) - (block-count (/ length +block-size+))) - (print-unreadable-object (bt stream :type t :identity t) - (format stream "~S (~D block~:P)" bt-name block-count)))))) - -(defun %open-bt (pathname) - (open pathname :direction :io - :if-does-not-exist :create - :if-exists :overwrite - :element-type 'octet)) - -(defun open-bt (pathname) - (let* ((bt (make-bt :stream (%open-bt pathname))) - (length (file-length (bt-stream bt)))) - (when (zerop length) (allocate-block bt +trie-tag+ +trie-size+)) - (assert (zerop (mod (file-length (bt-stream bt)) +block-size+))) - bt)) - -(defun close-bt (bt) - (setf (bt-blocks bt) nil) - (unless (eq (bt-stream bt) nil) - (with-accessors ((stream bt-stream)) bt - (prog1 (close stream) (setq stream nil))))) - -(defmacro %prune-cache (cache) - (let ((tail-pos (1- +cache-size+))) - `(when (> (list-length ,cache) +cache-size+) - (rplacd (nthcdr ,tail-pos ,cache) nil)))) - -(defun get-block (bt number) - (let ((entry (assoc number (bt-blocks bt))) entry-tail) - (cond (entry (with-accessors ((cache bt-blocks)) bt - (unless (eq entry (car cache)) - (loop for tail on cache - when (eq (cadr tail) entry) - do (setq entry-tail (cdr tail)) - (setf (cdr tail) (cddr tail))) - ;; Move to front of cache. - (rplacd entry-tail cache) - (setq cache entry-tail) - (%prune-cache cache)) - (cdr entry))) - ;; Not in cache, read from file. - (t (file-position (bt-stream bt) (* +block-size+ number)) - (let ((block (make-array +block-size+ :element-type 'octet))) - (assert (= (read-sequence block (bt-stream bt)) +block-size+)) - (progn (push (cons number block) (bt-blocks bt)) block)))))) - -(defun get-block-number (bt block) - (or (car (rassoc block (bt-blocks bt))) - (error "No block found: ~S." block))) - -(defun sync-block (bt block &optional number) - (let ((number (or number (get-block-number bt block)))) - (file-position (bt-stream bt) (* +block-size+ number)) - (values (write-sequence block (bt-stream bt)) number))) - -(defun make-cell-pointer (length offset) - (check-type length (unsigned-byte 16)) - (check-type offset (unsigned-byte 16)) - (logior length (ash offset 16))) - -(defun read-u32 (block offset) - (logior (aref block offset) - (ash (aref block (+ offset 1)) 8) - (ash (aref block (+ offset 2)) 16) - (ash (aref block (+ offset 3)) 24))) - -(defun (setf read-u32) (new-value block offset) - (loop for byte-position fixnum from 0 below 32 by 8 - for octet = (ldb (byte 8 byte-position) new-value) - do (setf (aref block offset) octet) (incf offset) - finally (return new-value))) - -(defun free-space (block) - (let ((free-pointer (read-u32 block 4))) - (values (ldb (byte 16 0) free-pointer) - (ldb (byte 16 16) free-pointer)))) - -(defsetf free-space (block) (free-space free-offset) - `(multiple-value-prog1 (values ,free-space ,free-offset) - (let ((pointer (make-cell-pointer ,free-space ,free-offset))) - (setf (read-u32 ,block +pointer-size+) pointer)))) - -(defun allocate-block (bt tag &optional (overhead 0)) - (let* ((word-count (/ +block-size+ +pointer-size+)) - (free-offset (+ +header-size+ overhead)) - (free-space (- +block-size+ free-offset)) - (stream (bt-stream bt)) - (file-length (file-length stream)) - (number (/ file-length +block-size+))) - (file-position stream (* +block-size+ number)) - (write-sequence (vector 84 tag 0 0) stream) - (write-byte (ldb (byte 8 0) free-space) stream) - (write-byte (ldb (byte 8 8) free-space) stream) - (write-byte (ldb (byte 8 0) free-offset) stream) - (write-byte (ldb (byte 8 8) free-offset) stream) - (loop do (write-sequence #(0 0 0 0) stream) - repeat (- word-count (/ +header-size+ +pointer-size+)) - finally (return (values (get-block bt number) number))))) - -(defun allocate-cell (block vector &optional (length (length vector))) - (multiple-value-bind (free-space free-offset) (free-space block) - (declare (type (unsigned-byte 16) free-space free-offset)) - (assert (>= free-space (+ length +pointer-size+))) - (let* ((datum-end (+ free-offset free-space)) - (datum-start (- datum-end length))) - (declare (type (unsigned-byte 16) datum-start datum-end)) - (decf free-space (the (unsigned-byte 16) (+ length +pointer-size+))) - (when vector (setf (subseq block datum-start datum-end) vector)) - (let ((datum-pointer (make-cell-pointer length datum-start))) - (setf (read-u32 block free-offset) datum-pointer) - (incf free-offset +pointer-size+) ; The cell is now "used." - (let ((free-pointer (make-cell-pointer free-space free-offset))) - (setf (read-u32 block +pointer-size+) free-pointer) datum-pointer))))) - -(defun trie-node-lookup (block key key-start) - (let* ((key-index (aref key key-start)) - (offset (+ +header-size+ (* 2 +pointer-size+ key-index))) - (exhaust-pointer-p (eql (1+ key-start) (length key)))) - (declare (type (unsigned-byte 16) key-index offset)) - (when exhaust-pointer-p (incf offset +pointer-size+)) - (values (read-u32 block offset) key-index exhaust-pointer-p))) - -(defun get-datum (block cell-pointer) - (when (zerop cell-pointer) (return-from get-datum nil)) - (make-array (ldb (byte 16 0) cell-pointer) :element-type 'octet - :displaced-index-offset (ldb (byte 16 16) cell-pointer) - :displaced-to block)) - -(defun bucket-cell-count (bucket) - (let* ((free-offset (nth-value 1 (free-space bucket))) - (cell-count-in-bytes (- free-offset +header-size+)) - (cell-count (/ cell-count-in-bytes +pointer-size+))) - (declare (type (unsigned-byte 16) free-offset cell-count-in-bytes)) - (progn (assert (evenp cell-count)) cell-count))) - -(defun get-bucket-cell (bucket cell-number) - (let ((offset-from-header (* +pointer-size+ cell-number))) - (get-datum bucket (read-u32 bucket (+ +header-size+ - offset-from-header))))) - -(defun block-type (block &optional (tag (aref block 1))) - (let ((known-tag-p (or (eql tag +trie-tag+) (eql tag +bucket-tag+)))) - (progn (assert known-tag-p () "Invalid type tag: ~D." tag) tag))) - -(defun key-range (bucket) - "Get key range (values: low, high)." - (let ((lo-key-byte (aref bucket 2)) - (hi-key-byte (aref bucket 3))) - (check-type lo-key-byte octet) - (check-type hi-key-byte octet) - (assert (<= lo-key-byte hi-key-byte)) - (values lo-key-byte hi-key-byte))) - -(defsetf key-range (bucket) (lo-key-byte hi-key-byte) - `(set-key-range ,bucket ,lo-key-byte ,hi-key-byte)) - -(defun set-key-range (bucket lo-key-byte hi-key-byte) - (multiple-value-prog1 (values lo-key-byte hi-key-byte) - (assert (<= 0 lo-key-byte hi-key-byte 255)) - (let ((was-hybrid-p (hybrid-bucket-p bucket)) - (now-pure-p (eql (setf (aref bucket 2) lo-key-byte) - (setf (aref bucket 3) hi-key-byte)))) - ;; Going hybrid->pure consumes keys. - (when (and was-hybrid-p now-pure-p) - (loop with pure-bucket-key-index of-type octet = lo-key-byte - with cell-count of-type fixnum = (bucket-cell-count bucket) - for cell-number of-type fixnum from 0 below cell-count by 2 - for offset fixnum = (+ +header-size+ (* +pointer-size+ cell-number)) - for pointer of-type (unsigned-byte 32) = (read-u32 bucket offset) - do (symbol-macrolet ((pointer-offset (ldb (byte 16 16) pointer))) - (assert (eql (aref bucket pointer-offset) pure-bucket-key-index)) - (progn (incf pointer-offset) (decf (ldb (byte 16 0) pointer))) - (setf (read-u32 bucket offset) pointer))))))) - -(defun find-in-bucket (bucket key &optional (key-start 0)) - (when (pure-bucket-p bucket) (setq key-start (1+ key-start))) - (loop with cell-count fixnum = (bucket-cell-count bucket) - for cell-number fixnum from 0 below cell-count by 2 - do (let ((key-in-bucket (get-bucket-cell bucket cell-number))) - (when (not (mismatch key-in-bucket key :start2 key-start)) - (return (get-bucket-cell bucket (1+ cell-number))))))) - -(defun trie-node-p (block) - (eql (block-type block) - +trie-tag+)) - -(defun pure-bucket-p (block) - (symbol-macrolet ((key-range (key-range block))) - (when (eql (block-type block) +bucket-tag+) - (multiple-value-call #'= key-range)))) - -(defun hybrid-bucket-p (block) - (symbol-macrolet ((key-range (key-range block))) - (when (eql (block-type block) +bucket-tag+) - (multiple-value-call #'< key-range)))) - -(defun cell-space (&rest vectors) - (loop for vector in vectors - sum (length vector) - sum +pointer-size+)) - -(defun bucket-key-distribution (bucket) - (loop with counts = (make-array 256 :initial-element 0) - with cell-count fixnum = (bucket-cell-count bucket) - for cell-number fixnum from 0 below cell-count by 2 - for key-in-bucket = (get-bucket-cell bucket cell-number) - do (incf (svref counts (aref key-in-bucket 0))) - finally (return counts))) - -(defun find-split-point (bucket) - (multiple-value-bind (lo hi) (key-range bucket) - (loop with best-split-point of-type octet = hi - with key-distribution = (bucket-key-distribution bucket) - with distincts fixnum = (count-if #'plusp key-distribution) - with best-split-margin of-type fixnum = most-positive-fixnum - initially (when (eql distincts 1) (return key-distribution)) - for split-point of-type octet from lo to hi - for left-count = (reduce #'+ key-distribution :end split-point) - for right-count = (reduce #'+ key-distribution :start split-point) - for ratio = (when (plusp left-count) (/ right-count left-count)) - for split-margin = (when ratio (abs (- ratio +split-factor+))) - when (and split-margin (> right-count 0) (< split-margin best-split-margin)) - do (setq best-split-margin split-margin best-split-point split-point) - finally (return best-split-point)))) - -(defun move-bucket-cells (old-bucket new-bucket split-point) - (assert (< 0 split-point 256) (split-point) "Bad SPLIT-POINT.") - (symbol-macrolet ((free-space (- +block-size+ +header-size+))) - (loop with cell-count of-type fixnum = (bucket-cell-count old-bucket) - for cell-number of-type fixnum from 0 below cell-count by 2 - for key = (copy-seq (get-bucket-cell old-bucket cell-number)) - for value = (copy-seq (get-bucket-cell old-bucket (1+ cell-number))) - if (< (aref key 0) split-point) append `(,key ,value) into retained-cells - else do (allocate-cell new-bucket key) (allocate-cell new-bucket value) - finally (setf (free-space old-bucket) (values free-space +header-size+)) - (dolist (datum retained-cells) (allocate-cell old-bucket datum)) - (multiple-value-bind (old-lo old-hi) (key-range old-bucket) - (setf (key-range new-bucket) (values split-point old-hi)) - (setf (key-range old-bucket) (values old-lo (1- split-point))) - (return split-point))))) - -(defun purify-bucket (bt bucket trie-node key-distribution) - (let ((key-leader (position-if #'plusp key-distribution))) - (loop for bucket-number = (get-block-number bt bucket) - for i of-type octet from 0 to 255 - ;; We have to undo the work that was done by ENGULF-POINTERS. - do (symbol-macrolet ((pointer (trie-pointer trie-node i))) - (when (and (/= i key-leader) (eql pointer bucket-number)) - (setq pointer 0))) - ;; Now there is only one pointer to this bucket. - finally (set-key-range bucket key-leader key-leader) - (sync-block bt bucket) (sync-block bt trie-node) - (return (split-pure-bucket bt bucket trie-node))))) - -(defun split-hybrid-bucket (bt bucket trie-node) - (let ((bucket-split-point (find-split-point bucket))) - (cond ((typep bucket-split-point 'simple-vector) - (purify-bucket bt bucket trie-node bucket-split-point)) - ((multiple-value-bind (new-bucket new-bucket-number) - (allocate-block bt +bucket-tag+) - (move-bucket-cells bucket new-bucket bucket-split-point) - (multiple-value-bind (new-lo new-hi) (key-range new-bucket) - (loop for i of-type octet from new-lo to new-hi - do (setf (trie-pointer trie-node i) new-bucket-number) - finally (sync-block bt bucket) (sync-block bt new-bucket)))))))) - -(defun delete-bucket-cell (bucket cell-number) - (multiple-value-bind (free-space free-offset) (free-space bucket) - (let ((cell-offset (+ +header-size+ (* +pointer-size+ cell-number)))) - (replace bucket bucket - :start1 cell-offset :end1 (- free-offset +pointer-size+) - :start2 (+ cell-offset +pointer-size+) :end2 free-offset) - ;; Free the space that was occupied by the pointer. - ;; The actual data may remain until there's a split. - (setf (free-space bucket) - (values (+ free-space +pointer-size+) - (- free-offset +pointer-size+)))))) - -(defun trie-pointer (trie-node key-index) - (let ((offset-from-header (* 8 key-index))) - (read-u32 trie-node (+ +header-size+ - offset-from-header)))) - -(defun (setf trie-pointer) (trie-pointer trie-node key-index) - (setf (read-u32 trie-node (+ +header-size+ (* 8 key-index))) - trie-pointer)) - -(defun exhaust-pointer (trie-node key-index) - (let ((base (+ +header-size+ (* 8 key-index)))) - (read-u32 trie-node (+ base +pointer-size+)))) - -(defun (setf exhaust-pointer) (exhaust-pointer trie-node key-index) - (let ((offset (+ +header-size+ (* 8 key-index) +pointer-size+))) - (setf (read-u32 trie-node offset) exhaust-pointer))) - -(defun hoist-exhaustible-keys (bucket trie-node) - "Transfer one-byte keys from BUCKET to the parent TRIE-NODE." - (loop with cell-count fixnum = (bucket-cell-count bucket) - with cell-number of-type (unsigned-byte 16) = 0 - while (< cell-number cell-count) - do (let* ((key-in-bucket (get-bucket-cell bucket cell-number)) - (exhaustible-key-p (eql (length key-in-bucket) 1)) - (leading-key-byte (aref key-in-bucket 0))) - ;; If it's a multi-byte key then skip over the pair. - (cond ((not exhaustible-key-p) (incf cell-number 2)) - ((let ((value (get-bucket-cell bucket (1+ cell-number)))) - (setf (exhaust-pointer trie-node leading-key-byte) - (allocate-cell trie-node value)) - ;; After deleting the key, the - ;; value has the same CELL-NUMBER. - (delete-bucket-cell bucket cell-number) - (delete-bucket-cell bucket cell-number) - (decf cell-count 2))))))) - -(defun hybridize-bucket (bt bucket) - "BUCKET will cover the full range of keys under a new TRIE-NODE." - (loop with trie-node = (allocate-block bt +trie-tag+ +trie-size+) - with bucket-number = (get-block-number bt bucket) - with pure-bucket-key-index = (key-range bucket) - for i of-type octet from 0 to 255 - do (setf (trie-pointer trie-node i) bucket-number) - finally (setf (key-range bucket) (values 0 255)) - (hoist-exhaustible-keys bucket trie-node) - (sync-block bt bucket bucket-number) - (return (values (sync-block bt trie-node) - pure-bucket-key-index)))) - -(defun split-pure-bucket (bt bucket parent-node) - (multiple-value-bind (child-node key-index) (hybridize-bucket bt bucket) - (progn (split-hybrid-bucket bt bucket child-node) (sync-block bt child-node)) - (setf (trie-pointer parent-node key-index) (get-block-number bt child-node)))) - -(defun engulf-pointers (trie-node block-pointer key-index) - (setf (trie-pointer trie-node key-index) block-pointer) - (let ((lo-key-index key-index) (hi-key-index key-index)) - (declare (type octet lo-key-index hi-key-index)) - ;; Set adjacent null pointers (to the right). - (loop while (< hi-key-index 255) - while (zerop (trie-pointer trie-node (1+ hi-key-index))) - do (setf (trie-pointer trie-node (incf hi-key-index)) - block-pointer)) - ;; Same thing, but to the left. - (loop while (> lo-key-index 0) - finally (return (values lo-key-index hi-key-index)) - while (zerop (trie-pointer trie-node (1- lo-key-index))) - do (setf (trie-pointer trie-node (decf lo-key-index)) - block-pointer)))) - -(defun make-bucket (bt parent-node key-index) - (let* ((bucket (allocate-block bt +bucket-tag+)) - (number (get-block-number bt bucket))) - (multiple-value-bind (lo-key-index hi-key-index) - (engulf-pointers parent-node number key-index) - (set-key-range bucket lo-key-index hi-key-index) - (sync-block bt parent-node) - (sync-block bt bucket)))) - -(defmacro %add-to-bucket (key value split-function-name) - (let ((total-required-space `(cell-space ,key ,value))) - `(cond ((> ,total-required-space (free-space next-block)) - ;; Split the bucket and retry the insertion. - (,split-function-name bt next-block block) - ;; Update trie node. - (sync-block bt block)) - ;; There's space for KEY and VALUE. - (t (allocate-cell next-block ,key) - (allocate-cell next-block ,value) - (sync-block bt next-block) - (return next-block))))) - -(defun add-to-trie (bt block key value &optional (key-start 0)) - (loop (multiple-value-bind (pointer key-index exhaust-pointer-p) - (trie-node-lookup block key key-start) - (let (next-block) - (cond (exhaust-pointer-p - (let ((cell-pointer (allocate-cell block value))) - (setf (exhaust-pointer block key-index) cell-pointer) - (return (sync-block bt block)))) - ((zerop pointer) (make-bucket bt block key-index)) - ((pure-bucket-p (setq next-block (get-block bt pointer))) - (let ((partially-consumed-key (subseq key (1+ key-start)))) - (%add-to-bucket partially-consumed-key value split-pure-bucket))) - ((hybrid-bucket-p next-block) - (let ((partially-consumed-key (subseq key key-start))) - (%add-to-bucket partially-consumed-key value split-hybrid-bucket))) - ((trie-node-p next-block) (setq block next-block) (incf key-start)) - ((error "Failed to acquire bucket: ~S, ~S in ~S." key value bt))))))) - -(defun fetch (key bt) - (let ((root (get-block bt 0))) - (find-in-trie bt root key))) - -(defun find-in-trie (bt block key &optional (key-start 0)) - (loop (multiple-value-bind (pointer key-index exhaust-pointer-p) - (trie-node-lookup block key key-start) - (declare (ignore key-index)) - (let (next-block) - (cond ((zerop pointer) (return nil)) - (exhaust-pointer-p (return (get-datum block pointer))) - ((trie-node-p (setq next-block (get-block bt pointer))) - (setq block next-block key-start (1+ key-start))) - ((return (find-in-bucket next-block key key-start)))))))) - -(defun (setf fetch) (value key bt) - (symbol-macrolet ((root (get-block bt 0))) - (add-to-trie bt root key value) value))

The strategy

    -
  • The paper has tagged pointers, but this implementation only has a type code in the block itself. There are two kinds of blocks: trie nodes (that is, inner nodes) and buckets (i.e. leaf nodes). Buckets are further classed as pure or hybrid. Much of the complexity is in the transition between hybrid and pure (see the hybridize-bucket and purify-bucket functions). Buckets are split when they're full, which is conceptually parallel to B+ trees. But in a B+ tree, any block (including the root) may split, whereas in a B-trie, the root node is a trie node, and trie nodes don't split—only buckets do. -
  • -
  • There are two kinds of pointers used in the B-trie: block pointers and cell pointers. Both kinds are 32 bits. A cell pointer is a length/offset pair (with the length being the low 16 bits, and the offset within the block as the high 16 bits). They're comparable to line pointers in PostgreSQL. A block pointer is just the number of the block (with the root node being zero). -
  • -
-

Quick demo

A B-trie file, words.bt, has been created from a Linux words file, which contains 45,402 words (in S-expression format: see words.sxp). The B-trie maps each lower- and mixed-case word to its uppercase equivalent (by string-upcase). It's a silly test, but an easy one to run, since we can verify that each key/value pair is correctly stored in the B-trie.

? (open-bt "words.bt") -#<BT "words.bt" (267 blocks) #x21005BB92D> -? (defvar *words* *) -*WORDS*

This B-trie is 267 blocks—or 2.08 MB, about half of which is free space. To consult the dictionary we'll need a pair of functions to convert between octet vectors and ASCII strings:

(defun ascii-octets (string) - (loop initially (unless string (return nil)) - with length fixnum = (length string) - with vector = (make-array length :element-type 'octet) - for i fixnum below length for char of-type character = (char string i) - for char-code of-type (integer 0 (#.char-code-limit)) = (char-code char) - unless (typep char-code 'octet) do (error "~S isn't 8-bit ASCII." char) - do (setf (aref vector i) char-code) finally (return vector))) - -(defun octets-ascii (vector) - (loop initially (unless vector (return nil)) - with length fixnum = (length vector) - with string = (make-string length) - for i fixnum from 0 below length - for char-code = (aref vector i) - for char = (code-char char-code) - do (setf (char string i) char) - finally (return string)))

Then we can see that silverware is correctly mapped to SILVERWARE:

? (fetch (ascii-octets "silverware") *words*) -#(83 73 76 86 69 82 87 65 82 69) -? (octets-ascii *) -"SILVERWARE"

Ideas for expansion

-
-persistence
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/BASIC.html b/clones/lisp/www.cliki.net/BASIC.html deleted file mode 100644 index 9a5c34aa..00000000 --- a/clones/lisp/www.cliki.net/BASIC.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: BASIC - - - - - - - -
BASIC
A Quick, Dirty and Ugly Basic programming language interpreter.

This is a silly BASIC interpreter.

The lines are tokenized and stored as-is in an array indexed by the line number. When interpreting the program, the instructions are parsed directly from there ; the expressions are parsed into trees which are then evaluated.

The variables are stored into a hash table indexed by their identifier (symbol). Undefined variables are taken as 0 or "".

We distinguish number and string variables depending on the presence of a '$' character in the last position of the variable identifier.

Variables are reset by the command RUN. (A program can be restarted without losing the variable using the GOTO or GOSUB statements). Commands are not distinguished from statements and may occur in a program. In particular, LOAD could be used to load a subprogram overlay, and takes a line number where to jump to.

Programs are loaded and saved in source form.

Homepage: http://informatimago.com/develop/lisp/small-cl-pgms/basic/

License: GPL

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/BIND.html b/clones/lisp/www.cliki.net/BIND.html deleted file mode 100644 index ee3696be..00000000 --- a/clones/lisp/www.cliki.net/BIND.html +++ /dev/null @@ -1,80 +0,0 @@ - - - - - CLiki: bind - - - - - - - -
bind
Bind combines let*, destructuring-bind and multiple-value-bind into a single form. Simple bindings are as in let*. Destructuring is done if the first item in a binding is a list. Multiple value binding is done if the first item in a binding is a list and the first item in the list is 'values'. More information about bind can be found on common-lisp.net.

An example is probably the best way to describe its syntax: -

-(bind ((a 2)
-       ((b &rest args &key (c 2) &allow-other-keys) '(:a :c 5 :d 10 :e 54))
-       ((:values d e) (truncate 4.5)))
-  (list a b c d e args))
-==> (2 :A 5 4 0.5 (:C 5 :D 10 :E 54))
-
-Bind is especially handy when you have more than one layer of -multiple-value-bind or destructuring-bind. Since bind is a single form, -you don't end up too far off to the right in editor land.

Bind works by parsing the bindings and rewriting them as nested -let, multiple-value-bind and destructuring-bind forms. Bind handles -declarations correctly -- putting each at the appropriate level.

Bind is released under the MIT license. The most recent version (as of 1 October 2005) reflects this explicitly.

I like bind because it (a). presents a uniform means of three of CL's most typical binding constructs and (b). because you don't have to worry about nesting! I like the more explicit syntax with "values" because it makes it clear what it is doing and is analogous to something like (setf (values a b) (foo)).

Bind was written by Gary King.

An alternative syntax -- which bind does not support -- that doesn't rely on explicitly saying "values" is: -

-(bind ((d e (truncate 4.5)))
-  (list d e))
-=>
-(4 0.5)
-
-Implementation-wise, what it's doing is using the last item in the -list, (truncate 4.5), as the form to evaluate. Then the first item, d, -gets the primary value, and each item in between gets one of the -other values; in this case, that's just e.

This is particularly nice because it makes it possible to combine -multiple-value binding and destructuring binding. For example:

-(bind (((this &rest that) the-other (values (list 1 2 3 4) 5)))
-  (list this that the-other))
-=>
-(1 (2 3 4) 5)
-

See also: X.LET-STAR WITH macro -pattern matching utilities

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/BITMOP.html b/clones/lisp/www.cliki.net/BITMOP.html deleted file mode 100644 index b5a94a51..00000000 --- a/clones/lisp/www.cliki.net/BITMOP.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: BITMOP - - - - - - - -
BITMOP
BITMOP is a DSL for definition and manipulation of register sets, registers, bitfields and bitfield values, all of which are first-class objects.

Source repository: https://github.com/deepfire/bitmop

License: LGPL


-Topics: machine code
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/BRL.html b/clones/lisp/www.cliki.net/BRL.html deleted file mode 100644 index 894c90cd..00000000 --- a/clones/lisp/www.cliki.net/BRL.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: BRL - - - - - - - -
BRL
BRL is a language designed for server-side Web applications, particularly database applications. It is essentially Scheme with some simple syntax extensions, plus a lot of procedures/syntax to make web/database programming very easy.

It's implemented as a Java servlet using Kawa Scheme for run-time page compilation. (It's a template engine like PHP or JSP.) Pages are recompiled when modified; it's very easy to develop with.

Read all about it at brl.sourceforge.net

[Isn't CLiki supposed to list only Common Lisp resources?]

Yes, but I think it said "Lisp" when I first put this in here. I'm removing the link from "web resources" but won't erase everything on the page in case someone links to this.

Daniel Lowe took the syntax idea (without the web server framework) over to a Common Lisp library he -named Stencl.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/BSD LICENSE.html b/clones/lisp/www.cliki.net/BSD LICENSE.html deleted file mode 100644 index 3c87c727..00000000 --- a/clones/lisp/www.cliki.net/BSD LICENSE.html +++ /dev/null @@ -1,78 +0,0 @@ - - - - - CLiki: BSD license - - - - - - - -
BSD license
From the Debian DFSG site:

This is a sample of a BSD style license. -
-Copyright (c) 2000
-All rights reserved.

Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions -are met: -

    -
  1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. -
  2. -
  3. Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. -
  4. -
  5. The name of the author may not be used to endorse or promote products - derived from this software without specific prior written permission. -
  6. -
-THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR -IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES -OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. -IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, -INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT -NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF -THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/BSD License.html b/clones/lisp/www.cliki.net/BSD License.html deleted file mode 100644 index 3c87c727..00000000 --- a/clones/lisp/www.cliki.net/BSD License.html +++ /dev/null @@ -1,78 +0,0 @@ - - - - - CLiki: BSD license - - - - - - - -
BSD license
From the Debian DFSG site:

This is a sample of a BSD style license. -
-Copyright (c) 2000
-All rights reserved.

Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions -are met: -

    -
  1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. -
  2. -
  3. Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. -
  4. -
  5. The name of the author may not be used to endorse or promote products - derived from this software without specific prior written permission. -
  6. -
-THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR -IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES -OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. -IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, -INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT -NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF -THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/BSD license.html b/clones/lisp/www.cliki.net/BSD license.html deleted file mode 100644 index 3c87c727..00000000 --- a/clones/lisp/www.cliki.net/BSD license.html +++ /dev/null @@ -1,78 +0,0 @@ - - - - - CLiki: BSD license - - - - - - - -
BSD license
From the Debian DFSG site:

This is a sample of a BSD style license. -
-Copyright (c) 2000
-All rights reserved.

Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions -are met: -

    -
  1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. -
  2. -
  3. Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. -
  4. -
  5. The name of the author may not be used to endorse or promote products - derived from this software without specific prior written permission. -
  6. -
-THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR -IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES -OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. -IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, -INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT -NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF -THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/BSD sockets.html b/clones/lisp/www.cliki.net/BSD sockets.html deleted file mode 100644 index 9ac23902..00000000 --- a/clones/lisp/www.cliki.net/BSD sockets.html +++ /dev/null @@ -1,60 +0,0 @@ - - - - - CLiki: BSD sockets - - - - - - - -
BSD sockets
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/BSD.html b/clones/lisp/www.cliki.net/BSD.html deleted file mode 100644 index 93b908b5..00000000 --- a/clones/lisp/www.cliki.net/BSD.html +++ /dev/null @@ -1,564 +0,0 @@ - - - - - CLiki: BSD - - - - - - - -
BSD
BSD (the Berkeley System Distribution) is a variant of UNIX which was designed at the University of California Berkeley. Since the original BSD, there has been at least four or five open source projects which have been grown out of the BSD tree.

FreeBSD is possibly the most famous. It runs Yahoo! and several others and has many of the top uptimes as measured by NetCraft. Its general focus is to be the best, most stable OS for the Intel platform.

OpenBSD is designed to be as secure as possible while maintaining support for multiple architectures, such as Sparc, Sparc64, Intel, IBM PowerPC, and many others.

NetBSD is the oldest BSD variant. Its focus can be summed up by the NetBSD motto: Of course it runs NetBSD! The NetBSD OS runs on about 50+ architectures and counting, from VAXes to Playstations to Dreamcasts and so many others.

Dragonfly BSD is the newest project, and is designed as a way to build on the current FreeBSD 4.9 source tree without the radical and revolutionary changes introduced into FreeBSD 5.0.

BSD License Software

    -
  • -adler32 - - Adler-32 is a hash algorithm like CRC-32, except that it is much faster and carries a slightly higher probability of collisions -
  • -
  • -ALIW - - A Lisp in Wonderland (ALIW) is a wiki software written in Common Lisp, to ease the collaboration on editable web pages -
  • -
  • -ARC4 - - A Common Lisp implementation of ARC4 (trademark: RC4), a stream cipher, can be found below -
  • -
  • -archive - - ARCHIVE is a library for reading an writing disk-based file archives such as those generated by the 'tar' and 'cpio' programs on Unix -
  • -
  • -arduino-experiments - - arduino-experiments is a library for interfacing to the Arduino embedded computer via serial I/O from Lisp -
  • -
  • -avl-tree - - AVL (Adelson-Velsky-Landis) Tree is a self-balancing binary search tree implementation in Common Lisp -
  • -
  • -binascii - - binascii is a binary format library for converting binary data to ASCII -
  • -
  • -bpm2 - - bpm2 is a pattern matching language originally designed for doing code transformation [ie, writing compilers] -
  • -
  • -cffi-clutter - - cffi-clutter is a set of bindings to the Clutter GUI toolkit -
  • -
  • -cffi-j - - cffi-j is a set of CFFI bindings for the J programming language (libj.so library) -
  • -
  • -cffi-redland - - cffi-redland is a set of bindings for the Redland RDF Library -
  • -
  • -cffi-stfl - - cffi-stfl is a set of bindings for STFL (Structured Terminal Forms Language/Library), a curses-based widget set for text terminals -
  • -
  • -ch-util - - Cyrus Harmon's CL utilities -
  • -
  • -cl-azure - - cl-azure lets you access Microsoft Windows Azure cloud storage from Common Lisp -
  • -
  • -cl-blapack - - A wrapper around the Fortran BLAS and LAPACK libraries for dense linear algebra -
  • -
  • -cl-blog-generator - - cl-blog-generator is a static blog generator with Atom feeds -
  • -
  • -cl-comfy-arm - - cl-comfy-arm is an implementation by JosephOswald of Henry Baker's COMFY assembler for the ARM architecture -
  • -
  • -cl-covid19 - - The cl-covid19 system provides APIs for exploring and reviewing COVID-19 -
  • -
  • -cl-crc64 - - cl-crc64 implements 64 bit cyclic redundancy checks in Common Lisp -
  • -
  • -CL-DTYPE - - CL-DTYPE is a Common Lisp library implementing the DType networking protocol, introduced by MIT Media Labs -
  • -
  • -cl-echonest - - cl-echonest is a binding to the echonest.com web API -
  • -
  • -cl-facebook - - cl-facebook is an interface to the Facebook web API -
  • -
  • -cl-fad - - CL-FAD is a portable pathname library based on code from Peter Seibel's book Practical Common Lisp, providing a way to work with files and directories -
  • -
  • -cl-fltk - - cl-fltk is a set of CFFI bindings to the FLTK GUI toolkit -
  • -
  • -cl-fu - - CFFI library for NCURSES -
  • -
  • -cl-gd - - CL-GD is a library enabling CL implementations to use the GD graphics library via UFFI -
  • -
  • -cl-gdata - - cl-gdata is an API to access the Google GData API's from Common Lisp -
  • -
  • -cl-geometry - - cl-geometry is a Common Lisp package for simple two dimensional computational geometry -
  • -
  • -CL-GODB - - CL-GODB is an interface to the Gene Ontology Database -
  • -
  • -cl-jpeg - - CL-JPEG (Common Lisp JPEG Library) can compress and decompress raster-images to/from the JPEG image file format -
  • -
  • -cl-kappa - - cl-kappa is a general purpose web agent in the spirit of WWW::Mechanize -
  • -
  • -cl-l10n - - cl-l10n is a portable library for handling program localization -
  • -
  • -cl-ledger - - CL-Ledger is a powerful, double-entry accounting system for Common Lisp -
  • -
  • -cl-mechanize - - cl-mechanize is a port of the WWW::Mechanize Perl module for stateful programmatic web browsing, used for automating interaction with websites -
  • -
  • -cl-migratum - - Database schema migration system for Common Lisp -
  • -
  • -cl-mongrel2 - - cl-mongrel2 is an interface to the mongrel2 web-server -
  • -
  • -CL-ObjC - - CL-OBJC is a portable common-lisp/objective-c bridge written using CFFI -
  • -
  • -cl-opencalais - - cl-opencalais is a wrapper for the Thomson Reuters Calais web API -
  • -
  • -cl-paymill - - cl-paymill provides access to the Paymill payment processing web API -
  • -
  • -cl-ppcre - - A portable, Perl-compatible regular expression library by Edi Weitz -
  • -
  • -cl-randist - - This package is a manual translation from C to common lisp of some random number generation functions of GSL library -
  • -
  • -cl-rfc4251 - - cl-rfc4251 is a Common Lisp system, which provides support for parsing RFC 4251 encoded binary data, as described in the Data Type Representations Used in the SSH Protocols section of the document -
  • -
  • -cl-rss - - This package provides a Common Lisp library for fetching and parsing Remote Site Summary data via HTTP -
  • -
  • -cl-scrobbler - - cl-scrobbler is a binding to the Last.fm scrobbling API -
  • -
  • -CL-TLS - - CL-TLS is a prototype Common Lisp implementation of TLS and related protocols and standards including: -
  • -
  • -cl-unification - - Provides unification (as used in Prolog) over fairly arbitrary Common Lisp objects -
  • -
  • -cl-uri-templates - - cl-uri-templates is an implementation of URI-Templates that supports the full draft 03 URI Template standard -
  • -
  • -cl-win32ole - - Common Lisp OLE like Ruby's win32ole -
  • -
  • -CLAW - - Common Lisp autowrapping facility for quickly creating -
  • -
  • -CLAWK - - CLAWK is an AWK text manipulation language implementation embedded into Common Lisp, by Michael Parker -
  • -
  • -clonsigna - - Clonsigna is a Common Lisp library that allows interaction with IMAP4rev1 servers -
  • -
  • -CLPM - - CLPM stands for Common Lisp Package Manager -
  • -
  • -cluecc - - Clue is an ANSI C programming language compiler that targets several languages, including Common Lisp -
  • -
  • -cocoa-mail - - cocoa-mail is a basic interface for OpenMCL on Mac OS X to the Cocoa Mail infrastructure -
  • -
  • -coleslaw - - coleslaw is static-site blog software a la Jekyll written by Brit Butler -
  • -
  • -color-gradients - - color-gradients is a graphics library that computes linear or radial color gradients -
  • -
  • -com.google.base - - The base package contains code that's highly likely to be useful in every Lisp application -
  • -
  • -computed-class - - A class metaobject for computed slot values and more -
  • -
  • -Cyclosis - - Cyclosis is a combined implementation of the functionality of the Common Lisp stream dictionary and that of the Gray streams proposal -
  • -
  • -DEFLEXER - - The LEXER package implements a lexical-analyzer-generator called DEFLEXER, which is built on top of both REGEX and CLAWK -
  • -
  • -demacs - - Demacs is an extensible way of defining various things -
  • -
  • -dlist - - dlist is a Common Lisp library that implements the doubly-linked list -
  • -
  • -documentation-template - - documentation-template is a documentation tool that automatically produces HTML documentation from the exported symbols of a package -
  • -
  • -dynamic-classes - - Lets you specify CLOS classes (e.g., as arguments to make-instance) using parameters at run-time, letting you use mixins more conveniently -
  • -
  • -easyweb - - easyweb is a Django-like web framework for Common Lisp -
  • -
  • -ESRAP - - A packrat parser for Common Lisp -
  • -
  • -foreign-numeric-vector - - foreign-numeric-vector is a package for working with numeric vectors stored in the foreign (non-Lisp) heap -
  • -
  • -fprog - - FPROG is a small library for functional programming written by John Wiegley -
  • -
  • -getopt - - getopt is a library for processing command-line arguments -
  • -
  • -green-threads - - GREEN-THREADS is a portable library implementing green threads (lightweight, cooperatively multitasked, user threads) in Common Lisp -
  • -
  • -Heresy - - Heresy is an implementation of the lazy list data structure -
  • -
  • -id3v2 - - Parser for the ID3v2 binary format -
  • -
  • -IMPS - - IMPS is an Interactive Mathematical Proof System developed by W -
  • -
  • -incless - - A portable, extensible Common Lisp printer -
  • -
  • -logv - - Logv is a cognitively lightweight logging utility for Common Lisp -
  • -
  • -lparallel - - lparallel is a new concurrency library -
  • -
  • -modf - - An immutable setf -
  • -
  • -monkeylib-atom - - monkeylib-atom is an Atom syndication feed generator library -
  • -
  • -monkeylib-json - - monkeylib-json is a library for reading and writing JSON -
  • -
  • -monkeylib-parser - - monkeylib-parser is a parser generator loosely based on Henry Baker's META paper -
  • -
  • -monkeylib-prose-diff - - monkeylib-prose-diff is a diff program optimized for comparing text files containing prose -
  • -
  • -monkeylib-utilities - - monkeylib-utilities are Peter Seibel's utilities -
  • -
  • -my-util - - Tomoyuki Matsumoto's common lisp utilities -
  • -
  • -nibbles - - Nibbles is a library for accessing octet-addressed blocks of data -
  • -
  • -nuclblog - - Blog software for use with Hunchentoot -
  • -
  • -Nyxt - - Nyxt is a keyboard-oriented, extensible web-browser designed for power users -
  • -
  • -opengl-text - - opengl-text is a library for loading and displaying TrueType fonts as texture maps in OpenGL -
  • -
  • -opticl - - An image processing library for Common Lisp -
  • -
  • -outer-parentheses-free-repl - - outer-parentheses-free-repl (OPFR) lets you input the outermost s-exp into your REPL without having to surround it with parentheses -
  • -
  • -pipes - - pipes implements the input stream (lazy list) data structure -
  • -
  • -pithy-xml - - Read and write XML as lisp objects -
  • -
  • -png-read - - png-read is a PNG image file decoder in pure Common Lisp -
  • -
  • -pretty-function - - pretty-function provides an API for making individual functions pprint differently when written to an output stream -
  • -
  • -princ-ut-interval - - princ-ut-interval prints time durations in human readable format -
  • -
  • -Prolog Technology Theorem Prover - - The Prolog Technology Theorem Prover (PTTP) is an implementation (in Common Lisp) of the model elimination theorem-proving procedure that extends Prolog to the full first-order predicate calculus -
  • -
  • -PseudoScheme - - PseudoScheme is an implementation of the Scheme (R4RS) programming language in Common Lisp -
  • -
  • -rclg - - An R (statistics programming language) FFI for Common Lisp -
  • -
  • -RDNZL - - RDNZL (pronounced "Redunzl") enables Common Lisp applications to interact with dot-NET libraries -
  • -
  • -recursive-regex - - A library to extend CL-PPCRE to make regular expression named capture groups dispatch to custom matcher functions and named-expression patterns -
  • -
  • -Regex - - Regex is a full-featured regular expression compiler and matching engine written by Michael Parker -
  • -
  • -retrospectiff - - retrospectiff is a library for reading and writing TIFF image files in Common Lisp -
  • -
  • -rfc2109 - - rfc2109 (aka cookies1) is a package for dealing with cookies in an RFC-compliant way -
  • -
  • -rfc3339-timestamp - - A library to decode and encode timestamps according to RFC 3339 -
  • -
  • -rpc4cl - - Yet another XML-RPC implementation for CL -
  • -
  • -rw-ut - - rw-ut reads and writes lisp universal times as ISO-8601 strings -
  • -
  • -Sacla - - A partial metacircular Common Lisp implementation (Common Lisp written in portable Common Lisp) by Yuji Minejima -
  • -
  • -sapaclisp - - sapaclisp is a collection of Common Lisp functions for spectral analysis -
  • -
  • -sb-dxf - - sb-dxf generates AutoCad dxf CAD vector image files -
  • -
  • -SC Language - - Tasuku Hiraishi's SC is an s-exp syntax (Scheme-like) for writing C code, implemented in Common Lisp -
  • -
  • -sequence-search-replace - - A library for sequence search and replace so it's useful on Text -
  • -
  • -simple-actors - - The actor model implemented with closures -
  • -
  • -simple-date-time - - Date and time library for Common Lisp -
  • -
  • -sml - - S-expression-based markup language -
  • -
  • -sst - - SST (SQL Schema Transformer) is a Common Lisp program that transforms an s-expression based database schema format medium into appropriate SQL commands for specified RDBMS -
  • -
  • -SxQL - - An SQL generator for Common Lisp -
  • -
  • -tar-file - - This project is a fork of Nathan Froyd's archive library -
  • -
  • -thnappy - - thnappy is a set of CFFI bindings to Google's snappy compression library -
  • -
  • -thread-pool - - thread-pool is library that allows asynchronous function execution from a static thread pool -
  • -
  • -TREES - - TREES provides several binary tree data structures exposed through a uniform CLOS interface -
  • -
  • -trivial-email-utf-8 - - trivial-email-utf-8 is like CL-SMTP's send-mail, but qprints any Unicode characters in the message title or content and includes the appropriate headers if necessary -
  • -
  • -trivial-raw-io - - trivial-raw-io provides access to raw serial/terminal I/O (termios) under Unix -
  • -
  • -versioned-objects - - For any Common Lisp mutable object, allows to store versioning tree of all of the edits connecting its various versions -
  • -
  • -web4r - - A continuations-based web framework aimed to enable users to develop web applications with the shortest amount of code -
  • -
  • -X.FDATATYPES - - XFDATATYPES implements 3 functional data structures: -
  • -
  • -X.LET-STAR - - X LET-STAR is a convenience library not unlike bind, but smaller, extendible, nicely written and bug-free (hopefully :) -
  • -
  • -xlunit - - XLUnit is a Test Framework based on XPTest and JUnit -
  • -
  • -ZACL - - ZACL is an ACL-like layer for running AllegroServe on non-Allegro Lisps -
  • -
  • -ZS3 - - ZS3 is a library for interacting with Amazon's Simple Storage Service (S3) and CloudFront content distribution service -
  • -
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/BSL.html b/clones/lisp/www.cliki.net/BSL.html deleted file mode 100644 index ebde226d..00000000 --- a/clones/lisp/www.cliki.net/BSL.html +++ /dev/null @@ -1,60 +0,0 @@ - - - - - CLiki: BSL - - - - - - - -
BSL
The Boost Software License 1.0 is a simple permissive license only requiring preservation of copyright and license notices for source (and not binary) distribution. Licensed works, modifications, and larger works may be distributed under different terms and without source code.

    -
  • -cl-colors2 - - This is a very simple color library for Common Lisp, providing: -
  • -
  • -let-plus - - LET+ extends let* with destructuring forms, slot access, hash table elements and various other constructs with a consistent interface -
  • -
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/BST.html b/clones/lisp/www.cliki.net/BST.html deleted file mode 100644 index fc53ed28..00000000 --- a/clones/lisp/www.cliki.net/BST.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: BST - - - - - - - -
BST
BST is a Common Lisp library for working with binary search trees that can contain any kind of values.

Repository: https://github.com/glv2/bst

License: GPL3


-data structure
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/BYTES.html b/clones/lisp/www.cliki.net/BYTES.html deleted file mode 100644 index 1c677d6b..00000000 --- a/clones/lisp/www.cliki.net/BYTES.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: BYTES - - - - - - - -
BYTES
Bytes contains macros around READ-WRITE, WRITE-BYTE and LDB to ease reading and writing multibyte binary strings.

Written by Max Rottenkolber.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Babel.html b/clones/lisp/www.cliki.net/Babel.html deleted file mode 100644 index 21612023..00000000 --- a/clones/lisp/www.cliki.net/Babel.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Babel - - - - - - - -
Babel
Babel is a character encoding/decoding library, not unlike GNU libiconv, but completely written in Common Lisp.

Repository: https://github.com/cl-babel/babel

License: MIT

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Babel2.html b/clones/lisp/www.cliki.net/Babel2.html deleted file mode 100644 index 123e3cb8..00000000 --- a/clones/lisp/www.cliki.net/Babel2.html +++ /dev/null @@ -1,60 +0,0 @@ - - - - - CLiki: Babel2 - - - - - - - -
Babel2
Babel2 is a collection of software created by a group of researchers primarily from the Free University of Brussels and Sony CSL Paris, which comprises:

    -
  • A syntactic component based on Fluid Construction Grammar, a feature structure unification-based grammar formalism, which uses the same construction specifications for both parsing and production. -
  • -
  • A semantic component based on Incremental Recruitment Language, which represents meaning as networks of procedural cognitive operations. It comes with mechanisms for goal-driven conceptualization from perceptual data streams and for their interpretation. -
  • -
  • A cognitive processing component centered around the concepts of multi-agent interaction, robotic embodiment and meta-level learning. -
  • -
-
-Apache 2, Natural Language Processing, Robotics
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Bach Chorales.html b/clones/lisp/www.cliki.net/Bach Chorales.html deleted file mode 100644 index b967ecdf..00000000 --- a/clones/lisp/www.cliki.net/Bach Chorales.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Bach Chorales - - - - - - - -
Bach Chorales
A database of music (100 chorale melodies) harmonised by J.S Bach -is available in Lisp-readable format (with documentation) from the UCI Repository Of Machine Learning Databases.
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Base64.html b/clones/lisp/www.cliki.net/Base64.html deleted file mode 100644 index 9bb2640d..00000000 --- a/clones/lisp/www.cliki.net/Base64.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: base64 - - - - - - - -
base64
A very simple implementation of Base64 (RFC 4648) encoding and decoding for Common Lisp.

Repository: https://github.com/massung/base64

License: Apache 2


-data format
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Basic-English-Grammar.html b/clones/lisp/www.cliki.net/Basic-English-Grammar.html deleted file mode 100644 index fd39b050..00000000 --- a/clones/lisp/www.cliki.net/Basic-English-Grammar.html +++ /dev/null @@ -1,59 +0,0 @@ - - - - - CLiki: Basic-English-Grammar - - - - - - - -
Basic-English-Grammar
Basic-English-Grammar is a lisp system for working with the English grammar data from the CMU AI repository (original authors: John Lawler and Dave Keiras, University of Michigan).

The original data is in the public domain, as is the new lisp system.

The lisp library exports a single function, grammar-of, which takes a string and returns a list of grammatical categories that the string is known to fall into (NIL if the string is an unknown word). For example:

CL-USER> (beg:grammar-of "write") -(:VERB) -CL-USER> (beg:grammar-of "right") -(:VERB :ADJECTIVE) -CL-USER> (beg:grammar-of "wrote") -(:PAST-PARTICIPLE :VERB) -CL-USER> (beg:grammar-of "writer") -(:NOUN)

Download: basic-english-grammar-1.0.tgz


-Natural Language Processing
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Ben Hyde.html b/clones/lisp/www.cliki.net/Ben Hyde.html deleted file mode 100644 index 4679d655..00000000 --- a/clones/lisp/www.cliki.net/Ben Hyde.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Ben Hyde - - - - - - - - -
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Ben Lee.html b/clones/lisp/www.cliki.net/Ben Lee.html deleted file mode 100644 index 9dc9b6cd..00000000 --- a/clones/lisp/www.cliki.net/Ben Lee.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Ben Lee - - - - - - - -
Ben Lee
Ben Lee is a Person. He (and Andrew Blumberg) are responsible for Elephant, a free portable persistent object database based on Sleepycat (Berkeley DB).
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Benchmark.html b/clones/lisp/www.cliki.net/Benchmark.html deleted file mode 100644 index 6f88d328..00000000 --- a/clones/lisp/www.cliki.net/Benchmark.html +++ /dev/null @@ -1,104 +0,0 @@ - - - - - CLiki: benchmark - - - - - - - -
benchmark
This page presents different aspects on Common Lisp benchmarks. See also the Performance page which references various performance-related papers.

-CLiki pages with topic 'benchmark':

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Berlin Brown.html b/clones/lisp/www.cliki.net/Berlin Brown.html deleted file mode 100644 index 553025c8..00000000 --- a/clones/lisp/www.cliki.net/Berlin Brown.html +++ /dev/null @@ -1,63 +0,0 @@ - - - - - CLiki: Berlin Brown - - - - - - - -
Berlin Brown
Berlin Brown is a Enterprise GIS programmer in Atlanta, trying to move away from .NET/Java/C++

We will also be providing resources related to lisp development. Visit this site for more information: - -Lisp Development Resources -

Analysis of domain specific languages and Lisp: -"Language Workbenches: The Killer-App for Domain Specific Languages?" -Lisp and DSLs

I am currently working on the Lisp Widget Toolkit, mainly used for Win32 and CLisp. This library may possibly be ported to other languages or operating systems time permitting.

-Widget Toolkit HREF -

-Google-Groups: http://groups-beta.google.com/group/lispgui/ -

You can email me here:

berlin.brown { at } gmail.com

-


-This page is presently person: -topic markers

Category: person

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Bill Newman.html b/clones/lisp/www.cliki.net/Bill Newman.html deleted file mode 100644 index 71f55074..00000000 --- a/clones/lisp/www.cliki.net/Bill Newman.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Bill Newman - - - - - - - -
Bill Newman
project administrator for SBCL, person

very occasional diarist on -Advogato

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Binary-types.html b/clones/lisp/www.cliki.net/Binary-types.html deleted file mode 100644 index 1c2a33df..00000000 --- a/clones/lisp/www.cliki.net/Binary-types.html +++ /dev/null @@ -1,69 +0,0 @@ - - - - - CLiki: Binary-types - - - - - - - -
Binary-types
Binary-types is a library for accessing binary format files with fixed bit-length code-words. Binary-types provides macros that are used to declare the mapping between lisp objects and some binary (i.e. octet-based) -representation.

Supported kinds of binary types include:

    -
  • Signed and unsigned integers of any octet-size, big-endian or - little-endian. Maps to lisp integers.

  • -
  • Enumerated types based on any integer type. Maps to lisp symbols.

  • -
  • Complex bit-field types based on any integer type. Sub-fields can - be numeric, enumerated, or bit-flags. Maps to lisp lists of symbols - and integers.

  • -
  • Fixed-length and null-terminated strings. Maps to lisp strings.

  • -
  • Compound records of other binary types. Maps to lisp DEFCLASS - classes or, when you prefer, DEFSTRUCT structs. -
  • -

Typically, a complete binary record format/type can be specified in a -single (nested) declaration statement. Such compound records may then -be read and written with READ-BINARY and WRITE-BINARY.

Binary-types is *not* helpful in reading files with variable -bit-length code-words, such as most compressed file formats. It will -basically only work with file-formats based on 8-bit bytes -(octets). Also, at this time no floating-point types are supported out -of the box. The ieee-floats library might be useful.

Binary-types was developed by Frode Vatvedt Fjeld. Source code is available at https://github.com/frodef/binary-types. See the Debian page for information on how to get a debian-package of binary-types using common-lisp-controller.

There are some extensions to binary-types in binary-types-extra.lisp (part of Slitch). It adds support for structs with "bitfields" and for vectors. There is also a binary-rw-gen.lisp that compiles a binary-type into specialized reader- and writer- functions that are somewhat faster.

There is also a Debian package.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Binghe.html b/clones/lisp/www.cliki.net/Binghe.html deleted file mode 100644 index 0d5b9be5..00000000 --- a/clones/lisp/www.cliki.net/Binghe.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Binghe - - - - - - - -
Binghe
Chun Tian (binghe) was a student in Zhejiang University (China); Currently he is a student in University of Bologna (Italy), doing master degree on Computer Science.

He ever worked for Gensym Corporation from 2009 to 2016, and was the lead engineer of Gensym G2, a real-time rule-based development platform written in Common Lisp (a million lines!)

Most of his Lisp-related work GitHub

Also see his LinkedIn profile.

Early contributions

UDP support for LispWorks (before LispWorks 7.0 officially provided this facility), also see lispworks-udp.

A full implementation of SNMP (Simple Network Management Protocol) (both server and client) for Common Lisp, also see cl-net-snmp.

Maintainer of usocket project.

Recent activities

Study CLOS/MOP and Semantic Web.


-Chun Tian (binghe) person
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/BioBike.html b/clones/lisp/www.cliki.net/BioBike.html deleted file mode 100644 index a9f100d5..00000000 --- a/clones/lisp/www.cliki.net/BioBike.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: BioBike - - - - - - - -
BioBike
The BioBike system is a bioinformatics programming language embedded in an integrated biological knowledge-base, all accessible through the web. In the best case, biologists themselves would be able to log into the system and write their own programs to ask novel biological questions without the help of (or with very little help from) software engineers.

License: MIT

Homepage: https://github.com/jeffshrager/biobike

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Bioinformatics.html b/clones/lisp/www.cliki.net/Bioinformatics.html deleted file mode 100644 index bfbc25e0..00000000 --- a/clones/lisp/www.cliki.net/Bioinformatics.html +++ /dev/null @@ -1,76 +0,0 @@ - - - - - CLiki: Bioinformatics - - - - - - - -
Bioinformatics
Bioinformatics packages:

    -
  • -BioBike - - The BioBike system is a bioinformatics programming language embedded in an integrated biological knowledge-base, all accessible through the web -
  • -
  • -CL SBML - - CL-SBML is a bioinformatics library for working with the Systems Biology Markup Language -
  • -
  • -cl-bio - - Lightweight versions of biological objects and methods on these objects, including sequences, ranges, descriptors, identifiers; also, file parsers -
  • -
  • -CL-DNA - - CL-DNA is a bioinformatics library to handle and manipulate genetic data -
  • -
  • -CL-GODB - - CL-GODB is an interface to the Gene Ontology Database -
  • -
  • -CLCB - - The Common Lisp Computational Biology (CLCB) package aims to be a comprehensive, flexible and easy to use library for bioinformatics and computational biology -
  • -
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Birch.html b/clones/lisp/www.cliki.net/Birch.html deleted file mode 100644 index 7fc45d91..00000000 --- a/clones/lisp/www.cliki.net/Birch.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Birch - - - - - - - -
Birch
Birch is a simple IRC client library. It makes use of CLOS classes and generic functions for event handling, exposing both high-level and semi-low level events.

Code and documentation at https://github.com/jorams/birch.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Bits from Mark Triggs's .emacs.html b/clones/lisp/www.cliki.net/Bits from Mark Triggs's .emacs.html deleted file mode 100644 index fcb3e383..00000000 --- a/clones/lisp/www.cliki.net/Bits from Mark Triggs's .emacs.html +++ /dev/null @@ -1,99 +0,0 @@ - - - - - CLiki: Bits from Mark Triggs's .emacs - - - - - - - -
Bits from Mark Triggs's .emacs
Just a couple of things I find useful for Lisp editing.

-(require 'w3m)
-
-(defadvice common-lisp-hyperspec (around hyperspec-lookup-w3m () activate)
-  "Browse the Common Lisp HyperSpec using w3m.
-When leaving w3m, restore the original window configuration."
-  (let* ((window-configuration (current-window-configuration))
-         (browse-url-browser-function
-          `(lambda (url new-window)
-             (unless (member (current-buffer) (w3m-list-buffers))
-               (select-window (split-window-vertically)))
-             (w3m-browse-url url nil)
-             (let ((hs-map (copy-keymap w3m-mode-map)))
-               (define-key hs-map (kbd "q")
-                 (lambda ()
-                   (interactive)
-                   (kill-buffer nil)
-                   (set-window-configuration ,window-configuration)))
-               (use-local-map hs-map)))))
-    ad-do-it))
-
-
-(defun lisp-reindent-defun ()
-  "Indent the current defun."
-  (interactive)
-  (save-excursion
-    (beginning-of-defun)
-    (indent-sexp)))
-
-
-;; Highlight "FIXME" comments
-(defface fixme-face
-  '((t (:weight bold :box (:line-width 2 :color "orange"))))
-  "The faced used to show FIXME lines.")
-
-(defun show-fixme-lines (&optional arg)
-  "Emphasise FIXME comments.
-If ARG is positive, enable highlighting.  If ARG is negative, disable
-highlighting.  Otherwise, toggle highlighting."
-  (interactive)
-  (if (or (and (not arg) (assoc "FIXME" hi-lock-interactive-patterns))
-          (and arg (minusp arg)))
-      (unhighlight-regexp "FIXME")
-    (highlight-phrase "FIXME" 'fixme-face)))
-
-
-
-Emacs customizations -
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Blocky.html b/clones/lisp/www.cliki.net/Blocky.html deleted file mode 100644 index 69af5df3..00000000 --- a/clones/lisp/www.cliki.net/Blocky.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Blocky - - - - - - - -
Blocky
Blocky is a visual dialect of Common Lisp paired with an Emacs-like user interface. In addition to borrowing ideas from GNU Emacs, the language design is heavily influenced by existing research environments such as PureData, Squeak, Self Morphic, MIT Scratch, Berkeley's BYOB project, and more recently Jens Moenig's Smalltalk Elements.

The original homepage no longer exists.

A fork: https://github.com/Mon-Ouie/blocky

License: GPLv3

Author: David O'Toole


-programming language
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Blowfish.html b/clones/lisp/www.cliki.net/Blowfish.html deleted file mode 100644 index b96e60e3..00000000 --- a/clones/lisp/www.cliki.net/Blowfish.html +++ /dev/null @@ -1,63 +0,0 @@ - - - - - CLiki: Blowfish - - - - - - - -
Blowfish
Blowfish is a 64-bit encryption algorithm, with a key length between 32 and 448 bits. There are a few different takes on it in CL (some targeting specific Common Lisp implementations):


-Cryptography
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Bobstopper.html b/clones/lisp/www.cliki.net/Bobstopper.html deleted file mode 100644 index db273ef9..00000000 --- a/clones/lisp/www.cliki.net/Bobstopper.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Bobstopper - - - - - - - - -
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Bonn.html b/clones/lisp/www.cliki.net/Bonn.html deleted file mode 100644 index 328f9594..00000000 --- a/clones/lisp/www.cliki.net/Bonn.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Bonn - - - - - - - -
Bonn
The former capital of Germany. Bonn needs more lisp developers!

People

-Max Rottenkolber
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Bordeaux-FFT.html b/clones/lisp/www.cliki.net/Bordeaux-FFT.html deleted file mode 100644 index adaff5ef..00000000 --- a/clones/lisp/www.cliki.net/Bordeaux-FFT.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Bordeaux-FFT - - - - - - - -
Bordeaux-FFT
Bordeaux-FFT is a fast, pure-Lisp implementation of Fast Fourier Transforms.

Bordeaux-FFT operates on one-dimensional arrays of complex numbers. It caches coefficients and scratch buffers, so if you are doing consecutive FFTs on the same size array, you get a nice boost in speed.

More details and a link to the source can be found in the fine manual.

Mathematics algorithm

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Bordeaux-Threads.html b/clones/lisp/www.cliki.net/Bordeaux-Threads.html deleted file mode 100644 index 3d7c2b6b..00000000 --- a/clones/lisp/www.cliki.net/Bordeaux-Threads.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Bordeaux-Threads - - - - - - - -
Bordeaux-Threads
Bordeaux-Threads lets you write multi-threaded applications in a portable way.

License: MIT

Homepage: https://common-lisp.net/project/bordeaux-threads/


-system programming thread concurrency
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Bordeaux-threads.html b/clones/lisp/www.cliki.net/Bordeaux-threads.html deleted file mode 100644 index 3d7c2b6b..00000000 --- a/clones/lisp/www.cliki.net/Bordeaux-threads.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Bordeaux-Threads - - - - - - - -
Bordeaux-Threads
Bordeaux-Threads lets you write multi-threaded applications in a portable way.

License: MIT

Homepage: https://common-lisp.net/project/bordeaux-threads/


-system programming thread concurrency
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Boris Smilga.html b/clones/lisp/www.cliki.net/Boris Smilga.html deleted file mode 100644 index cabb0e14..00000000 --- a/clones/lisp/www.cliki.net/Boris Smilga.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Boris Smilga - - - - - - - -
Boris Smilga
I am a Person, more specifically: a graduate of Nantes University (France) where I did some work in Natural Language Processing; a resident of Moscow, Russia; a multiagent systems developer in my day job (has to do with railway scheduling); a mostly Common Lisp programmer when away from company and family duties.

I have written or done significant contributions to: cl-json, linewise-template, mod_lisp-lighttpd, parenscript.

My GitHub page is at https://github.com/agrostis.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Bouquet.html b/clones/lisp/www.cliki.net/Bouquet.html deleted file mode 100644 index 7e7dd9f7..00000000 --- a/clones/lisp/www.cliki.net/Bouquet.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Bouquet - - - - - - - -
Bouquet
Bouquet is a graph generator for the Tulip graph visualization software.

License: LLGPL

Homepage: https://sourceforge.net/projects/bouquet/

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Brad Lucas.html b/clones/lisp/www.cliki.net/Brad Lucas.html deleted file mode 100644 index 07e97f39..00000000 --- a/clones/lisp/www.cliki.net/Brad Lucas.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Brad Lucas - - - - - - - - -
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Bradford W. Miller.html b/clones/lisp/www.cliki.net/Bradford W. Miller.html deleted file mode 100644 index 8bb1956d..00000000 --- a/clones/lisp/www.cliki.net/Bradford W. Miller.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Bradford W. Miller - - - - - - - -
Bradford W. Miller
A Person and longtime member of the Common Lisp Community, was active in SLUG and a (long) past director of the ALU. He currently leads and conducts AI research in a large company. His primary research interests include Cognitive Systems, Agent Oriented Programming, Knowledge Representation Systems, and Natural Language Processing.

While he uses Lisp on an almost daily basis, he really misses the Symbolics Lisp Machines he had the pleasure of using from 1985-1996 (starting with the 3670 and ending with the UX400).

For more info, see his googlepage. -

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Brainfuck in Lisp.html b/clones/lisp/www.cliki.net/Brainfuck in Lisp.html deleted file mode 100644 index d4df3b35..00000000 --- a/clones/lisp/www.cliki.net/Brainfuck in Lisp.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Brainfuck in Lisp - - - - - - - -
Brainfuck in Lisp
Brainfuck in Lisp contains a brainfuck programming language virtual machine and a brainfuck optimizing compiler, which translates to lisp and compiles lisp to native code, and a sketch for an implementation of a lisp on brainfuck.

Homepage: http://informatimago.com/develop/lisp/small-cl-pgms/brainfuck/

License: GPL

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Brian Crowder of Rutherfordton nc.html b/clones/lisp/www.cliki.net/Brian Crowder of Rutherfordton nc.html deleted file mode 100644 index 4621b948..00000000 --- a/clones/lisp/www.cliki.net/Brian Crowder of Rutherfordton nc.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Brian Crowder of Rutherfordton nc - - - - - - - -
Brian Crowder of Rutherfordton nc
Describe Brian Crowder of Rutherfordton nc here I am 19 years old lived her 19 years. Moved to mooresville NC June 21 2002 to start school at nascar tech backed out and went to bobby isac motorsports in Hickory NC graduated in nov 16 2002 . Also went to pit crew school in mooresville NC to learn how to pit winston cup cars. Worked in mooresville NC for about 2 months hanging bodies on Bush And Winston cup cars. moved back home in Rutherforton NC in Jan 2003 Working for my dad doing construction and also doing maintence for companys on 18-wheelers. MY other career is driving Race Cars, have been driving go-karts cars since I was 12 years old. Waiting on a ride with a Hooters Pro Cup car, Also maybe a ARCA Team. -person
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Brian Crowder.html b/clones/lisp/www.cliki.net/Brian Crowder.html deleted file mode 100644 index 8616c088..00000000 --- a/clones/lisp/www.cliki.net/Brian Crowder.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Brian Crowder - - - - - - - -
Brian Crowder
Brian Crowder is a person who likes Scheme and JavaScript and CLiki, would like to see the first two in the last, but is not going to add them (for which we thank him).

He suffers from having a page on CLiki which collects vacuous drivel

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Brian Cully.html b/clones/lisp/www.cliki.net/Brian Cully.html deleted file mode 100644 index c88d0d9c..00000000 --- a/clones/lisp/www.cliki.net/Brian Cully.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Brian Cully - - - - - - - -
Brian Cully
I hang out on #lisp and #emacs as bjc.

I'm using SBCL currently, although I have installations of OpenMCL and CMUCL as well, which I switch to periodically.

I'm pretty newbie, although I like to think I learn quickly, but don't be surprised if I ask some odd questions here and there, and occasionally misunderstand something.

My development environment is Emacs running Slime on top of SBCL, all under MacOS X 10.3 (Panther) Server. I also use Araneida behind mod_proxy for one of the applications I'm writing as part of my day job. -person

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Brian Deaton.html b/clones/lisp/www.cliki.net/Brian Deaton.html deleted file mode 100644 index cccf6a45..00000000 --- a/clones/lisp/www.cliki.net/Brian Deaton.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Brian Deaton - - - - - - - -
Brian Deaton
Brian Deaton is a graduate student at Texas A&M who wishes he had more time to program in Common Lisp.

He enjoys NetBSD and hopes that the upcoming release 2.0 will be more Lisp friendly.

Like every other Person on the xearth he can't wait to have the Moon, on a stick. -

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Brian Gaeke.html b/clones/lisp/www.cliki.net/Brian Gaeke.html deleted file mode 100644 index 69a0fb6e..00000000 --- a/clones/lisp/www.cliki.net/Brian Gaeke.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Brian Gaeke - - - - - - - -
Brian Gaeke
Brian Gaeke is a Person who thinks Common Lisp is really neat, but has very little time to hack on it.

He first encountered it when he mistakenly sent the newly freely-available Postscript source of CLtL2 to a laser printer at his high school, single-sided, 1-up. This made the language's rather large size immediately apparent.

It would be three or four years before he learned Scheme and another three or four before he spent time seriously considering Common Lisp, though.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Brian Mastenbrook.html b/clones/lisp/www.cliki.net/Brian Mastenbrook.html deleted file mode 100644 index f26b181b..00000000 --- a/clones/lisp/www.cliki.net/Brian Mastenbrook.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Brian Mastenbrook - - - - - - - -
Brian Mastenbrook
I have a perfectly good page. Why would I make another?

Because you are a Person.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Brian Spilsbury.html b/clones/lisp/www.cliki.net/Brian Spilsbury.html deleted file mode 100644 index 2abff31a..00000000 --- a/clones/lisp/www.cliki.net/Brian Spilsbury.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Brian Spilsbury - - - - - - - -
Brian Spilsbury
CMUCL, Internationalization, McCLIM, etc.

Remind me to put something interesting here. -person

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/BrianRowe.html b/clones/lisp/www.cliki.net/BrianRowe.html deleted file mode 100644 index 34bdd875..00000000 --- a/clones/lisp/www.cliki.net/BrianRowe.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: BrianRowe - - - - - - - -
BrianRowe
Just a new lisper. You can contact me at briprowe <AT> yahoo (you know the rest).

person

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/BrianTRice.html b/clones/lisp/www.cliki.net/BrianTRice.html deleted file mode 100644 index 2bbfd98c..00000000 --- a/clones/lisp/www.cliki.net/BrianTRice.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: BrianTRice - - - - - - - -
BrianTRice
I'm Brian T. Rice, a Smalltalk and Lisp Person (and consider both to be worthwhile in their own right) who merged the two recently into a new Smalltalk variant. I qualify to be part of the YoungLispers and now an ALU member. I do own one of the Lisp Machines still in operation and am generally a proponent of languages-as-systems (like cirCLe). Real information about me can be found here.
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Bruce Durling.html b/clones/lisp/www.cliki.net/Bruce Durling.html deleted file mode 100644 index 6aca0012..00000000 --- a/clones/lisp/www.cliki.net/Bruce Durling.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Bruce Durling - - - - - - - -
Bruce Durling
Bruce Durling is a Person who has been an emacs user since 1998 and getting into common lisp after using emacs.

I'm starting in on some common lisp projects now and here are a few of the libraries that I will be using.

HTTP: Drakma

XML: CXML

AIM: CLAIM

I am also a Wiki:WikiGnome

As a reader of Recent Changes, may I suggest that when you WikiGnomize something, you describe the actual change being made? There are no "diff to previous version" links on cliki, so it's rather hard to decide whether it's worthwhile to re-read the page or not. A descriptive summary would help there. -- Andreas Fuchs

Sorry about that. Bad habits from other wiki engines. I'll be more careful in the future. - Me

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Bruce Nagel.html b/clones/lisp/www.cliki.net/Bruce Nagel.html deleted file mode 100644 index 3cde368f..00000000 --- a/clones/lisp/www.cliki.net/Bruce Nagel.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Bruce Nagel - - - - - - - -
Bruce Nagel
I, Bruce Nagel, do solemnly offer these my responses to The Road to Lisp Survey:

When did you first try Lisp (meaning here and throughout the survey "any member of the Lisp family") seriously, and which Lisp family member was it?

I'm still not sure if I'm trying Lisp "seriously", as I have only a little free time and Lisp is my first programming language. It's been about nine months since I first began writing macros and functions for using Clisp as a shell under linux per suggestions I found via the Clisp home page.

What led you to try Lisp?

It's the first language whose source code seemed somewhat intelligible at first glance, rather than looking like typewriter cursing.

If you were trying Lisp out of unhappiness with another language, what was that other language and what did you not like about it, or what were you hoping to find different in Lisp?

I was hoping to find something friendlier to a novice (which Common Lisp does appear to be).

How far have you gotten in your study of Lisp? (I know, that is hard to measure)

I use Clisp as a shell more often than bash now, because I've written some simple utility programs to make it "comfy". Mostly I'm still trying to learn more of the language, because it's so large (tho' this is mastly due to time constraints). I haven't even touched on CLOS yet...

What do you think of Lisp so far?

I think that dynamic memory management and s-expressions are certainly more comfortable than anything else I've seen. I'm not surprised that Java, et al are adopting ideas that have been in the Lisp community for decades. Mostly I'm only disappointed with Lisp's representation in the software world, although that looks to be changing somewhat.

This page is linked from: The Road to Lisp Survey -person

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Bruno Haible.html b/clones/lisp/www.cliki.net/Bruno Haible.html deleted file mode 100644 index 12326784..00000000 --- a/clones/lisp/www.cliki.net/Bruno Haible.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Bruno Haible - - - - - - - - -
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Buclet.html b/clones/lisp/www.cliki.net/Buclet.html deleted file mode 100644 index 31f22389..00000000 --- a/clones/lisp/www.cliki.net/Buclet.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Buclet - - - - - - - -
Buclet
Buclet provides CFFI bindings to the Bullet physics library. Useful for making games

The project page is at http://common-lisp.net/project/buclet/.

Related libraries: Okra, clois-lane.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Buildapp.html b/clones/lisp/www.cliki.net/Buildapp.html deleted file mode 100644 index 21c32fd0..00000000 --- a/clones/lisp/www.cliki.net/Buildapp.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: buildapp - - - - - - - -
buildapp
Buildapp is an SBCL tool for creating executables. It is similar to hu.dwim.build. Buildapp is available under a BSD license.

-buildapp --eval '(defun main (argv) (write-line "Hello, world"))' --entry main --output hello
-

For full documentation, see the buildapp home page.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Buildnode.html b/clones/lisp/www.cliki.net/Buildnode.html deleted file mode 100644 index fb2296e4..00000000 --- a/clones/lisp/www.cliki.net/Buildnode.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Buildnode - - - - - - - -
Buildnode
Buildnode is a libary to ease interaction with CXML:DOM XML documents and nodes

For more info see:

Git Hub: https://github.com/AccelerationNet/buildnode


-Topic: AccelerationNet,CXML,DOM, XML
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Business.html b/clones/lisp/www.cliki.net/Business.html deleted file mode 100644 index 2e6e03f0..00000000 --- a/clones/lisp/www.cliki.net/Business.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: Business - - - - - - - -
Business
Common Lisp software that helps writing business applications. See also:

  • -cl-ledger - - CL-Ledger is a powerful, double-entry accounting system for Common Lisp -
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/C++.html b/clones/lisp/www.cliki.net/C++.html deleted file mode 100644 index f396a3b6..00000000 --- a/clones/lisp/www.cliki.net/C++.html +++ /dev/null @@ -1,104 +0,0 @@ - - - - - CLiki: C - - - - - - - -
C
Projects that let C and Common Lisp interoperate.

For information about calling C libraries from Common Lisp code, see FFI.

To compile C code to Common Lisp, look at Vacietis.

All pages in the C topic:

programming language

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/C-Mera.html b/clones/lisp/www.cliki.net/C-Mera.html deleted file mode 100644 index 71e00009..00000000 --- a/clones/lisp/www.cliki.net/C-Mera.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: C-Mera - - - - - - - -
C-Mera
C-Mera is a very simple source-to-source compiler that utilizes Lisp's macro system for meta programming of C-like languages. One of its main goals is to be easily extensible to other C-like languages and the different versions based on C-Mera's core illustrate that this is a simple process.

Depends on: clon (the command-line options parser)

Repository: https://github.com/kiselgra/c-mera

License: GPLv3


-s-exp syntax
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/C.html b/clones/lisp/www.cliki.net/C.html deleted file mode 100644 index f396a3b6..00000000 --- a/clones/lisp/www.cliki.net/C.html +++ /dev/null @@ -1,104 +0,0 @@ - - - - - CLiki: C - - - - - - - -
C
Projects that let C and Common Lisp interoperate.

For information about calling C libraries from Common Lisp code, see FFI.

To compile C code to Common Lisp, look at Vacietis.

All pages in the C topic:

programming language

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/C3 superclass linearization MRO.html b/clones/lisp/www.cliki.net/C3 superclass linearization MRO.html deleted file mode 100644 index eba630dc..00000000 --- a/clones/lisp/www.cliki.net/C3 superclass linearization MRO.html +++ /dev/null @@ -1,149 +0,0 @@ - - - - - CLiki: C3 superclass linearization MRO - - - - - - - -
C3 superclass linearization MRO
The C3 Method Resolution Order from A Monotonic Superclass Linearization for Dylan (1996) is increasingly popular. You can use it in CL via the CLOS MOP.

-The -comp.lang.lisp C3 linearization for CLOS thread from 2004 contains the following code by Paul Foley. -There's also another version dylan.lisp -in Paul Foley.

(defclass dylan-class (standard-class) ()) - -(defun dylanesque-cpl-computer (class tie-breaker) - (let* ((supers (mop:class-direct-superclasses class)) - (classes (list* class supers)) - (constraints (mapcar #'cons (list* class supers) supers))) - (dolist (cpl (mapcar #'mop:class-precedence-list supers)) - (setf classes (append cpl classes)) - (setf constraints (nconc (mapcar #'cons cpl (cdr cpl)) constraints))) - (setf classes (delete-duplicates classes)) - (setf constraints (delete-duplicates constraints :test #'equal)) - (kernel::topological-sort classes constraints tie-breaker))) - -(defmethod mop:compute-class-precedence-list ((class dylan-class)) - (dylanesque-cpl-computer class #'kernel::std-cpl-tie-breaker)) - -(defmethod mop:validate-superclass ((class dylan-class) - (new-super pcl::standard-class)) - t) - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; - -(defclass c3-class (standard-class) ()) - -(defun c3-tie-breaker (free-classes rev-cpl) - (dolist (super (mop:class-direct-superclasses (car (last rev-cpl)))) - (dolist (item free-classes) - (when (member item (mop:class-precedence-list super)) - (return-from c3-tie-breaker item))))) - -(defmethod mop:compute-class-precedence-list ((class c3-class)) - (dylanesque-cpl-computer class #'c3-tie-breaker)) - -(defmethod mop:validate-superclass ((class c3-class) - (new-super pcl::standard-class)) - t) - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; - -;; A test case which is non-monotonic under CLOS rules -;; The CPL for C-PEDALO should be -;; C-PEDALO, C-PEDAL-WHEEL-BOAT, C-ENGINE-LESS, C-WHEEL-BOAT, -;; C-SMALL-CATAMARAN, C-SMALL-MULTIHULL, C-DAY-BOAT, C-BOAT, ... -;; The CPL for D-PEDALO should be -;; D-PEDALO, D-PEDAL-WHEEL-BOAT, D-ENGINE-LESS, D-SMALL-CATAMARAN, -;; D-SMALL-MULTIHULL, D-DAY-BOAT, D-WHEEL-BOAT, D-BOAT, ... -#+(or) -(progn - (defclass c-boat () ()) - (defclass c-day-boat (c-boat) ()) - (defclass c-wheel-boat (c-boat) ()) - (defclass c-engine-less (c-day-boat) ()) - (defclass c-small-multihull (c-day-boat) ()) - (defclass c-pedal-wheel-boat (c-engine-less c-wheel-boat) ()) - (defclass c-small-catamaran (c-small-multihull) ()) - (defclass c-pedalo (c-pedal-wheel-boat c-small-catamaran) ()) - - (defclass d-boat () () (:metaclass dylan-class)) - (defclass d-day-boat (d-boat) () (:metaclass dylan-class)) - (defclass d-wheel-boat (d-boat) () (:metaclass dylan-class)) - (defclass d-engine-less (d-day-boat) () (:metaclass dylan-class)) - (defclass d-small-multihull (d-day-boat) () (:metaclass dylan-class)) - (defclass d-pedal-wheel-boat (d-engine-less d-wheel-boat) () - (:metaclass dylan-class)) - (defclass d-small-catamaran (d-small-multihull) () (:metaclass dylan-class)) - (defclass d-pedalo (d-pedal-wheel-boat d-small-catamaran) () - (:metaclass dylan-class))) - -;; A test case for the C3 ordering -;; The CPL for C-EDITABLE-SCROLLABLE-PANE should be -;; C-EDITABLE-SCROLLABLE-PANE, C-SCROLLABLE-PANE, C-EDITABLE-PANE, -;; C-PANE, C-EDITING-MIXIN, C-SCROLLING-MIXIN, ... -;; The CPL for X-EDITABLE-SCROLLABLE-PANE should be -;; X-EDITABLE-SCROLLABLE-PANE, X-SCROLLABLE-PANE, X-EDITABLE-PANE, -;; X-PANE, X-SCROLLING-MIXIN, X-EDITING-MIXIN, ... -#+(or) -(progn - (defclass c-pane () ()) - (defclass c-scrolling-mixin () ()) - (defclass c-editing-mixin () ()) - (defclass c-scrollable-pane (c-pane c-scrolling-mixin) ()) - (defclass c-editable-pane (c-pane c-editing-mixin) ()) - (defclass c-editable-scrollable-pane (c-scrollable-pane c-editable-pane) ()) - - (defclass x-pane () () (:metaclass c3-class)) - (defclass x-scrolling-mixin () () (:metaclass c3-class)) - (defclass x-editing-mixin () () (:metaclass c3-class)) - (defclass x-scrollable-pane (x-pane x-scrolling-mixin) () - (:metaclass c3-class)) - (defclass x-editable-pane (x-pane x-editing-mixin) () - (:metaclass c3-class)) - (defclass x-editable-scrollable-pane (x-scrollable-pane x-editable-pane) () - (:metaclass c3-class))) -

Other

On scheme, c3 can be used with tinyclos.


-Topics: MOP document
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CAD.html b/clones/lisp/www.cliki.net/CAD.html deleted file mode 100644 index e0121c4e..00000000 --- a/clones/lisp/www.cliki.net/CAD.html +++ /dev/null @@ -1,84 +0,0 @@ - - - - - CLiki: CAD - - - - - - - -
CAD
Computer-Aided Design (CAD) and Computer-Aided Manufacturing (CAM) software.

    -
  • -cl-magic-cad - - cl-magic-cad is a set of tools to generate files in Calma GDS-II and MAGIC VLSI CAD design programs -
  • -
  • -cl-mill - - CL-MILL is a CNC milling application generating G-Code, built in Common Lisp -
  • -
  • -cl-stirling-engine - - Second-order Stirling Engine analysis program -
  • -
  • -ICanCAD - - ICanCAD is a CAD application for analog and mixed-signal (analog and digital signals on the same chip) electronics circuit design -
  • -
  • -lodematron - - lodematron parses md2, 3ds and lwo (pre LightWave 6) 3d object mesh file format files -
  • -
  • -sb-dxf - - sb-dxf generates AutoCad dxf CAD vector image files -
  • -
  • -stl - - Read binary triangle data from STL files -
  • -
  • -stl-io - - The stl-io library deals with reading and writing binary STL files -
  • -
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CAPTURED-STREAM.html b/clones/lisp/www.cliki.net/CAPTURED-STREAM.html deleted file mode 100644 index 65250032..00000000 --- a/clones/lisp/www.cliki.net/CAPTURED-STREAM.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: CAPTURED-STREAM - - - - - - - -
CAPTURED-STREAM
captured-stream is a small Common Lisp library for viewing streams as sequences.

It is restricted to SBCL, because it relies on sb-sequence.

Repository: https://github.com/deepfire/captured-stream

License: LGPL


-Topics: language extension
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CCL.html b/clones/lisp/www.cliki.net/CCL.html deleted file mode 100644 index f28f177a..00000000 --- a/clones/lisp/www.cliki.net/CCL.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: CCL - - - - - - - -
CCL
CCL is the Clozure Common Lisp implementation. Its most recent release is version 1.12, available since 2020-04-19. It used to be called OpenMCL. CCL runs on Mac OS X (PPC and x86), Linux (PPC and x86), FreeBSD (x86), Solaris (x86), and Windows XP and later (x86), and is available in 32 and 64-bit versions on all platforms. Some distinguishing features of the implementation include fast compilation speed, native OS threads, a precise, generational, compacting garbage collector, and a convenient foreign-function interface.

License: Apache 2

Homepage

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CCLAN.html b/clones/lisp/www.cliki.net/CCLAN.html deleted file mode 100644 index 32ad21f0..00000000 --- a/clones/lisp/www.cliki.net/CCLAN.html +++ /dev/null @@ -1,86 +0,0 @@ - - - - - CLiki: cclan - - - - - - - -
cclan

The Comprehensive Common Lisp Archive Network.

The cCLan project started out intending to build a comprehensive -archive of CL code, in much the same way as CPAN and CTAN have for -Perl and TeX. In this aim it's been largely overtaken by -asdf-install and the "distributed network" here on CLiki.

The cCLan network is still running and will continue to run for -the foreseeable future. Authors of asdf-install-compatible packages -are welcome to use it for distributing their packages if they have no -suitable hosting of their own, or would like the redundancy.

(Also check out common-lisp.net which provides FTP, cvs, mailing lists and other services to Lisp projects)

cCLan sites

You can see the current cCLan sites (and choose your preferred mirror) -at http://ww.telent.net/cclan-choose-mirror, or proceed directly to -the current mirror. (If the -current mirror link takes you to a list of links, you have not yet set -your cookie. Choose one of the links in the list, return to this page, -and then choose the current mirror page once again. At that time you -should be directed to the link you chose.)

Information for potential cclan node maintainers

The cClan network was designed with these features in mind:

    -
  • use standard or easily-installable tools on the servers (e.g. ftp, - rsync, cron jobs) with no significant admin overhead (usenet is right out)

  • -
  • no single point of failure

  • -
  • allow people to upload to the most convenient host and have packages spread - from there -
  • -

Basically we use rsync in both directions between mirror hosts.

For each version of each package there is a tarball, a detached PGP signature, -and a "meta" file. The meta file controls which version of the package -is current so that symlinks may be maintained automatically. The metafile -name is created by appending ".meta" to the archive file name (death to LPNs, cough cough)

-$ cat foo_2.1.3ac4.tar.gz.meta
-foo.tar.gz
-foo_2.1.3ac3.tar.gz
-$
-

The first line of the meta file is used to create a symlink to the -actual archive file, so that browsers can keep track of the current -version. The remainder of the file is a list of previous versions of -the archive which this obsoletes and may now be deleted

Archive update is based exclusively on a "pull" model, to avoid the -need for authenticating to the peer. Read the shell/perl scripts to -see how it works

Uploaders need to provide PGP detached signatures (foo.tar.gz.asc) -so that packages can be authenticated by download utilities

  • The doc, bin, etc directories contains shell scripts and data for syncing and maintaining the files in the cClan node itself. Users of cClan packages don't need to worry about these.

  • -
  • The old directory may contain previous versions of packages. This depends on the node admin's policy

  • -

Comments/etc should go to the cclan-list mailing-list.

As well as the mirror network, this project seems to live in part on Sourceforge.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CCLDOC.html b/clones/lisp/www.cliki.net/CCLDOC.html deleted file mode 100644 index 60db2542..00000000 --- a/clones/lisp/www.cliki.net/CCLDOC.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: CCLDoc - - - - - - - -
CCLDoc
CCLDoc is a system for creating Lisp documentation. It uses S-expressions to represent document structure, markup, cross references, and contents. It has a small number of basic operators, supports macros for syntax extensions, and supports a simple syntax for embedding expressions in strings for added convenience.

The documentation for Clozure CL is written in CCLDoc.

Depends on: alexandria, split-sequence, s-xml, cl-who, ccl-compat

Repository: https://github.com/Clozure/ccldoc

License: Apache 2


-document preparation
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CCLDoc.html b/clones/lisp/www.cliki.net/CCLDoc.html deleted file mode 100644 index 60db2542..00000000 --- a/clones/lisp/www.cliki.net/CCLDoc.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: CCLDoc - - - - - - - -
CCLDoc
CCLDoc is a system for creating Lisp documentation. It uses S-expressions to represent document structure, markup, cross references, and contents. It has a small number of basic operators, supports macros for syntax extensions, and supports a simple syntax for embedding expressions in strings for added convenience.

The documentation for Clozure CL is written in CCLDoc.

Depends on: alexandria, split-sequence, s-xml, cl-who, ccl-compat

Repository: https://github.com/Clozure/ccldoc

License: Apache 2


-document preparation
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CDR.html b/clones/lisp/www.cliki.net/CDR.html deleted file mode 100644 index fe789d43..00000000 --- a/clones/lisp/www.cliki.net/CDR.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: CDR - - - - - - - -
CDR
The ''Common Lisp Document Repository'' is hosted at https://common-lisp.net/project/cdr/. CDRs can be thought of as proposed extensions to ANSI, making the CDR process a community standards one.

The list of Final CDR.

(Slowly) moving to Zenodo which is a better document-oriented infrastructure.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CFFI-SDL.html b/clones/lisp/www.cliki.net/CFFI-SDL.html deleted file mode 100644 index bb7218fc..00000000 --- a/clones/lisp/www.cliki.net/CFFI-SDL.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: CFFI-SDL - - - - - - - -
CFFI-SDL
CFFI-SDL is a set of Lisp bindings for the SDL graphics library, and OpenGL, using CFFI.

Sofar it has only been tested on Mac OS X 10.5 running SBCL.

The project page is at http://sourceforge.net/projects/cffi-sdl. -

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CFFI.html b/clones/lisp/www.cliki.net/CFFI.html deleted file mode 100644 index 4c1fe217..00000000 --- a/clones/lisp/www.cliki.net/CFFI.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: CFFI - - - - - - - -
CFFI
CFFI, the Common Foreign Function Interface, purports to be a portable foreign function interface for Common Lisp.

The CFFI library is composed of a Lisp-implementation-specific backend in the CFFI-SYS package, and a portable frontend in the CFFI package.

The CFFI-SYS backend package defines a low-level interface to the native FFI support in the Lisp implementation. It offers operators for allocating and dereferencing foreign memory, calling foreign functions, and loading shared libraries. The CFFI frontend provides a declarative interface for defining foreign functions, structures, typedefs, enumerated types, etc... It is implemented in portable ANSI CL making use of the low-level operators exported by CFFI-SYS.

A UFFI compatibility layer is also included.

More information about CFFI (including documentation) is available in CFFI's home page at common-lisp.net.

SWIG can also generate CFFI code from headers.

UNIX systems have CFFI wrappers at cffi-posix

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CGI.html b/clones/lisp/www.cliki.net/CGI.html deleted file mode 100644 index bd7f06ed..00000000 --- a/clones/lisp/www.cliki.net/CGI.html +++ /dev/null @@ -1,84 +0,0 @@ - - - - - CLiki: CGI - - - - - - - -
CGI
The Common Gateway Interface (CGI) is an interface for running web applications as independent executables under the control of a webserver.

    -
  • -cl-modlisp - - cl-modlisp is a Web library that implements a Common Lisp interface to Marc Battyani's mod_lisp apache module -
  • -
  • -cl-mongrel2 - - cl-mongrel2 is an interface to the mongrel2 web-server -
  • -
  • -FastCGI - - How to use FastCGI from Common Lisp -
  • -
  • -Le Sursis - - Le Sursis is a Web tool for writing CGI scripts -
  • -
  • -lisp-cgi-utils - - lisp-cgi-utils is a Lisp project for developing web applications using the CGI interface -
  • -
  • -m2cl - - An implementation of the mongrel2 API -
  • -
  • -mod_ecl - - mod_ecl is an apache module to use lisp in the way php is used for website scripting -
  • -
  • -mod_lisp - - mod_lisp is an Apache module to write dynamic web servers and applications -
  • -
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CIM.html b/clones/lisp/www.cliki.net/CIM.html deleted file mode 100644 index 4cb4af14..00000000 --- a/clones/lisp/www.cliki.net/CIM.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: CIM - - - - - - - -
CIM
CIM aims to be a tool which allows you to easily install, manage, run REPL with, and execute with multiple Common Lisp implementation and systems.

[2017-01-29] obsolete: https://keens.github.io/blog/2017/01/29/deprecating_cim/

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CIRCUIT-SIM.html b/clones/lisp/www.cliki.net/CIRCUIT-SIM.html deleted file mode 100644 index 48530bf4..00000000 --- a/clones/lisp/www.cliki.net/CIRCUIT-SIM.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: CIRCUIT-SIM - - - - - - - -
CIRCUIT-SIM
CIRCUIT-SIM implements a relatively simple digital electronics circuit simulator similar to that described in Abelson & Sussman's Structure and Interpretation of Computer Programs. It comes with a simulation of the Woz machine Apple II disk controller.

Homepage: https://josephoswald.nfshost.com/circuit-sim/summary.html

License: BSD 2-Clause

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL Enumerations.html b/clones/lisp/www.cliki.net/CL Enumerations.html deleted file mode 100644 index 28d16bfd..00000000 --- a/clones/lisp/www.cliki.net/CL Enumerations.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: CL Enumerations - - - - - - - -
CL Enumerations
A package; an implementation of java.util.Enumeration and java.util.Iterator for Common Lisp. The main aim of the specification and of the reference implementation is to provide a familiar framework for Java, C++, Python etc. programmers while they are migrating to Common Lisp. Also, it is hoped that vendors and implementors adopt the published API and provide efficient, special-case, re-implementations of some of the package elements.

The CL-ENUMERATIONS package can be found at http://common-lisp.net/project/cl-enumeration.


-Topic: language extension
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL SBML.html b/clones/lisp/www.cliki.net/CL SBML.html deleted file mode 100644 index 4d307fac..00000000 --- a/clones/lisp/www.cliki.net/CL SBML.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: CL SBML - - - - - - - - -
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-ACE.html b/clones/lisp/www.cliki.net/CL-ACE.html deleted file mode 100644 index f5e08a27..00000000 --- a/clones/lisp/www.cliki.net/CL-ACE.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: CL-ACE - - - - - - - -
CL-ACE
CL-ACE is a set of bindings for various Attempto Tools, and is maintained by Joshua Taylor.

CL-ACE currently contains bindings APE (ACE Webservice), and RACE (ACE Reasoner).


-Natural Language Processing
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-API.html b/clones/lisp/www.cliki.net/CL-API.html deleted file mode 100644 index 2ba20a8d..00000000 --- a/clones/lisp/www.cliki.net/CL-API.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: CL-API - - - - - - - -
CL-API
CL-API is a documentation tool that generates an API in HTML format, given a package name and reading docstrings.

Licence: BSD LICENSE

CL Implementations: SBCL

Dependencies: Closer to MOP, Alexandria, CL-PPCRE

Home page: http://common-lisp.net/project/cl-api.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-BibTeX.html b/clones/lisp/www.cliki.net/CL-BibTeX.html deleted file mode 100644 index acddf286..00000000 --- a/clones/lisp/www.cliki.net/CL-BibTeX.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: CL-BibTeX - - - - - - - -
CL-BibTeX
CL-BibTeX is a replacement for the BibTeX document preparation program, written by Matthias Koeppe.

Homepage: http://www.freesoftware.fsf.org/cl-bibtex/

License: LLGPL

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-CONTAINERS.html b/clones/lisp/www.cliki.net/CL-CONTAINERS.html deleted file mode 100644 index e462a38b..00000000 --- a/clones/lisp/www.cliki.net/CL-CONTAINERS.html +++ /dev/null @@ -1,88 +0,0 @@ - - - - - CLiki: cl-containers - - - - - - - -
cl-containers
cl-containers adds binary search trees, red-black trees, sparse arrays, and other useful containers.

You can find more information at the cl-containers home page. It's also available in Quicklisp.

The cl-containers package is released under the MIT style license. It requires the following other packages: moptilities and metatilities-base.

Some of the classes included:

    -
  • abstract-container (Inherited by all container classes, a good place to put pesky superclasses that you need)
  • -
  • abstract-queue
  • -
  • alist-container
  • -
  • array-container
  • -
  • associative-container
  • -
  • bag-container
  • -
  • basic-queue
  • -
  • biassociative-container-mixin
  • -
  • binary-search-tree
  • -
  • bounded-vector-container
  • -
  • container-node-mixin
  • -
  • contents-as-array-mixin
  • -
  • contents-as-hashtable-mixin
  • -
  • dlist-container A double-linked list
  • -
  • dlist-container-node A double-linked list node
  • -
  • filtered-iterator-mixin
  • -
  • flexible-vector-container
  • -
  • forward-iterator
  • -
  • heap-container
  • -
  • i-know-my-node-mixin
  • -
  • k-best-heap-container
  • -
  • keyed-associative-container
  • -
  • list-iterator
  • -
  • many-child-node
  • -
  • package-container
  • -
  • quad-tree
  • -
  • red-black-tree
  • -
  • rooted-tree-container (Base class of all trees with roots.)
  • -
  • sorted-dlist-container (A persistently sorted double-linked list)
  • -
  • stable-associative-container
  • -
  • stack-container
  • -
  • test-container-mixin
  • -
  • union-find-container
  • -
  • vector-container
  • -
-
-data structure
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-CSV.html b/clones/lisp/www.cliki.net/CL-CSV.html deleted file mode 100644 index d83a4a2e..00000000 --- a/clones/lisp/www.cliki.net/CL-CSV.html +++ /dev/null @@ -1,64 +0,0 @@ - - - - - CLiki: CL-CSV - - - - - - - -
CL-CSV
CL-CSV is a library to parse and write csv (comma-separated-values) files.

    -
  • full test suite
  • -
  • tuned (slightly) for performance
  • -
  • handles multiline data
  • -
  • handles internationalized data
  • -
  • interop layer with clsql
  • -
  • By default produces CSVs that work with MS Excel
  • -

Example: -

-CL-CSV> (with-input-from-string (s "King,Queen
-William,Elizabeth,your mom")
-          (read-csv s))
-(("King" "Queen") ("William" "Elizabeth" "your mom"))
-

For more info see:

Git Hub: https://github.com/AccelerationNet/cl-csv

Topics: file format, Text, AccelerationNet, CSV

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-CTRNN.html b/clones/lisp/www.cliki.net/CL-CTRNN.html deleted file mode 100644 index af88040b..00000000 --- a/clones/lisp/www.cliki.net/CL-CTRNN.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: CL-CTRNN - - - - - - - -
CL-CTRNN
CL-CTRNN is a Common Lisp library for the simulation of Continuous-Time Recurrent Neural Networks (CTRNNs).

A CTRNN is a neural network(NN) that allows recurrent(R) connections and considers continuous time(CT) a factor. It is therefore within the class of dynamic neural networks.

As such, the neurons in a CTRNN may change state over time, with or without any interaction from the external environment. This allows CTRNNs to for example simulate short-time memory or provide fault-tolerant sensor readings.

CTRNNs are by many considered to strike the proper balance between real-world cell-complexity and model simplicity: Complex enough to account for the real world, and simple enough to be effectively simulated and understood. The simple encoding of parameters also make them an optimal substrate for evolutionary algorithms (e.g. genetic algorithms), and especially well-suited for artificial life.

CL-CTRNN makes this functionality available through a CLOS API.


-AIsee also: cl-fann, MGL-GPR, GECO
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-CXX.html b/clones/lisp/www.cliki.net/CL-CXX.html deleted file mode 100644 index e0a3170c..00000000 --- a/clones/lisp/www.cliki.net/CL-CXX.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: CL-CXX - - - - - - - -
CL-CXX
CL-CXX exposes all C++ functions and classes to Common Lisp using CFFI and a C++ thunk function.

Author: Islam Omar <io1131@fayoum.edu.eg>

Source code repository: https://github.com/Islam0mar/cl-cxx

License: MIT

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-Containers.html b/clones/lisp/www.cliki.net/CL-Containers.html deleted file mode 100644 index e462a38b..00000000 --- a/clones/lisp/www.cliki.net/CL-Containers.html +++ /dev/null @@ -1,88 +0,0 @@ - - - - - CLiki: cl-containers - - - - - - - -
cl-containers
cl-containers adds binary search trees, red-black trees, sparse arrays, and other useful containers.

You can find more information at the cl-containers home page. It's also available in Quicklisp.

The cl-containers package is released under the MIT style license. It requires the following other packages: moptilities and metatilities-base.

Some of the classes included:

    -
  • abstract-container (Inherited by all container classes, a good place to put pesky superclasses that you need)
  • -
  • abstract-queue
  • -
  • alist-container
  • -
  • array-container
  • -
  • associative-container
  • -
  • bag-container
  • -
  • basic-queue
  • -
  • biassociative-container-mixin
  • -
  • binary-search-tree
  • -
  • bounded-vector-container
  • -
  • container-node-mixin
  • -
  • contents-as-array-mixin
  • -
  • contents-as-hashtable-mixin
  • -
  • dlist-container A double-linked list
  • -
  • dlist-container-node A double-linked list node
  • -
  • filtered-iterator-mixin
  • -
  • flexible-vector-container
  • -
  • forward-iterator
  • -
  • heap-container
  • -
  • i-know-my-node-mixin
  • -
  • k-best-heap-container
  • -
  • keyed-associative-container
  • -
  • list-iterator
  • -
  • many-child-node
  • -
  • package-container
  • -
  • quad-tree
  • -
  • red-black-tree
  • -
  • rooted-tree-container (Base class of all trees with roots.)
  • -
  • sorted-dlist-container (A persistently sorted double-linked list)
  • -
  • stable-associative-container
  • -
  • stack-container
  • -
  • test-container-mixin
  • -
  • union-find-container
  • -
  • vector-container
  • -
-
-data structure
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-DATA-FORMAT-VALIDATION.html b/clones/lisp/www.cliki.net/CL-DATA-FORMAT-VALIDATION.html deleted file mode 100644 index 80a13814..00000000 --- a/clones/lisp/www.cliki.net/CL-DATA-FORMAT-VALIDATION.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: CL-DATA-FORMAT-VALIDATION - - - - - - - -
CL-DATA-FORMAT-VALIDATION
CL-DATA-FORMAT-VALIDATION is provides a consistent regular interface for data conversion and validation (in the form of strings usually) into internal data types and for formatting internal data back into external presentable strings, all according to a conversion or type specification. It was created by John A.R. Williams.

Homepage: http://www.jarw.org.uk/lisp/cl-data-format-validation.html

Source repository: https://github.com/willijar/cl-data-format-validation

License: GPL

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-DBI.html b/clones/lisp/www.cliki.net/CL-DBI.html deleted file mode 100644 index 36d19ee7..00000000 --- a/clones/lisp/www.cliki.net/CL-DBI.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: CL-DBI - - - - - - - -
CL-DBI
CL-DBI is intended to provide the same SQL interface for each database.

Not only, you don't have to learn each API of databases anymore, but this layer is especially convenient when you want to use the different database by environment.

For example, your application had better to use efficient database such as MySQL on the production environment, but you may want to use SQLite3 on your machine. In that case, all what you have to do is only to rewrite calling "dbi:connect".

Homepage: 8arrow.org/cl-dbi/

License: LLGPL

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-DBUS.html b/clones/lisp/www.cliki.net/CL-DBUS.html deleted file mode 100644 index 55b2875e..00000000 --- a/clones/lisp/www.cliki.net/CL-DBUS.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: CL-DBUS - - - - - - - -
CL-DBUS
CL-DBUS aims to be an implementation of the popular D-BUS IPC/networking protocol.

Development takes place at github: -http://github.com/blitz/cl-dbus/

If you want to contribute, send a mail to Julian Stecklina or use Github's communication methods.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-DIFFLIB.html b/clones/lisp/www.cliki.net/CL-DIFFLIB.html deleted file mode 100644 index 1964d068..00000000 --- a/clones/lisp/www.cliki.net/CL-DIFFLIB.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: CL-DIFFLIB - - - - - - - -
CL-DIFFLIB
CL-DIFFLIB is a Lisp library for computing differences between sequences. It is based on the Python difflib module.

CL-DIFFLIB is copyright John Wiseman and is covered by the MIT license.

See this lemonodor post for more information.

You may also be interested in Nathan Froyd's diff package (though it seems to support only SBCL).

Download: http://lemonodor.com/code/cl-difflib_0.1.tar.gz

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-DNA.html b/clones/lisp/www.cliki.net/CL-DNA.html deleted file mode 100644 index 2ae732ca..00000000 --- a/clones/lisp/www.cliki.net/CL-DNA.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: CL-DNA - - - - - - - -
CL-DNA
CL-DNA is a bioinformatics library to handle and manipulate genetic data. It provides data structures and functions to efficiently represent DNA and amino acid sequences, to describe mutations, to perform translations, sequence search and matching, to analyze sequences, to access online genetic resources.

Homepage: http://chip.org/~alb/lisp.html

Download (non-asdf): http://chip.org/~alb/code/cl-dna-0.91.tar.gz

License: LLGPL

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-DOCUTILS.html b/clones/lisp/www.cliki.net/CL-DOCUTILS.html deleted file mode 100644 index 2eaa6597..00000000 --- a/clones/lisp/www.cliki.net/CL-DOCUTILS.html +++ /dev/null @@ -1,57 +0,0 @@ - - - - - CLiki: CL-DOCUTILS - - - - - - - -
CL-DOCUTILS
CL-DOCUTILS is a Common Lisp implementation of the Docutils document preparation system for processing plaintext into such as HTML and LaTeX.

It is based upon the Python Docutils reference implementation -but uses Common Lisp idioms making it easier to extend and more -flexible. As with the reference implementation it includes a parser -for the reStructured text plaintext markup syntax which is suitable -for marking up documentation and for use as user markup for -collaborative web sites. It is successfully used to support a higher -education peer-review assessment and online tutorial system.

It was created by John A.R. Williams.

Homepage: http://www.jarw.org.uk/lisp/cl-docutils.html

Source repository: https://github.com/willijar/cl-docutils

License: GPL

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-DTYPE.html b/clones/lisp/www.cliki.net/CL-DTYPE.html deleted file mode 100644 index 45d37211..00000000 --- a/clones/lisp/www.cliki.net/CL-DTYPE.html +++ /dev/null @@ -1,67 +0,0 @@ - - - - - CLiki: CL-DTYPE - - - - - - - -
CL-DTYPE
CL-DTYPE is a Common Lisp library implementing the DType networking protocol, introduced by MIT Media Labs.

-From FramerD: Representing knowledge in the large by K. Haase: - -Dtypes are designed to provide an external representation -for these internal structures and must support: -

    -
  • 1. Fast conversion from external format to internal -structures
  • -
  • 2. Compact representation (in terms of disk space -and bandwidth requirements)
  • -
  • 3. Portability between C, C++, LISP, and Scheme (at -least)
  • -
  • 4. Lightweight state-free parsing and production
  • -
-

Currently it is an early (0.0.1) release, still incomplete: float works incorrectly, compilation on CMUCL fails (SBCL is fine).

You can download it here.

CL-DTYPE author is Yurii Rashkovskii with significant help of Victor Sovetov.

License: BSD

News:
-July 19, 2003. New version will be released soon (bugfixes, DTYPE clean up)
-Sep 10, 2003. That new version is still in development for code cleanup, multiversion DTYPE support and bugfixes again.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-EARLEY-PARSER.html b/clones/lisp/www.cliki.net/CL-EARLEY-PARSER.html deleted file mode 100644 index 56dd3ea0..00000000 --- a/clones/lisp/www.cliki.net/CL-EARLEY-PARSER.html +++ /dev/null @@ -1,100 +0,0 @@ - - - - - CLiki: CL-EARLEY-PARSER - - - - - - - -
CL-EARLEY-PARSER
The Earley parser depends on a grammar description (currently in Backus-Naur form) and a lexicon (currently in a plist like form). Based on these, the EARLEY-PARSE function performs a syntax analysis on a sentence (parses it). The result is a listing of parse charts, that can easily be converted to a list of syntax-trees in s-expression form.

It is available on Github.

Here is how to use it:

-CL-USER> (require :asdf)
-:ASDF
-("ASDF")
-CL-USER> (asdf:oos 'asdf:load-op 'cl-earley-parser)
-NIL
-CL-USER> (use-package :earley-parser)
-T
-CL-USER> (earley-parse "Book that flight"
-	 	       (load-bnf-grammar "./examples/grammar.txt")
-		       (load-lexicon "./examples/lexicon.txt"))
-#CHART-LISTING:
-  0. #CHART:
-    #{G ->  . S  [0,0]}
-    #{S ->  . NP VP  [0,0]}
-    #{S ->  . VP  [0,0]}
-    #{S ->  . Aux NP VP  [0,0]}
-    #{NP ->  . det nominal  [0,0]}
-    #{NP ->  . proper-noun  [0,0]}
-    #{VP ->  . verb  [0,0]}
-    #{VP ->  . verb NP  [0,0]}
-  1. #CHART:
-    #{verb -> Book  .  [0,1]}
-    #{VP -> verb  .  [0,1]}
-    #{VP -> verb  . NP  [0,1]}
-    #{S -> VP  .  [0,1]}
-    #{NP ->  . det nominal  [1,1]}
-    #{NP ->  . proper-noun  [1,1]}
-    #{G -> S  .  [0,1]}
-  2. #CHART:
-    #{det -> that  .  [1,2]}
-    #{NP -> det  . nominal  [1,2]}
-    #{nominal ->  . noun  [2,2]}
-    #{nominal ->  . noun nominal  [2,2]}
-  3. #CHART:
-    #{noun -> flight  .  [2,3]}
-    #{nominal -> noun  .  [2,3]}
-    #{nominal -> noun  . nominal  [2,3]}
-    #{NP -> det nominal  .  [1,3]}
-    #{nominal ->  . noun  [3,3]}
-    #{nominal ->  . noun nominal  [3,3]}
-    #{VP -> verb NP  .  [0,3]}
-    #{S -> VP  .  [0,3]}
-    #{G -> S  .  [0,3]}
-
-CL-USER> (chart-listing->trees *)
-(("S" ("VP" ("verb" "Book") ("NP" ("det" "that") ("nominal" ("noun" "flight"))))))
-CL-USER> 
-


-Natural Language Processing
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-EC2.html b/clones/lisp/www.cliki.net/CL-EC2.html deleted file mode 100644 index 00b1d0b5..00000000 --- a/clones/lisp/www.cliki.net/CL-EC2.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: CL-EC2 - - - - - - - -
CL-EC2
CL-EC2 is a Common Lisp library for communicating with Amazon's EC2 and CloudWatch Query APIs.

Homepage: http://common-lisp.net/project/cl-ec2/

License: MIT


-web API
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-ECMA-48.html b/clones/lisp/www.cliki.net/CL-ECMA-48.html deleted file mode 100644 index 7135560a..00000000 --- a/clones/lisp/www.cliki.net/CL-ECMA-48.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: CL-ECMA-48 - - - - - - - -
CL-ECMA-48
Implement the ECMA-48 standard.

The CL-ECMA-48 library was created to serve the author's needs when writing an interactive program that creates a more complex terminal interface.

The CL-ECMA-48 library is an implementation of the ECMA-48 standard, in that it exports a macro for defining control functions, DEFINE-CONTROL-FUNCTION, and the 162 functions defined by the standard, by acronym and proper name.

The library optimizes the control functions to their most compact representations and reasonably most efficient Common Lisp functions.

-The ECMA-48 standard can be found here: https://www.ecma-international.org/publications/standards/Ecma-048.htm

Here is the page dedicated to this program. -


-library text console GUI AGPL
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-EMB.html b/clones/lisp/www.cliki.net/CL-EMB.html deleted file mode 100644 index db7d31a5..00000000 --- a/clones/lisp/www.cliki.net/CL-EMB.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: CL-EMB - - - - - - - -
CL-EMB
CL-EMB is a templating library. Mainly used for HTML templates. Looks like a combination of Lisp Server Pages with HTML-TEMPLATE, sharing some goals of CLHP. Examples.

License: LLGPL

It's written by Stefan Scholl. Uses code from John Wiseman (Lemonodor).

It has a project page on freshmeat, too. -

Michael Raskin currently maintains CL-EMB.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-Emacs.html b/clones/lisp/www.cliki.net/CL-Emacs.html deleted file mode 100644 index 0a9c38b5..00000000 --- a/clones/lisp/www.cliki.net/CL-Emacs.html +++ /dev/null @@ -1,123 +0,0 @@ - - - - - CLiki: CL-Emacs - - - - - - - -
CL-Emacs
Various people have proposed an emacs-like editor written in Common -Lisp. This page collects together a few possibilities

Editors and code

-

  • Lem (active as of 2022). An editor that works out of the box for Common Lisp but also for more languages thanks to its LSP mode (Python, Rust, Go, Java, Dart, Nim, HTML… with also a directory, markdown, SQL, shell… mode). It works on the terminal and in an experimental Electron front-end. More are in the works. It lacks docstrings and documentation, but its gitter chat is somewhat active and different people showed interest in helping. It has a Vim layer.

    GitHub: https://github.com/lem-project/lem/.

    It is an easy to install CL editor and REPL, so it's worth checking out.

    -

  • LispWorks is a proprietary implementation that comes with its own full-fledged, GUI editor, originally based on Hemlock.

    You can find a review of the LispWorks editor on the Common Lisp Cookbook: https://lispcookbook.github.io/cl-cookbook/lispworks.html.

    The LispWorks editor, showing a Lisp REPL with autocompletion on the left, and Lisp code on a side panel on the right

  • Climacs is an implementation of the Emacs text editor in Common Lisp with some very interesting features, like incremental re-parsing of the buffer according to syntax rules and automatic indentation of lisp code. At the moment, it is also the most actively developed of the cl-emacsen on this page. Climacs is based on the same philosophy of dividing functions and user commands as Hemlock.

  • -
  • -Hemlock is an emacslike editor that comes with CMUCL, using -CLX. Some things are different from modern (X)Emacs, and said to be -more akin to older Emacsen. A lot is similar, though. The major -difference that users will first note is that M-x commands are -"Ordinary English Words" rather than -"hyphenated-lowercase-lisp-function-names". This has a lot to do with -how commands are implemented as something separate from 'interactive -functions' (ie, functions which call the interactive macro to add -themselves to the list of available commands). The ZWEI/Hemlock -design is actually much cleaner and clearly separates functions from -user commands. To the user, the difference is that they no longer -have to remember arbitrary function names, but instead just remember -ordinary 'names' for operations. As far as keybindings go most of the -ordinary Emacs bindings (movement, simple editing) are the same, but -more complicated commands (like code reformatting) are going to be -different.

  • -
  • -Portable Hemlock (phemlock) is a fork of Hemlock that's -intended to run on any ANSI CL that has CLX. Also includes an elisp -emulation package from Ingvar Mattsson: note that this is not the -same as the CLOCC package below

  • -
  • Goatee is the text editing component for McCLIM. There's an -overlap between McCLIM and phemlock developers, so it's not impossible -that Phemlock will become CLIM-based and combine with Goatee

  • -
  • CLOCC contains a package -(elisp.lisp) -that implements some part of elisp in CL.

  • -
  • LiCE (repository on repo.or.cz) -shows beginnings of another CL-based Emacs which can also run atop of -Movitz.

  • -
  • CEDAR

    At EmacsConf 2021, Fermin MF presented CEDAR as an Emacs developed in Common Lisp.

    Repository: https://gitlab.com/sasanidas/cedar

    Description in repository: "CEDAR is an advance interactive development environment aiming to be Emacs compatible with all the features that come with it." -

  • -

(Perceived) problems with the existing GNU Emacs

The primary problem with GNU Emacs is that Emacs Lisp is simply not great compared to Common Lisp.

    -
  • Single-threaded -
  • -
  • Slow GC -
  • -
  • Characters implemented as integers -
  • -
  • Dynamic scope everywhere (while conceding that it's essential to have -in some places) -
  • -

Design ideas

-
    -
  • Craig Finseth's book, The Craft of Text -Editing, available in HTML form online. "Required reading about -the implementation of Emacs-type text editors."

  • -
  • If you're looking for a starting point for a new Emacs design you might like to take a look at Deuce, an Emacs like editor written in the Dylan programming language. Dylan has a CLOS style object model and it shouldn't be too difficult to port Deuce to Common Lisp. It separates GUI from editor code and has other interesting features. For details, see Scott Mckay's post (he is the author of Deuce). The source code to Deuce is available from https://github.com/dylan-lang/opendylan/tree/master/sources/deuce. Features:

      -
    • Lines are polymorphic. They can contain text, graphics, etc.
    • -
    • There is the concept of 'Source containers' and 'source sections'. A buffer is composed of 'source sections' which can come from different contains. In a nutshell this means you can have a single buffer where different parts of that buffer come from different files. For example, Deuce uses this to display a single buffer containing all the methods for a generic function. Each method definition in the buffer comes from a different source file. Editing that section of the buffer edits the original file.
    • -
    • The capability for graphics is included.
    • -
    • A simple presentation framework is part of the design. Allowing 'live' objects in the editor.
    • -
    • GUI presentation is separated from editor functionality allowing different GUI back ends to be used
    • -

    -

  • -
  • An interesting approach for a "CL-Emacs" would be for Emacs to be implemented as a set of processes, some being "display engines," others being loosely characterized as "buffer engines." Supposing Gnus had its own process, it might even block, and not slow down the other things going on. Erik Naggum had similar ideas.

  • -
  • Kent Pitman describes some interesting features of Zmacs, the -Lisp machine editor here.

  • -
  • Distel ("distributed emacs lisp"), an extension of Emacs Lisp with the Erlang language's essential concurrency constructs, plus a (fully non-blocking) implementation of Erlang's inter-node distribution protocol. Also Ermacs, a fully concurrent Emacs written in Erlang (both core and extensions).

  • -

Other resources

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-FAD.html b/clones/lisp/www.cliki.net/CL-FAD.html deleted file mode 100644 index 8c56ea39..00000000 --- a/clones/lisp/www.cliki.net/CL-FAD.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: cl-fad - - - - - - - -
cl-fad
CL-FAD is a portable pathname library based on code from Peter Seibel's book Practical Common Lisp, providing a way to work with files and directories.

License: BSD

Homepage: http://weitz.de/cl-fad/

Maintainer: Edi Weitz


-Personal opinion: cl-fad was a great improvement when it first appeared, but it has way too much implementation-dependent pitfalls. I recommend uiop, which is of vastly higher quality, and also has the advantage of already be in your implementation as part of asdf 3. And if you need finer control on filesystem access, use iolib. — Fare Rideau -
-system programming
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-FTP.html b/clones/lisp/www.cliki.net/CL-FTP.html deleted file mode 100644 index 408d31d5..00000000 --- a/clones/lisp/www.cliki.net/CL-FTP.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: CL-FTP - - - - - - - -
CL-FTP
cl-ftp is an FTP client.

Homepage: http://web.kepibu.org/code/lisp/cl-ftp/

License: MIT/X Style


-Topics: networking
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-FUSE.html b/clones/lisp/www.cliki.net/CL-FUSE.html deleted file mode 100644 index 9a017dd7..00000000 --- a/clones/lisp/www.cliki.net/CL-FUSE.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-fuse - - - - - - - -
cl-fuse
CL-FUSE provides Common Lisp bindings for FUSE (file system in user space).

Compatibility: SBCL and CCL work; Clisp fails because fusermount gets run with wrong permissions, ECL 12.7.1 complains about memory corruption.

cl-fuse-meta-fs provides a Lispy layer on top of cl-fuse.

Homepage: https://common-lisp.net/project/cl-fuse/

License: LLGPL


-Topics: system programming filesystem
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-GD.html b/clones/lisp/www.cliki.net/CL-GD.html deleted file mode 100644 index 302aa37d..00000000 --- a/clones/lisp/www.cliki.net/CL-GD.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-gd - - - - - - - -
cl-gd
CL-GD is a library enabling CL implementations to use the GD graphics library via UFFI.

It was written by Edi Weitz.

Home page and documentation: -https://edicl.github.io/cl-gd/

License: BSD

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-GODB.html b/clones/lisp/www.cliki.net/CL-GODB.html deleted file mode 100644 index 45363c8d..00000000 --- a/clones/lisp/www.cliki.net/CL-GODB.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: CL-GODB - - - - - - - - -
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-Graph.html b/clones/lisp/www.cliki.net/CL-Graph.html deleted file mode 100644 index 7aaadead..00000000 --- a/clones/lisp/www.cliki.net/CL-Graph.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-graph - - - - - - - -
cl-graph
CL-Graph is a set of Common Lisp utilities for manipulating graphs.

Its home page is at http://common-lisp.net/project/graph and that is probably much more up to date.

CL-Graph is one of Gary King's Common Lisp mathematics packages. Blame him!

Question: How fast is the path finder. (Probably it could use some more pathfinding functions? Like with a function giving cost, finding just one of the shortest for speed/memoization.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-HRAC.html b/clones/lisp/www.cliki.net/CL-HRAC.html deleted file mode 100644 index c7c43455..00000000 --- a/clones/lisp/www.cliki.net/CL-HRAC.html +++ /dev/null @@ -1,67 +0,0 @@ - - - - - CLiki: CL-HRAC - - - - - - - -
CL-HRAC
RabbitMQ Management HTTP API in Common Lisp.

Example -

-(ia-hash-table:enable-ia-syntax) - -(let ((hrac:*connection* (make-instance 'hrac:drakma-connection))) - (log:info "RabbitMQ alive: ~a" (hrac:alive-p)) - (let ((overview (hrac:overview))) - (log:info "RabbitMQ node ~a, version ~a" #Ioverview.node #Ioverview.rabbitmq_version)) - (let ((exchanges (hrac:exchanges))) - (log:info "Already ~a exchanges declared" (length exchanges)) - (log:info "3d exchange name is ~a" #Iexchanges.[2].name))) - -<INFO> [07:28:06] cl-user () - RabbitMQ node rabbit@office, version 3.6.0 -<INFO> [07:28:06] cl-user () - Already 13 exchanges declared -<INFO> [07:28:06] cl-user () - 3d exchange name is amq.fanout -

For more information, see the repository

License: MIT


-Topics: Distributed messaging
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-HTML-DIFF.html b/clones/lisp/www.cliki.net/CL-HTML-DIFF.html deleted file mode 100644 index 6d77339c..00000000 --- a/clones/lisp/www.cliki.net/CL-HTML-DIFF.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: CL-HTML-DIFF - - - - - - - -
CL-HTML-DIFF
CL-HTML-DIFF is a library for generating a human-readable diff of two HTML documents, using HTML. It's really just a Lisp translation of Aaron Swartz' HTML Diff for Python.

CL-HTML-DIFF is copyright John Wiseman and is covered by the MIT license.

CL-HTML-DIFF uses CL-DIFFLIB.

Download: http://lemonodor.com/code/cl-html-diff_0.1.tar.gz

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-HTML-Parse.html b/clones/lisp/www.cliki.net/CL-HTML-Parse.html deleted file mode 100644 index 5f17be81..00000000 --- a/clones/lisp/www.cliki.net/CL-HTML-Parse.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: CL-HTML-Parse - - - - - - - -
CL-HTML-Parse
This system is nominally maintained by Gary King.

A portable version of Franz's HTML parser from xmlutils.

Gary King: -Since I couldn't find it out there already yesterday (many years ago!), I packaged up Franz's open source HTML parser as CL-HTML-Parse, a simple HTML parser. It converts HTML into a Lispy representation. It's also the inverse of lml2. Spiffy?! You decide.

Download

-The code is now on github: https://github.com/gwkkwg/cl-html-parse

Comments

-Marco Baringer points out that pxmlutils already has Franz's stuff ported! Cool.

Max Mouratov says that pxmlutils also includes an XML parser and requires ACL-COMPAT. CL-HTML-Parse is a lighter package which includes just an HTML parser and doesn't require ACL-COMPAT.

Please direct questions or problems to Gary King.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-ID3.html b/clones/lisp/www.cliki.net/CL-ID3.html deleted file mode 100644 index 9522ff72..00000000 --- a/clones/lisp/www.cliki.net/CL-ID3.html +++ /dev/null @@ -1,126 +0,0 @@ - - - - - CLiki: CL-ID3 - - - - - - - -
CL-ID3
CL-ID3 is a pure Common Lisp implementation of the well-known ID3 AI/data-mining algorithm.

Here is a typical usage example:

-CL-USER> 
-(defpackage #:id3-examples
-  (:use "ID3" "COMMON-LISP" "CL-USER"))
-Package "ID3-EXAMPLES"
-
-CL-USER> (in-package :id3-examples)
-Package "ID3-EXAMPLES"
-
-ID3-EXAMPLES> 
-(defparameter
-    *examples*
- '((:outlook sunny    :temp hot  :humidity high   :wind weak   :play-tennis no)
-   (:outlook sunny    :temp hot  :humidity high   :wind strong :play-tennis no)
-   (:outlook overcast :temp hot  :humidity high   :wind weak   :play-tennis yes)
-   (:outlook rain     :temp mild :humidity high   :wind weak   :play-tennis yes)
-   (:outlook rain     :temp cool :humidity normal :wind weak   :play-tennis yes)
-   (:outlook rain     :temp cool :humidity normal :wind strong :play-tennis no)
-   (:outlook overcast :temp cool :humidity normal :wind strong :play-tennis yes)
-   (:outlook sunny    :temp mild :humidity high   :wind weak   :play-tennis no)
-   (:outlook sunny    :temp cool :humidity normal :wind weak   :play-tennis yes)
-   (:outlook rain     :temp mild :humidity normal :wind weak   :play-tennis yes)
-   (:outlook sunny    :temp mild :humidity normal :wind strong :play-tennis yes)
-   (:outlook overcast :temp mild :humidity high   :wind strong :play-tennis yes)
-   (:outlook overcast :temp hot  :humidity normal :wind weak   :play-tennis yes)
-   (:outlook rain     :temp mild :humidity high   :wind strong :play-tennis no))
-  "Examples for testing. Play tennis or not? That's the question.")
-
-*EXAMPLES*
-
-ID3-EXAMPLES> 
-(defun example-1 ()
-  "Build and use a classifier function."
-  ;; Create the classifier function
-  (setf (symbol-function 'classification-of) 
-        (build-id3-classifier *examples* :play-tennis
-                              :positive-value 'yes :negative-value 'no))
-  ;; Make a couple of test instances
-  (let ((instances '((:wind strong :outlook sunny :humidity high)
-                     (:outlook sunny :humidity normal :wind weak))))
-    ;; Try to classify them
-    (loop for instance in instances
-       do (format t "Adding classification of instance ~A~%" instance)
-       collect (classification-of instance))))
-
-EXAMPLE-1
-
-ID3-EXAMPLES> 
-(defun example-2 ()
-  "Build a tree. Then traverse it with a tree-traverser."
-  ;; Build the tree
-  (let ((decision-tree (id3 *examples* :play-tennis
-                            :positive-value 'yes :negative-value 'no))
-        ;; Make a couple of test instances
-        (instances '((:wind strong :outlook sunny :humidity high)
-                     (:outlook sunny :humidity normal :wind weak))))
-    ;; Try to classify the instances using the tree
-    (loop for instance in instances
-       do (format t "Adding classification of instance ~A~%" instance)
-       collect (classify instance decision-tree))))
-
-EXAMPLE-2
-
-ID3-EXAMPLES> (example-1)
-Adding classification of instance (WIND STRONG OUTLOOK SUNNY HUMIDITY HIGH)
-Adding classification of instance (OUTLOOK SUNNY HUMIDITY NORMAL WIND WEAK)
-(NO YES)
-
-ID3-EXAMPLES> (example-2)
-Adding classification of instance (WIND STRONG OUTLOOK SUNNY HUMIDITY HIGH)
-Adding classification of instance (OUTLOOK SUNNY HUMIDITY NORMAL WIND WEAK)
-(NO YES)
-
-ID3-EXAMPLES> 
-

Download: http://www.pvv.ntnu.no/~oyvinht/static/OSS/cl-id3/cl-id3_latest.tar.gz


-Artificial Intelligence
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-IO-ELF.html b/clones/lisp/www.cliki.net/CL-IO-ELF.html deleted file mode 100644 index e108385e..00000000 --- a/clones/lisp/www.cliki.net/CL-IO-ELF.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: CL-IO-ELF - - - - - - - -
CL-IO-ELF
CL-IO-ELF is a parser for ELF executable file format.

Source repository: https://github.com/deepfire/cl-io-elf

License: LGPL


-Topics: machine code
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-IO-MOD.html b/clones/lisp/www.cliki.net/CL-IO-MOD.html deleted file mode 100644 index 06d2dc0f..00000000 --- a/clones/lisp/www.cliki.net/CL-IO-MOD.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: CL-IO-MOD - - - - - - - -
CL-IO-MOD
CL-IO-MOD is a parser for a subset of the MOD music tracker file format.

Source repository: https://github.com/deepfire/cl-io-mod

License: LGPL

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-IPC.html b/clones/lisp/www.cliki.net/CL-IPC.html deleted file mode 100644 index 4d382931..00000000 --- a/clones/lisp/www.cliki.net/CL-IPC.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: CL-IPC - - - - - - - -
CL-IPC
CL-IPC is an UFFI wrapper to do Unix IPC.

Repository: https://gitlab.common-lisp.net/cl-ipc/cl-ipc

Authors: Edi Weitz and Stefan Kamphausen

License: BSD 2-Clause


-IPC
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-ISBN.html b/clones/lisp/www.cliki.net/CL-ISBN.html deleted file mode 100644 index a9d9c4f5..00000000 --- a/clones/lisp/www.cliki.net/CL-ISBN.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: CL-ISBN - - - - - - - -
CL-ISBN
CL-ISBN is a data format library for parsing, validating, and hyphenating International Standard Book Numbers (ISBNs). It is maintained by Vebjorn Ljosa and can be downloaded from http://www.ljosa.com/~ljosa/software/cl-isbn/.
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-JPEG.html b/clones/lisp/www.cliki.net/CL-JPEG.html deleted file mode 100644 index bea3e4fb..00000000 --- a/clones/lisp/www.cliki.net/CL-JPEG.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-jpeg - - - - - - - -
cl-jpeg
CL-JPEG (Common Lisp JPEG Library) can compress and decompress raster-images to/from the JPEG image file format. But not the C2 JPEG format!

CL-JPEG was developed by Eugene Zaikonnikov with sponsorship by Kelly E. Murray. It is hosted on github.

Dave Watson: Note that this library is NOT thread safe.

License: BSD

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-JSON.html b/clones/lisp/www.cliki.net/CL-JSON.html deleted file mode 100644 index 01bbad6d..00000000 --- a/clones/lisp/www.cliki.net/CL-JSON.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-json - - - - - - - -
cl-json
cl-json is a JSON parser and generator.

See the cl-json page at common-lisp.net and the json homepage.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-JavaScript.html b/clones/lisp/www.cliki.net/CL-JavaScript.html deleted file mode 100644 index bb246ed3..00000000 --- a/clones/lisp/www.cliki.net/CL-JavaScript.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: CL-JavaScript - - - - - - - -
CL-JavaScript
CL-JavaScript is a JavaScript programming language compiler for Common Lisp. Adding this to your Common Lisp application can enable your users to script the application using JavaScript.

License: MIT

Homepage: http://github.com/akapav/js

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-LDAP.html b/clones/lisp/www.cliki.net/CL-LDAP.html deleted file mode 100644 index 43fe90f3..00000000 --- a/clones/lisp/www.cliki.net/CL-LDAP.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: CL-LDAP - - - - - - - -
CL-LDAP
CL-LDAP is a UFFI interface to the OpenLDAP library.

Author: Matthew Danish

Homepage: https://sourceforge.net/projects/cl-ldap/


-obsolete
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-LEDGER.html b/clones/lisp/www.cliki.net/CL-LEDGER.html deleted file mode 100644 index 9b7bd05f..00000000 --- a/clones/lisp/www.cliki.net/CL-LEDGER.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-ledger - - - - - - - -
cl-ledger
CL-Ledger is a powerful, double-entry accounting system for Common Lisp. A port of the C++ based Ledger by the same author (John Wiegley).

Source code: https://github.com/ledger/cl-ledger

License: BSD


-Business application
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-LIA.html b/clones/lisp/www.cliki.net/CL-LIA.html deleted file mode 100644 index 25e9c226..00000000 --- a/clones/lisp/www.cliki.net/CL-LIA.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: CL-LIA - - - - - - - -
CL-LIA
CL-LIA is a first cut implementation of the "Common Lisp Language -Independent Arithmetic" (ISO/IEC-10967) standards.

Repository: https://gitlab.common-lisp.net/cl-lia/cl-lia


-MIT-LICENSE
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-Librarian.html b/clones/lisp/www.cliki.net/CL-Librarian.html deleted file mode 100644 index 115cbace..00000000 --- a/clones/lisp/www.cliki.net/CL-Librarian.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: CL-Librarian - - - - - - - -
CL-Librarian
CL-Librarian aims to be a manager for Common Lisp libraries that is focused on libraries updated dynamically by version control systems and targeted at power users. It handles downloading such libraries and will handle keeping them up-to-date, sitting atop ASDF and taking care of library downloading and updating.


-installer, probably obsolete; no activity for the last 8 years
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-MD5.html b/clones/lisp/www.cliki.net/CL-MD5.html deleted file mode 100644 index 9f9cb9ba..00000000 --- a/clones/lisp/www.cliki.net/CL-MD5.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - CLiki: CL-MD5 - - - - - - - -
CL-MD5
CL-MD5 is a Common Lisp implementation of MD5.

It is needed by CLSQL for connecting to postgresql using sockets.

Please add the download section to this page.

How does this implemantations differ from those listed on MD5 and the one -include in the Ironclad library? -- Roland Kaufmann

The implementation is available at -http://git.kpe.io/?p=md5.git;a=summary. -


-Cryptography
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-MEMCACHED.html b/clones/lisp/www.cliki.net/CL-MEMCACHED.html deleted file mode 100644 index 6696ad39..00000000 --- a/clones/lisp/www.cliki.net/CL-MEMCACHED.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: CL-MEMCACHED - - - - - - - -
CL-MEMCACHED
CL-MEMCACHED is a fast interface to the memcached object caching system. This is tested on SBCL, CCL and CMUCL.

-There is a custom version of this library using flexi-streams created because the original package was not working on SBCL 1.0.38. This version was only tested on ClozureCL and SBCL. cl-memcached-0.4.1-flexi.tar.gz -


-networking web API
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-MIME.html b/clones/lisp/www.cliki.net/CL-MIME.html deleted file mode 100644 index 9a09a60a..00000000 --- a/clones/lisp/www.cliki.net/CL-MIME.html +++ /dev/null @@ -1,63 +0,0 @@ - - - - - CLiki: CL-MIME - - - - - - - -
CL-MIME
CL-MIME is a library for constructing and manipulating MIME objects in Common Lisp. It supports creating MIME content for emails or web pages and can also parse existing MIME content to create MIME objects for manipulation. Supports (semi-)automatic encoding and decoding of MIME parts in quoted-printable or base64 form.

This package requires use of cl-qprint, cl-base64 and cl-ppcre.

Homepage: http://www.bobturf.org/software/cl-mime/

CL-MIME was written by Robert Marlow

Download CL-MIME from http://www.bobturf.org/software/cl-mime/

Usage example

Small example to parse Thunderbird messages in mbox format:

(defun thunderbird-mbox-msg-to-text (email) - (with-open-file (msg email :direction :input) - (with-open-file (out (concatenate 'string (pathname-name x) ".txt") :direction :output :if-exists :supersede) - (let ((mime (parse-mime msg))) - (case (type-of mime) - (text-mime (print (content mime) out)) - (multipart-mime - (dolist (part (content mime)) - (if (and (string-equal (content-type part) "text") - (string-equal (content-subtype part) "plain")) - (print-mime out part nil nil)))) - (mime (print "mime")) ;? - (t (print "other"))))))) ;?

The MIME class is the mixin which TEXT-MIME and MULTIPART-MIME inherit from. Most plain text messages will be of type TEXT-MIME and you can read the body with the CONTENT function. MULTIPART-MIME messages have multiple parts, you will have to iterate over them inspecting the type and subtype of each and choose what to do with them. In the example above, I was extracting the plain text version of html emails. See the wikipedia page on MIME and help yourself.

Maintained fork

https://github.com/40ants/cl-mime

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-MPD.html b/clones/lisp/www.cliki.net/CL-MPD.html deleted file mode 100644 index ab9897a2..00000000 --- a/clones/lisp/www.cliki.net/CL-MPD.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: CL-MPD - - - - - - - -
CL-MPD
CL-MPD is an interface to the Music Player Daemon

CL-MPD will run on SBCL, CLISP, or LispWorks.

CL-MPD is maintained by Stephen Horner. If anyone is interested in the current state of the library, they are encouraged to enquire about it by contacting the author at sphorner at the gmail domain.

Homepage: http://common-lisp.net/project/cl-mpd.

See also: stassats-mpd


-Topics: audio
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-MUPROC.html b/clones/lisp/www.cliki.net/CL-MUPROC.html deleted file mode 100644 index 39b287bf..00000000 --- a/clones/lisp/www.cliki.net/CL-MUPROC.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: cl-muproc - - - - - - - -
cl-muproc
CL-MUPROC is an Erlang-inspired concurrency library available under the BSD license for Lispworks, OpenMCL, SBCL, CMUCL, and ACL.

On GitHub is a fork that ported the library to ECL: https://github.com/ska80/cl-muproc

-


-thread concurrency actors
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-MUSTACHE.html b/clones/lisp/www.cliki.net/CL-MUSTACHE.html deleted file mode 100644 index a90c3566..00000000 --- a/clones/lisp/www.cliki.net/CL-MUSTACHE.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: CL-MUSTACHE - - - - - - - -
CL-MUSTACHE
CL-MUSTACHE is a templating library. Inspired by ctemplate and et, Mustache is a framework-agnostic way to render logic-free views.

As ctemplates says, "It emphasizes separating logic from presentation: it is impossible to embed application logic in this template language."

License: MIT/Expat

It's written by Kan-Ru Chen.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-Markdown.html b/clones/lisp/www.cliki.net/CL-Markdown.html deleted file mode 100644 index 118e2ed8..00000000 --- a/clones/lisp/www.cliki.net/CL-Markdown.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-markdown - - - - - - - -
cl-markdown
CL-Markdown is a Common Lisp implementation of John Gruber's Markdown document format language.

Depends on: metatilities-base (0.6.0), bind, cl-containers (0.11.5), dynamic-classes, anaphora, cl-ppcre

Repository: https://github.com/gwkkwg/cl-markdown

Author: Gary King


-MIT-LICENSE
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-MediaWiki.html b/clones/lisp/www.cliki.net/CL-MediaWiki.html deleted file mode 100644 index ff44799a..00000000 --- a/clones/lisp/www.cliki.net/CL-MediaWiki.html +++ /dev/null @@ -1,72 +0,0 @@ - - - - - CLiki: CL-MediaWiki - - - - - - - -
CL-MediaWiki
CL-MediaWiki is a wrapper in Common Lisp around the media wiki web API.

CL-MediaWiki can be found at its new github location:https://github.com/AccelerationNet/cl-mediawiki. Any questions, bug reports, or comments should be added as issue on the github issue tracker.

Examples: -

- ;; Gets the content of page "Pigment" from wikipedia
- (with-mediawiki ("http://en.wikipedia.org/w")
-    (get-page-content "Pigment"))
-
- ;; Gets the content of page "Pigment" from a private mediawiki that requires authentication
- (with-mediawiki ((make-instance 'mediawiki
-				 :url "http://wiki.yourdomain.net"
-				 :auth (list "user" "pass")))
-    (get-page-content "Pigment"))
-
- ;; Sets the content of page "Pigment" to be "This is the new content"
- (with-mediawiki (...)
-    (set-page-content "Pigment" "This is the new content"))
-
- ;; Get the ids, user, and size of the last 10 revisions 
- (with-mediawiki ("http://en.wikipedia.org/w")
-    (get-revisions "Pigment" :rvprop "ids|user|size" :rvlimit 10))
-
-

-Topic: AccelerationNet

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-NUM-UTILS.html b/clones/lisp/www.cliki.net/CL-NUM-UTILS.html deleted file mode 100644 index e4557313..00000000 --- a/clones/lisp/www.cliki.net/CL-NUM-UTILS.html +++ /dev/null @@ -1,61 +0,0 @@ - - - - - CLiki: CL-NUM-UTILS - - - - - - - -
CL-NUM-UTILS
Simple numerical functions, including intervals, Chebyshev polynomials and univariate rootfinding

This library implements simple numerical functions for Common Lisp, including -

    -
  • “num=”, a comparison operator for floats
  • -
  • simple arithmeric functions, like “sum” and “l2norm”
  • -
  • elementwise operations for arrays
  • -
  • intervals
  • -
  • special matrices and shorthand for their input
  • -
  • sample statistics
  • -
  • Chebyshev polynomials
  • -
  • univariate rootfinding
  • -

All the functionality has corresponding unit tests.

There are symbol conflicts with alexandria because of the need for certain statistical functions, e.g. mean, median, to operate on both sequences and on distribution models.

The successor of cl-numlib, superseded by numerical-utilities

Homepage: GitHub

License: MS-PL

Topics: mathematics

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-Ncurses.html b/clones/lisp/www.cliki.net/CL-Ncurses.html deleted file mode 100644 index 09bac609..00000000 --- a/clones/lisp/www.cliki.net/CL-Ncurses.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: CL-Ncurses - - - - - - - -
CL-Ncurses
An interface to the ncurses and pdcurses console user interface libraries for Common Lisp.

Bug-reports and tests very appreciated.

You can visit CL-Ncurses's home page for more details and release notes.

I'll mention that ncurses is a version of curses, just so that people who search for "curses" will find this page. For the same reason, let me mention that this package could have been named cl-curses (especially since it's no longer ncurses-specific).

cl-ncurses uses UFFI which is much less portable than CFFI, for foreign bindings. Consider cl-charms or croatoan which provide CFFI bindings to curses.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-ObjC.html b/clones/lisp/www.cliki.net/CL-ObjC.html deleted file mode 100644 index 947cc1f0..00000000 --- a/clones/lisp/www.cliki.net/CL-ObjC.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: CL-ObjC - - - - - - - -
CL-ObjC
CL-OBJC is a portable common-lisp/objective-c bridge written using CFFI.

The aim is to be able to build Cocoa applications on MacOS X by using InterfaceBuilder to design the GUI and then implement the code in Common Lisp.

Depends on: CFFI, cl-yacc, closer-mop, memoize

Repository: https://gitlab.common-lisp.net/cl-objc/cl-objc

License: BSD 3-Clause


-FFI
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-OpenGL.html b/clones/lisp/www.cliki.net/CL-OpenGL.html deleted file mode 100644 index f05b12ac..00000000 --- a/clones/lisp/www.cliki.net/CL-OpenGL.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-opengl - - - - - - - -
cl-opengl
cl-opengl is a set of CFFI bindings to the OpenGL, GLU and GLUT.

See its project page at common-lisp.net.


I had some problems on this install on SBCL under OS X: After some searching, I am of the opinion that OS X does not come with a version of GLUT. Further, installing GLUT from MacPorts installs GLUT, not OpenGLUT, which is actually the version that these bindings talk to. So I had to manually download, build and install OpenGLUT, which was an uneventful success, then create symlinks of the proper GLUT names (libglut.dylib and libglut.a) to the corresponding OpenGLUT libraries so the proper files can be found by name. I hope this helps. --Zach Smith

Mac OS X does come with GLUT, but it's a framework not a library. I don't know what changes you'd need to make for cl-opengl, but for a C program, it's a matter of #include'ing instead of the standard , and linking with -framework GLUT -framework OpenGL instead of the standard -lGL -lGLU -lglut. -- Keith Bauer

There's a version of cl-opengl that works on osx here: http://www.esden.net/content/lisp/cl-mac-native-opengl-thomas-0.1.tar.bz2

Current cl-opengl/cl-glut should work on osx, with the limitation that GL/glut code (possibly including loading the libraries) can only be run from the first thread.

cl-opengl on github: http://github.com/3b/cl-opengl


lispbuilder-sdl is an alternative to the glut binding for some purposes (i.e. games).

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-PACK.html b/clones/lisp/www.cliki.net/CL-PACK.html deleted file mode 100644 index 44d38d8c..00000000 --- a/clones/lisp/www.cliki.net/CL-PACK.html +++ /dev/null @@ -1,61 +0,0 @@ - - - - - CLiki: cl-pack - - - - - - - -
cl-pack
CL-PACK supplies Perl/PHP/Ruby/Python compatible pack() and unpack() functions to allow easy use of binary format protocols and files with the above mentioned languages and C. CL-PACK was released by Dan Ballard (http://mindstab.net/wordpress/archives/tag/cl-pack) in August 2009.

git: github.com/dballard/cl-pack

The purpose of pack is to take native Lisp data like numbers, floats, and strings and encode it in a safe binary format in string that can then be written to a file or exchanged with another program while unpack can extract data from binary formats and protocols.

cl-pack has nearly full support for all features offered by perl's pack. It boasts full support for most data types and formating rules from numbers and string to formating rules and grouping and templates. cl-pack also supports endian safe floats as outlined by ruby. cl-pack is supports ASDF so as to make it easy to integrate into your existing system.

Example: -

-CL-PACK> (pack "VgA*c*" #x41424344 161.99 " a string " 69 70 71)
-"DCBAC!ýq a string EFG"
-
-CL-PACK> (unpack "B8H2Ng" "ABCDEFC!ýq")
-"01000001"
-"42"
-1128547654
-161.99
-

Documentation is currently a bit sparse, but is contained in cl-pack.lisp. Additionally, a good overview of pack and unpack functions can be seen at http://perldoc.perl.org/functions/pack.html.

Nearly every feature except a few esoteric ones are supported, check the documentation inside cl-pack.lisp if in doubt and if a feature you need isn't currently supported feel free to contact me and I'll see if I can add it.

Note: I think this release is about as feature complete as I feel I need to get at the moment so I'm pushing it out.

Cavets: cl-pack was developed on an x86 running Ubuntu with SBCL. It should be endian safe where required and conform to host CPU endianness where required but I haven't been able to test on anything but x86. I would hope that it would work with most Lisps out there. Please feel free to get ahold of me if you have issues that need fixing.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-PACKAGE-LOCKS.html b/clones/lisp/www.cliki.net/CL-PACKAGE-LOCKS.html deleted file mode 100644 index 95ab8678..00000000 --- a/clones/lisp/www.cliki.net/CL-PACKAGE-LOCKS.html +++ /dev/null @@ -1,57 +0,0 @@ - - - - - CLiki: CL-PACKAGE-LOCKS - - - - - - - -
CL-PACKAGE-LOCKS
A unified way of dealing with package locks on those implementations that support them (or that's the eventual goal anyways).

I would say it's in the spirit of other compatibility layers, but since not all implementations support package locks it really can't be considered a ANSI compatibility layer.

Background

The need for this library came up when trying to load LISA on SBCL and encountering a package lock violation. Looking around I didn't see a package that provided a uniform way of dealing with the problem across multiple implementations.

Supported Implementations

Currently only SBCL has been tested (with :sb-package-locks enabled), but untested code is in place for acl, cmucl, and clisp.

Source

Can be fetched from my github repo.

If a request comes to package it, I'll do so.

Tips

Many times the forms that are needing WITHOUT-PACKAGE-LOCKS or WITH-PACKAGES-UNLOCKED often need to be wrapped in an EVAL-WHEN like so:

-(eval-when (:compile-toplevel :load-toplevel :execute)
-  (without-package-locks
-    (try-not :to #(break stuff) "here")))
-

Thanks

-To Zach Beane for QuickProject as well as his license file, which I tweaked a bit. Zach if you'd like me to change anything about the license, let me know.


-Topics: system programming
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-PDF.html b/clones/lisp/www.cliki.net/CL-PDF.html deleted file mode 100644 index c3c62929..00000000 --- a/clones/lisp/www.cliki.net/CL-PDF.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: CL-PDF - - - - - - - -
CL-PDF
CL-PDF is a cross-platform file format library for generating PDF files. It can be used for document preparation.

It does not need any third-party tools from Adobe or others.

It is released with a BSD-style license.

It can be downloaded with quicklisp.

The CL_PDF github repository can be found here.

The old CL-PDF home page: http://www.fractalconcept.com/asp/cl-pdf

A old version of the documentation can be found in cl-typesetting: cl-pdf-doc.pdf.



There are mailing lists and a code repository now. See home page for details.

CL-PDF is used by cl-typesetting, a Common Lisp typesetting engine.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-PLOT.html b/clones/lisp/www.cliki.net/CL-PLOT.html deleted file mode 100644 index 21c18d97..00000000 --- a/clones/lisp/www.cliki.net/CL-PLOT.html +++ /dev/null @@ -1,60 +0,0 @@ - - - - - CLiki: CL-PLOT - - - - - - - -
CL-PLOT
Plotting library for CL (and, mostly, LW CAPI). The library is organized around the following concepts:

    -
  • Datasets can be 2D or 3D (not yet). Each dataset contains data points that have the appropriate format. -
  • -
  • A graph is a container for the datasets and encapsulates the way a given set of datasets can be displayed. -
  • -
  • A device is the "output sink" of the plotting commands. Typically it is a window in a given gui. -
  • -
-Repository: https://gitlab.common-lisp.net/mantoniotti/cl-plot


-MIT-LICENSE
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-PLUS-SSL.html b/clones/lisp/www.cliki.net/CL-PLUS-SSL.html deleted file mode 100644 index b9a343d8..00000000 --- a/clones/lisp/www.cliki.net/CL-PLUS-SSL.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: CL-PLUS-SSL - - - - - - - -
CL-PLUS-SSL
This library is a fork of SSL-CMUCL. The original SSL-CMUCL source code was written by Eric Marsden and includes contributions by Jochen Schmidt. Development into CL+SSL was done by David Lichteblau. License: MIT-style.

Distinguishing features: CL+SSL is portable code based on CFFI and gray streams. It defines its own libssl BIO method, so that SSL I/O can be written over portable Lisp streams instead of bypassing the streams and sending data over Unix file descriptors directly. (But the traditional approach is still used if possible.)

Repository: https://github.com/cl-plus-ssl/cl-plus-ssl

Home page: https://common-lisp.net/project/cl-plus-ssl/


-networking protocol cryptography
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-PNG.html b/clones/lisp/www.cliki.net/CL-PNG.html deleted file mode 100644 index cc8f8cc3..00000000 --- a/clones/lisp/www.cliki.net/CL-PNG.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: CL-PNG - - - - - - - -
CL-PNG
CL-PNG reads and writes PNG (Portable Network Graphics) image files. It is implemented as a set of CFFI bindings to libpng.

License: LGPL

Homepage: http://www.ljosa.com/~ljosa/software/cl-png/.

Before version 0.5, CL-PNG was a native Common Lisp PNG reader/writer, instead of FFI bindings.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-PPCRE.html b/clones/lisp/www.cliki.net/CL-PPCRE.html deleted file mode 100644 index ff14537d..00000000 --- a/clones/lisp/www.cliki.net/CL-PPCRE.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-ppcre - - - - - - - -
cl-ppcre
A portable, Perl-compatible regular expression library by Edi Weitz.

CL-PPCRE was also used to implement The Regex Coach.

Homepage: at github.io

Repository: GitHub

License: BSD

Topics: regular expression

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-Pango.html b/clones/lisp/www.cliki.net/CL-Pango.html deleted file mode 100644 index bc5fbf9b..00000000 --- a/clones/lisp/www.cliki.net/CL-Pango.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: CL-Pango - - - - - - - -
CL-Pango
CL-PANGO is a cffi binding to the Pango text formatting library. -It is rude, crude, and raw, relying mostly on cffi calls.

Depends on: cffi, cl-cairo2, xmls

Repository: https://github.com/BradWBeer/CL-Pango

License: MIT


-Graphics Library FFI
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-RCFiles.html b/clones/lisp/www.cliki.net/CL-RCFiles.html deleted file mode 100644 index 9641b852..00000000 --- a/clones/lisp/www.cliki.net/CL-RCFiles.html +++ /dev/null @@ -1,60 +0,0 @@ - - - - - CLiki: CL-RCFiles - - - - - - - -
CL-RCFiles
This very small Common Lisp library provides a way to add initialization files -to ASDF systems. Every time ASDF loads , one or several corresponding -.lisp files are loaded automatically afterwards. This lets you -conditionally plug in additional behavior on a per-system basis without -cluttering up any global Common Lisp init file.

By default, these initialization files are expected to be found in: -

    -
  • ~/share/common-lisp/rc/pre/ for pre-loading initialization,
  • -
  • ~/share/common-lisp/rc/post/ for post-loading initialization.
  • -

The homepage of CL-RCFiles is here.


-CL-RCFiles is an ASDF-Extension written by Didier Verna...
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-RDFXML.html b/clones/lisp/www.cliki.net/CL-RDFXML.html deleted file mode 100644 index 6093fa44..00000000 --- a/clones/lisp/www.cliki.net/CL-RDFXML.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: CL-RDFXML - - - - - - - -
CL-RDFXML
CL-RDFXML is an RDF/XML parser written by Joshua Taylor. CL-RDFXML is well documented, and source is hosted on GitHub.

RDF/XML is an XML serialization of RDF graphs and one of the technologies underlying the Semantic Web. CL-RDFXML builds upon CXML (for XML processing) and Puri (for URIs).

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-REACTIVE.html b/clones/lisp/www.cliki.net/CL-REACTIVE.html deleted file mode 100644 index 27304eac..00000000 --- a/clones/lisp/www.cliki.net/CL-REACTIVE.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: CL-REACTIVE - - - - - - - -
CL-REACTIVE
Reactive programming at the variable/function level for Common Lisp.

Depends on: bordeaux-threads, closer-mop, trivial-garbage, anaphora

Repository: https://github.com/nklein/cl-reactive

License: Unlicense


-Dataflow
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-READLINE.html b/clones/lisp/www.cliki.net/CL-READLINE.html deleted file mode 100644 index 011d4a07..00000000 --- a/clones/lisp/www.cliki.net/CL-READLINE.html +++ /dev/null @@ -1,139 +0,0 @@ - - - - - CLiki: CL-READLINE - - - - - - - -
CL-READLINE
Common - Lisp bindings to GNU Readline -library.

The Readline library provides a set of functions for use by applications - that allow users to edit command lines as they are typed in. Both Emacs - and vi editing modes are available. The Readline library includes -additional functions to maintain a list of previously-entered command -lines, to recall and perhaps reedit those lines, and perform csh-like -history expansion on previous commands.

These bindings provide Lispy interface to GNU Readline somewhat reducing - its hair. Some minor features are omitted, they may be added by -request. Open an -issue if you have any propositions.

GitHub repository: https://github.com/vindarel/cl-readline

You - can install it via Quicklisp:

(ql:quickload "cl-readline") -

I created this bindings because Linedit didn't work for me. Also, Linedit doesn't have decent documentation, -that README file describing 4 functions doesn't count. So I did my best -to write proper documentation too.

Here is an example of cl-readline in action:

;;; Load some systems and define a package... - -(asdf:load-system :alexandria) -(asdf:load-system :cl-readline) - -(cl:defpackage :example - (:use #:common-lisp - #:alexandria) - (:export #:run-example)) - -(in-package :example) - -;;; Now let's define lists of verbs and fruits: - -(defvar *verbs* '("eat" "get" "throw" "quit")) -(defvar *fruits* '("banana" "apple" "orange" "banana_two")) - -;;; Define and register function that does custom completion: if user enters -;;; first word, it will be completed as a verb, second and later words will -;;; be completed as fruits. - -(defun custom-complete (text start end) - (declare (ignore end)) - (labels ((common-prefix (items) - (subseq - (car items) 0 - (position - nil - (mapcar - (lambda (i) - (every (lambda (x) - (char= (char (car items) i) - (char x i))) - (cdr items))) - (iota (reduce #'min (mapcar #'length items))))))) - (select-completions (list) - (let ((els (remove-if-not (curry #'starts-with-subseq text) - list))) - (if (cdr els) - (cons (common-prefix els) els) - els)))) - (if (zerop start) - (select-completions *verbs*) - (select-completions *fruits*)))) - -(rl:register-function :complete #'custom-complete) - -;;; Let's also create a custom command and bind it to some key sequence so -;;; user can invoke it. In this example user can automagically insert phrase -;;; 'inserted text' pressing Control-o. - -(defun print-some-text (arg key) - (declare (ignore arg key)) - (rl:insert-text "inserted text")) - -(rl:bind-keyseq "\\C-o" #'print-some-text) - -;;; Let's write novelty-check, so if the actual line is equal to the most -;;; recent history line it will not be added to the history. - -(defun novelty-check (x y) - (string/= (string-trim " " x) - (string-trim " " y))) - -;;; Finally, this is our main function. To exit from the loop, enter 'quit'. - -(defun run-example () - (do ((i 0 (1+ i)) - (text "")) - ((string= "quit" (string-trim " " text))) - (setf text - (rl:readline :prompt (format nil "[~a]> " i) - :add-history t - :novelty-check #'novelty-check)))) -

cl-readline is written and maintained by Mark Karpov.

It's distributed under GNU GPL.


Relevant topics: library, text, console

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-RFC2047.html b/clones/lisp/www.cliki.net/CL-RFC2047.html deleted file mode 100644 index 7ab3cb78..00000000 --- a/clones/lisp/www.cliki.net/CL-RFC2047.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: CL-RFC2047 - - - - - - - -
CL-RFC2047
CL-RFC2047 impements the encoding described by RFC 2047 (MIME).

It was originlly written by Christian Haselbach and is now maintained by Max Rottenkolber.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-RIFF.html b/clones/lisp/www.cliki.net/CL-RIFF.html deleted file mode 100644 index d2c1fcab..00000000 --- a/clones/lisp/www.cliki.net/CL-RIFF.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-riff - - - - - - - -
cl-riff
The Resource Interchange File Format (RIFF) is a generic file container format for storing data in tagged chunks. It is primarily used to store multimedia such as sound and video, though it may also be used to store any arbitrary data. Chunks are represented as plists, with accessor methods defined for chunk-id, chunk-data-size, chunk-data and file-type.

Repository: https://github.com/RobBlackwell/cl-riff


-BSD License
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-S3.html b/clones/lisp/www.cliki.net/CL-S3.html deleted file mode 100644 index 3b1a3f35..00000000 --- a/clones/lisp/www.cliki.net/CL-S3.html +++ /dev/null @@ -1,78 +0,0 @@ - - - - - CLiki: CL-S3 - - - - - - - -
CL-S3
CL-S3 is a Common Lisp library that implements a client interface to the Amazon S3 Web Service.

More specifically, CL-S3 -

    -
  • uses the Amazon S3 REST interface, part of the Amazon Web Services suite or protocols -
  • -
  • does proper authorization -
  • -
  • implements all S3 API calls with all options -
  • -
  • parses the XML returned by some of the API -
  • -
  • converts S3 error responses to proper Common Lisp condition objects -
  • -
  • allows custom meta header (including canned access policies) and query parameters -
  • -
  • does proper keep-alive processing (courtesy s-http-client) -
  • -
  • is portable over Common Lisp implementations (courtesy s-sysdeps) -
  • -
  • can optionally validate get and put object calls using MD5 hashing -
  • -
  • contains 2 example higher level functions converting XML to simpler data -
  • -
  • is properly packaged and has a documented public API -
  • -
  • should be installed using ASDF -
  • -

See also ZS3.


-LLGPL, web API
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-SDL.html b/clones/lisp/www.cliki.net/CL-SDL.html deleted file mode 100644 index ea48feb9..00000000 --- a/clones/lisp/www.cliki.net/CL-SDL.html +++ /dev/null @@ -1,64 +0,0 @@ - - - - - CLiki: CL-SDL - - - - - - - -
CL-SDL
CL-SDL is a set of Common Lisp bindings for the SDL graphics library, and OpenGL, using UFFI.


Unless you have a specific need for CL-SDL you should use lispbuilder-sdl. The CL-SDL project is not maintained anymore.


It currently runs, to some extent, on a number of platforms, such as -

    -
  • CMUCL/x86
  • -
  • ACL: Allegro/Linux/x86 and Allegro/win32
  • -
  • LispWorks/Linux/x86 and LispWorks/win32 (but only 2D so far)
  • -
  • SBCL/x86 and SBCL/PowerPC (but only certain demos don't crash)
  • -
  • OpenMCL/Darwin (it compiles/loads and hopefully might even work soon!)
  • -
  • CLISP using the UFFI wrapper macros from Sourceforge's CLISP Patches section. The demos report the same FPS rate as for CMUCL, which shows that their limiting speed factor is not bytecodes vs. native code, but probably the OpenGL/MESA libraries and hardware. -It doesn't quite work. Does anyone has info how to make at least part of it work on win32? Note: There are Win32 DLLs on the project website, dated March 14, 2004. -
  • -

The project page is at http://cl-sdl.sourceforge.net/.

Using CL-SDL with CLISP

You need the above UFFI wrappers. Additionally, I put - my patches to CL-SDL - on Sourceforge. That's how I got it running on Linux. I didn't try out MS-Windows. -- Jörg Höhle


Problem with the popular Nvidia proprietary binary OpenGL drivers on Linux and CL-SDL on CMUCL:

There is a problem with the "Thread Local Storage" (TLS) libraries of the nvidia drivers (and probably any other TLS libraries) in conjunction with CMUCL. A workaround is to set the environment variable LD_ASSUME_KERNEL=2.3.98 in the unix environment of your lisp process.

Upgrading to 0.6111 GNU/Linux driver version, problems related to Nvidia and TLS seem to be fixed.


-obsolete
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-SES4.html b/clones/lisp/www.cliki.net/CL-SES4.html deleted file mode 100644 index 456f85ec..00000000 --- a/clones/lisp/www.cliki.net/CL-SES4.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: CL-SES4 - - - - - - - -
CL-SES4
AWS SES email sender using Signature Version 4 of Amazon's API.

Depends on: dexador, ironclad, quri, cl-ppcre, local-time, arrow-macros, cl-base64, quickapp

Repository: https://github.com/Jach/cl-ses4

License: Unlicense


-Amazon Web Services
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-SMTP.html b/clones/lisp/www.cliki.net/CL-SMTP.html deleted file mode 100644 index 3a12ba4d..00000000 --- a/clones/lisp/www.cliki.net/CL-SMTP.html +++ /dev/null @@ -1,93 +0,0 @@ - - - - - CLiki: CL-SMTP - - - - - - - -
CL-SMTP
CL-SMTP is an SMTP (RFC 5321) client.

It works in ACL, SBCL, CMUCL, OPENMCL, LISPWORKS and CLISP.

Project Page: https://common-lisp.net/project/cl-smtp/

License: LLGPL

See also Franz's imap which has an SMTP client.

Version: 2019-10-31

    -
  • Fix rfc2045-q-encode-string for ascii character strings - and longer than 74 characters, make newline on next space in string -
  • -
  • add new test -
  • -

Version: 2015-10-23

    -
  • Fix error with single line with 1 dot -
  • -
  • Thanks Francesco Bracchi for the bug report and patch -
  • -
  • Add more tests for handle single line dot in mask-dot and -in rfc2045-q-encode-string-to-stream -
  • -
  • Add optional argument CATCH-ERRORS to run-tests, default is T -
  • -

Version: 2014-01-28

    -
  • Add patch for converted username and password to base64 string, -
  • -
  • ignore default wrap columns 80, so that no newline is inserted. -
  • -
  • Thanks Helmut G. Enders for the bug report and patch -
  • -

Version: 2010-06-21

    -
  • Rewrite base64-encode-file in attachments.lisp, fixed wrap at column -
  • -
  • and add #\Return#\Newline after each column, ignore keyword buffer-size. -
  • -
  • Fixed string-to-base64-string allegro part in cl-smtp.lisp (wrap-at-column nil). -
  • -
  • Fixed finish-smtp-mail in cl-smtp, not use fresh-line on stream, send #\Return#\Newline. -
  • -
  • Add test for base64-encode-file. -
  • -

Version: 2010-05-05

    -
  • Rewrite encoding functions, now it is possible to use non ascii characters in header values and in attachment filenames. -
  • -
  • New keyword argument external-format (default :utf-8). -
  • -
  • New class attachment, with slots attachment-name and attachment-mime-type, and a constructor function make-attachment. -
  • -


-Topics: email
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-SOAP.html b/clones/lisp/www.cliki.net/CL-SOAP.html deleted file mode 100644 index f62d48e1..00000000 --- a/clones/lisp/www.cliki.net/CL-SOAP.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: CL-SOAP - - - - - - - -
CL-SOAP
CL-SOAP is a open-source (LLGPL) project hosted at https://common-lisp.net/project/cl-soap/ (broken links on this page).

Ultimately, this library will implement the full SOAP 1.1 spec (https://www.w3.org/TR/2000/NOTE-SOAP-20000508), both the client and server parts, using both HTTP and HTTPS as transports as well as the WSDL 1.1 spec (https://www.w3.org/TR/2001/NOTE-wsdl-20010315) and the XML Schema Definition spec (https://www.w3.org/TR/xmlschema-1/ and https://www.w3.org/TR/xmlschema-2/) on as many CL implementations as possible. Interoperability with various other SOAP implementations and applications will be possible.

CL-SOAP was started by Sven Van Caekenberghe.

Repository: https://gitlab.common-lisp.net/cl-soap/cl-soap

Related: s-xml

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-Selenium.html b/clones/lisp/www.cliki.net/CL-Selenium.html deleted file mode 100644 index 6d7f9235..00000000 --- a/clones/lisp/www.cliki.net/CL-Selenium.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: CL-Selenium - - - - - - - -
CL-Selenium
CL-Selenium is an interface to the Selenium web app testing system.

Project Homepage: https://common-lisp.net/project/cl-selenium/

Depends on: drakma, split-sequence, puri, cl-ppcre, cxml

Repository: https://github.com/html/cl-selenium

License: LLGPL

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-Sendmail.html b/clones/lisp/www.cliki.net/CL-Sendmail.html deleted file mode 100644 index 799b7d76..00000000 --- a/clones/lisp/www.cliki.net/CL-Sendmail.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: CL-Sendmail - - - - - - - -
CL-Sendmail
CL-Sendmail is a library for sending email using the external program 'sendmail'.

It currently supports MIME through use of CL-MIME. It will automatically load and attach any attachments specified by pathname which CL-MIME will then automatically encode. xmls-tools is used to allow XHTML emails to be written for which text alternatives are automatically generated and included with the MIME message. XHTML emails also have any images on the local filesystem automatically loaded and attached.

CL-Sendmail was written by Robert Marlow

Download CL-Sendmail from http://www.bobturf.org/software/cl-sendmail/

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-Sokoban.html b/clones/lisp/www.cliki.net/CL-Sokoban.html deleted file mode 100644 index 2ea35b30..00000000 --- a/clones/lisp/www.cliki.net/CL-Sokoban.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: CL-Sokoban - - - - - - - -
CL-Sokoban
CL-Sokoban implements the classic game Sokoban. It has a dumb, unplayable UI that will work on any implementation, a simple terminal UI that ECL compiles to an executable, and an Emacs UI, using SLIME, that runs nicely off of SBCL. More are wanted.

Think of it as an exercise in showing how a 'common' codebase can take easy advantage of the special abilities of the various implementations.

Also, Sokoban is a pretty fun game :-)

Original repository is gone, but can still be found included as "3rd-party" code, with a modern QML UI.


-Game
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-SpiderMonkey.html b/clones/lisp/www.cliki.net/CL-SpiderMonkey.html deleted file mode 100644 index d92761f6..00000000 --- a/clones/lisp/www.cliki.net/CL-SpiderMonkey.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: CL-SpiderMonkey - - - - - - - -
CL-SpiderMonkey
CL-SpiderMonkey is a Common Lisp library for interacting with Javascript through the Mozilla SpiderMonkey library.

License: MIT

Homepage: http://github.com/gonzojive/cl-spidermonkey

Author: Red Daly

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-TELNETD.html b/clones/lisp/www.cliki.net/CL-TELNETD.html deleted file mode 100644 index 1c32615a..00000000 --- a/clones/lisp/www.cliki.net/CL-TELNETD.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: CL-TELNETD - - - - - - - -
CL-TELNETD
CL-TELNETD is a CL telnet networking server. It currently is designed for use with SBCL and its native thread support on Linux/x86, however it could be ported to other platforms. CL-TELNETD aims to implement as many of the TELNET protocol extensions as is possible and practical.

CL-TELNETD will implement Dan Bernstein's Q Method of option negotiation, widely perceived to be the Right Way of getting TELNET options to work even if the client is a moronic implementation such as Windows Telnet. Not all options will be implemented, particularly those which seem to have no useful purpose on the modern network, e.g. SPX Authentication and Extended ASCII Option. Initially no effort will be expended on implementing the plethora of authentication and encryption options, since there are other products such as SSH which have largely supplanted the use of TELNET for this purpose.

Homepage: http://common-lisp.net/project/cl-telnetd/

License: Public Domain

Source repository: https://gitlab.common-lisp.net/cl-telnetd/cl-telnetd

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-TLS.html b/clones/lisp/www.cliki.net/CL-TLS.html deleted file mode 100644 index a63cc107..00000000 --- a/clones/lisp/www.cliki.net/CL-TLS.html +++ /dev/null @@ -1,58 +0,0 @@ - - - - - CLiki: CL-TLS - - - - - - - -
CL-TLS
CL-TLS is a prototype Common Lisp implementation of TLS and related protocols and standards including:

    -
  • RFC5246
  • -
  • ASN.1
  • -
  • x{501,509}
  • -
  • PKCS{1,3,5,8}
  • -
-Note: "The project is currently in its early development phase and should only be used for experimental purposes."

Repository: https://github.com/shrdlu68/cl-tls/

License: BSD


-networking cryptography
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-UNIFICATION.html b/clones/lisp/www.cliki.net/CL-UNIFICATION.html deleted file mode 100644 index 05aa5e53..00000000 --- a/clones/lisp/www.cliki.net/CL-UNIFICATION.html +++ /dev/null @@ -1,82 +0,0 @@ - - - - - CLiki: cl-unification - - - - - - - -
cl-unification
Provides unification (as used in Prolog) over fairly arbitrary Common Lisp objects.

Examples:

A simple match: -

(unify 42 '?x) -;; => #<ENVIRONMENT xxxxxx> - -(find-variable-value '?x *) -;; => 42 -

Unification over a list: -

(unify '(1 2 3 4 5) #T(list 1 ?x &rest ?rest)) -;; => #<ENVIRONMENT xxxxxxx> - -(find-variable-value '?rest *) -;; => (3 4 5) -;; T -

Unification over a vector: -

(unify #(1 2 3 4 5) #T(vector 1 ?x &rest ?rest)) -;; => #<ENVIRONMENT xxxxxxx> - -(find-variable-value '?rest *) -;; => #(3 4 5) -

Unification over a structure: -

(defstruct foo () (a 42)) -;; => FOO - -(defstruct (baz (:include foo)) (b 33)) -;; => BAZ - -(unify (make-baz) #T(foo foo-a ?x)) -;; => #<ENVIRONMENT xxx> - -(find-variable-value '?x *) -;; => 42 -;; T

Homepage: http://common-lisp.net/project/cl-unification/

License: BSD

Repository: common-lisp.net

pattern matching, unification

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-UTILITIES.html b/clones/lisp/www.cliki.net/CL-UTILITIES.html deleted file mode 100644 index 12b63cc9..00000000 --- a/clones/lisp/www.cliki.net/CL-UTILITIES.html +++ /dev/null @@ -1,72 +0,0 @@ - - - - - CLiki: cl-utilities - - - - - - - -
cl-utilities
A library of semi-standard utilities.

This implements and supersedes the Common Lisp Utilities, things that everybody writes since they're not part of the official standard. The code is stable and mature, tested on multiple Lisp implementations, and it has the kind of copious error checking that everyone wants but few ever have time to write.

What is included:

    -
  • SPLIT-SEQUENCE, SPLIT-SEQUENCE-IF, SPLIT-SEQUENCE-IF-NOT. Used for splitting sequences. -
  • -
  • EXTREMUM, EXTREMA, N-MOST-EXTREME: Finding extreme values in sequences based on user-defined criteria. -
  • -
  • READ-DELIMITED reads from a sequence delimited somehow, in a somewhat inconvenient but hopefully efficient way. -
  • -
  • EXPT-MOD, an interface for calculating (mod (expt n e) m) efficiently across implementations. -
  • -
  • WITH-UNIQUE-NAMES, née WITH-GENSYMS. A classic macro-writing macro for preventing variable capture. -
  • -
  • COLLECTING, WITH-COLLECTORS. Some macros for clearly and efficiently collecting items into lists. -
  • -
  • ONCE-ONLY, a classic macro-writing macro for preventing multiple evaluation. -
  • -
  • ROTATE-BYTE rotates bits in a byte -
  • -
  • COPY-ARRAY shallow copies arrays. -
  • -
  • COMPOSE. Composes functions. -
  • -

License: Public Domain

Homepage: http://common-lisp.net/project/cl-utilities/

Manual: http://common-lisp.net/project/cl-utilities/doc/

Maintainer: Peter Scott

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-V4L2.html b/clones/lisp/www.cliki.net/CL-V4L2.html deleted file mode 100644 index a67d3743..00000000 --- a/clones/lisp/www.cliki.net/CL-V4L2.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: CL-V4L2 - - - - - - - -
CL-V4L2
cl-v4l2 is a CFFI interface to Video4Linux2.

You can get sources at repo.or.cz

cl-v4l2 is a kind of graphics library, its author is Vitaly Mayatskikh.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-VECTORS.html b/clones/lisp/www.cliki.net/CL-VECTORS.html deleted file mode 100644 index 5f9ede22..00000000 --- a/clones/lisp/www.cliki.net/CL-VECTORS.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-vectors - - - - - - - -
cl-vectors
cl-vectors is a pure CL vector rasterization and manipulation system.

cl-vectors is available here.

Repository: https://github.com/fjolliton/cl-vectors

License: MIT

2007-04-16 - I (Frederic Jolliton) have added a signature to the archive. My key dedicated to package signature can be found at http://projects.tuxee.net/key.


-graphics library
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-WEBDAV.html b/clones/lisp/www.cliki.net/CL-WEBDAV.html deleted file mode 100644 index c474d1b2..00000000 --- a/clones/lisp/www.cliki.net/CL-WEBDAV.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: CL-WEBDAV - - - - - - - -
CL-WEBDAV
CL-WEBDAV is a WebDAV server written in Common Lisp and based on Hunchentoot.

It's written by Edi Weitz and can be found at http://weitz.de/cl-webdav/.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-WHO.html b/clones/lisp/www.cliki.net/CL-WHO.html deleted file mode 100644 index d7cb95fc..00000000 --- a/clones/lisp/www.cliki.net/CL-WHO.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-who - - - - - - - -
cl-who
CL-WHO is yet another html generator library, that is, it's a Web library to create (X)HTML from S-expressions. If you've seen one, you've seen them all... :)

This one's by Edi Weitz and is at http://weitz.de/cl-who/.

-Darcs repo:

http://common-lisp.net/~loliveira/ediware/cl-who


HTML template

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-WIKI.html b/clones/lisp/www.cliki.net/CL-WIKI.html deleted file mode 100644 index 9dd82904..00000000 --- a/clones/lisp/www.cliki.net/CL-WIKI.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: CL-WIKI - - - - - - - -
CL-WIKI
CL-WIKI is a wiki engine for Common Lisp. The web needs more wikis.

Wikis run with cl-wiki: ?

CMS/Websites run with cl-wiki: LispNYC.org, Hamburg Lispers

License: LLGPL

It's written by Stefan Scholl.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-Weblocks.html b/clones/lisp/www.cliki.net/CL-Weblocks.html deleted file mode 100644 index cbb13f3c..00000000 --- a/clones/lisp/www.cliki.net/CL-Weblocks.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-weblocks - - - - - - - -
cl-weblocks
cl-weblocks is a continuation-based web framework written in Common Lisp. See its project page at http://weblocks-framework.info/ and its demo.

Evaluation, 20100901

A very brief assessment of all web frameworks listed in cliki was carried out in September 2010. This assessment comprised: check websites, download source if available, attempt to compile, review documentation.

The review found that cl-weblocks had a polished installer, and after installation was easy to start working with. Documentation was limited but what there was was well presented. It was the most promising of the frameworks reviewed, definitely worth investigating further.

Reblocks ongoing work, 2017

A Lisp hacker has started to work on Weblocks. We can see a working quickstart for a todo-mvc app, a changelog, an app being constructed and a (closed-source) website of russians fairy-tales.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-Wiki.html b/clones/lisp/www.cliki.net/CL-Wiki.html deleted file mode 100644 index 9dd82904..00000000 --- a/clones/lisp/www.cliki.net/CL-Wiki.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: CL-WIKI - - - - - - - -
CL-WIKI
CL-WIKI is a wiki engine for Common Lisp. The web needs more wikis.

Wikis run with cl-wiki: ?

CMS/Websites run with cl-wiki: LispNYC.org, Hamburg Lispers

License: LLGPL

It's written by Stefan Scholl.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-Wise.html b/clones/lisp/www.cliki.net/CL-Wise.html deleted file mode 100644 index 64237e6d..00000000 --- a/clones/lisp/www.cliki.net/CL-Wise.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: CL-Wise - - - - - - - -
CL-Wise
CL-Wise is a semantic wiki. It is a semantic web application. CL-Wise's key innovation is to decouple the URL of a wiki document from the concepts that the document discusses. It is an experiment in exploring how semantic wikis might implement ontology modeling.

CL-Wise is authored by Sunil Mishra. It builds on top of XL-Wiki, SCOLI and CLOVER.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-XML.html b/clones/lisp/www.cliki.net/CL-XML.html deleted file mode 100644 index bfe7f2ba..00000000 --- a/clones/lisp/www.cliki.net/CL-XML.html +++ /dev/null @@ -1,63 +0,0 @@ - - - - - CLiki: CL-XML - - - - - - - -
CL-XML
CL-XML is an XML parser.

Homepage: http://common-lisp.net/project/cl-xml/

License: LGPL

Various informative statements about it from the homepage and -the CL-XML documentation:

- CL-XML is a collection of Common LISP modules for data stream parsing and serialization according to the "Extensible Markup Language" and ancillary standards. The modules perform parsing and serialization between XML, XML Query, and XML Path expressions and DOM-compatible CLOS instances. The XML processor includes a conformant, validating, namespace-aware model-based parser. It supports, in particular, namespace-aware DTD-based validation. The XPATH module comprises LISP bindings for the XML Path library, an S-expression-based namespace-aware path model, and a macro-based path model compiler which implements an XPATH-algebra. The XQUERY module comprises LISP bindings for the XML Query library, an S-expression-based query model which incorporates the XPATH facilities, and a macro-based query compiler. The base CLOS model implements the XML Query Data Model in a class hierarchy which presents an Infoset compatible programming interface. -

The respective releases have been tested with

    -
  • ALLEGRO(5.0.1, 6.2) - CL-HTTP
  • -
  • LispWorks(4, 4.3) - CL-HTTP
  • -
  • MCL(4.2, 5.0) +/- CL-HTTP(cl-http-70-190)
  • -
  • openmcl
  • -
  • cmucl (latest test was with p.mai's osx port)
  • -
  • scieneer
  • -
-

CL-XML supports both DOM-based parsing and Event-based parsing. For the latter method, two event-based interfaces are provided -- one, on a lower level, and another, as a SAX equivalent. The DOM-based (i.e.: model-based) method is the default. DOM-based and Event-based methods may be used together, in the same application.

The XML, XPath, and XQuery parsers are generated from BNF files, which are available at the main CL-XML page.

CL-XML, version 0.915, also includes a contributed SOAP module

SBCL Note: I was able to get the library working with SBCL, ASDF, and common-lisp-controller on my Gentoo box. (brad at sankatygroup dot com).
To pull the library with my changes (which are questionable on other Lisp implementations), use your favorite Subversion client and do: -

svn co svn://common-lisp.net/project/cl-xml/svn/branches/sbcl-0.9.x-testing /path/to/local/working/copy
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-Yacc.html b/clones/lisp/www.cliki.net/CL-Yacc.html deleted file mode 100644 index ed222c52..00000000 --- a/clones/lisp/www.cliki.net/CL-Yacc.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: CL-Yacc - - - - - - - -
CL-Yacc
CL-Yacc is a LALR(1) parser generator for Common Lisp, somewhat like Zebu or lalr.cl.

CL-Yacc was written by JCh.

See the CL-Yacc home page, the CL-Yacc source tree.


-text parser
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CL-ZEROCONF.html b/clones/lisp/www.cliki.net/CL-ZEROCONF.html deleted file mode 100644 index 3014de4e..00000000 --- a/clones/lisp/www.cliki.net/CL-ZEROCONF.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: CL-ZEROCONF - - - - - - - -
CL-ZEROCONF
CL-ZEROCONF is a networking library for Lisp that handles Zeroconf service discovery (popularized by Apple's implementation, originally called Rendezvous and renamed to Bonjour for OS X 10.4).

-CL-ZEROCONF is copyright John Wiseman and is covered by the MIT license.

See the project page for more information.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLACHE.html b/clones/lisp/www.cliki.net/CLACHE.html deleted file mode 100644 index 1985ee21..00000000 --- a/clones/lisp/www.cliki.net/CLACHE.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: CLACHE - - - - - - - -
CLACHE
CLACHE is a general caching library for CL. The API is similar to the standard hash-table interface.

Depends on: alexandria, trivial-garbage, babel, ironclad, cl-fad, cl-store, cl-annot, cl-syntax

Repository: https://github.com/html/clache

License: LLGPL


-cache
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLAD.html b/clones/lisp/www.cliki.net/CLAD.html deleted file mode 100644 index 6bbaf9bd..00000000 --- a/clones/lisp/www.cliki.net/CLAD.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: CLAD - - - - - - - -
CLAD
The Common Lisp Application Directories (CLAD) library is a simple API -collection that provides access to a set of "standard" Common Lisp folders on a "per-application" or "per-library" basis.


-compatibility layers
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLAIM.html b/clones/lisp/www.cliki.net/CLAIM.html deleted file mode 100644 index 9bc7c4ba..00000000 --- a/clones/lisp/www.cliki.net/CLAIM.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: CLAIM - - - - - - - -
CLAIM
CLAIM is an implementation of AOL's semi-open Instant Messaging protocol, TOC (see PROTOCOL.txt). It allows one to build chatbots and other AIM clients.

CLAIM is copyright I/NET Inc. and is covered by the MIT License.

See the CLAIM project page for more information.


-Topics: messaging
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLAW.html b/clones/lisp/www.cliki.net/CLAW.html deleted file mode 100644 index f3f22d5f..00000000 --- a/clones/lisp/www.cliki.net/CLAW.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: CLAW - - - - - - - -
CLAW
Common Lisp autowrapping facility for quickly creating -clean&lean bindings to C libraries (C++ support pending).

Depends on: alexandria, cl-ppcre, local-time, cl-json, cffi, trivial-features, c2ffi

Repository: https://github.com/borodust/claw

License: BSD 2-Clause


-FFI
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLAWK.html b/clones/lisp/www.cliki.net/CLAWK.html deleted file mode 100644 index 5467eb18..00000000 --- a/clones/lisp/www.cliki.net/CLAWK.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: CLAWK - - - - - - - -
CLAWK
CLAWK is an AWK text manipulation language implementation embedded into Common Lisp, by Michael Parker.

Homepage: http://www.foldr.org/~michaelw/lisp/clawk/#clawk

License: BSD

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLCB.html b/clones/lisp/www.cliki.net/CLCB.html deleted file mode 100644 index 4f744fc6..00000000 --- a/clones/lisp/www.cliki.net/CLCB.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: CLCB - - - - - - - -
CLCB
The Common Lisp Computational Biology (CLCB) package aims to be a comprehensive, flexible and easy to use library for bioinformatics and computational biology. It's main strength is currently the incoporated Ensembl interface.

License: MIT

Homepage: https://sourceforge.net/projects/clcb/

Source repository: https://sourceforge.net/p/clcb/code/HEAD/tree/trunk/

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLCE.html b/clones/lisp/www.cliki.net/CLCE.html deleted file mode 100644 index 25bf2cfb..00000000 --- a/clones/lisp/www.cliki.net/CLCE.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: CLCE - - - - - - - -
CLCE
CLCE (Common Lisp Composition Environment) is a complete environment for Musical composition based on the Common Lisp language and on the MidiShare operating system. CLCE is in the line of our works on compositional languages. It allows the treatment of compositional problems and writing of interactive works in a homogeneous way, with a set of tools which can be used both in real time and delayed time.

Repository: https://github.com/sletz/CLCE

License: LGPL

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLDB.html b/clones/lisp/www.cliki.net/CLDB.html deleted file mode 100644 index f99c3749..00000000 --- a/clones/lisp/www.cliki.net/CLDB.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: CLDB - - - - - - - -
CLDB
A fast, atomic, consistent, isolated memory based database in Common Lisp.

CLDB currently only works in Clozure Common Lisp, as this is what we use internally.

Repository: https://github.com/Virtual-Insurance-Products/cldb

License: GPL3


-persistence
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLDOC.html b/clones/lisp/www.cliki.net/CLDOC.html deleted file mode 100644 index 8580bf07..00000000 --- a/clones/lisp/www.cliki.net/CLDOC.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: CLDOC - - - - - - - -
CLDOC
CLDOC reads lisp source files and generates documentation using the selected output driver. It currently has an HTML driver that generates XHTML 1.0 Strict. This HTML driver has some simple DWIM (Do What I Mean) capabilities using the doctree string parser facilities.

This project has been mainly inspired by user-manual from Mark Kantrowitz, the CSS file Gilbert Baumann made for McCLIM documentation and of course by the JavaDoc tool from Sun.

Repository: https://github.com/danlentz/cldoc

License: LLGPL


-Documentation Tool
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLEE.html b/clones/lisp/www.cliki.net/CLEE.html deleted file mode 100644 index f2b25dec..00000000 --- a/clones/lisp/www.cliki.net/CLEE.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: CLEE - - - - - - - -
CLEE
Unmaintained libevent bindings.

This was just an experimental project. Not in development anymore.

CLEE - Yet another libevent binding for Common Lisp.

Homepage: https://github.com/fukamachi/clee

See also: IOLib, cl-event


-obsolete, MIT-LICENSE
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLERIC.html b/clones/lisp/www.cliki.net/CLERIC.html deleted file mode 100644 index cd468f0c..00000000 --- a/clones/lisp/www.cliki.net/CLERIC.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: CLERIC - - - - - - - -
CLERIC
CLERIC (Common Lisp Erlang Interface) is an implementation of the Erlang distribution protocol, comparable with erl_interface and jinterface.

Project home page: http://common-lisp.net/project/cleric/


-Topics: ffi distributed networking
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLEWS.html b/clones/lisp/www.cliki.net/CLEWS.html deleted file mode 100644 index 37e5d5d6..00000000 --- a/clones/lisp/www.cliki.net/CLEWS.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: CLEWS - - - - - - - -
CLEWS
Common Lisp Educational Web Server (CLEWS) is a platform for developing educational web applications, providing systems for peer-review assessments, discussion assessments, adaptive tutorials and course management.

Homepage: http://www.jarw.org.uk/lisp/clews.html

Depends on: jarw, jarw-inet, md5, jarw-markup, jarw-dictionary

Source repository: https://github.com/willijar/CLEWS

License: GPL3


-Topics: CMS
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLFSWM.html b/clones/lisp/www.cliki.net/CLFSWM.html deleted file mode 100644 index abc0b111..00000000 --- a/clones/lisp/www.cliki.net/CLFSWM.html +++ /dev/null @@ -1,61 +0,0 @@ - - - - - CLiki: clfswm - - - - - - - -
clfswm
CLFSWM is a 100% Common Lisp X11 window manager (based on Tinywm and Stumpwm. Many thanks to them). -It can be driven only with the keyboard or with the mouse. -

-A display contains a root frame and its children. A child can be a window or another frame. The root frame or its children can be the current root. The current root is fullscreen maximized (no decorations, no buttons, no menus: nothing, just the application fullscreen!).

CLFSWM is highly dynamic. By default there is only one frame (the root frame). Other frames are created/deleted on the fly. A window can be in more than one frame, so it can have multiple views of the same windows.

Using CLFSWM is like walking through a tree of frames and windows. Enter in a child to make it the current root and make it fullscreen maximized. Leave it to make its parent the current root.

There is no more need for a pager: you are in the pager!

For its binding, CLFSWM has two modes: A main mode with minimal keys and mouse grabbing to avoid conflicts with others applications. And a second mode with more keys and mouse actions. For details of its usage, have a look at the files doc/keys.txt or doc/keys.html.

A lot of functions to manage CLFSWM can be found in the second mode menu. See the files doc/menu.txt or doc/menu.html for an overview.

A frame can be placed anywhere in its parent frame. And can have different layouts to automatically manage its children (tile, tile to left, to bottom, no layout...).

Some actions can be performed by clicking on screen corners. -For example a left click on the bottom right corner give you an OS X Exposé like. A left click on the top right corner show/hide a virtual keyboard . And a right click on the top left corner show/hide a terminal (like a quake console)... -See doc/corner.txt or doc/corner.html for a summary. -

- Source code (GPL), screenshots, animations and more details are available on -http://common-lisp.net/project/clfswm/ -


-CLX
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLG.html b/clones/lisp/www.cliki.net/CLG.html deleted file mode 100644 index e501b553..00000000 --- a/clones/lisp/www.cliki.net/CLG.html +++ /dev/null @@ -1,65 +0,0 @@ - - - - - CLiki: clg - - - - - - - -
clg
Espen Johnsen's GTK bindings for CMUCL, SBCL and CLISP. It supports GTK+ 2. Now at version 0.93, was observed working under Linux and Solaris.

CMUCL-specific notes: This is a single-process solution which integrates with SERVE-EVENT. You need to rebuild your CMUCL with -rdynamic added to the linker flags before clg will build (tip: get the Debian packages, they rebuild with a simple "make"). You can also look at cl-gtk, which uses a `talk down a pipe to a separate server' approach like CLM.

clg works with Glade. The quickest route to "hello world" using CMUCL is

-
-1) fetch clg, ./configure && make cmucl 
-2) fetch Glade.  Doodle.  Save your file somewhere
-3) make test in cmucl (easiest way to get it to load all the foreign stuff)
-4) 
-* (load "../src/read-xml")   
-T
-* (load "../src/glade") 
-T
-* (load-interface #p"/home/dan/Projects/project1/project1.glade")
-
-;;; window pops up
-
-

See http://sourceforge.net/projects/clg

Running on recent lisp implementations

As of 2012, the version of CLG on sourceforge.net hasn't been updated in some time. Because it uses internals of its host implementation's MOP, it has broken on recent SBCLs. I have a version up at github, which compiles at least (on SBCL). There are still problems with a couple of the tests on the standard GTK example, which I haven't yet fixed.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLHP.html b/clones/lisp/www.cliki.net/CLHP.html deleted file mode 100644 index 1314e4c6..00000000 --- a/clones/lisp/www.cliki.net/CLHP.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - CLiki: clhp - - - - - - - -
clhp
CLHP is the Common Lisp Hypertext Preprocessor - a Web programming language. As you might infer from the name, it is similar in capabilities to PHP, only it uses Common Lisp as its underlying language, rather than the C-like language that PHP uses. It is copyrighted under the Lesser GNU Public License (or LGPL)

The name CLHP implies that it can only be used in Hypertext contexts, however CLHP allows Lisp code to be embedded in XML via XML processing instructions, which means it can be included in any XML document and still allow the document to be considered valid XML. In this respect CLHP could be used in any application where a high level language is desirable as part of an XML solution.

It is currently in an alpha stage, but is quite useable. At this point, it is implemented in and requires CMUCL. It is integrated as an Apache module, so Apache is required.

--Anthony Ventimiglia


-web framework
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLHS.html b/clones/lisp/www.cliki.net/CLHS.html deleted file mode 100644 index 8043df22..00000000 --- a/clones/lisp/www.cliki.net/CLHS.html +++ /dev/null @@ -1,75 +0,0 @@ - - - - - CLiki: CLHS - - - - - - - -
CLHS
The Common Lisp HyperSpec (CLHS) is a non-free hyperlinked version of the ANSI Common Lisp Standard. You may find an online version of the HyperSpec at:

The CLHS may be downloaded gratis but has certain restrictions that make it strictly speaking non-free. -
Also available in Debian as package hyperspec, and from Quicklisp through the clhs ASDF wrapper: (ql:quickload "clhs").

"Getting started with the Common Lisp HyperSpec" is a small FAQ-style introductory article to the CLHS.

The CLHS index prior to version 5 does not index -either format operands or # read macros very well. -You want to get version 5 or newer of the CLHS. -If the CLHS has a gray background, you have a -version which was released prior to version 5.

    -
  • -dpans2texi might be closer to what you're looking for. -
  • -
  • If you are using Emacs, you can use clhs.el which comes with CLISP. -
  • -
  • See the syntax for embedding HyperSpec references into CLiki pages. -
  • -
-
-Tip: If you want it all in Lisp, you can make Erik Naggum's hyperspec.el open HyperSpec-Pages in Closure. Sample elisp code using ELI:

(setq browse-url-browser-function 'browse-url-closure) -(defun browse-url-closure (url &optional new-window) - (fi:eval-in-lisp "(closure::visit \"%s\")" url))
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLIM-desktop.html b/clones/lisp/www.cliki.net/CLIM-desktop.html deleted file mode 100644 index 96f17c56..00000000 --- a/clones/lisp/www.cliki.net/CLIM-desktop.html +++ /dev/null @@ -1,123 +0,0 @@ - - - - - CLiki: clim-desktop - - - - - - - -
clim-desktop
CLIM-desktop integrates several McCLIM apps to make a Common Lisp development environment.


This list stolen from IDE. -Tools provided by a Common Lisp IDE:

    -
  • Editor: -
    • State: Usable
    -
  • -
  • Listener -
    • State: Usable
    -
  • -
  • Inspector -
    • State: Usable. Integrated into Debugger.
    -
  • -
  • Apropos Dialog -
    • State: MISSING. There is an Apropos command in the Listener.
    -
  • -
  • Stepper -
    • State: MISSING
    -
  • -
  • Trace Dialog -
    • State: MISSING
    -
  • -
  • Backtrace Dialog -
    • State: Usable (from McCLIM debugger)
    -
  • -
  • Restarts Dialog -
    • State: Usable (from McCLIM debugger)
    -
  • -
  • Save Application Dialog -
    • State: What would this mean?
    -
  • -
  • Preferences Dialog -
    • State: MISSING. No ability to configure apps.
    -
  • -
  • Online Help -
    • State: Somewhat here. Closure is used to browse the CLHS.
    -
  • -
  • User Interface Builder -
    • State: MISSING. CLIB looked promising, but the source is nowhere to be found.
    -
  • -
  • Class Browser -
    • State: Somewhat here. Gilbert Baumann's class-browser.lisp is included. Not integrated.
    -
  • -
  • Generic Function Browser -
    • State: MISSING. Some of this functionality is in the Listener.
    -
  • -
  • System Browser -
    • State: MISSING
    -
  • -
  • Package Browser -
    • State: MISSING
    -
  • -
  • Process Browser -
    • State: MISSING
    -
  • -
  • Mail Client (!!) -
    • State: MISSING
    -
  • -


-Application, MIT-License
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLIM.html b/clones/lisp/www.cliki.net/CLIM.html deleted file mode 100644 index 7a7ffb30..00000000 --- a/clones/lisp/www.cliki.net/CLIM.html +++ /dev/null @@ -1,110 +0,0 @@ - - - - - CLiki: CLIM - - - - - - - -
CLIM
The Common Lisp Interface Manager (CLIM) is a Lisp-based programming interface specification that provides a layered set of portable facilities for constructing GUIs. These include basic windowing, input, output, and graphics services; stream-oriented input and output extended with facilities such as output recording, presentations, and context sensitive input; high level "formatted output" facilities; application building facilities; command processing; and a compositional toolkit similar to those found in the X world that supports look and feel independence.

McCLIM is a Free Software implementation of CLIM

Information about CLIM: -

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLIO.html b/clones/lisp/www.cliki.net/CLIO.html deleted file mode 100644 index fddba8f1..00000000 --- a/clones/lisp/www.cliki.net/CLIO.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: CLIO - - - - - - - -
CLIO
Common Lisp Interactive Objects (CLIO) is a set of CLOS classes that represent the standard components of an object-oriented user interface --- such as text, menus, buttons, scroller, and dialogs. CLIO is designed to be part of a portable GUI library written in Common Lisp, and is based on CLX, CLUE, and CLOS. CLIO specifies an application program interface that is look-and-feel independent. That is, the look-and-feel of CLIO components is encapsulated within the implementation of the CLIO interface. A sample implementation for OPEN LOOK is provided.

Download: http://www.cs.cmu.edu/afs/cs.cmu.edu/project/ai-repository/ai/lang/lisp/gui/clue/0.html

License: X11-like


-CMU AI Repository
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLISP-Shell.html b/clones/lisp/www.cliki.net/CLISP-Shell.html deleted file mode 100644 index 0b20bc57..00000000 --- a/clones/lisp/www.cliki.net/CLISP-Shell.html +++ /dev/null @@ -1,240 +0,0 @@ - - - - - CLiki: CLISP-Shell - - - - - - - -
CLISP-Shell
A description of how to make CLISP work as a Unix shell. - The official location of this text is -here. - The following was posted to comp.lang.lisp by Peter Wood:

-
-The following works for me:
-
-*DISCLAIMER:  Use at own risk.  Exercise care. Make backups of anything
-you change.*
-
-On linux, you need to have built your clisp with the
-"--with-modules=bindings/linuxlibc6" option, and you should *not* have
-compiled it without readline. See the build instructions and Makefile.
-
-STEP 1
-
-Put /usr/bin/clisp in /etc/shells so it looks (something like) this:
-
-# /etc/shells: valid login shells
-#/bin/ash
-/bin/bash
-/bin/sh
-/usr/bin/clisp 
-
-STEP 2
-
-You can set up your $PATH In /etc/login.defs by modifying the entry
-for ENV_PATH to look (something) like this:
-
-ENV_PATH        PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin
-
-This is so you can run X.
-
-[Once you have your clisp shell set up, you can control the
-environment variables (on Linux) via the linuxlibc6 bindings (see
-$clisp-src/modules/bindings/linuxlibc6/linux.lisp): setenv, putenv,
-getenv, etc]
-
-STEP 3
-
-The "startx" command is a shell script, so we can't use it.  As a
-temporary fix, I have defunned thus:
-
-(defun startx ()
-  (execute "/usr/X11R6/bin/xinit"))
-
-Which works for me.  Although I haven't investigated all the
-consequences of not going via shell's startx.  Also I *don't* use
-GNOME or KDE which may complicate things for you if you do.  I use
-fvwm2 and have this in my .xinitrc:
-
-exec fvwm2
-
-STEP 4 (some guru will probably shoot this down in flames)
-
-For conveniently running external programs (ie, I don't want to have
-to type (run-program "ls" :arguments '("-lh")) every time, I have set
-up a read macro.  Put the following in somefile.lisp.
-
-(set-macro-character #\] (get-macro-character #\)))
-
-(set-dispatch-macro-character #\# #\[
-  #'(lambda (stream char1 char2)
-      (setf (readtable-case *readtable*) :preserve)
-      (UNWIND-PROTECT
-       (LET* ((OUTPUT-STREAM (MAKE-STRING-OUTPUT-STREAM 
-                                     :ELEMENT-TYPE 'BASE-CHAR))
-	      (STEP1 (FORMAT OUTPUT-STREAM "(RUN-PROGRAM "))
-	      (COMMAND-LINE (READ-DELIMITED-LIST #\] STREAM T))
-	      (COMMAND (FIRST COMMAND-LINE))
-	      (STEP2 (FORMAT OUTPUT-STREAM "\"~A\" 
-                                     :ARGUMENTS " COMMAND))
-	      (PARAMETERS (REST COMMAND-LINE))
-	      (STEP3 (FORMAT OUTPUT-STREAM "'(")))
-	     (DOLIST (X PARAMETERS
-			(PROGN (FORMAT OUTPUT-STREAM "))")
-			       (LET ((CLEAN 
-                                      (GET-OUTPUT-STREAM-STRING 
-                                               OUTPUT-STREAM)))
-				    (CLOSE OUTPUT-STREAM)
-				    (VALUES 
-                                     (READ-FROM-STRING CLEAN)))))
-		     (FORMAT OUTPUT-STREAM "\"~A\" " X)))
-      (SETF (READTABLE-CASE *READTABLE*) :UPCASE))))
-
-You will get (harmless) warnings from the compiler about unused
-variables STEP*, if you compile this file.  You must keep the upper
-case stuff as is.  (It could also be all upcase).
-
-STEP 5
-
-It's also a PITA to have to type "#[" and "]" everytime you want to
-run a command, so add the following in your $HOME/.inputrc
-
-#for clash: prints the square brackets to run an external command
-"\ec": "#[]\C-b"
-
-When you type ESC-c (or META-c) readline will print "#[]" to the
-console and put the cursor inside the brackets.  If you are running
-clisp as your shell, and do this, you will then be able to run
-programs (more or less) normally.  You will need to escape the dot
-in any filenames with a dot in them: #[cat  \.xinitrc]
-
-STEP 6
-
-Now try it out-- *Don't* modify your /etc/passwd yet! --
-
-Start up a clisp with "clisp -k full", and load somefile.lisp (the
-read-macro) into a CLISP which has readline compiled in.
-
-Hit "ESC c", type "ls -l", and see if it works.
-
-You *don't* have command line completion for external programs inside
-the read-macro.  So hitting tab will just give you a list of all
-clisp's possibilties, which is not much use here.  However,
-"run-program" does search your path for executables so you don't have
-to do #[/bin/ls -l]
-
-Also, I haven't (yet) written lisp versions of "cd" and the other bash
-builtins. But this is easy with the libc6 bindings, (chdir etc).
-Another convenience thing you can do is stuff like this for often used
-commands: 
-
-(defmacro ls-lh ()
-  `#[ls -lh])
-
-Now (ls-lh) reads as (run-program "ls" :arguments '("-lh"))
-
-STEP 7
-
-If you are happy, and think you can live with this setup then you must
-do the following:
-
--Dump a memory image from a clisp with the read macro and any
- convenience stuff loaded:
-
-(saveinitmem "lispinit.mem" :quiet t)
-
-The :quiet t suppresses clisp's start up message, which I find
-annoying.  If you have some function you want to run every time clisp
-starts, you can also specify this (see impnotes.html).
-
--Make a backup of /usr/[local]/lib/clisp.  (wherever your's is
- installed)
--Rename the "base" directory in /usr/lib/clisp to "orig-base".
--Now rename the "full" directory to "base".  
--Replace the memory image in your *new* "base" directory 
- with the one you dumped.
-
-STEP 8
-
-Change your /etc/passwd to reflect your new shell.
-Light 13 candles in a circle round your Linux box, sacrifice a white
-rooster, invoke Saint IGNUcious and ...
-
-Login again.
-
-If you start pining for Bash, you can run:
-#[bash]
-
-And explicitly source all your configuration files (.profile etc)
-
---------------------------------------------------------------------
-It works for me.  Now I just need to work out how to: 
-
-get indentation on the command line.
-do command redirection.
-get name completion for arguments which are filenames.
-
-Piece of cake!  (But don't hold your breath)
-

I've changed the macro a little so you don't have to type built-ins like cd a different way. I'll work on making this portable and nice next. I'm only a newbie so if this is ugly please tell me. Still don't have the other stuff to make this a nice swap for bash.

-(defun command-line-command-equal (command-line command)
-(if (string-equal command (car command-line)) (list command (string-downcase (string (second  command-line)))) nil))
-
-(set-macro-character #\] (get-macro-character #\)))
-(set-dispatch-macro-character #\# #\[
-  (lambda (stream char1 char2)
-    (declare (ignore char1 char2))
-    (setf (readtable-case *readtable*) :preserve)
-    (unwind-protect
-         (let ((command-line (read-delimited-list #\] stream t)))
-           (cond ((command-line-command-equal command-line 'cd))	   
-	   	(t (list 'ext:run-program (princ-to-string (car command-line))
-                 :arguments `',(mapcar #'princ-to-string (rest command-line))))))
-      (setf (readtable-case *readtable*) :upcase))))
-

- -Sure you know, but to source configuration files just use: -#[bash -l] -

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLISP.html b/clones/lisp/www.cliki.net/CLISP.html deleted file mode 100644 index 76f41e53..00000000 --- a/clones/lisp/www.cliki.net/CLISP.html +++ /dev/null @@ -1,84 +0,0 @@ - - - - - CLiki: CLISP - - - - - - - -
CLISP
CLISP is a Common Lisp implementation by Bruno Haible, then of Karlsruhe University, and Michael Stoll, then of Munich University, both in Germany. It mostly supports the Lisp described in the ANSI Common Lisp standard.

CLISP includes an interpreter, a compiler, a debugger, CLOS, MOP, arbitrary precision floats, a foreign language interface and a socket interface.

An X11 interface is available through CLX and Garnet.

Command line editing is provided by GNU Readline which makes it one of the nicer Lisps to use interactively - you can auto-complete function and file names with tab, use up arrow to get previous commands and it does parenthesis-matching.

Cross-platform preemptive multiprocessing is in alpha.

Homepage: https://www.gnu.org/software/clisp/

Source code repository: https://gitlab.com/gnu-clisp/clisp

License: GPL-2.0-or-later

Local CLISP links

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLJWT.html b/clones/lisp/www.cliki.net/CLJWT.html deleted file mode 100644 index 8c959960..00000000 --- a/clones/lisp/www.cliki.net/CLJWT.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: CLJWT - - - - - - - -
CLJWT
A library for issuing and validating JSON Web Tokens.

Depends on: ironclad, yason, cl-base64, flexi-streams, split-sequence

Repository: https://github.com/gschjetne/cljwt

License: LGPLv3+


-Cryptography
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLLIB.html b/clones/lisp/www.cliki.net/CLLIB.html deleted file mode 100644 index 7fdb185f..00000000 --- a/clones/lisp/www.cliki.net/CLLIB.html +++ /dev/null @@ -1,158 +0,0 @@ - - - - - CLiki: CLLIB - - - - - - - -
CLLIB
CLLIB is a varied collection of Common lisp tools and routines in CLOCC.

Includes: -

    -
  • "guess the animal" game; simple neural net (AI) -
  • -
  • autoload function and snarfing autoloads from other files -
  • -
  • basic definitions: package and path -
  • -
  • base64 encoding and decoding (data format) -
  • -
  • Rolodex: BBDB/vCard handling -
  • -
  • check values and types of the elements of a list -
  • -
  • Common Lisp HyperSpec access -
  • -
  • read/write CLOS objects (serialization) -
  • -
  • read/write comma-separated values -
  • -
  • CVS diff and log parsing (version control) -
  • -
  • data analysis and visualization -
  • -
  • date/time -
  • -
  • dated lists -
  • -
  • answer questions automatically; requires metering.lisp -
  • -
  • Load and run Emacs-Lisp ELisp code in Common Lisp -
  • -
  • read/write lists etc -
  • -
  • Financial functions: mortgage calculations, Luhn algorithm, Black-Scholes, Solow (mathematics) -
  • -
  • geography, weather, etc (units) -
  • -
  • command line option processing - for Lisp scripting -
  • -
  • Gnuplot interface (plotting) -
  • -
  • GetQuote - stock quotes over the Internet. -
  • -
  • query the financial data from MFFAIS and FINVIZ -
  • -
  • parsing C headers (FFI) -
  • -
  • -HTML parser via text-stream -
  • -
  • -HTML generator -
  • -
  • portable inspector (2 frontends: TTY and an HTML broser) -
  • -
  • iterate across multidimensional arrays -
  • -
  • print a hardcopy -
  • -
  • lift (ROC) curve analysis -
  • -
  • list utilities -
  • -
  • time elapsed, messages etc -
  • -
  • arithmetics, permutations, statistics, geometry and more mathematics -
  • -
  • -linear algebra operations (solving linear equations, inversion) -
  • -
  • print hash tables, packages, characters etc -
  • -
  • Munkres' Assignment Algorithm (AKA "Hungarian Algorithm") -
  • -
  • Naive Bayesian classifier -
  • -
  • Read ocaml sexp files -
  • -
  • interact with octave - the GNU MatLab -
  • -
  • fontify the prompt in an xterm -
  • -
  • Random Number Generator (by Raymond Toy) for various non-trivial distributions (statistics) -
  • -
  • RPM handling (download etc) - a better rpmwatcher -
  • -
  • REPL over a socket -
  • -
  • with-collect and some simple stuff -
  • -
  • operate on sorted lists (map, reduce etc) -
  • -
  • multidimensional statistics -
  • -
  • string splitting -
  • -
  • symbol concatenation -
  • -
  • comma and friends for format ~// -
  • -
  • HTTP/FTP/URL etc URIs -
  • -
  • -XML parsing -
  • -

Homepage: http://clocc.sourceforge.net/dist/cllib.html

License: GPL


-Topics: utilities language extension
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLM.html b/clones/lisp/www.cliki.net/CLM.html deleted file mode 100644 index 9070f17f..00000000 --- a/clones/lisp/www.cliki.net/CLM.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: CLM - - - - - - - -
CLM
CLM is an interface to the Motif GUI toolkit. Actually there exist two independent, slightly incompatible Motif interfaces based on the same idea that are often called CLM:

    -
  • The original CLM interface was developed by the GINA group at the German GMD. It served as the basis of the GINA Interface Builder. This implementation is very well documented, cross-platform and mature. Development stopped at release 2.3 (for Motif 1.2.3) in 1994. It is available at ftp.snt.utwente.nl together with the layered Interface Builder stuff, reports, etc.
  • The CMUCL Motif interface, written by Michael Garland, which was probably inspired to a large extent by the GMD CLM, but diverges in several areas to some degree. This interface is less complete, less well documented, CMUCL-only, but is part of the CMUCL maintenance effort. It too was designed against Motif 1.x, although it too mostly works with Motif 2.x, without taking advantage of new 2.x features. It is available as part of the CMUCL extra distribution tarballs, as well as the CMUCL source tarballs.
  • -
-Both interfaces are based on the same idea: They consist of two parts, a C-based server daemon, that links to the Motif libs, and the actual Common Lisp interface code, which communicate across a socket using an extensible protocol. Furthermore the C source-code for the server daemon is automatically generated from Common Lisp specifications. This provides for a fairly hassle-free (no FFI code, no wrestling with the GUI toolkit to get control of the event-loop, etc.) environment, that can be easily extended for access to new widgets, or (theoretically) even completely new toolkits.

If present, the toolkits can be integrated with CLX, so that you can combine low-level X primitives with high-level Motif code, if wanted.

As it stands, CMUCL/Motif provides a solid basis for GUI applications on X/Motif. Since it is a fairly direct translation of Motif widgets, functions and concepts to CL, while leaving the ugliness of C behind (much like CLX does for X11/Xlib), Motif experience and documentation can be re-used as-is. With a couple of utility functions and macros, for widget creation, management, etc., creating GUIs with CMUCL/Motif can be quite similar to programming with Lispworks' CAPI.

CMUCL also comes with CMUCL/Motif-based debugger, inspector and control-panel, that can be enabled if CMUCL/Motif is loaded.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLNUPlot.html b/clones/lisp/www.cliki.net/CLNUPlot.html deleted file mode 100644 index 90f1bd2f..00000000 --- a/clones/lisp/www.cliki.net/CLNUPlot.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: CLNUPlot - - - - - - - -
CLNUPlot
CLNUPlot connects Common Lisp to GNUPlot. More information about this plotting library can be found on its project page.

This is another one of Gary King's projects.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLOCC-PORT.html b/clones/lisp/www.cliki.net/CLOCC-PORT.html deleted file mode 100644 index 03e29efe..00000000 --- a/clones/lisp/www.cliki.net/CLOCC-PORT.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: clocc-port - - - - - - - -
clocc-port
CLOCC includes a library PORT which unifies many things across different implementations, such as socket interfaces, shell access, and gray streams.

A Debian package of it exists. It uses common-lisp-controller and should -be simple to install. Please look on the Debian-page for -details.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLOCC.html b/clones/lisp/www.cliki.net/CLOCC.html deleted file mode 100644 index 2098b3e5..00000000 --- a/clones/lisp/www.cliki.net/CLOCC.html +++ /dev/null @@ -1,89 +0,0 @@ - - - - - CLiki: CLOCC - - - - - - - -
CLOCC
The Common Lisp Open Code Collection contains Lisp code for various -applications which is:

-
-Common Lisp -
-
i.e. runs in ANSI Common Lisp implementations -
-
-Free Software -
-
according to the DFSG - - Debian Free Software Guidelines - (e.g. licensed under GPL, - LGPL, - MIT-LICENSE or BSD licenses, or Public Domain) -
-
-Portable -
-
i.e. should be portable among CL implementations with low - effort, and does not require modifications to the CL - implementation itself -
-
-Self-contained -
-
i.e. does not require packages not in this repository -
-
-Ready to use -
-
i.e. runs out of the box in the free CL implementations, except for SBCL. -
-

Presently it includes mk-defsystem (3.6 and 4.0), CLOCC-PORT (portability code for networking and other CL extensions), and CLLIB ("a library of miscellaneous routines", including an XML parser among other things).

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLOG.html b/clones/lisp/www.cliki.net/CLOG.html deleted file mode 100644 index b9af9f0d..00000000 --- a/clones/lisp/www.cliki.net/CLOG.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: CLOG - - - - - - - -
CLOG
CLOG is a GUI that uses web technology and also a web framework

https://github.com/rabbibotton/clog

The Common Lisp Omnificent GUI, CLOG for short, uses web technology to produce graphical user interfaces for applications locally or remotely. CLOG can take the place, or work alongside, most cross-platform GUI frameworks and website frameworks. The CLOG package starts up the connectivity to the browser or other websocket client (often a browser embedded in a native template application.)

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLON.html b/clones/lisp/www.cliki.net/CLON.html deleted file mode 100644 index 8d111c68..00000000 --- a/clones/lisp/www.cliki.net/CLON.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: Clon - - - - - - - -
Clon
There are three packages by the name of CLON, although the third one doesn't actually introduce any conflict because the package is named net.didierverna.clon.

Clon: A cron-like scheduling library

A task scheduler library much like cron for lisp that is implemented as a shallow layer on top of SBCL timers. It's written by Gabor Melis and can be found at http://quotenil.com/clon/clon-latest.tar.gz. It's forked near 2014 with some bug-fix.

It's then forked again by Jin-Cheng Guu in mid 2021 into his repo, aiming to let clon replace traditional cron managers. (It's renamed to cl-schedule since v0.0.5 as there are too many name clashes.) The forked version also provides more examples, documents and features. In particular, in an example below we show how to make a schedule that does what a traditional cron manager would do for the control string

*/25 5-6,10 * 7 1-2

Long story short, it can be expressed as the following.

(make-typed-cron-schedule

:minute '(satisfies twenty-five-p)

:hour '(or (integer 5 6) (member 10))

:month 7

:day-of-week '(integer 0 1))

Clon: Common Lisp Object Network

CLON (Common Lisp Object Network) is a prototype-based object system for Common Lisp written by David O'Toole. The details of inheritance, message passing, and field lookup are inspired by the Io language and the Garnet UI toolkit (KR in particular). It doesn't seem to be available anywhere. CLON is used in RLX, a game engine for rogue-like games.

Clon: the Command-Line Options Nuker

Clon is a library for managing command-line options in standalone Common Lisp applications. It provides a unified option syntax with both short and long names, automatic completion of partial names and automatic retrieval/conversion of option arguments from the command-line, associated environment variables, fallback or default values. Clon comes with a set of extensible option types (switches, paths, strings etc.). Clon also provides automatic generation and formatting of help strings, with support for highlighting on tty's through ISO/IEC 6429 SGR. This formatting is customizable through "themes".

Clon currently works on Unix (including MacOS X) and Windows (Cygwin, MinGW/MSYS) with SBCL, CMUCL, CCL, ECL, CLISP, ABCL, Allegro (both standard and modern) and LispWorks.

Clon is written by Didier Verna. -Clon's homepage is here.


-command-line options parser
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLORB.html b/clones/lisp/www.cliki.net/CLORB.html deleted file mode 100644 index e9719803..00000000 --- a/clones/lisp/www.cliki.net/CLORB.html +++ /dev/null @@ -1,57 +0,0 @@ - - - - - CLiki: CLORB - - - - - - - -
CLORB
CLORB is a CORBA ORB that implements the OMG Lisp Language Mapping for CORBA. It runs in MCL, OpenMCL, SBCL, CMUCL, CLISP -and has at some point worked with ACL.

CLORB is licensed under the Lesser GNU Public license (LGPL).

CLORB now (since version 0.5) supports valuetype and -has an IDL compiler and a code generator to generate stubs (proxy) and skeletons (servant).

Find it at Lennart Staflin's CORBA page. -There is also a -SourceForge project for CLORB, with mailing list -and download area.

A slightly out-of-date guide to using CLORB with GNOME can be found at -http://www.pvv.ntnu.no/~ljosa/doc/encycmuclopedia/devenv/gnome-lisp.html. Note in particular that the patch linked to on that page is no longer needed: it was rolled into CLORB 0.1

There is a 'orbit.lisp' file included that you need to load to talk to Gnome.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLOS.html b/clones/lisp/www.cliki.net/CLOS.html deleted file mode 100644 index b7a5e984..00000000 --- a/clones/lisp/www.cliki.net/CLOS.html +++ /dev/null @@ -1,126 +0,0 @@ - - - - - CLiki: CLOS - - - - - - - -
CLOS
The Common Lisp Object System is based on generic functions, multiple inheritance, and declarative method combination. Many implementations also have a meta-object protocol, or MOP, often based on that described in AMOP

Any purporting-to-conform ANSI CL implementation will have CLOS built in. There are also "add-on" implementations from before it was part of standard CL: Closette is the code developed in the AMOP book and probably not practically useful, whereas PCL is fully-featured (if slower than a typical tuned commercial implementation might be) and has been used as the basis for the CLOS support in e.g. CMUCL and SBCL

Web pages:

Topic listing:

-

See also

- -
(defclass/std example () - ((slot1 slot2 slot3))) -

expands to

(DEFCLASS EXAMPLE () - ((SLOT1 :ACCESSOR SLOT1 :INITARG :SLOT1 :INITFORM NIL) - (SLOT2 :ACCESSOR SLOT2 :INITARG :SLOT2 :INITFORM NIL) - (SLOT3 :ACCESSOR SLOT3 :INITARG :SLOT3 :INITFORM NIL))) -

It is very flexible. The repository contains examples from other projects (Clack, etc).

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLOSER-MOP.html b/clones/lisp/www.cliki.net/CLOSER-MOP.html deleted file mode 100644 index d4cc7c24..00000000 --- a/clones/lisp/www.cliki.net/CLOSER-MOP.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: closer-mop - - - - - - - -
closer-mop
Closer to MOP is a compatibility layer that rectifies many of the absent or incorrect MOP features as detected by MOP Feature Tests. This page kept ASDF-Install happy. See Closer to MOP for details.
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLPM.html b/clones/lisp/www.cliki.net/CLPM.html deleted file mode 100644 index ab534d03..00000000 --- a/clones/lisp/www.cliki.net/CLPM.html +++ /dev/null @@ -1,82 +0,0 @@ - - - - - CLiki: CLPM - - - - - - - -
CLPM
CLPM stands for Common Lisp Package Manager.

CLPM has several primary goals:

    -
  1. Manage packages in both global and project specific contexts. -
  2. -
  3. Use existing libraries where possible. -
  4. -
  5. Support HTTPS. -
  6. -
  7. Do as little work as possible in the development image. -
  8. -
-

Architecture

Two major pieces:

CLPM

The core of the package manager, intended to be run in a separate - process. Additionally, has a command line interface for use outside of - Lisp.

CLPM Client

A small, portable system meant to be loaded into - development images. Launches CLPM processes and communicates with them - using a REPL.

While CLPM can be used without the client, installing and using the client - makes Common Lisp coding a more interactive and fun experience. The CLPM client - can be loaded into a Lisp image and integrates with ASDF to seamlessly install - missing systems, similarly to the Quicklisp client.

Sourcing

A repository of Common Lisp projects is called a source. The source you are most likely familiar with is Quicklisp, but CLPM is designed to be extended to support multiple sources and source types. This will allow you to easily use CLPM for things such as internal projects that can't be released to public repositories.

CLPI

Common Lisp Project Index style sources are currently under development -in the CLPI project.

This project provides the specification for the Common Lisp Project Index - (CLPI) as well as a reference implementation of a library to interact with and - create indices. A project index stores metadata about projects and systems - defined by those projects, with a primary use case of allowing package managers - to know which releases exist and to trace the dependencies of systems.

In an ideal world, much of the system information could be stored in the index - by merely supplying the .asd files that define the systems. However, .asd files - can include arbitrary code, require that other systems need to be loaded in - order to understand the system definition, and refer to other files (such as - for version numbers, system descriptions, or even children system definitions - in the case of package-inferred-systems). Therefore, the index exists as a - purely declarative specification of projects and their systems.

The primary CLPM author currently uses a CLPI style source to index -packages located on a private Gitlab instance. If you are interested in -doing something similar, please reach out.

Project information

Repository: https://gitlab.common-lisp.net/clpm/clpm

License: BSD 2-Clause


-installer application
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLPMR.html b/clones/lisp/www.cliki.net/CLPMR.html deleted file mode 100644 index af0eaf90..00000000 --- a/clones/lisp/www.cliki.net/CLPMR.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: CLPMR - - - - - - - -
CLPMR
CLPMR is the Common Lisp ProcMail Replacement. procmail is a mail delivery agent capable of sorting incoming email into various directories and filtering out spam messages.

CLPMR provides the same functionalities as procmail but with much more flexibility and simplicity due to the fact that the language you describe the rules with is Lisp and not some obscure sequence of characters looking like line noise. Using Lisp, it means that the implementation of things like mailing list servers and document servers becomes trivial and you don't even need external programs (see this example). MIME content is handled natively as well.

Homepage: http://wcp.sdf-eu.org/software/#clpmr

Download: http://wcp.sdf-eu.org/software/clpmr-20150207T212625.tbz

License: GPL

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLPfAI.html b/clones/lisp/www.cliki.net/CLPfAI.html deleted file mode 100644 index 8549a450..00000000 --- a/clones/lisp/www.cliki.net/CLPfAI.html +++ /dev/null @@ -1,547 +0,0 @@ - - - - - CLiki: CLPfAI - - - - - - - -
CLPfAI
Common Lisp Programming for Artificial Intelligence -
Tony Hasemer & John Domingue - 1989 -
International Computer Science Series -
Addison & Wesley -
ISBN 0-201-17579-7

This book was written during the period of standardization of -Common Lisp, before the specification of CLOS was included in -the standard.

It was addressed to programmers learning Common Lisp, but -today beginners will prefer newer books, giving a more -complete and modern coverage of Common Lisp and CLOS, -post standardization.

Otherwise it is quite pedagogical a book, leading easily the -beginner to a basic working knowledge of Common Lisp, and -still interesting today for its presentation of:

    -
  • a simple rule interpreter, -
  • -
  • a simple object system implemented with closures, -
  • -
  • a simplified version of the Schank and Riesbeck's SAM - algorithm (matching events (conceptual dependencies) - to story scripts as the engine of story understanding). -
  • -

The programming style is simplified (making use of a small -number of lisp functions). The examples are often -uninteresting (meaningless foo bar stuff, instead of taking -more real examples). Most examples of macros and in exercises -should actually be implemented as functions, and some -functions should have been implemented as macros. Notably in -the last chapter about the SAM algorithm, a big opportunity -to write a couple of nice DSL-like macros was missed.

Here is the modernized code from chapter 14:

;;;; -*- mode:lisp; coding:utf-8 -*- - - - ;;; This file contains the code for chapter 14, modified and - ;;; modernized to use CLOS and higher order lisp functions. I - ;;; further added some macros notably with-variables and following. - ;;; - PJB - - (defpackage "SAM" - (:use "CL") - (:shadow "VARIABLE" "DEFCLASS") - (:documentation "A program to implement a simplified version of Schank and Riesbeck's Conceptual Dependencies.")) - (in-package "SAM") - - - (defvar *cd-trace* nil - "A Flag used for tracing. If *cd-trace* is T then cd-trace prints a trace.") - - (defun cd-trace-on () (setf *cd-trace* t)) - (defun cd-trace-off () (setf *cd-trace* nil)) - - (defun cd-trace (&rest args) - (when *cd-trace* - (apply (function format) *trace-output* args))) - - - - (defun slots (class) - (mapcar (function clos:slot-definition-name) - (CLOS:CLASS-SLOTS (if (symbolp class) - (find-class class) - class)))) - - (defgeneric slots-and-values (self) - (:method-combination append) - (:documentation "Return a plist containing the slots name (as keyword) - and values of each slot.")) - - - (defmacro defclass (classname superclasses slots &rest options) - `(progn - (cl:defclass ,classname ,superclasses - ,(mapcar (lambda (slot) - (if (atom slot) - (list slot - :initarg (intern (string slot) "KEYWORD") - :initform nil - :accessor slot) - (destructuring-bind (name initform) slot - (list name - :initarg (intern (string name) "KEYWORD") - :initform initform - :accessor name)))) - slots) - ,@options) - (defmethod slots-and-values append ((self ,classname)) - (list ,@(mapcan (lambda (slot) - (if (atom slot) - (list (intern (string slot) "KEYWORD") (list slot 'self)) - (destructuring-bind (name initform) slot - (list (intern (string name) "KEYWORD") (list name 'self))))) - slots))) - ',classname)) - - - - (defgeneric show (self &optional pre-string post-string)) - - (defmethod show :before ((self t) &optional pre-string post-string) - (declare (ignorable self post-string)) - (when pre-string (format t pre-string))) - - (defmethod show :after ((self t) &optional pre-string post-string) - (declare (ignorable self pre-string)) - (when post-string (format t post-string))) - - - ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; - - (defclass cd () - (action actor object from to) - (:documentation "A Conceptual Dependency.")) - - (defun make-cd (&key action actor object from to) - (make-instance 'cd :action action :actor actor :object object :from from :to to)) - - (defmethod print-object ((self cd) stream) - (print-unreadable-object (self stream :identity t :type t) - (format stream "~{~S ~S~^ ~}" (slots-and-values self))) - self) - - (defmethod show ((self cd) &optional pre-string post-string) - (declare (ignorable pre-string post-string)) - (dolist (slot (cd-slots self)) - (let ((value (funcall slot self))) - (when value - (show value (format nil "~%~8A " slot)))))) - - (defmethod cd-slots ((self cd)) - (mapcar (function clos:slot-definition-name) - (CLOS:CLASS-DIRECT-SLOTS (find-class 'cd)))) - - (defmethod script-triggers ((self cd)) - '(actor object from to)) - - ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; - - (defclass cd-entity () - (cd-name) - (:documentation "A cd-entity is the most general type of object that can - fill a slot in a conceptual dependency.")) - - (defmethod print-object ((self cd-entity) stream) - (print-unreadable-object (self stream :identity t :type t) - (format stream "~{~S ~S~^ ~}" (slots-and-values self))) - self) - - (defmethod show ((self cd-entity) &optional pre-string post-string) - (declare (ignorable pre-string post-string)) - (princ (cd-name self))) - - ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; - - (defclass action (cd-entity) ()) - - (defmacro define-action (name) - `(progn - (defclass ,name (action) ((cd-name ',name))) - (defmethod print-object ((self ,name) stream) - (print-unreadable-object (self stream :type t) - (format stream ":CD-NAME ~A" (cd-name self))) - self) - (defmacro ,name (&key actor object from to) - `(make-instance 'cd :action (make-instance ',',name) - :actor ,actor :object ,object :from ,from :to ,to)))) - (define-action atrans) - (define-action ptrans) - (define-action mtrans) - - ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; - - (defclass cd-entity-with-scripts (cd-entity) - (associated-scripts)) - - ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; - - (defclass role (cd-entity-with-scripts) - () - (:documentation "Used to fill the actor slot of a Conceptual Dependency")) - - ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; - - (defclass setting (cd-entity-with-scripts) - () - (:documentation "Used to fill the from or to slot of a Conceptual Dependency")) - - ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; - - (defclass store (setting) - ((cd-name 'store) - (associated-scripts 'shopping)) - (:documentation "A specialization of setting. Represents any store. - Notice that we have a script associated with this class of object.")) - - - ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; - - (defclass prop (cd-entity-with-scripts) - () - (:documentation "Used to fill the object slot of a Conceptual Dependency")) - - - ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; - - (defclass story () - (cds ; A list of cds - current-script ; The script we are currently trying to match against. - possible-next-events ; The possible next events we are trying to match against. - )) - - (defmethod show ((self story) &optional pre-string post-string) - (declare (ignorable pre-string post-string)) - (dolist (cd (cds self)) (show cd "~%"))) - - ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; - - (defclass script () - (events ; The possible events in a story: a list of cds. - variables ; A list of the variables used in the script. - ; This is used to clear the script before it is used. - )) - - (defmethod show ((self script) &optional pre-string post-string) - (declare (ignorable pre-string post-string)) - (dolist (event (events self)) (show event "~%"))) - - - ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; - - (defclass variable () - (cd-name ; The name of the variable. - value ; The value of the variable. - )) - - (defmethod show ((self variable) &optional pre-string post-string) - (declare (ignorable pre-string post-string)) - (format t "~A " (cd-name self)) - (if (value self) - (show (value self)) - (format t "Unmatched "))) - - (defmethod bound? ((self variable)) - (value self)) - - (defmethod clear-value ((self variable)) - (setf (value self) nil)) - - - - ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; - - (defvar *scripts* (make-hash-table)) - - (defun get-script (name) (gethash name *scripts*)) - (defun events-script (name) (events (get-script name))) - (defun store-script (name script) (setf (gethash name *scripts*) script)) - - - (defmethod match ((self cd) event) - "Tries to match a cd against an event in a script - by matching the slots in the cd against those in the event." - (every (lambda (slot) (match-cd-slot self slot event)) (cd-slots self))) - - - (defmethod match-cd-slot ((self cd) slot event) - "Try AND match one of the slots in a cd against the same slot - in an event from a script. - SLOT holds the name of the slot (action from to etc) we want - to compare to." - (let ((e-val (funcall slot event)) - (c-val (funcall slot self))) - (cond - ((null e-val) t) - ((null c-val) t) - ((and (typep c-val 'role) - (member (cd-name c-val) '(he she it they))) t) - (t (check-equal e-val c-val))))) - - (defmethod check-equal ((self t) story-object) - "Checks that two objects are equal." - (if (cd-name story-object) - (equal (cd-name self) (cd-name story-object)) - t)) - - (defmethod check-equal ((self variable) story-object) - "Checks that a variable can match against a story object." - (if (bound? self) - (check-equal (value self) story-object) - (setf (value self) story-object))) - - - (defmethod process ((self story)) - (clear self) - (dolist (cd (cds self)) - (show cd "~2%Input is ") - (process-cd cd self)) - (show (get-script (current-script self)) "~%Story done -- script is ")) - - (defmethod process-cd ((self cd) story) - "Process one of the CD in a story." - (or (find-cd-in-script self story) - (suggest-new-script self story) - (show self "~2%not adding to any script"))) - - (defmethod clear ((self script)) - (dolist (variable (variables self)) - (clear-value variable))) - - (defmethod clear ((self story)) - (setf (current-script self) nil - (possible-next-events self) nil)) - - (defmethod find-cd-in-script ((self cd) story) - (let ((event (find-if (lambda (event) (match self event)) - (possible-next-events story)))) - (when event - (show event "~2%matches") - (reset-script-info story event) - event))) - - (defmethod reset-script-info ((self story) position) - (setf (possible-next-events self) (cdr (member position (possible-next-events self))))) - - (defmethod suggest-new-script ((self cd) story) - (let ((new-script (find-script self))) - (when new-script - (format t "~2%newscript ~A" new-script) - (setf (current-script story) new-script - (possible-next-events story) (events-script new-script)) - (find-cd-in-script self story)))) - - (defmethod find-script ((self cd)) - (some (lambda (trigger) (try self trigger)) (script-triggers self))) - - (defmethod try ((self cd) slot) - (when (funcall slot self) - (associated-scripts (funcall slot self)))) - - - ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; - ;;; WITH-VARIABLES Macro - ;;; (with-variables (vardecl...) body...) - ;;; - ;;; vardecl are either a symbol naming the variable, - ;;; or a list (name class [cd-name]) - ;;; When the cd-name is absent, it is either the name itself if it - ;;; doesn't start with a question mark, or the name with the prefix - ;;; question mark removed. - - (defun variable-name (vardecl) - (if (atom vardecl) vardecl (first vardecl))) - - (defun variable-cd-name (vardecl) - (if (or (atom vardecl) (null (third vardecl))) - (if (char= (aref (string (variable-name vardecl)) 0) #\?) - (intern (subseq (string (variable-name vardecl)) 1)) - (variable-name vardecl)) - (third vardecl))) - - (defun variable-class (vardecl) - (if (atom vardecl) - 'variable - (or (second vardecl) 'variable))) - - (defmacro with-variables ((&rest variables) &body body) - `(let ,(mapcar (lambda (vardecl) - `(,(variable-name vardecl) - (make-instance ',(variable-class vardecl) - ,@(when (find 'cd-name (slots (find-class (variable-class vardecl)))) - `(:cd-name ',(variable-cd-name vardecl)))))) - variables) - ,@body)) - - - (defmacro goes-to (who where-to &key from) - (let ((vwho (gensym))) - `(let ((,vwho ,who)) - (ptrans :actor ,vwho :object ,vwho :from ,from :to ,where-to)))) - - (defmacro takes (who what &key from) - (let ((vwho (gensym))) - `(let ((,vwho ,who)) - (ptrans :actor ,vwho :object ,what :from ,from :to ,vwho)))) - - (defmacro gives (who what to-whom) - (let ((vwho (gensym))) - `(let ((,vwho ,who)) - (atrans :actor ,vwho :object ,what :from ,vwho :to ,to-whom)))) - - (define-symbol-macro he (make-instance 'role :cd-name 'he)) - - - ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; - - (defun initialize-cd-system () - (with-variables ((money prop) - (script script) - ?shopper ?store ?item ?elsewhere) - (store-script 'shopping script) - (setf (variables script) (list ?shopper ?store ?item ?elsewhere) - (events script) (list (goes-to ?shopper ?store) - (takes ?shopper ?item) - (gives ?store ?item ?shopper) - (gives ?shopper money ?store) - (goes-to ?shopper ?elsewhere :from ?store))))) - - (defparameter *kite-story* - (with-variables - ((jack role) - (woolworths store) - (kite prop) - (home setting) - (story story)) - (setf (cds story) (list (goes-to jack woolworths) - (takes he kite) - (goes-to he home))) - story)) - - (defun demo () - (clear (get-script 'shopping)) - (process *kite-story*)) - - (initialize-cd-system) - (setf *print-pretty* nil) - (demo)

Sample run:

-C/USER[251]> (load "sam.lisp")
-;; Loading file sam.lisp ...
-
-Input is 
-ACTION   PTRANS
-ACTOR    JACK
-OBJECT   JACK
-TO       WOOLWORTHS
-
-newscript SHOPPING
-
-matches
-ACTION   PTRANS
-ACTOR    SHOPPER JACK
-OBJECT   SHOPPER JACK
-TO       STORE WOOLWORTHS
-
-Input is 
-ACTION   PTRANS
-ACTOR    HE
-OBJECT   KITE
-TO       HE
-
-matches
-ACTION   PTRANS
-ACTOR    SHOPPER JACK
-OBJECT   ITEM KITE
-TO       SHOPPER JACK
-
-Input is 
-ACTION   PTRANS
-ACTOR    HE
-OBJECT   HE
-TO       HOME
-
-matches
-ACTION   PTRANS
-ACTOR    SHOPPER JACK
-OBJECT   SHOPPER JACK
-FROM     STORE WOOLWORTHS
-TO       ELSEWHERE HOME
-Story done -- script is 
-
-ACTION   PTRANS
-ACTOR    SHOPPER JACK
-OBJECT   SHOPPER JACK
-TO       STORE WOOLWORTHS
-
-ACTION   PTRANS
-ACTOR    SHOPPER JACK
-OBJECT   ITEM KITE
-TO       SHOPPER JACK
-
-ACTION   ATRANS
-ACTOR    STORE WOOLWORTHS
-OBJECT   ITEM KITE
-FROM     STORE WOOLWORTHS
-TO       SHOPPER JACK
-
-ACTION   ATRANS
-ACTOR    SHOPPER JACK
-OBJECT   MONEY
-FROM     SHOPPER JACK
-TO       STORE WOOLWORTHS
-
-ACTION   PTRANS
-ACTOR    SHOPPER JACK
-OBJECT   SHOPPER JACK
-FROM     STORE WOOLWORTHS
-TO       ELSEWHERE HOME
-;; Loaded file sam.lisp
-T
-C/USER[252]> 
-


-macro example
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLPython.html b/clones/lisp/www.cliki.net/CLPython.html deleted file mode 100644 index 39a1e0c0..00000000 --- a/clones/lisp/www.cliki.net/CLPython.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: CLPython - - - - - - - -
CLPython
CLPython is an implementation of the Python programming language in Common Lisp.

License: LLGPL

Homepage: http://common-lisp.net/project/clpython/

programming language

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLSQL-ORM.html b/clones/lisp/www.cliki.net/CLSQL-ORM.html deleted file mode 100644 index 3776af62..00000000 --- a/clones/lisp/www.cliki.net/CLSQL-ORM.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: CLSQL-ORM - - - - - - - -
CLSQL-ORM
CLSQL-ORM is an library to generate clsql view-classes from existing databases, by introspecting on the "information_schema" of the running database.

For more info see:

Git Hub: https://github.com/AccelerationNet/CLSQL-ORM


-Topic: AccelerationNet
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLSQL-helper.html b/clones/lisp/www.cliki.net/CLSQL-helper.html deleted file mode 100644 index 0ffeb712..00000000 --- a/clones/lisp/www.cliki.net/CLSQL-helper.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: CLSQL-helper - - - - - - - -
CLSQL-helper
CLSQL-helper is an library of utilities to make interacting with clsql easier.

For more info see:

Git Hub: https://github.com/AccelerationNet/clsql-helper


-Topic: AccelerationNet
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLSQL.html b/clones/lisp/www.cliki.net/CLSQL.html deleted file mode 100644 index 1f082f32..00000000 --- a/clones/lisp/www.cliki.net/CLSQL.html +++ /dev/null @@ -1,91 +0,0 @@ - - - - - CLiki: CLSQL - - - - - - - -
CLSQL
CLSQL is a Database interface that can access a number of different SQL database engines. It also includes a CLOS ORM. It is maintained by Kevin Rosenberg.

CLSQL now includes the CommonSQL API interface. CLSQL's manual is -online at http://clsql.kpe.io/documentation.html.

CLSQL uses the UFFI interface so it works on: -

    -
  • SBCL
  • -
  • CMUCL
  • -
  • OpenMCL
  • -
  • AllegroCL
  • -
  • Lispworks
  • -
  • SCL
  • -
  • CLISP
  • -
  • ECL
  • -

CLSQL supports a number of database interfaces: -

    -
  • PostgreSQL C library API
  • -
  • PostgreSQL Socket API
  • -
  • MySQL
  • -
  • SQLite 2
  • -
  • SQLite 3
  • -
  • Oracle
  • -
  • ODBC (On all platforms)
  • -
  • AODBC (Allegro's ODBC database interface)
  • -

Not all features are supported on all DBMSes. For example, CLSQL's OODDL does not support :auto-increment on sqlite3.

There are CLSQL packages in the Debian and Gentoo distributions. CLSQL is covered by the LGPL license.
-CLSQL can be downloaded from its web site.

-

Additional Documentation

-Bill Clementson has written two entries about CLSQL, in his web log:

    -
  • -CL-SQL - Part 1 - discussing some of the advantages of CLSQL and how to install it. -
  • -
  • -CL-SQL - Part 2 - an interactive, annotated session using CLSQL, illustrating some of the characteristics of working with CLSQL -
  • -

To quote his Part 1: -

If you would like to see some more examples of how to use CLSQL, the -CLSQL tutorial is quite useful. Also, the tremendous -CommonSQL tutorial that -Nick Levine gave at -ILC2002 is an excellent introduction to CLSQL. Even though his tutorial is - targetted towards LispWorks CommonSQL, the examples work equally well - in CLSQL (with the occasional minor tweak).

Looping over query result

-Iterate supports looping over CLSQL queries through the use of iterate-clsql extension.

Lispbox workaround

You may get an error claiming that CLSQL can't find "foreign libraries." Find the directory where those files are located, and use clsql:push-library-path. They will likely be wherever CLSQL was installed, for example: -

(clsql:push-library-path #p"/home/myusername/.sbcl/site/clsql-3.5.6/db-mysql/") ;installed here by asdf-install

This may also occur with OpenMCL; same solution.

Multithreaded usage

This is not obvious from the documentation, but just using CONNECT gives you a single database connection - if you try to use that connection in multiple threads, you will get nasty race conditions. One convenient way to use CLSQL with multiple threads is to use the WITH-DATABASE macro around any code that talks to the database. Using connection pools, this is quite efficient, and thread-safe.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLSS.html b/clones/lisp/www.cliki.net/CLSS.html deleted file mode 100644 index 87efea19..00000000 --- a/clones/lisp/www.cliki.net/CLSS.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: CLSS - - - - - - - -
CLSS
CLSS is a DOM traversal/search engine using CSS selectors. It uses the Plump DOM.

The project can be found on github including a fully documented symbol index and a getting started tutorial.
-As of May 2014, CLSS is available on Quicklisp.

CLSS is licensed under the Artistic License 2.0.


-XML HTML web
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLTIO.html b/clones/lisp/www.cliki.net/CLTIO.html deleted file mode 100644 index f157dc74..00000000 --- a/clones/lisp/www.cliki.net/CLTIO.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: CLTIO - - - - - - - -
CLTIO
CLTIO is a UFFI binding to the Unix termio library for raw serial/terminal I/O.

Homepage: http://wcp.sdf-eu.org/software/#cltio

Download: http://wcp.sdf-eu.org/software/cltio-20050119.tbz2

License: GPL


-Topics: system programming
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLTL2.html b/clones/lisp/www.cliki.net/CLTL2.html deleted file mode 100644 index b71f7fd7..00000000 --- a/clones/lisp/www.cliki.net/CLTL2.html +++ /dev/null @@ -1,67 +0,0 @@ - - - - - CLiki: CLtL2 - - - - - - - -
CLtL2
"Common Lisp the Language, 2nd ed" is a book by Guy Steele that describes the state of Common Lisp as it was partway through the ANSI process.

Before there was an ANSI standard for Common Lisp, there was "Common Lisp: the Language." This book, also known as CLtL1, described the state of the consensus on Common Lisp, circa 1984.

During the ANSI standardization process, Steele published a second edition (often called CLtL2). This book contains the complete contents of the first edition, plus material on CLOS, conditions, pretty printing and iteration facilities.

The book does not correspond exactly with the ANSI standard: some details are different; some things from the standard are missing; and some things from CLtL2 are not in the final ANSI standard. Programmers should therefore be wary of using it as a reference. Nonetheless, the book is easier to read than the formal ANSI specification, and has additional commentary and material. Recommended, but don't treat it as canon.

See also: -

-
-Debian package
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLUE.html b/clones/lisp/www.cliki.net/CLUE.html deleted file mode 100644 index f2189d4e..00000000 --- a/clones/lisp/www.cliki.net/CLUE.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: CLUE - - - - - - - -
CLUE
The Common Lisp User Interface Environment (CLUE) is a GUI library based on the X Window System and modeled on Xt. CLUE extends the CLX interface to provide an architectural model for the construction of interactive Lisp applications. CLUE could be described as a translation of the Xt "intrinsics" into the domain of Common Lisp and CLOS.

CLOCC contains a version containing all known bugfixes here. It also uses common-lisp-controller.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLUS.html b/clones/lisp/www.cliki.net/CLUS.html deleted file mode 100644 index 4231360b..00000000 --- a/clones/lisp/www.cliki.net/CLUS.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: CLUS - - - - - - - -
CLUS
CLUS, or Common Lisp UltraSpec, is a community project to create a contemporary and unified documentation file for the whole modern Common Lisp universe.

Instance: http://phoe.tymoon.eu/clus/
-Sources: https://github.com/phoe/clus-data

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLUnit.html b/clones/lisp/www.cliki.net/CLUnit.html deleted file mode 100644 index 6dfad3bb..00000000 --- a/clones/lisp/www.cliki.net/CLUnit.html +++ /dev/null @@ -1,65 +0,0 @@ - - - - - CLiki: CLUnit - - - - - - - -
CLUnit
CLUnit is a Common Lisp unit testing framework. It is designed to be easy to use so that you can quickly start testing.

CLUnit provides a rich set of features aimed at improving your unit testing experience:

    -
  • Multiple inheritance for test suites allows you to group tests into hierarchies.
  • -
  • Composes the test results of each test run into a single report.
  • -
  • Allows redefinition of inline functions and macros without having to redefine your tests.
  • -
  • Supports composable test suite fixtures.
  • -
  • Allows for an interactive testing process which gives you access to the test environment.
  • -
  • Provides visual feeback of the unit test progress.
  • -
  • Extensible test reporting. Builtin support for default reporting and TAP output.
  • -

    Links


    -MIT-LICENSE, test framework -
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLUnit2.html b/clones/lisp/www.cliki.net/CLUnit2.html deleted file mode 100644 index 9f7ceaf6..00000000 --- a/clones/lisp/www.cliki.net/CLUnit2.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: CLUnit2 - - - - - - - - -
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLVM.html b/clones/lisp/www.cliki.net/CLVM.html deleted file mode 100644 index 4efd2a13..00000000 --- a/clones/lisp/www.cliki.net/CLVM.html +++ /dev/null @@ -1,134 +0,0 @@ - - - - - CLiki: CLVM - - - - - - - -
CLVM
CLVM stands for "Common Lisp Virtual Machine", which is Vapourware. On the moment of creating this page Valery Khamenya didn't know about Parrot, LLVM and RTL/Tree from GCC. Actually, CLVM probably exists already in a very mature form as RTL/Tree from GCC but one should check whether it is really suitable for Lisp-family languages.

Why CLVM? What's the Problem?

Today Lisp implementors still spread their efforts over a lot of platforms developing a good code generation and platform-dependent optimizations ("good" here, in particular, means "run-time compilation to native code is supported"). -Any transfer to any new platform is painful and might be done for every implementation with different success. Some CL-implementors try to resolve this issue in different ways.

For better understanding the point please visit a nice FAQ on Parrot, which answers similar questions but concerning VM for Perl. See also benchmark page, especially The Great Computer Language Shootout, where you can see that CMUCL (the one of the fastest CL implementations) is not that competitive.

-

    How do different implementations resolve the issue "compile to native"? Here are some examples:

  • JVM is used in Bigloo and kawa (well, it is not a CL, it is Scheme.)

  • -
  • ECL and GCL make this via C (and therefore they are not good in run-time compilation of one function to a native code)

  • -
  • CLISP they just deny compilation to native ;)

  • -

If CLVM could have been created already and even have been used by CMUCL and SBCL then we could have those nice CL implementations under win32 today (i.e. July 2003) too.

-

How not to spread resources of Lisp implementors?

In the context of the problem given the answer is CLVM. And then CL implementors could focus their attention on CL front-end implementation itself.

Does CLVM exist today?

Strictly -- No. -

What does CLVM consist of?

    -
  • Virtual Machine (VM) itself -
  • -
  • CLVM-code -
  • -
  • JIT optimizing compiler for CLVM -
  • -

Some comments on the terms of this formula see below.

VM

VM should be compliant for Lisp languages (and not just optimized for current platforms available and not just for current industrial languages like Java, C/C++ and a like)


-As an example, one could learn how Bigloo guys use a JVM in order to make something better here. -

-Without a very good Lisp oriented virtual machine(s) we shouldn't think about a nice Lisp oriented hardware.

CLVM-code

For having idea what CLVM-code could mean, please look into byte-code of Java or in byte code of CLISP.

CL is too big to be fully mirrored into CLVM-code. There should be some kind of CL-kernel (or subset of CL) which is good for 1-to-1 corresponding with CLVM-code. One could even think of something like subset of Scheme.

JIT optimizing compiler for CLVM

Front-end CL-compilers should do their good job for translation of CL expressions into the optimized CLVM-code, and those optimization should nothing to have with platform-dependent optimizations. Here come JIT optimizing compiler for CLVM, they should optimize CLVM-code for given platform and run it using VM (see above).

CLVM Benefits

What brings us CLVM? -

    -
  • easier port of CL-implementations based on CLVM -
  • -
  • better performance for CL programs (e.g., compilation to native, even in run-time) -
  • -
  • more free CL-developers -
  • -
  • CL-implementors could focus themselves on conforming their CL-implementations to a standard -
  • -
  • encouragement for Lisp hardware development -
  • -
  • quicker development of current and new Lisp implementations -
  • -

What's the purpose of this page?

    -The purpose of this page is: -
  • to make the initial problem statement -
  • -
  • to debate solution ideas -
  • -
  • to attract positively-inclined CL developers to this problem -
  • -

It is hardly possible to implement CLVM by two hands, therefore the main purpose of this page is to collect CL developers together who are motivated with the goal of implementing CLVM.

Sometimes it is a pity just to occupy the nice CL** name and it would be good if critical mass of CL-developers will appear around CLVM flag.

What's the audience for this page

    -
  • CL implementors (probably some of them could find it interesting) -
  • -
  • CL developers (perhaps, some of them could become implementors given the goals above) -
  • -
  • non-CL people (e.g. like Valery Khamenya, who is not able to switch from C++ to CL, because there is the only one CL implementation a bit close to typical good C++ environment like Kylix, but with price not for personal use) -
  • -
  • and a lot of other people -
  • -

Feedback

-Initial version is prepared by Valery Khamenya, feedback and other contributors are very welcome. -Making comments straight forward on this page don't forget to put your signature or hint, please. Otherwise content becomes a bit unclear.


-

Comments from Community

Some assumptions here seem suspect: -

    -
  • Do CLISP people really object to a JIT backend? CLISP seems happy in its niche as it is, sure, but that doesn't imply the existence of actual objections to improvements, now does it? -
  • -
  • The intended audience is not clearly defined. is it the free CL implementors? those don't need a VM, for the following reasons: -
      -
    • JIT'ed VM as a way to get performance is obviously not an improvement on CMUCL/SBCL. Actually, whatever the merits of this entire proposal, I don't agree with this statement. You can only get "optimal" performance in CMUCL/SBCL, or indeed in any Common Lisp implementation today, with a lot of intrusive declarations. There are many parts of the language, especially with respect to CLOS, that would benefit from a profiling + JIT approach that would mesh nicely with a VM. Tim Moore -
    • -
    • JIT'ed VM as a way to conserve effort does not seem to be needed. well, perhaps on the PPC where there is actually more than one free native-compiling CL implementation. there's just not enough effort duplication to justify the need for a common backend platform, IMHO. -
    • -
    • VM as a vehicle for non-free add-ons might be interesting, but doesn't seem a priority. -
    • -
    -Now, if the intended audience is the commercial vendors, than I dunno. but they probably know their own interests well enough. -
  • -

Comment by Faré: as far as I understand it, Common Lisp itself is the Virtual Machine, and SEX is its standard bytecode (well, charcode) representation. If you want a trimmed-down and/or extended VM on top of which to "implement" CL in a layered way, then it amounts to defining a Kernel Lisp (see Lisp - Next Generation for a discussion) -- and don't expect anything like a standardization until you have tremendously successful code. On the other hand, if what you propose is refactoring some existing Lisp implementation to add some portability features to it, well, go ahead! PS: you may be interested in reading the archives of the LispVM and related mailing-lists LispOS and virtmach. Good luck!

Comment by rpg (not that rpg!): I have been wondering about the possibility of building CL on top of the Parrot virtual machine for perl. That virtual machine (www.parrot.org) seems to have many of the features that would suit it to lisp-like languages. Question, would it be appropriate to piggyback on that work? I'm not suggesting this so much as trying to educate myself....

There is a beginnings of a lisp implementation on parrot at sprocket. The announcement is at http://www.nntp.perl.org/group/perl.perl6.internals/29074 -- lapax

    - An answer from Valery Khamenya:

    If it is not worth of doing that, then why -

  • CMUCL, SBCL and others are still not ported to Win32? -
  • -
  • Why some natively generated code is still a bit slower then in C? -
  • -

I have thought about that a bit, I've even have a Parrot/languages/CL which reads/writes Parrot's byte code and can handle the most basic CL special ops. But the fact is: 1) writing a compiler is only fun at the start, 2) CMUCL, SBCL, OpenMCL, CLISP, Corman Lisp, Lispworks, Allegro CL, MCL 3) Writing a useable CL compiler is a LOT of work 4) in all honesty I'd rather be using Common Lisp than implementing it. -- Marco Baringer

Marco: That seems like an eminently reasonable position. Indeed, I agree with you --- I'd rather use CL than develop an implementation, too. That's why I studied AI instead of programming languages or compilers! I'm just trying to educate myself a little. -- rpg (not that rpg!)

As an SBCL implementor, I hack on free Lisp compilers because (a) I enjoy it, and (b) I hope that other people will find a free Lisp system useful and choose it for their own projects, and then decide to feed back some of their work into the free software community. Given that I don't enjoy using Windows, and it isn't free (so a Lisp system which requires it won't be free either), I'm not about to start spending my spare time on it. If you can produce a CLVM which works sufficiently identically on Windows and Unix that SBCL will run on both platforms without my even needing to install Windows to test it, I recommend that you stop talking about it and start coding. -- Daniel Barlow

I would like to comment on "there is the only one CL-implementation a bit close to typical good C++ environment like Kylix, but with price not for personal use". Franz, LispWorks and Digitool all offer "for personal use" or demo copies completely for free, while Kylix Professional costs USD 250. If you want to actually buy the product you'd have to compare not to Kylix Professional but to Kylix Enterprise which costs USD 1999, much more than the prices listed on Lispworks or Digitool for similar products. While I'm at it, I'd like to mention that I'll take SBCL or OpenMCL + ILISP over Kylix any day of the week. -- Marco Baringer (who is probably just feeding the trolls...)

Of course, this problem plagues other languages than Common Lisp, too. Sooner or later, users of any programming language are going to want the implementation to be more efficient. And sooner or later, the implementors are going to run into the issue of there not being a light-weight native code generation backend that works across all platforms they want to support and generates efficient code for all features of the language. Many language implementations roll their own code generator, which is then specific to that language, and usually hard to separate from that implementation. Some independent virtual machines exist, but most are not exactly lightweight, and they often make assumptions about language features. Unsatisfied with what I have found, I have decided to start down a different path. I am (in my copious free time) developing TurboVM. The driving force behind TurboVM is keeping it small and simple. It implements a simple RISC instruction set, which should make it suitable as a target for any programming language. Currently, TurboVM bytecode can be interpreted or compiled to C code. It is very fast in both modes (once the C code is compiled to native code, its performance is on par with an equivalent program written in straight C). Eventually, the goal is to support run-time native code generation without C as an intermediate step. -- Robbert Haarman

If I had free time, I'd be happy to write my own CLVM: it would help me learn Common Lisp better as well, and I'm especially attractive to the idea of tapping into JIT compiling, to make CL more efficient without having to resort to type declarations. It would also be especially nice if all we had to do to port Common Lisp would be to port a VM. I am currently working full-time, though, and am also looking for additional part-time work...now, if only someone could pay me to work on such a beast! -- Alpheus Madsen

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLWeb.html b/clones/lisp/www.cliki.net/CLWeb.html deleted file mode 100644 index 727b6dc7..00000000 --- a/clones/lisp/www.cliki.net/CLWeb.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: CLWeb - - - - - - - - -
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLX Manual.html b/clones/lisp/www.cliki.net/CLX Manual.html deleted file mode 100644 index ad67b0f6..00000000 --- a/clones/lisp/www.cliki.net/CLX Manual.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: CLX Manual - - - - - - - -
CLX Manual
The manual for CLX is available as html pages or as a texinfo file in the CLX repository.

A separate tutorial walks through some simple examples to help you get a window up quickly, so that you can study the manual in conjunction with running code.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLX-CURSOR.html b/clones/lisp/www.cliki.net/CLX-CURSOR.html deleted file mode 100644 index cc82be31..00000000 --- a/clones/lisp/www.cliki.net/CLX-CURSOR.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: CLX-CURSOR - - - - - - - -
CLX-CURSOR
A library for rendering antialiased cursors using CLX and XRender.

It supports theming and animated cursors. Cursor images are loaded from Xcur files.

Repository: https://github.com/JMC-design/clx-cursor

Author: Michael Filonenko


-GUI, MIT-LICENSE
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLX-TRUETYPE.html b/clones/lisp/www.cliki.net/CLX-TRUETYPE.html deleted file mode 100644 index c8ad9743..00000000 --- a/clones/lisp/www.cliki.net/CLX-TRUETYPE.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: CLX-TRUETYPE - - - - - - - -
CLX-TRUETYPE
CLX-TRUETYPE is pure Common Lisp library for antialiased font rendering using CLX, XRender, ZPB-TTF, CL-VECTORS.

Author: Michael Filonenko <filonenko.mikhail at gmail.com>

Link: https://github.com/l04m33/clx-truetype

License: MIT


-GUI
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLX.html b/clones/lisp/www.cliki.net/CLX.html deleted file mode 100644 index 96887c43..00000000 --- a/clones/lisp/www.cliki.net/CLX.html +++ /dev/null @@ -1,110 +0,0 @@ - - - - - CLiki: CLX - - - - - - - -
CLX
CLX provides an implementation of the X Window System protocol to Lisp graphics library[ies] and applications. It is the Common Lisp equivalent of Xlib.

portable-clx (formerly called "telent CLX") is used in SBCL and also forms -the basis of the OpenMCL and ECL CLX packages. As of 0.7.3 it -additionally supports Allegro CL. It includes Unix-domain socket support, SHAPE, XRENDER, XFREE86-VIDMODE extensions, authorization fixes for ssh-forwarded connections, and many other bugfixes and performance improvements. Usually tested against the latest released SBCL.

-# This is the version used in QuickLisp
-git clone git://github.com/sharplispers/clx.git
-

Bundled versions of CLX for different implementations:

    -
  • -CMUCL: available from CMUCL download sites in the -extra package.

  • -
  • -CLISP comes with two implementations of CLX - the original MIT-CLX -and NEW-CLX which is faster and has some extensions.

  • -
  • -LispWorks - Barry Wilkes ported the MIT R5.02 sources to -LispWorks for Linux - http://www.bew.org.uk/Lisp/index.html. Other UNIX ports of -LispWorks have a version of CLX supported by Xanalys.

  • -
  • -OpenMCL (based on telent CLX) at https://ccl.clozure.com/ftp/pub/CLX/

  • -
  • Allegro Common Lisp: comes with CLX. You can browse the version distributed with Allegro CL here; -it appears to be the same as the MIT sources, featurewise. -
  • -

The CLX Manual is available in HTML and texinfo.

Supported X11 extensions

    -
  • XRENDER by Gilbert Baumann (basically done in the telent tree) -
  • -
  • XSHAPE and XFREE86-VIDMODE in the telent tree -
  • -
  • GLX (experimental) and DPMS (also in the telent tree) -
  • -
  • BIG-REQUESTS (work begun in Christophe's darcs repository) -
  • -
  • Some XSM work has been done in Eclipse; e.g.: eclipse/lib/sm/ common-lisp.net -
  • -
  • XEMBED by Alessandro Piras (available in quicklisp) -
  • -
  • Small part of XKeyboard by Michael Filonenko (available in quicklisp) -
  • -
  • XDBE (double-buffering) in InvalidCo's fork on github -
  • -
-

Opportunities to contribute

    -
  • Adding more effective declarations
  • -
  • Update the CLX Manual. -
  • -
  • Adding documentation strings to functions (mostly just converting existing good comments to strings). -
  • -
  • Better i18n
  • -
  • Support for the MITSHM extension
  • -
  • Use XmlXcb (XML description of the X protocol as used by XCB) as basis.
  • -
-

ssh-forwarded connections

The standard CLX function OPEN-DISPLAY doesn't correctly extract the -display number from the DISPLAY environment variable. This is a -problem when using CLX on an ssh-forwarded X11 session, as ssh -typically uses display number 10+n. Additionally, CLX in its MIT -guise doesn't handle xauth very well, requiring the xhost -blunt instrument before it'll put up a window on such a display. This -is handled correctly in CMUCL CLX (use EXT:OPEN-CLX-DISPLAY) and in -telent CLX (XLIB:OPEN-DEFAULT-DISPLAY). See CMUCL Hints for more -information.

CLOS interface

Paul Foley wrote CLOS class wrappers for X events.

Example programs

Perhaps you want to have a look at the source code of Acclaim as it directly uses CLX without any layer in between to display the rendered slides on screen.


-Topics: x11 networking -See also: GUI toolkits

If you're installing manually, get an up-to-date version from the github address or using Quicklisp.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLXS.html b/clones/lisp/www.cliki.net/CLXS.html deleted file mode 100644 index 58cf729f..00000000 --- a/clones/lisp/www.cliki.net/CLXS.html +++ /dev/null @@ -1,92 +0,0 @@ - - - - - CLiki: CLXS - - - - - - - -
CLXS
CLXS is an early-stage implementation of an X11 server (the part that does the drawing and keyboard/mouse handling) in Common Lisp.

Homepage: http://lisphacker.com/projects/clxs/

License: no license specified / no formal release

Source repository: broken / see snapshot listing:


-networking
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLiCC.html b/clones/lisp/www.cliki.net/CLiCC.html deleted file mode 100644 index 6341e746..00000000 --- a/clones/lisp/www.cliki.net/CLiCC.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: CLiCC - - - - - - - -
CLiCC
CLiCC is a Common Lisp to C Compiler, last released 1995. It generates C executables or modules from Common Lisp application programs. CLiCC is intended to be used as an addon to existing Common Lisp systems for generating portable applications. CLiCC supports a strict and very large subset, called CL0 (Common Lisp0), of Common Lisp + CLOS.

Note: CLiCC is not actively developed. ECL is an active and supported Common Lisp to C compiler.

A similar and slightly more up to date (last update in 2004) CL to C translator is Thinlisp.

CLiCC is not a Common Lisp implementation. The generated C code, although human-readable, is not primarily intended to be maintainable in C, hence, CLiCC is not a translator. The target language is a subset of C. CLiCC is adaptable to generate ANSI or K&R C. A standard C compiler, e.g. GNU gcc, can be used on the target machine to generate standalone executables or linkable modules.

Repository: https://github.com/plops/clicc

License: GPL


-obsolete
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLiMP.html b/clones/lisp/www.cliki.net/CLiMP.html deleted file mode 100644 index 14d2d8d9..00000000 --- a/clones/lisp/www.cliki.net/CLiMP.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: CLiMP - - - - - - - -
CLiMP
CLiMP is a library for parallel programming in Common Lisp (implementing similar features like OpenMP).

Depends on: alexandria, bordeaux-threads, cffi, anaphora

Source repository: https://github.com/sviridov/climp/

License: LLGPL


-thread
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLiki Bugs.html b/clones/lisp/www.cliki.net/CLiki Bugs.html deleted file mode 100644 index e05baa46..00000000 --- a/clones/lisp/www.cliki.net/CLiki Bugs.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: CLiki Bugs - - - - - - - -
CLiki Bugs
Bugs in CLiki can be reported via the common-lisp.net GitLab issue tracker (https://gitlab.common-lisp.net/vsedach/cliki2/issues), or by emailing the CLiki2 maintainer (currently, Vladimir Sedach vsedach@common-lisp.net).
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLiki Content.html b/clones/lisp/www.cliki.net/CLiki Content.html deleted file mode 100644 index 2478f0aa..00000000 --- a/clones/lisp/www.cliki.net/CLiki Content.html +++ /dev/null @@ -1,93 +0,0 @@ - - - - - CLiki: CLiki Content - - - - - - - -
CLiki Content
CLiki exists to provide high-quality content for the Common Lisp community. Over the years (CLiki began in 2000), most pages on CLiki have tended to fall into a few broad categories:

    -
  • Information about Free Software Common Lisp libraries and applications -
  • -
  • Tutorials and pages with information about using Common Lisp -
  • -
  • Discussion about the Common Lisp standard and proposals for extensions -
  • -
  • -Person pages for community members -
  • -
  • Information about Lisp conferences and users groups -
  • -
  • And of course, topic pages and lists to organize other CLiki pages -
  • -
-Of course, CLiki is by no means limited to these topics.

Here are some tips for writing good CLiki pages on particular topics:

-
-Libraries -
-
Make sure the article links to where the code can be obtained, mentions the license terms of the library, and contains relevant topic markers. See Text Formatting for info on topic markers, and index for a list of existing library topics. If a library is no longer being maintained, has been superseded, or should not be used for other reasons, please note its status and reasons for not using it in bold and don't tag it with any topics. That way there is still historical information about old libraries, but they won't clutter up topic lists for people looking for libraries.

-
-Tutorial and information pages -
-
-Text Formatting contains information about formatting code and linking to the Hyperspec. If your tutorial makes use of any libraries, please note the library versions, or at least the date the tutorial was written.

-
-Discussions about the standard -
-
Take place mostly in Proposed ANSI Revisions and Clarifications, Proposed Extensions To ANSI, and Lisp - Next Generation

-
-Person pages -
-
Link to any Common Lisp software you've written, CLiki pages you're responsible for, your contact information, thoughts about Lisp projects, etc.

-
-Conferences and user groups -
-
Most Lisp conferences and user groups aren't limited to Common Lisp. It's a good idea to create these pages on, or move them to, the Association of Lisp Users wiki

-
-Topic pages -
-
These are the main way CLiki is organized, so it's extra important they are useful and free of cruft. If you're thinking of making a list of things (especially a list of CLiki pages), don't do it by hand, but think about whether topic lists are more appropriate (see Text Formatting for info on topics and topic lists). -
-

There are some things that are inappropriate for CLiki. Information on Lisp dialects unrelated to Common Lisp, commercial Lisp software and companies, and other Lisp-but-not-Common Lisp information should go on the Association of Lisp Users wiki. Obviously, if something has nothing to do with Common Lisp, it shouldn't be on CLiki at all.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLiki Sandbox.html b/clones/lisp/www.cliki.net/CLiki Sandbox.html deleted file mode 100644 index 0049a1e3..00000000 --- a/clones/lisp/www.cliki.net/CLiki Sandbox.html +++ /dev/null @@ -1,110 +0,0 @@ - - - - - CLiki: CLiki Sandbox - - - - - - - -
CLiki Sandbox

Building from Scratch

-Has anyone tried to build Cliki2 from scratch recently?

I can't get it to build with SBCL (1.3.17) on Ubuntu or Windows.

Argh...

Perhaps I am an idiot.

hello2

-

hello

- et etc etc -stuff stuff -stuff

*cool*

* test - * another test

ASIA (ASDF2 -Software Installation Assistant) is a trivial Common Lisp project -installer. It acts like an ASDF2 extension and installs the projects -without dependencies. Dependency analysis is done by ASDF2.

It's written by Desmond O. Chang and released under MIT License.

The source code is on -Github.

Do HTML < entities still fuck up cliki? No, they don't. < > are rendered as normal characters. Writing π is as easy as &amp;pi;

It supports logging to several destinations at once, via "messengers", each of which can be tailored on-the-fly to accept some log messages and reject others; very rapid processing of messages which are rejected by all messengers; support for messengers which do or do not care to invoke cl:format. Use cl-log to record random objects instead of plain text, to generate internationalized log messages, or to create specialized binary logs.

Table experiment: as soon as I use <code> or <pre>, the alignment of the table (from Fibonacci)is destroyed. - - - - - - - - - - - - - -
PythonLispRubyJavascript
-Python code will be hard to read without correct indentation -(let ((a 0)
- (b 1))
- (defun fib ()
- (prog1
-a (psetf a b
- b (+ a b)))))
-
-def make_fib()
- a = 0; b = 1
- lambda {
- v = a
- a, b = b, a + b
- v
- }
-end -
- var fib;
- (
- function (){
- var a=0;
- var b=1;
- fib=function (){
- b=a+(a=b);
- return a;
- }
- })(); -

Note that line breaks inside code tags were ignored (as of 2012-12-10), on 2022-09-18 it is working - Roland Kaufmann -

-(let ((a 0) - (b 1)) - (defun fib () - (prog1 a - (psetf a b - b (+ a b)))))
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLiki Style.html b/clones/lisp/www.cliki.net/CLiki Style.html deleted file mode 100644 index 73fb4b46..00000000 --- a/clones/lisp/www.cliki.net/CLiki Style.html +++ /dev/null @@ -1,157 +0,0 @@ - - - - - CLiki: CLiki Style - - - - - - - -
CLiki Style
A typical CLiki page consists of an article, ideally in Inverted Pyramid style, followed optionally by comments (emphasized with the <em> tag) separated by <hr /> tags.

Tips: -

    -
  • The first sentence of an article is used as a summary in search results and topic listings. Try to make it brief and informative.
  • -
  • The Inverted Pyramid style is the recommended way to write CLiki pages. The ideal article begins with the conclusion, expressed as a single sentence. The first or next paragraph of text should then go on to give the most important points, leaving the details and supporting information to be expounded in the rest of the article.
  • -
  • Don't use relative date or version references. Terms like "new", "old", "recently" or "a month ago" don't help anyone if they don't know how long ago you wrote them. Try "in 2002", "as of 2004.08.20", "version 4" or some absolute term instead.
  • -
  • More advice on good style can be found in Constance Hale's book Sin and Syntax: How to Craft Wickedly Effective Prose. -
  • -

Q: should the page name appear in the first sentence? This leads to a lot of repetition in the search results. -- Roland Kaufmann -

-A: I'm not really qualified to give an answer but CLiki is not terribly active so instead of waiting for qualified answer for some more years, let's just say it: No. Given the current engine behaviour, the page name should not appear in the first sentence. — akater

Q: Cliki is mostly a library reference. “library” may be safely considered synonymous with “asdf system” as of 2018-03-07. ASDF recognises systems when their names are written in lower-case and does not recognise systems when their names are written in upper-case, totally inversing the behaviour of “find-package”. Which is why I find it reasonable to never name articles about libraries in upper-case. It would also be nice to rename all existing ones appropriately and use upper case for something more deserving of user's attention. Agreed? — akater

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLiki.html b/clones/lisp/www.cliki.net/CLiki.html deleted file mode 100644 index d9c24a48..00000000 --- a/clones/lisp/www.cliki.net/CLiki.html +++ /dev/null @@ -1,117 +0,0 @@ - - - - - CLiki: CLiki - - - - - - - -
CLiki
CLiki is the Common Lisp wiki, a community resource about various topics pertaining to the Common Lisp programming language, as well as a directory of Free Software Common Lisp libraries, implementations, and applications.

Content creation

If you can edit HTML, you can create CLiki pages. Heck, if you can -edit text you stand a fair chance. Before plunging in, read and absorb the CLiki Content and CLiki Style -guidelines, and the Text Formatting rules. You may want to play in -the CLiki Sandbox to get the hang of it before venturing out on the -road.

Before contributing text to CLiki, please take a moment to familiarize yourself with the Privacy Statement.

CLiki the web application

CLiki2 is a free collaborative hypertext authoring program, written in Common Lisp. Modelled on Wiki, it is Free Software distributed under the terms of the Affero GPL license. Information about obtaining and installing CLiki2 is available on the CLiki2 project page: https://gitlab.common-lisp.net/vsedach/cliki2. Information about the old software behind cliki.net, called simply "CLiki," is available on the page The Old Cliki. CLiki2 was written by Andrey Moskvitin and Vladimir Sedach, with graphic design by Anastasiya Sterh.

Bugs/Feedback

Bugs in CLiki can be reported via the common-lisp.net GitLab issue tracker (https://gitlab.common-lisp.net/vsedach/cliki2/issues), or by emailing the CLiki2 maintainer (currently, Vladimir Sedach <vsedach@common-lisp.net>).

Pages related to CLiki content

-
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLimacs.html b/clones/lisp/www.cliki.net/CLimacs.html deleted file mode 100644 index e2f0d925..00000000 --- a/clones/lisp/www.cliki.net/CLimacs.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: climacs - - - - - - - -
climacs
Climacs is an Emacs-like text editor written in Common Lisp.

It is a CLIM application. Its development resources are summarized at -its project page on common-lisp.net.

As of July 2006, Climacs is a useful tool for writing Common Lisp code, but it does not have close integration with a REPL, debugger or inspector like SLIME. The CLIM-desktop project provides additional integration with Climacs into other applications (most notably the McCLIM Listener), but does not greatly enhance Climacs' capabilities for editing Common Lisp. Climacs can presently do parameter hinting, code evaluation, symbol completion, displaying of compiler notes and definition-editing.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLinch.html b/clones/lisp/www.cliki.net/CLinch.html deleted file mode 100644 index 3ef420fa..00000000 --- a/clones/lisp/www.cliki.net/CLinch.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: CLinch - - - - - - - -
CLinch
CLinch is a simple, yet powerful 3d engine/graphics library in OpenGL for Lisp. In true Lisp fashion, it is more a build-your-own-engine hobby kit rather than striving to be a full graphics panacea. Much of the design is based on Horde3D. Although Horde3D is a very good design, it has limitations which it attempts to solve by adding domain specific languages. Items such as shaders, entities and, most importantly, the pipeline are specified using an XML language. Lisp, by being self-compiling seems like a better fit than requiring (yet) another language.

Project homepage

Author: Brad Beer


-MIT-LICENSE
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLisp.html b/clones/lisp/www.cliki.net/CLisp.html deleted file mode 100644 index 76f41e53..00000000 --- a/clones/lisp/www.cliki.net/CLisp.html +++ /dev/null @@ -1,84 +0,0 @@ - - - - - CLiki: CLISP - - - - - - - -
CLISP
CLISP is a Common Lisp implementation by Bruno Haible, then of Karlsruhe University, and Michael Stoll, then of Munich University, both in Germany. It mostly supports the Lisp described in the ANSI Common Lisp standard.

CLISP includes an interpreter, a compiler, a debugger, CLOS, MOP, arbitrary precision floats, a foreign language interface and a socket interface.

An X11 interface is available through CLX and Garnet.

Command line editing is provided by GNU Readline which makes it one of the nicer Lisps to use interactively - you can auto-complete function and file names with tab, use up arrow to get previous commands and it does parenthesis-matching.

Cross-platform preemptive multiprocessing is in alpha.

Homepage: https://www.gnu.org/software/clisp/

Source code repository: https://gitlab.com/gnu-clisp/clisp

License: GPL-2.0-or-later

Local CLISP links

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLplusJ.html b/clones/lisp/www.cliki.net/CLplusJ.html deleted file mode 100644 index 1c0257e4..00000000 --- a/clones/lisp/www.cliki.net/CLplusJ.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: CLplusJ - - - - - - - -
CLplusJ
CL+J is an exact, safe and complete Common Lisp interface to Java through JNI. In CL+J, Java methods are seen as normal Common Lisp functions with a somewhat different naming convention and Common Lisp functions can be exposed to Java as native methods. CL+J uses CFFI to accomplish this.

Current version of CL+J is 0.4.

License: MIT style

Homepage: http://common-lisp.net/project/cl-plus-j/

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CLtL2.html b/clones/lisp/www.cliki.net/CLtL2.html deleted file mode 100644 index b71f7fd7..00000000 --- a/clones/lisp/www.cliki.net/CLtL2.html +++ /dev/null @@ -1,67 +0,0 @@ - - - - - CLiki: CLtL2 - - - - - - - -
CLtL2
"Common Lisp the Language, 2nd ed" is a book by Guy Steele that describes the state of Common Lisp as it was partway through the ANSI process.

Before there was an ANSI standard for Common Lisp, there was "Common Lisp: the Language." This book, also known as CLtL1, described the state of the consensus on Common Lisp, circa 1984.

During the ANSI standardization process, Steele published a second edition (often called CLtL2). This book contains the complete contents of the first edition, plus material on CLOS, conditions, pretty printing and iteration facilities.

The book does not correspond exactly with the ANSI standard: some details are different; some things from the standard are missing; and some things from CLtL2 are not in the final ANSI standard. Programmers should therefore be wary of using it as a reference. Nonetheless, the book is easier to read than the formal ANSI specification, and has additional commentary and material. Recommended, but don't treat it as canon.

See also: -

-
-Debian package
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CMS.html b/clones/lisp/www.cliki.net/CMS.html deleted file mode 100644 index 1c94cd81..00000000 --- a/clones/lisp/www.cliki.net/CMS.html +++ /dev/null @@ -1,64 +0,0 @@ - - - - - CLiki: CMS - - - - - - - -
CMS
    -
  • -cl-eshop - - cl-eshop is an e-shop/ecommerce site written in Common Lisp -
  • -
  • -CLEWS - - Common Lisp Educational Web Server (CLEWS) is a platform for developing educational web applications, providing systems for peer-review assessments, discussion assessments, adaptive tutorials and course management -
  • -
  • -FastIndex - - FastIndex is a Web server which manages a small online library -
  • -
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CMU AI Repository.html b/clones/lisp/www.cliki.net/CMU AI Repository.html deleted file mode 100644 index 64c63488..00000000 --- a/clones/lisp/www.cliki.net/CMU AI Repository.html +++ /dev/null @@ -1,62 +0,0 @@ - - - - - CLiki: CMU AI Repository - - - - - - - -
CMU AI Repository
The -CMU AI Repository is a veritable goldmine. Well worth digging.

Random sampling


-AI
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CMU AI repository.html b/clones/lisp/www.cliki.net/CMU AI repository.html deleted file mode 100644 index 64c63488..00000000 --- a/clones/lisp/www.cliki.net/CMU AI repository.html +++ /dev/null @@ -1,62 +0,0 @@ - - - - - CLiki: CMU AI Repository - - - - - - - -
CMU AI Repository
The -CMU AI Repository is a veritable goldmine. Well worth digging.

Random sampling


-AI
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CMUCL Hints.html b/clones/lisp/www.cliki.net/CMUCL Hints.html deleted file mode 100644 index 729a6f4d..00000000 --- a/clones/lisp/www.cliki.net/CMUCL Hints.html +++ /dev/null @@ -1,291 +0,0 @@ - - - - - CLiki: CMUCL Hints - - - - - - - -
CMUCL Hints
A collection of miscellaneous hints and tips for CMUCL users - some also apply to the CMUCL spin-off, SBCL.

Informative top-level prompt

Courtesy of Paul Foley: FWIW, I like to add -

(in-package "COMMON-LISP") - - (defvar *last-package* nil) - (defvar *cached-prompt*) - - (defun tpl-prompt () - (unless (eq *last-package* *package*) - (setf *cached-prompt* - (concatenate 'string (or (first (package-nicknames *package*)) - (package-name *package*)) - "> ")) - (setf *last-package* *package*)) - *cached-prompt*) - - (setf *prompt* #'tpl-prompt)

to my lisp.core, so I get a "USER> " prompt that changes as I change packages instead of the horrible default "* " prompt.

Correct package name for CMUCL 19a changes -

(in-package "LISP")

To achieve the same effect in SBCL, use:

(defvar *last-package* nil) -(defvar *cached-prompt* nil) - -(defun package-prompt (stream) - (unless (eq *last-package* *package*) - (setf *cached-prompt* - (concatenate 'string (or (first (package-nicknames *package*)) - (package-name *package*)) - "> ")) - (setf *last-package* *package*)) - (terpri) - (princ *cached-prompt* stream)) - -(setf sb-int:*repl-prompt-fun* #'package-prompt) -

Using the prompt with ilisp -

-If you want to use the prompt above in a ilisp buffer, add the following -to you emacs startup-file (.emacs):

(add-hook 'cmulisp-hook - (lambda () - (setq comint-prompt-regexp - "^\\([0-9]+\\]+\\|\\*\\|[-a-zA-Z0-9]*\\[[0-9]+\\]:\\|[-A-Z0-9]*>\\) ") - )) -

Turning off GC messages

... is as easy as setting ext:*gc-verbose* to NIL.

Behaviour of setq at top-level

When -

(setq foo "bar")
-is entered at top-level, foo is declared special automagically. -The variable ext:*top-level-auto-declare* can be used to change this behaviour; -see
(describe 'ext:*top-level-auto-declare*)
for details.

Undoing a special declaration

If you find that you've accidentally created a special, you can undo it. CMUCL keeps this information in a database you can query/modify using ext:info. -

-* (setf x nil)
-Warning:  Declaring X special.
-
-NIL
-
-;; Uh oh
-* (ext:info :variable :kind 'x)
-:SPECIAL
-T
-
-;; This changes X back to a lexical
-* (setf (ext:info :variable :kind 'x) :global)
-:GLOBAL
-

This works on SBCL too, using sb-ext:info

Using the MOP -

The MOP in CMUCL is based on PCL and works pretty much like AMOP describes. -There is however an oddity with it that has to do with ``wrapper'' classes, -the details of which I (dan) unfortunately can't remember (so, somebody please -edit this). Anyway, a reasonable fix is to work in a package that shadows -a bunch of symbols from PCL instead of picking up the default versions in COMMON-LISP :

(defpackage "MY-PACKAGE" - (:shadowing-import-from PCL FIND-CLASS CLASS-NAME BUILT-IN-CLASS CLASS-OF) - ... ) -

Running Lisp programs from the shell prompt

Note that this works on Linux systems only (tested on Slackware 7.0 by the original poster). Depends on having a kernel compiled with the binfmt_misc module enabled, and root access to setup binfmt_misc. Any user can run the scripts.

-From: "Vladimir V. Zolotych" <gsmith@eurocom.od.ua>
-Subject: Re: echo program
-Newsgroups: comp.lang.lisp
-Date: Wed, 28 Feb 2001 20:19:54 +0200
-Organization: DCS-EuroCom ISP
-
-Here is the summary (Thanks to Paul Foley and
-Rudolf Schlatte)
-
-Using Slackware 7.0
-
-The CL echo program (file ECHO.lisp)
-
-(loop for arg in *command-line-strings* as i upfrom 0 do
-      (format t "~&arg[~D] = ~S" i arg))
-(terpri)
-
-Shell script (file /usr/local/lib/batch)
-#!/bin/sh
-exec /usr/local/bin/lisp -batch -load $*
-
-Settings for binfmt_misc
-  # cd /proc/sys/fs/binfmt_misc/
-  # echo ':CMUCL:M::FASL FILE::/usr/local/lib/batch:' >register
-
-Running ECHO.x86f
-
-$ echo.x86f 1 2 3
-; Loading #p"/home/vlz/.cmucl-init.lisp".
-; Loading #p"/home/vlz/cmucl/echo/echo.x86f".
-arg[0] = "/usr/local/bin/lisp"
-arg[1] = "-batch"
-arg[2] = "-load"
-arg[3] = "./echo.x86f"
-arg[4] = "1"
-arg[5] = "2"
-arg[6] = "3"
-$ 
-
--- 
-Vladimir Zolotych                         gsmith@eurocom.od.ua
-

(also see this page)


Note that it'd be even better to use ${1+"$@"} instead -of $* in the shell script to pass through all the -parameters untouched.

Explanation:

$* first concatenates all parameters, separating -them with space (the first character of $IFS, in fact), -and after that, splits them again according to $IFS. -My suggestion does NOT do this. This matters when some parameters -contain whitespace, such as -/some/program -name 'Hannah Schroeter'

-- Hannah Schröter hannah@schlund.de, 22 May 2001

-


Note that debian provides a wrapper ``cmucl-run'' with the cmucl package, which can be used with binfmt-support for binfmt_misc goodness.


-

CMUCL shell scripts

This is an alternative method to the linux-specific binfmt_misc method above, which should work on all Unix platforms. It consists of using a small trampoline program which invokes the CMUCL runtime with a rewritten argv. Your shell script looks something like

#!/usr/bin/cmucl-trampoline \ --quiet -batch -noinit -!# - -(format t "~&Hello, world!~%")

You need to download the cmucl-trampoline program, and your image must contain a reader macro which treats #!..!# as comments (there is example lisp in the code).

Another way relies on your shell automatically interpreting executable files not marked with #! itself: -

":" ; exec lisp -load "$0" -eval '(quit)'
-or, to compile it first: -
":" ; exec lisp -eval "(compile-file \"$0\")" -load `basename $0 .lisp`.x86f -eval '(quit)'

Here is what I (Erik Enge) use to write Lisp shellscripts:

-#!/bin/sh
-# -*- mode: sh -*-
-
-# $Id: runlisp,v 1.3 2003/04/22 02:33:53 erik Exp $
-# $Source: /home/cvsd/repo/bin/runlisp,v $
-
-# A handy script to run Lisp as shellscripts.  In the top of your
-# file, put:
-#
-#  #!/usr/bin/env runlisp
-#
-# and stick runlisp (this script) somewhere in your path.  Then you
-# can have regular-looking shellscripts that are written in Lisp.
-
-# If you have another Lisp implementation and know what arguments to
-# pass to it for this to work, feel free to add it and send me
-# (erik@nittin.net) the patch.
-
-if [ -f /usr/bin/sbcl ]; then
-   /usr/bin/sbcl --noinform --disable-debugger --eval '(set-dispatch-macro-character #\# #\! (lambda (stream bang number) (declare (ignore bang number)) (read-line stream) t))' --load $1 --eval '(quit)'
-elif [ -f /usr/bin/lisp ]; then
-   /usr/bin/lisp -quiet -batch -noinit -eval '(set-dispatch-macro-character #\# #\! (lambda (stream bang number) (declare (ignore bang number)) (read-line stream) t))' -load $1 -eval '(quit)'
-else
-   echo "$0: could not find a Lisp I know how to call"
-fi
-


CLX over ssh-forwarded displays

The standard CLX function OPEN-DISPLAY doesn't correctly extract the display number from the DISPLAY environment variable. This is a problem you might run into when using CLX on an ssh-forwarded X11 session. Indeed, ssh typically sets $DISPLAY to remotehost:10, and forwards port 6010 on the remote host to port 6000 (or whatever port the local X11 server is running on) on the local host. CLX will unsuccessfully try to connect to remotehost:0.

The solution is to use the CMUCL-specific function EXT:OPEN-CLX-DISPLAY instead of XLIB:OPEN-DISPLAY. This function will parse the DISPLAY environment variable to extract the display and screen numbers.

Note that the version of CLX distributed with CMUCL includes a number of extensions to the original code. It is able to extract X11 authorization cookies from the file mentioned by the XAUTHORITY environment variable (defaulting to ~/.Xauthority), and it includes hooks into CMUCL's SERVE-EVENT facility.

NB: Many people seem to find that this does not work for them, as the question of how to use CLX locally without turning off access control is a frequent question on c.l.lisp and the CMUCL mailing list.

-


SERVE-EVENT example

An example of CMUCL's SERVE-EVENT facility, that allows you to handle multiple concurrent network connections and file handles, without using multithreading. The program is a port forwarder, or redirector. It redirects TCP connections to another port on another machine. Get it from http://emarsden.chez.com/downloads/.

-


Adding commandline switches

Certain implementations such as CLISP have a -c commandline switch that allows you to invoke the file compiler from the shell. CMUCL's commandline switches are user-extensible, so you can emulate this behaviour with code such as the following, in your site-init.lisp or ~/.cmucl-init initialization files.

(macrolet ((with-batch-processing (&body body) - `(handler-case (prog1 t ,@body) - (serious-condition (condition) - (format *error-output* "Error in batch processing:~%~A~%" - condition) - (finish-output *error-output*) - (throw 'lisp::%end-of-the-world 1)) - (:no-error (value) - (declare (ignore value)) - (throw 'lisp::%end-of-the-world 0))))) - -(ext:defswitch "compile" - #'(lambda (switch) - (with-batch-processing - (mapc #'compile-file (ext:cmd-switch-words switch))))) - -(ext:defswitch "compile-and-load" - #'(lambda (switch) - (with-batch-processing - (mapc #'(lambda (file) (compile-file file :load t)) - (ext:cmd-switch-words switch))))) - -) ; macrolet -

Now you can use the following to compile (and load) from the command -line:

-  lisp -compile-and-load demo.lisp demo2.lisp
-

If errors are encountered during processing, CMUCL is aborted, with a -return value of 1, otherwise it returns 0 (i.e. success). This can be combined with the -quiet flag (put it at the start of the -commandline) if wanted.

An alternative to this form of interaction with the file compiler is to load the files and compile them from a stream, so you don't have any FASL files hanging around on disk (thus avoiding problems with binary compatibility between different CMUCL releases), yet still benefit from compiled performance. You can do this with code such as:

(defun process-switch-demon (switch) - (let ((files (copy-list (ext:cmd-switch-words switch)))) - (push #'(lambda () - (dolist (file files) - (format *terminal-io* - "~&;;; Processing compiled code from ~A.~%" file) - (with-open-file (s file) - (ext:compile-from-stream s)))) - *run-actions*))) - -(ext:defswitch "process" #'process-switch-demon) -

Adapted from article 87g06vubxi.fsf@orion.bln.pmsf.de posted to comp.lang.lisp by Pierre Mai, on 2001-11-30.


"Advise" facilities

In CMUCL 18e and later, use fwrappers; the encapsulation mechanism described below is deprecated.

from the release notes for CMUCL 17f:

- -- The encapsulation mechanism (similar to advise facilities) has been
-    revamped to work on SETF function names as well as symbols.
-
-    EXT:ENCAPSULATED-DEFINITION
-       Returns whatever definition is stored for name, regardless of whether
-       it is encapsulated.  Unlike FDEFINITION, this does not strip off the
-       encapsulation.  This is SETF'able.
-       
-    EXT:ENCAPSULATE
-       Replaces the definition of name with a function that binds name's
-       arguments a variable named argument-list, binds name's definition to a
-       variable named basic-definition, and EVAL's body in that context.  Type
-       is whatever you would like to associate with this encapsulation for
-       identification in case you need multiple encapsuations of the same
-       name.
-       
-    EXT:UNENCAPSULATE
-       Removes name's most recent encapsulation of the specified type.
-       
-    EXT:ENCAPSULATED-P
-       Returns t if name has an encapsulation of the given type, otherwise
-       nil.
-       
-    EXT:*SETF-FDEFINITION-HOOK*
-       A list of functions invoked by (SETF FDEFINITION) before storing the
-       new value.  Each hook function must take the function name and the
-       new-value.
-

also see: section 3.10.1 of the CMUCL Users' Manual; (describe -'ext:encapsulate)


Command line editing and auto completion with CMUCL

For the rare cases when you don't use ILISP but invoke -CMUCL directly from the command line:

    -
  1. Get rlwrap and build -it. -
  2. -
  3. Put something like -
    alias cmucl="rlwrap cmucl"
    - into your ~/.bashrc (or ~/.profile or whatever). -
  4. -
  5. Put this -file into your home directory, call it ~/.cmucl_completions. -
  6. -
  7. Optionally adjust your ~/.inputrc file (actually the -file where $INPUTRC points to). I added the line -
    TAB: complete
    -because rlwrap binds this key to menu-complete. -
  8. -

Note that recent readline -versions include an example program rlfe that does almost the same -thing as rlwrap. I think rlwrap is nicer, though.

For those of you on Debian, cle that does pretty much the same thing -(but no tab-completion) is packaged on testing.


Allegro-like REPL commands

To get top-level commands like :load "foo.lisp" either use Paul Foley's Toplevel or Peder O. Klingenberg's http://heim.ifi.uio.no/~pok/download/commands.lisp.


-programming tips
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CMUCL on Debian.html b/clones/lisp/www.cliki.net/CMUCL on Debian.html deleted file mode 100644 index deafc359..00000000 --- a/clones/lisp/www.cliki.net/CMUCL on Debian.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: CMUCL on Debian - - - - - - - -
CMUCL on Debian
CMUCL has been 'ported' to Debian by Peter Van Eynde.

A few Debian CMUCL hints. (Original link is dead; see the copy from April 2009 at archive.org) Most are debianized versions of CMUCL Hints

(On Debian sarge, CMUCL was broken due to a bad kernel. See the Debian bug report for details.)

QA

What about 'lazy mode'? -It is seriously broken at the moment. I need some time to fix it, time I won't have for some time. So I decided to disable it in the newest versions. After the freeze of the new debian release (or when I found the fix) 'lazy mode' should work again.

Could you summarize the main differences of your tree from the cons.org tree? For example, outline the differences between the safe and normal kernels (which aspects of the language are affected by the high-security feature). -Documenting the diff is on my (pretty long) to-do list. Mainly the safe core should not have problems with ansi-test.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CMUCL.html b/clones/lisp/www.cliki.net/CMUCL.html deleted file mode 100644 index 586cabbb..00000000 --- a/clones/lisp/www.cliki.net/CMUCL.html +++ /dev/null @@ -1,106 +0,0 @@ - - - - - CLiki: CMUCL - - - - - - - -
CMUCL
CMUCL is a high-performance, free (mostly Public Domain) Common Lisp implementation that aims towards ANSI compatibility and runs on a number of Unix platforms - including Linux/ix86, Linux/Alpha, -FreeBSD/ix86, NetBSD/ix86, OpenBSD/ix86, Solaris/SPARC, -HP-UX/HPPA, and IRIX/MIPS - though not all of these ports are current. -See the project home page at cons.org -for more information.

Debian GNU/Linux users will find that their distribution includes -CMUCL packages (Stable version, -Testing version, -Unstable version) -which they can grab using apt-get. More information about the CMUCL port to Debian can be found at CMUCL on Debian. Other Linux packages are listed here: https://pkgs.org/download/cmucl

The EncyCMUCLopedia is a collection of most - if not all - of the documentation related to CMUCL. It is updated a couple of times per year. The latest version is June 17, 2001. - -The Design of CMU Common Lisp documents internal details of the CMU Common Lisp compiler and run-time system. By Robert A. MacLachlan (ed), updated January 15, 2003.

Not sure anyone besides me has had a problem with this, but I just thought I'd mention that if you set *print-lines* and/or *print-right-margin* to sufficiently low values, error-messages may show up as just "..", which is quite confusing. Oh, and if something is weird, remember to try without your super-tweaked init.lisp-file, like I didn't. (lisp -noinit)

Related pages

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/COLLECTING.html b/clones/lisp/www.cliki.net/COLLECTING.html deleted file mode 100644 index b2547f67..00000000 --- a/clones/lisp/www.cliki.net/COLLECTING.html +++ /dev/null @@ -1,114 +0,0 @@ - - - - - CLiki: COLLECTING - - - - - - - -
COLLECTING
Common Lispy ways of collecting values during evaluation are diverse; here we discuss some well established and some proposed.

LOOP has a COLLECT clause which is nice and handy. As a clause -however, (COLLECT x INTO y) doesn't work inside forms or nested -loops. Various COLLECTING macros have been proposed for this purpose. -They can be considered as simple language extensions.

The following shows a typical situation where one wishes for a collecting -macro:

(let ((all-elements '())) - (dotimes (i 10) - (dotimes (j 5) - (push (aref array i j) all-elements))) - (nreverse all-elements))

There are two basic forms of collecting:

    -
  • collect into a single container (and yield the list), like -above. It usually takes a form similar to: (collecting (dolist ... (collect form)) ...) -
  • -
  • collect into multiple containers. Two mechanisms are needed: one for naming the desired container, one for selecting the result.
  • -
-A simple implementation of the first idiom uses MACROLET to -locally define the inner COLLECT operator:

(defmacro collecting (&body forms) - ;; Collect some random stuff into a list by keeping a tail-pointer - ;; to it, return the collected list. By Tim Bradshaw, - ;; and may be used for any purpose whatsoever by anyone - "Collect things into a list forwards. Within the body of this macro -The form `(COLLECT THING)' will collect THING into the list returned by -COLLECTING." - (let (($resnam$ (gensym "COLLECTOR")) ($tail$ (gensym)) ($thing$ (gensym))) - `(let - (,$resnam$ ,$tail$) - (macrolet - ((collect (thing) - ;; Collect returns the thing it's collecting - `(let ((,',$thing$ ,thing)) - (if ,',$resnam$ - (setf (cdr ,',$tail$) - (setf ,',$tail$ (list ,',$thing$))) - (setf ,',$resnam$ - (setf ,',$tail$ (list ,',$thing$)))) - ,',$thing$))) - ,@forms) - ,$resnam$)))

It also uses tail-consing, which was measured by Sam Steingold to be -more performant than the PUSH/NREVERSE idiom on -several implementations (TODO Reference, c.l.l April -1999 or elsewhere). OTOH, there's an article by Richard C. Waters from 1993 comparing NREVERSE and RPLACD (aka. SETF CDR) where NREVERSE usually wins, presumably because it is heavily optimized by the implementation.

In November 2001, yet another discussion - about the design of a collecting facility for the second situation began in comp.lang.lisp under "Collection utilities."

Do you prefer (collect FORM into var) ...) or -(var FORM) inside the loops? And what result -should be returned by the macro in the presence of multiple variables, -would you introduce a FINALLY clause or use VALUES?

Several people have posted their own versions in the long history of -c.l.l. IIRC among others Tim Bradshaw (both cases), Bruno Haible, Sam Steingold, and more recently, a naive implementation by Chris Capel. Helmut Eller points at the COLLECT macro available in CMUCL (extensions.lisp):

(collect ((c1) (c2 '(init) cons)) - (dolist (e '(x y z)) - (c1 e) - (c2 e)) - (values (c1) (c2))) -;; => (X Y Z), (Z Y X INIT)

A version of with-collect is distributed with CLISP and CLOCC in CLLIB/simple.lisp:

(with-collect (c1 c2) - (dotimes (i 10) - (if (oddp i) - (c1 i) - (c2 i)))) -;; => (1 3 5 7 9), (0 2 4 6 8)

One could also use an adjustable array and VECTOR-PUSH-EXTEND -instead of lists, but that's another story (See c.l.l around November -2001 about "Loop? ptooey" for Dylan code from Bruce Hoult for a -generic collecting macro that works on arrays, lists etc.).

UIOP has while-collecting. We define names for a collector function that, when called with an argument in the body, adds it to the corresponding collection. The macro returns multiple values, a list for each collection.

(while-collecting (foo bar) - (dolist (x '((a 1) (b 2) (c 3))) - (foo (first x)) - (bar (second x)))) -

-There is also collectors, a system available in Quicklisp which provides fairly rich and seemingly extensible set of features.


-macro example accumulators
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/COM.INFORMATIMAGO.SUSV3.html b/clones/lisp/www.cliki.net/COM.INFORMATIMAGO.SUSV3.html deleted file mode 100644 index c9388d22..00000000 --- a/clones/lisp/www.cliki.net/COM.INFORMATIMAGO.SUSV3.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: COM.INFORMATIMAGO.SUSV3 - - - - - - - -
COM.INFORMATIMAGO.SUSV3
SUSV3 is an interface to the Single Unix Specification version 3 API.

Homepage: http://informatimago.com/develop/lisp/index.html

Source repository: git clone git://git.informatimago.com/public/lisp com/informatimago

License: GPL


-Topics: system programming Unix
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/COMFY-6502.html b/clones/lisp/www.cliki.net/COMFY-6502.html deleted file mode 100644 index 69ba0aca..00000000 --- a/clones/lisp/www.cliki.net/COMFY-6502.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: COMFY-6502 - - - - - - - -
COMFY-6502
COMFY-6502 is a port by JosephOswald of Henry Baker's COMFY-6502 compiler to Common Lisp. COMFY is a "medium-level" assembly language which combines a clean but simple set of control primitives and Lispy macros with conventional machine code.

Homepage: http://josephoswald.nfshost.com/comfy/summary.html

Source repository: https://github.com/jaoswald/cl-comfy-6502

License: ACM license

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/COMPOSE.html b/clones/lisp/www.cliki.net/COMPOSE.html deleted file mode 100644 index f4ee7126..00000000 --- a/clones/lisp/www.cliki.net/COMPOSE.html +++ /dev/null @@ -1,82 +0,0 @@ - - - - - CLiki: COMPOSE - - - - - - - -
COMPOSE
This is one of the hypothetical Common Lisp Utilities.

Function COMPOSE

Syntax:

compose &rest functions => composite-function

Arguments and Values:

functions---a list of designators for functions.

composite-function---a function created by composing functions.

Description:

compose returns a function which is created by composing functions right-associatively.

Examples:

;; Just to illustrate order of operations -(defun 2* (x) (* 2 x)) - -(funcall (compose #'1+ #'1+) 1) => 3 -(funcall (compose '1+ '2*) 5) => 11 -(funcall (compose #'1+ '2* '1+) 6) => 15

Reference implementation:

(defun compose (&rest functions) - "Compose FUNCTIONS right-associatively, returning a function" - #'(lambda (x) - (reduce #'funcall functions - :initial-value x - :from-end t)))

This implementation is fairly straightforward, but very inefficient. In my benchmarks, I found it to be orders of magnitude slower than writing out an equivalent lambda function. However, a compiler macro speeds up some common cases immensely:

;; Converts calls to COMPOSE to lambda forms with everything written -;; out and some things written as direct function calls. -;; Example: (compose #'1+ #'2* #'-) => (LAMBDA (X) (1+ (2* (- X)))) -(define-compiler-macro compose (&rest functions) - (labels ((sharp-quoted-p (x) - (and (listp x) - (eql (first x) 'function) - (symbolp (second x))))) - `(lambda (x) ,(reduce #'(lambda (fun arg) - (if (sharp-quoted-p fun) - (list (second fun) arg) - (list 'funcall fun arg))) - functions - :initial-value 'x - :from-end t))))

This compiler macro shouldn't be considered part of the reference implementation, but it may be useful anyway. I, Peter Scott, place this code in the public domain.


This version allows composition of functions with multiple arguments and return values.

(defun compose2 (f1 f2) - (lambda (&rest args) - (multiple-value-call f1 (apply f2 args)))) - -(defun compose (&rest functions) - (if functions - (reduce #'compose2 functions) - #'values))

Alexandria contains this function. (likely nonexhaustive)

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/COMPUTABLE-REALS.html b/clones/lisp/www.cliki.net/COMPUTABLE-REALS.html deleted file mode 100644 index a8cd69f5..00000000 --- a/clones/lisp/www.cliki.net/COMPUTABLE-REALS.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: COMPUTABLE-REALS - - - - - - - -
COMPUTABLE-REALS
COMPUTABLE-REALS is a Mathematics library for dealing with arbitrary precision reals.

COMPUTABLE-REALS is Quicklispable, and was written originally by Michael Stoll and is maintained by Robert Smith.

The source can be found here.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CONSPACK.html b/clones/lisp/www.cliki.net/CONSPACK.html deleted file mode 100644 index 3e203a78..00000000 --- a/clones/lisp/www.cliki.net/CONSPACK.html +++ /dev/null @@ -1,62 +0,0 @@ - - - - - CLiki: CONSPACK - - - - - - - -
CONSPACK
CONSPACK was inspired by MessagePack, and by the general lack of features among prominent serial/wire formats. Specifically, it focuses on the following:

    -
  • A rich set of Lisp-oriented data types, being able to represent things like dotted lists, objects and structures, rationals, symbols, and the like. -
  • -
  • A very compact representation, which can be smaller than MessagePack in some cases (particularly representing sequences of multi-byte numbers, or anything involving richer data types). -
  • -
  • Full reference support including circular structures, multiple references to the same object, and "remote" references for custom handling. -
  • -

Implementations


- standards
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CORBA.html b/clones/lisp/www.cliki.net/CORBA.html deleted file mode 100644 index 5c55af5e..00000000 --- a/clones/lisp/www.cliki.net/CORBA.html +++ /dev/null @@ -1,62 +0,0 @@ - - - - - CLiki: CORBA - - - - - - - -
CORBA
CORBA is the Common Object Request Broker Architecture. The document describing OMG CORBA bindings for Common Lisp is available at https://www.omg.org/spec/LISP/.

Peter Van Eynde: CORBA is a poor match with CLOS: CORBA methods can have a variable number of arguments, which results in having all methods having arguments (object &rest parameters) . This is less then ideal, and especially the GUI tools like ilisp are helpless to give useful argument lists. There is no concept of a mix-in of course

The ANY type is nice, but most implementations only convert the first level of an ANY object, so you'll get a list of ANY objects instead of a list of lisp objects like strings and integers. You need to realize each object in turn to get that list of lisp things. Note that this is not a problem with the current implementations, but with a basic problem related to the copying problem in Common Lisp.

Other CORBA problems include the failure of many people to realize that this is Network programming and things like bandwith and latency are not to be underestimated. So no "This method returns a cookie and you need to use this object method to itterate through it" but: "This methods returns the number of records found and a list containing the first N results, use method foo to get the next N". The latter method reduces latency and makes better use of the network bandwidth. I could rant for hours on this subject... Peter Van Eynde

Another thing: CORBA uses CDR-encoding which is the on-the-wire encoding of objects, not the memory-saving trick used in the old lisp machines :-).

CDR, in the context of CORBA, is a Common Data Representation (PDF).

For free CORBA implementations for Common Lisp, see

-
-standards
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CPS.html b/clones/lisp/www.cliki.net/CPS.html deleted file mode 100644 index ba16be95..00000000 --- a/clones/lisp/www.cliki.net/CPS.html +++ /dev/null @@ -1,514 +0,0 @@ - - - - - CLiki: CPS - - - - - - - -
CPS
CPS stands for Continuation Passing Style.

Refer to here for more details.

I wrote a CPS transformer for Common Lisp in a few days after thinking in lisp terms only three months for now. I think it means lisp is great, actually I would never try to do the same thing in Java. -- Levente Mészáros

The code is not tested too much and I'm sure it can be improved. It's just a toy right now, but an interesting one, I think...

Also consider cl-cont - a delimited continuations library for Common Lisp initially written for cl-weblocks.

How does this one compare to Marco Baringer's transformer (used in UCW), part of his arnesi/bese tools? -- Jörg Höhle

I did take a look at Marco's stuff and this one is quite similar to that, although I don't know if arnesi uses explicit environments or relies on captured variables like this one. Actually I could not figure it out probably because of my little lisp experience. -- Levente Mészáros

After consulting with Marco, this is somewhat different in that it does not maintain during runtime its own environment (e.g. variable bindings), but relies on the VM's and on the fact that closures capture it.

Discussing with David Lichteblau I think the closure (the continuation) that is returned can be saved and restored via SB-HEAPDUMP (in SBCL), so you may have persistent continuations. Well, you already have them in arnesi/cc in a somewhat different way. -- Levente Mészáros

I have added a persistent continuation test below.

Code

#| - Copyright (C) 2006 Levente Mészáros melevy@freemail.hu - - Permission is hereby granted, free of charge, to any person obtaining - a copy of this software and associated documentation files (the - "Software"), to deal in the Software without restriction, including - without limitation the rights to use, copy, modify, merge, publish, - distribute, sublicense, and/or sell copies of the Software, and to - permit persons to whom the Software is furnished to do so, subject to - the following conditions: - - The above copyright notice and this permission notice shall be - included in all copies or substantial portions of the Software. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, - EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. - IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY CLAIM, DAMAGES OR - OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, - ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR - OTHER DEALINGS IN THE SOFTWARE. - - Except as contained in this notice, the name of the author shall - not be used in advertising or otherwise to promote the sale, use or - other dealings in this Software without prior written authorization - from the author. -|# - -;;; names that already present in common lisp preceded by @ sign for clarity - -;(declaim (optimize (debug 3) (safety 3) (speed 0) (space 0))) -(declaim (optimize (debug 0) (safety 0) (speed 3) (space 0))) - -;; top level eval -(defun @eval (k) - (if (functionp k) - (funcall k #'ret/cc) - k)) - -;; top level eval restaring each time a continuation is returned by @eval -(defun @eval* (k) - (do ((k k (@eval k))) - ((not (functionp k)) k))) - -(defun cps-lambda (&rest forms) - `(lambda (k) - (declare (type function k)) - ,@forms)) - -(defun ret/cc (k) - k) - -(defmacro let/cc (variable &rest forms) - `(call/cc - ,(cps-lambda - `(let ((,variable k)) - ,@forms)))) - -(defconstant +special-forms+ - '(progn if let let* setq block return-from declare tagbody go call/cc)) - -(defun @special-form-p (form) - (declare (type list form)) - (member (the symbol (first form)) +special-forms+)) - -;; macros to generate CPS transformed code -(defun cps-transform-forms (forms) - (loop for f in forms - collect (cps-transform-form f))) - -(defun cps-transform-forms* (forms) - (append '(list) (cps-transform-forms forms))) - -(defun cps-transform-form (form) - (setq form (macroexpand form)) - (if (or (atom form) (not (@special-form-p form))) - (cps-lambda `(funcall k ,form)) - (ecase (first form) - (progn - (cps-lambda `(@progn k ,(cps-transform-forms* (cdr form))))) - (if - (cps-lambda `(@if k ,@(cps-transform-forms (cdr form))))) - (let* - #1=(cps-lambda - `(let (,@(loop for b in (second form) - collect (list (first b) nil))) - (@let* k - (list ,@(loop for b in (second form) - collect `(lambda (v) (setq ,(first b) v)))) - (list ,@(loop for b in (second form) - collect (cps-transform-form (second b)))) - ,(cps-transform-forms* (cddr form)))))) - (let - ;; TODO: this is a temporary hack - (format t "Warning: using let* instead of let: ~A" form) - #1#) - (setq - (cps-lambda - `(funcall ,(cps-transform-form (third form)) - (lambda (v) - (setq ,(second form) v) - (funcall k v))))) - (block - (cps-lambda `(let ((,(safe-symbol (second form)) k)) - (@progn k ,(cps-transform-forms* (cddr form)))))) - (return-from - (cps-lambda `(funcall ,(cps-transform-form (third form)) (safe-symbol (second form))))) - (tagbody - (let ((tagbody-forms (loop for f in (cdr form) - when (listp f) - collect (cps-transform-form f)))) - (cps-lambda - `(labels ((_tagbody_ (v) (funcall k v)) - ,@(loop for f in (cdr form) - with i = 0 - when (not (listp f)) - collect (list (safe-symbol f) - '(k) - `(@progn k ,(append '(list) (nthcdr i tagbody-forms)))) - when (listp f) - do (incf i))) - (@progn k ,(append '(list) tagbody-forms)))))) - (go - (cps-lambda `(funcall #',(safe-symbol (second form)) #'_tagbody_))) - (declare - ;; TODO: use type declarations - (format t "Warning: ignoring declaration ~A" form) - (cps-lambda '(funcall k nil))) - (call/cc - (second form))))) - -;; top level cps macro defines three functions: name @name and @name* -(defmacro @defun (name args &rest forms) - (let ((f (cps-lambda - `(@progn k - ,(cps-transform-forms* forms))))) - `(progn - (defun ,name ,args - ,@forms) - (defun ,(intern (concatenate 'string "@" (symbol-name name))) ,args - (@eval ,f)) - (defun ,(intern (concatenate 'string "@" (symbol-name name) "*")) ,args - (@eval* ,f))))) - -;;; special forms -(defun @progn (k forms) - (declare (type function k) (type list forms)) - (cond ((cdr forms) (funcall (the function (car forms)) - (lambda (i) - (declare (ignore i)) - (@progn k (cdr forms))))) - (forms (funcall (the function (car forms)) k)) - (t (funcall k nil)))) - -(defun @if (k condition then &optional (else nil)) - (declare (type function k condition then)) - (funcall condition - (lambda (v) - (cond (v (funcall then k)) - (else (funcall else k)) - (t (funcall k nil)))))) - -(defun @let* (k variables values forms) - (declare (type function k) (type list variables values forms)) - (if values - (funcall (the function (car values)) - (lambda (v) - (funcall (the function (car variables)) v) - (@let* k (cdr variables) (cdr values) forms))) - (@progn k forms))) - -(defun safe-symbol (symbol) - (intern (concatenate 'string "@" (symbol-name symbol) "@"))) - -;; for non CPS function -(defun call/cc (k) - (declare (ignore k)) - nil)

Test

-Try this to test (I have used LispWorks). Note how the continuation (a closure) is returned and reused. The speed is interestingly only x20 slower compared to normal compiled code. It probably comes from heavy memory usage as you can see from the timing.

-CL-USER 7 > (@defun ii ()
-  (iter (for i from 0 to 3)
-    (call/cc #'ret/cc)
-    (collect i)))
-@II*
-
-CL-USER 8 > (ii)
-(0 1 2 3)
-
-CL-USER 9 > (@ii*)
-(0 1 2 3)
-
-CL-USER 10 > (@ii)
-#<closure 206834B2>
-
-CL-USER 11 > (@eval *)
-#<closure 2068A0DA>
-
-CL-USER 12 > (@eval *)
-#<closure 2068D50A>
-
-CL-USER 13 > (@eval *)
-#<closure 20690FFA>
-
-CL-USER 14 > (@eval *)
-(0 1 2 3)
-
-...
-
-CL-USER 39 > (time (dotimes (x 100000) (ii)))
-Timing the evaluation of (DOTIMES (X 100000) (II))
-
-user time    =      1.031
-system time  =      0.000
-Elapsed time =   0:00:01
-Allocation   = 2464 bytes standard / 17603267 bytes conses
-0 Page faults
-NIL
-
-CL-USER 40 > (time (dotimes (x 100000) (@ii*)))
-Timing the evaluation of (DOTIMES (X 100000) (@II*))
-
-user time    =     18.328
-system time  =      0.000
-Elapsed time =   0:00:18
-Allocation   = 821607408 bytes standard / 401503377 bytes conses
-0 Page faults
-NIL
-
-CL-USER 41 > 
-
-CL-USER 42 > (@ii*)
-(0 1 2 3)
-

Expansion

The above iter example expands into this:

(@EVAL (LAMBDA (K) - (DECLARE (TYPE FUNCTION K)) - (@PROGN K - (LIST (LAMBDA (K) - (DECLARE (TYPE FUNCTION K)) - (LET ((I NIL) (#:RESULT72 NIL) (#:END-POINTER73 NIL) (#:TEMP74 NIL)) - (@LET* K - (LIST (LAMBDA (V) (SETQ I V)) - (LAMBDA (V) (SETQ #:RESULT72 V)) - (LAMBDA (V) (SETQ #:END-POINTER73 V)) - (LAMBDA (V) (SETQ #:TEMP74 V))) - (LIST (LAMBDA (K) (DECLARE (TYPE FUNCTION K)) (FUNCALL K NIL)) - (LAMBDA (K) (DECLARE (TYPE FUNCTION K)) (FUNCALL K NIL)) - (LAMBDA (K) (DECLARE (TYPE FUNCTION K)) (FUNCALL K NIL)) - (LAMBDA (K) (DECLARE (TYPE FUNCTION K)) (FUNCALL K NIL))) - (LIST (LAMBDA (K) - (DECLARE (TYPE FUNCTION K)) - (LET ((@NIL@ K)) - (@PROGN K - (LIST (LAMBDA (K) - (DECLARE (TYPE FUNCTION K)) - (LABELS ((_TAGBODY_ (V) (FUNCALL K V)) - (@LOOP-TOP-NIL@ (K) - (@PROGN K - (LIST (LAMBDA (K) - (DECLARE (TYPE FUNCTION K)) - (FUNCALL (LAMBDA (K) - (DECLARE (TYPE FUNCTION K)) - (FUNCALL K (+ I 1))) - (LAMBDA (V) (SETQ I V) (FUNCALL K V)))) - (LAMBDA (K) - (DECLARE (TYPE FUNCTION K)) - (@IF K - (LAMBDA (K) - (DECLARE (TYPE FUNCTION K)) - (FUNCALL K (> I 3))) - (LAMBDA (K) - (DECLARE (TYPE FUNCTION K)) - (FUNCALL #'@LOOP-END-NIL@ #'_TAGBODY_)))) - #'RET/CC - (LAMBDA (K) - (DECLARE (TYPE FUNCTION K)) - (@PROGN K - (LIST (LAMBDA (K) - (DECLARE (TYPE FUNCTION K)) - (FUNCALL (LAMBDA - (K) - (DECLARE (TYPE FUNCTION K)) - (FUNCALL K (LIST I))) - (LAMBDA - (V) - (SETQ #:TEMP74 V) - (FUNCALL K V)))) - (LAMBDA (K) - (DECLARE (TYPE FUNCTION K)) - (FUNCALL (LAMBDA - (K) - (DECLARE (TYPE FUNCTION K)) - (@IF - K - (LAMBDA - (K) - (DECLARE (TYPE FUNCTION K)) - (FUNCALL K #:RESULT72)) - (LAMBDA - (K) - (DECLARE (TYPE FUNCTION K)) - (FUNCALL - K - (SEQ::SET-CDR - #:END-POINTER73 - #:TEMP74))) - (LAMBDA - (K) - (DECLARE (TYPE FUNCTION K)) - (FUNCALL - (LAMBDA - (K) - (DECLARE (TYPE FUNCTION K)) - (FUNCALL K #:TEMP74)) - (LAMBDA - (V) - (SETQ #:RESULT72 V) - (FUNCALL K V)))))) - (LAMBDA - (V) - (SETQ #:END-POINTER73 V) - (FUNCALL K V)))) - (LAMBDA (K) - (DECLARE (TYPE FUNCTION K)) - (FUNCALL K #:RESULT72))))) - (LAMBDA (K) - (DECLARE (TYPE FUNCTION K)) - (FUNCALL #'@LOOP-TOP-NIL@ #'_TAGBODY_))))) - (@LOOP-END-NIL@ (K) (@PROGN K (LIST)))) - (@PROGN K - (LIST (LAMBDA (K) - (DECLARE (TYPE FUNCTION K)) - (FUNCALL (LAMBDA (K) (DECLARE (TYPE FUNCTION K)) (FUNCALL K -1)) - (LAMBDA (V) (SETQ I V) (FUNCALL K V)))) - (LAMBDA (K) - (DECLARE (TYPE FUNCTION K)) - (FUNCALL (LAMBDA (K) (DECLARE (TYPE FUNCTION K)) (FUNCALL K (+ I 1))) - (LAMBDA (V) (SETQ I V) (FUNCALL K V)))) - (LAMBDA (K) - (DECLARE (TYPE FUNCTION K)) - (@IF K - (LAMBDA (K) (DECLARE (TYPE FUNCTION K)) (FUNCALL K (> I 3))) - (LAMBDA (K) - (DECLARE (TYPE FUNCTION K)) - (FUNCALL #'@LOOP-END-NIL@ #'_TAGBODY_)))) - #'RET/CC - (LAMBDA (K) - (DECLARE (TYPE FUNCTION K)) - (@PROGN K - (LIST (LAMBDA (K) - (DECLARE (TYPE FUNCTION K)) - (FUNCALL (LAMBDA (K) - (DECLARE (TYPE FUNCTION K)) - (FUNCALL K (LIST I))) - (LAMBDA (V) (SETQ #:TEMP74 V) (FUNCALL K V)))) - (LAMBDA (K) - (DECLARE (TYPE FUNCTION K)) - (FUNCALL (LAMBDA (K) - (DECLARE (TYPE FUNCTION K)) - (@IF K - (LAMBDA - (K) - (DECLARE (TYPE FUNCTION K)) - (FUNCALL K #:RESULT72)) - (LAMBDA - (K) - (DECLARE (TYPE FUNCTION K)) - (FUNCALL - K - (SEQ::SET-CDR - #:END-POINTER73 - #:TEMP74))) - (LAMBDA - (K) - (DECLARE (TYPE FUNCTION K)) - (FUNCALL - (LAMBDA - (K) - (DECLARE (TYPE FUNCTION K)) - (FUNCALL K #:TEMP74)) - (LAMBDA - (V) - (SETQ #:RESULT72 V) - (FUNCALL K V)))))) - (LAMBDA (V) - (SETQ #:END-POINTER73 V) - (FUNCALL K V)))) - (LAMBDA (K) - (DECLARE (TYPE FUNCTION K)) - (FUNCALL K #:RESULT72))))) - (LAMBDA (K) - (DECLARE (TYPE FUNCTION K)) - (FUNCALL #'@LOOP-TOP-NIL@ #'_TAGBODY_)))))) - (LAMBDA (K) (DECLARE (TYPE FUNCTION K)) (FUNCALL K #:RESULT72))))))))))))))

Persistent continuation

Try SBCL and SB-HEAPDUMP and the CPS transformation above on the following example.

;(declaim (optimize (debug 3) (safety 3) (speed 0) (space 0))) -(declaim (optimize (debug 0) (safety 0) (speed 3) (space 0))) - -(require :iterate) -(require :sb-heapdump) - -(use-package :iterate) -(use-package :sb-heapdump) - -(load "test/cps.lisp") - -(defun store-continuation (k) - (sb-heapdump::dump-object k "continuation.heap" :force t :if-exists :rename-and-delete)) - -(defun restore-continuation () - (load-dumpfile "continuation.heap")) - -(@defun demo () - (iter (for i from 0 to 3) - (call/cc #'ret/cc) - (collect i))) - -(defun @start (f) - (let ((k (funcall f))) - (store-continuation k) - k)) - -(defun @continue () - (let ((k (@eval (restore-continuation)))) - (store-continuation k) - k)) - -(defun @run (f) - (do ((k (@start f) (@continue))) - ((not (functionp k)) k)))

Persistent continuation test

The following is a test session using SBCL. Note where the system was restarted and how the continuation is used.

-CL-USER> (@start #'@demo)
-24576 bytes written
-#<CLOSURE (LAMBDA (I)) {B2E6A5D}>
-CL-USER> 
-; SBCL  Port: 32822  Pid: 14363
-...
-CL-USER> (@continue)
-; loading continuation.heap[0] mmap 0.0s fixup 0.001s done
-24576 bytes written
-#<CLOSURE (LAMBDA (I)) {B394CA5}>
-CL-USER> 
-; SBCL  Port: 32824  Pid: 14729
-...
-CL-USER> (@continue)
-; loading continuation.heap[0] mmap 0.0s fixup 0.0s done
-24576 bytes written
-#<CLOSURE (LAMBDA (I)) {B3BC4D5}>
-CL-USER> (@continue)
-; loading continuation.heap[0] mmap 0.002s fixup 0.001s done
-24576 bytes written
-#<CLOSURE (LAMBDA (I)) {B3E44FD}>
-CL-USER> (@continue)
-; loading continuation.heap[0] mmap 0.0s fixup 0.0s done
-4096 bytes written
-(0 1 2 3)
-CL-USER> (@run #'@demo)
-49152 bytes written
-; loading continuation.heap[0] mmap 0.001s fixup 0.0s done
-49152 bytes written
-; loading continuation.heap[0] mmap 0.0s fixup 0.001s done
-49152 bytes written
-; loading continuation.heap[0] mmap 0.001s fixup 0.0s done
-49152 bytes written
-; loading continuation.heap[0] mmap 0.003s fixup 0.001s done
-4096 bytes written
-(0 1 2 3)
-


-programming tips
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CRACL.html b/clones/lisp/www.cliki.net/CRACL.html deleted file mode 100644 index 76e36243..00000000 --- a/clones/lisp/www.cliki.net/CRACL.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: CRACL - - - - - - - -
CRACL
CRACL, the Campaign for Real Ale and Common Lisp, the Lisp user group for the greater Los Angeles area.
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CRC-32.html b/clones/lisp/www.cliki.net/CRC-32.html deleted file mode 100644 index f13bb4b9..00000000 --- a/clones/lisp/www.cliki.net/CRC-32.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: CRC-32 - - - - - - - -
CRC-32
A library to compute the CRC-32 algorithm that is described in RFC 1952. R. Matthew Emerson, the author, says "The code runs pretty well in CMUCL, which (given appropriate declarations) is able to deal with 32 bit integers directly... I suppose it would also run well on machines with 32 -bit fixnums. Otherwise, it will cons bignums like crazy.". This is Public Domain

See http://www.thoughtstuff.com/rme/lisp.html#crc-32


-cryptography
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CSS-Selectors.html b/clones/lisp/www.cliki.net/CSS-Selectors.html deleted file mode 100644 index df7ffb65..00000000 --- a/clones/lisp/www.cliki.net/CSS-Selectors.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: CSS-Selectors - - - - - - - -
CSS-Selectors
CSS-selectors is an XML query language for finding specific nodes in cxml -dom documents and dom sub trees using standard CSS3 selectors.

For more info see:

Git Hub: https://github.com/AccelerationNet/css-selectors

Topic:AccelerationNet, XML, DOM, CXML

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CSS.html b/clones/lisp/www.cliki.net/CSS.html deleted file mode 100644 index 431a3b38..00000000 --- a/clones/lisp/www.cliki.net/CSS.html +++ /dev/null @@ -1,72 +0,0 @@ - - - - - CLiki: CSS - - - - - - - -
CSS
Cascading stylesheets (CSS) are one means of supplementing a 'web page' with style information.

    -
  • -cl-css - - cl-css is a minimalist CSS generator for Common Lisp -
  • -
  • -css-lite - - css-lite is a library for generating CSS from an s-exp syntax -
  • -
  • -LASS - - Writing CSS files comes with a lot of repetition and is generally much too verbose -
  • -
  • -rock - - Rock is an asset manager for Common Lisp -
  • -
  • -simple-rgb - - simple-rgb is a library for manipulating RGB and HSV color values -
  • -
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CSV (library).html b/clones/lisp/www.cliki.net/CSV (library).html deleted file mode 100644 index bc19b07f..00000000 --- a/clones/lisp/www.cliki.net/CSV (library).html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: CSV (library) - - - - - - - -
CSV (library)
The CSV library, authored by Jeffrey Massung, permits reading and writing comma-separated-values (CSV) files.

The project allows for the configuration of the format employed in the CSV data consumption and persistence processes, investing at the same time in efficiency. Both types of operations can be performed on streams.

The library complies to the Apache License, Version 2.0.

The source code is available under GitHub - massung/csv: CSV Parser for Common Lisp.

Topics: file format, Text, CSV

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CSV.html b/clones/lisp/www.cliki.net/CSV.html deleted file mode 100644 index 7127674f..00000000 --- a/clones/lisp/www.cliki.net/CSV.html +++ /dev/null @@ -1,86 +0,0 @@ - - - - - CLiki: csv - - - - - - - -
csv
These are the list of csv (comma-separated-values) parsing/writing libraries. -There are no currently recommended library. -Someone should do the performance test on these.

    -
  • -CL-CSV - - CL-CSV is a library to parse and write csv (comma-separated-values) files -
  • -
  • -cl-sgdos-csv - - cl-sgdos-csv is a library for mapping CSV files to LISP lists and CLOS objects and viceversa. -
  • -
  • -CSV (library) - - The CSV library, authored by Jeffrey Massung, permits reading and writing comma-separated-values (CSV) files -
  • -
  • -dso-csv - - A very simple parser for the CSV (comma-separated values) file format -
  • -
  • -fare-csv - - fare-csv is a library for reading and writing CSV files -
  • -
  • -persistent-variables - - Persistent-variables is a convenience library that makes it easy to serialize and deserialize variables -
  • -
  • -picard-csv-parser - - picard-csv-parser is a CSV file format reader/writer -
  • -
  • -read-csv - - Read-csv is a library for reading csv (comma-separated-values) files -
  • -
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CXML.html b/clones/lisp/www.cliki.net/CXML.html deleted file mode 100644 index 870cf205..00000000 --- a/clones/lisp/www.cliki.net/CXML.html +++ /dev/null @@ -1,66 +0,0 @@ - - - - - CLiki: cxml - - - - - - - -
cxml
Closure XML is a namespace-aware, validating XML parser with SAX and StAX-like interfaces.

This project is asdf-installable (release tarball below) and available in clbuild (git version).

Original author: Gilbert Baumann

Current maintainer: David Lichteblau

Repository: https://repo.or.cz/w/cxml.git

License: LLGPL

Feature overview

    -
  • Namespace-aware, validating XML 1.0 parser -
  • -
  • Two parser interfaces are offered, one SAX-like, the other similar to StAX. -
  • -
  • Implementation of W3C DOM included -
  • -
-In-memory representations that can be used with cxml:

    -
  • DOM Level 2 Core (included with cxml)
  • -
  • Lisp lists in the xmls format, included as example code with cxml
  • -
  • -cxml-stp, an alternative to DOM (add-on installation)
  • -
-Relax NG validation is available as an add-on page, see cxml-rng. -XPath is implemented by plexippus-xpath.

Relation to Closure HTML

cxml itself parses well-formed XML only. To parse HTML, use closure-html.

Aside from closure-common, cxml also depends on puri and trivial-gray-streams.

Etymology

cxml is short for Closure XML, in reference to the Closure web browser it was originally written for.

Note that the Closure web browser is not related to the Clozure implementation of Common Lisp and works on various Common Lisp implementations.

Tarball

https://common-lisp.net/project/cxml/download/cxml.tar.gz

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Calispel.html b/clones/lisp/www.cliki.net/Calispel.html deleted file mode 100644 index 20f1ebba..00000000 --- a/clones/lisp/www.cliki.net/Calispel.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Calispel - - - - - - - -
Calispel
Calispel is a concurrency library for thread-safe message-passing channels, in the style of the occam programming language.

Calispel channels let one thread communicate with another, facilitating unidirectional communication of any Lisp object. Channels may be unbuffered, where a sender waits for a receiver (or vice versa) before either operation can continue, or channels may be buffered with flexible policy options.

Because sending and receiving on a channel may block, either operation can time out after a specified amount of time.

A syntax for alternation is provided (like ALT in occam, or Unix select()): given a sequence of operations, any or all of which may block, alternation selects the first operation that doesn't block and executes associated code. Alternation can also time out, executing an "otherwise" clause if no operation becomes available within a set amount of time.

Many CSP- and occam-style channel libraries offer features like parallel execution (i.e. occam PAR). Calispel is a message-passing library, and as such leaves the role of threading abstractions and utilities left to be filled by perfectly good, complementary libraries such as Bordeaux-Threads and Eager-Future.

Calispel is a fork of Roger Peppe's csp.


This is tricky, it looks like this package is a gzip of a gzipped tar file. I had to gzip -d calispel-0.1.tar.gz; tar -xzf calispel-0.1.tar --Zach KS

I can wget the file from a remote host, run "zcat calispel-0.1.tar.gz | file -", and get "POSIX tar archive"; I can also extract with simply "tar -xzf". If anybody runs into the above problem, please get in touch with me and give me more details about the software you're downloading with. --J.P. Larocque

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Case sensitivity.html b/clones/lisp/www.cliki.net/Case sensitivity.html deleted file mode 100644 index 81895f5a..00000000 --- a/clones/lisp/www.cliki.net/Case sensitivity.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Case sensitivity - - - - - - - -
Case sensitivity
FAQ: Is Common Lisp really case-sensitive?

The common misconception is that Common Lisp is case insensitive. This is not true - symbols in Common Lisp are case sensitive.

By default, the Common Lisp reader is case-converting: all unescaped characters in a symbol name get upper-cased. This gives the practical effect of making it seem as though symbol case doesn't matter. This is desirable behavior for interfacing with other case-insensitive languages (such as Fortran), but a pain to interface with case-sensitive ones (such as C).

Luckily the behavior of the reader can be customized via readtable-case.

The one that might seem to be most useful for having case-sensitive symbols at first glance is :preserve, however remember that all code read in with the default setting (:upcase) is in upper-case, as are all the standard Common Lisp symbols (this is defined by the standard), so this means you will need to spell out all CL and external symbols IN ALL UPPERCASE. To make this less annoying, the :invert readtable-case is the most practical: all-lowercase symbol names become uppercase, all-uppercase become lowercase, and mixed-case stays mixed-case (the important part for case sensitivity). The Lisp printer outputs symbol names correctly this way by default. The only problem now becomes inconsistent spelling of a symbol in all lowercase or all uppercase in old code that expects case conversion. But otherwise you can get case sensitivity for your software by setting readtable-case to :invert today.

A convenient library for managing readtable-case and reader macros in your projects is named-readtables.

----

FAQ: What is the pipe-symbol syntax for symbols, eg. |FooBar123|? What does it have to do with case sensitivity?

In Common Lisp, symbol names can be arbitrary strings - including spaces, control characters, etc. To be able to read and print symbols with unusual names, the vertial bar (||) escape syntax is provided. The characters in a symbol specified with the vertical bar are read as-is and are never case converted. So |Foo " Bar| is read in as a symbol with the name "Foo \" Bar"

While this can be used to get the effect of case-sensitive symbols regardless of what readtable-case is set to, it is obviously more cumbersome.

Section 2.3.4 of the Hyperspec has more examples of the vertical bar syntax.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Caveman.html b/clones/lisp/www.cliki.net/Caveman.html deleted file mode 100644 index ca50400e..00000000 --- a/clones/lisp/www.cliki.net/Caveman.html +++ /dev/null @@ -1,58 +0,0 @@ - - - - - CLiki: caveman - - - - - - - -
caveman
Caveman is a web framework based on Clack.

    -
  • server independant -
  • -
  • database integration -
  • -
  • fully extensible -
  • -

Homepage: 8arrow.org/caveman/

License: LLGPL

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Cedilla.html b/clones/lisp/www.cliki.net/Cedilla.html deleted file mode 100644 index ecd1a4dc..00000000 --- a/clones/lisp/www.cliki.net/Cedilla.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Cedilla - - - - - - - - -
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Cells.html b/clones/lisp/www.cliki.net/Cells.html deleted file mode 100644 index a234a6c0..00000000 --- a/clones/lisp/www.cliki.net/Cells.html +++ /dev/null @@ -1,125 +0,0 @@ - - - - - CLiki: cells - - - - - - - -
cells
cells is a dataflow extension to CLOS (think spreadsheet-type programming, with slots being spreadsheet cells) by Kenny Tilton. It is released under a MIT-type license. Its home page is at common-lisp.net. It has undergone a major revision since it was first publicly released, and now has a significantly improved data-propagation model. On Kenny's Cells webpage, the citation for Bill Clementson's blog about Cells is valid, but Cells syntax changes have rendered the example inoperative. Updated example here

Currently supported implementations are Allegro CL, SBCL, LispWorks, CLISP, ECL, ABCL, CCL and OpenMCL. It suffers from what appears to be a bug in CMUCL's CLOS implementation, so is only partially supported there. In the past it has worked on Corman Lisp and MCL, and resurrecting this support is most likely trivial.

Find the current version and access to the mailing-list on common-lisp.net, the source via gitlab here [doesn't seem to be up-to-date]. Development occurs here.

There is a git repository with a collection of small fixes on github (for those who don't want to bother with git there is an automatically generated tarball). -- Little outdated, but supports more implementations.

There is an attempt at documentation available on github (tarball).

Notes

Understanding Cells

After trying it out a bit, my understanding is this: You can define objects whose slots trigger events when their values are modified. These slots are called "cells."

I think that's it; the rest is detail.

Two kinds of things happen when a cell's value is changed:

    -
  • -
    Dependencies updated

    You can specify that cell-1's value depends on cell-2. If cell-2 is changed, cell-1 will be updated.

  • -
  • -
    Observer functions run

    You can write observer functions which are called when a cell of a given name is updated. I think only the Cells system can call them directly. (Which implies you're using them just for side-effects.)

    (Hmm, does this scale? You can make 100 objects, but each of their cells {cell-1..cell-N} will have to share observers named {cell-1..cell-N}.) -

  • -
-Basic example:

(defmodel my-cell () - ((cell-1 :cell t - :initform (c-in 1) ; c-in allows you to to modify this cell, with (for example) setf - :accessor cell-1) - (cell-2 :cell t - :initform (c? (* (^cell-1) 2)) ; c? bars you from modifying this cell, signalling an error; it only changes when cell-1 does - :accessor cell-2))) - -(defparameter *cell* (make-be 'my-cell))

Cell-2 depends on cell-1's value. If cell-1 were to change, cell-2's value would change to be twice cell-1. So, let's try it out:

-CL-USER> (cell-1 *cell*)
-1
-CL-USER> (cell-2 *cell*)
-2
-CL-USER> (setf (cell-1 *cell*) 10)
-10
-CL-USER> (cell-1 *cell*)
-10
-CL-USER> (cell-2 *cell*)
-20
-

We can see that the syntax diverges a little from normal CLOS:

    -
  • -defclassdefmodel (Reasoning—syntactic sugar will be bound which normal CLOS can't accomodate.) -
  • -
  • -make-instancemake-be -
  • -
  • There's a :cell slot option. -
  • -
  • Slots are initialized with (c-in ...) and (c? ...) forms. -
  • -
  • You can refer to other cells by calling the (^cell-N) function (where cell-N is the name of another cell in the class) -
  • -
-[todo: discuss observers]

State vs. events

(defmodel my-model () - ((cell-1 :cell t ...) - (cell-2 :cell :ephemeral ...)))

cell-1 will keep its new value when changed.

cell-2, however, will revert instantly to whatever it was initialized with, after dependencies/observers on cell-2 are triggered.

(Philosophical background: From my (nonexpert) understanding, discrete processes are categorized into states and events, corresponding to :cell t and :cell :ephemeral, respectively. This is taken from Sowa's knowledge representation book.)

(The docs mention :delta, but seems unsupported.)

How one cell depends on another

Cell-1 depends on cell-2 if (and only if) cell-1 looked at cell-2 the last time cell-1's c? code ran. Kenny Tilton explained on usenet:

-So dependencies will vary after every invocation of, say:

(c? (if (^a)(^b)(^c)))

between A and B or A and C.

Interestingly, this means inelegant code can create problems:

(c? (let ((b (^b))(c (^c))) - (if (^a) b c)))

...always produces dependencies A, B, and C, which is a lie.

Note, btw, that dependencies are dynamic, not lexical: call a function that accesses a cell and you still get a dependency.

Special names

From Kenny Tilton's post:

    -
  • -(^slotname) - within a c? or def-c-output form, holds the current value of that slot -
  • -
  • -self - (look into this. only know it's bound by default within a def-c-output form to the current instance) -
  • -
  • -.cache - within a c? form, holds the current value of a cell -
  • -
  • -.parent - [todo, dunno what it does] -
  • -
  • -.cause - symbol-macro of some sort, I don't suggest you use this as it seems unsupported -
  • -
-

Recovering from c-stop

Call (cell-reset) if c-stop is invoked. c-stop apparently halts the Cells system when circular dependencies are detected, and maybe other scenarios too.

An error message like the following may occur (formatted to be more readable):

-0> c-calculate-and-set breaking on circularity | [?#:<vld>=[236]LOCATION/#<COMPUTER {41094259}>]
-C-STOP> stopping because (cell ~a midst askers: ~a
-                               [?#:<vld>=[236]LOCATION/#<COMPUTER {41094259}>]
-                               ([?#:<vld>=[236]RESPONSE/#<COMPUTER {41094259}>]
-                                [?#:<vld>=[236]LOCATION/#<COMPUTER {41094259}>]))
-c-break > stopping > (cell ~a midst askers: ~a
-                           [?#:<vld>=[236]LOCATION/#<COMPUTER {41094259}>]
-                           ([?#:<vld>=[236]RESPONSE/#<COMPUTER {41094259}>]
-                            [?#:<vld>=[236]LOCATION/#<COMPUTER {41094259}>]))
-

So we execute:

-CL-USER> (cell-reset)
-NIL
-
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Celtk.html b/clones/lisp/www.cliki.net/Celtk.html deleted file mode 100644 index ab14fae1..00000000 --- a/clones/lisp/www.cliki.net/Celtk.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Celtk - - - - - - - -
Celtk
Cetlk is a Common Lisp wrapper of Tcl/Tk GUI toolkit, with Cells Inside(tm)

Homepage: https://github.com/kennytilton/celtk

License: LLGPL

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Cerberus.html b/clones/lisp/www.cliki.net/Cerberus.html deleted file mode 100644 index 6149039e..00000000 --- a/clones/lisp/www.cliki.net/Cerberus.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Cerberus - - - - - - - -
Cerberus
This is an implementation of the Kerberos v5 authentication protocol in Common Lisp. The intention is to provide a robust, reliable and portable (across both Lisp implementations and host OSs) Kerberos authentication system. It has been developed/tested against the Windows KDC (i.e. active directory) running on SBCL under both Windows and Linux.

Depends on: alexandria, nibbles, flexi-streams, babel, ironclad, usocket, glass

Repository: https://github.com/fjames86/cerberus


-MIT-LICENSE, RFC
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Chameleon.html b/clones/lisp/www.cliki.net/Chameleon.html deleted file mode 100644 index 8130dbb2..00000000 --- a/clones/lisp/www.cliki.net/Chameleon.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Chameleon - - - - - - - -
Chameleon
Chameleon is a configuration management library shipped with profile support.

Depends on: alexandria, trivia

Repository: https://github.com/sheepduke/chameleon

License: MIT

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ChanL.html b/clones/lisp/www.cliki.net/ChanL.html deleted file mode 100644 index fe0160c5..00000000 --- a/clones/lisp/www.cliki.net/ChanL.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: chanl - - - - - - - -
chanl
ChanL is a concurrency library built on top of bordeaux-threads that provides channels as thread-synchronisation primitives.

It has a simple, fully-extensible API (through CLOS). The API is currently documented in the README.

You can check out ChanL at Github.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Character encoding.html b/clones/lisp/www.cliki.net/Character encoding.html deleted file mode 100644 index dad9dd4c..00000000 --- a/clones/lisp/www.cliki.net/Character encoding.html +++ /dev/null @@ -1,76 +0,0 @@ - - - - - CLiki: character encoding - - - - - - - -
character encoding
Projects having to do with the character encoding/decoding of text. In Common Lisp, characters may be elements in streams or strings, and their codes are often represented in Unicode.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Charles Stewart.html b/clones/lisp/www.cliki.net/Charles Stewart.html deleted file mode 100644 index c3ab82bc..00000000 --- a/clones/lisp/www.cliki.net/Charles Stewart.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: Charles Stewart - - - - - - - -
Charles Stewart
Charles Stewart is a logician, which is a sort of Person, and has a page at advogato and a copyediting business.

Some pages I've created

-CLRFI Standards syntax-case


-Person
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CheckL.html b/clones/lisp/www.cliki.net/CheckL.html deleted file mode 100644 index 4a55c3a3..00000000 --- a/clones/lisp/www.cliki.net/CheckL.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: CheckL - - - - - - - -
CheckL
CheckL is less of a test "framework" and more of a quicker, less formal, but more "live" way to write tests, which can easily be formalized into FiveAM tests at a later point.

License: LLGPL and BSD

Available on QuickLisp and github. -


-Test Framework
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Chemboy.html b/clones/lisp/www.cliki.net/Chemboy.html deleted file mode 100644 index 017c256d..00000000 --- a/clones/lisp/www.cliki.net/Chemboy.html +++ /dev/null @@ -1,114 +0,0 @@ - - - - - CLiki: Chemboy - - - - - - - -
Chemboy
Chemboy is an application to do basic chemistry calculations. It was born -out of the memory of a chemistry class which assigned large numbers of -problems which could be solved by doing the same tedious calculation -over and over again. For example, suppose that you wanted to know the -mass of 2.8 mol of methane (C H4). You could figure that since the -atomic weight of carbon was 12.011 g/mol (tediously looking it up in -the periodic table) and the atomic weight of hydrogen was 1.00794 -g/mol (or about 1 g/mol), and there were four hydrogens, the formula -weight of C H4 was 12.011+4*1.00794 = 16.042759 g/mol, and multiply -this by 2.8 to get the final answer.

That's a lot of work. So, with Chemboy, you can simplify most parts of -that process. To save yourself the trouble of looking in the periodic -table, you can type "c" and "h" to look up carbon and hydrogen. (You -could also type "carbon" and "hydrogen", or even their atomic numbers, -but why would you want to?) You can type "C H4" (or "c h4"---Chemboy -isn't case sensitive) to get the formula weight of methane. Or you -could just ask Chemboy for the final answer from the beginning by -typing "2.8 mol C H4", to which it would reply "2.8 mol of C H4, -44.919724 g, 62.77467 L at STP". See how much time this could save?

Chemboy can also speed up use of Boyle's Law, Charles' Law, the -Combined gas Law, and the Ideal gas Law. Chemboy does the equivalent -of solving all the equations for you behind the scenes (the specific -technique is kind of cool, but beyond the scope of this description).

Basic text-based usage

-To quit, type "quit" or "bye". To see the help message, type "help" or "?". - -If you want to find out how many moles and liters are in 12 milligrams -of diatomic hydrogen, type "12 mg H2". - -If you want to find out about the element Krypton, type either -"Krypton", "krypton", "Kr", or "36" (the atomic number of -Krypton). - -If you want to find out the formula weight of methane, type in the -formula with spaces between elements, like this: "C H4". The same -goes for things like glucose, "C6 H12 O6". - -To use laws like the Ideal gas law and the Combined gas law, type in -"law" and choose a law. There are short commands for the individual -laws: "charles", "boyle", "idealgas", and "combinedgas".

Installation

Chemboy can run just about anywhere in some form or another. If -you're on Windows, you should probably download the installer for -Windows.

There are three interfaces. First, and most widely useful, is the -text-based interface. This will run anywhere. It presents you with a -simple prompt at which you can type queries. It is perfectly usable, -and the only thing wrong with it is that some people are oddly biased -against anything that resembles a command line.

The second interface is based on Ltk. It requires Tcl/tk, and should -run well on Linux, Mac OS X, and Windows---but don't count on -Windows. It doesn't support the laws (ideal gas law, etc.), but it can -do the rest fairly well. It is still rough and unfinished.

Finally, for those of you lucky enough to use LispWorks, there is a -CAPI-based GUI. This GUI looks snazzy on Linux, and it's fully -featured on any OS, but it looks utterly lousy on Windows (I haven't tested it on Mac OSX). So I repeat my mantra: don't count on Windows.

Chemboy is ANSI Common Lisp, and should run on any Common Lisp -implementation. That said, you can't tell until you test. Chemboy has -been tested on:

Corman Lisp requires a little extra setting up, but that's the price -you pay for using the youngest and least ANSI-compliant (but very -useful) Common Lisp out there.

Starting it

-To start the text interface, call (chemboy-text:chemboy-repl).

To start the Ltk interface, load gui.lisp in the Chemboy source -distribution and call (chemboy-gui:run-chemboy-gui).

To start the CAPI interface, load capi-gui.lisp in the Chemboy source -didstribution and call: -(capi:display (make-instance 'capi-gui::chemboy-capi-gui))

Home page

-There is a project page with mailing lists and download links. The license is the LLGPL. Chemboy was created by Peter Scott.


-Units
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Chipz.html b/clones/lisp/www.cliki.net/Chipz.html deleted file mode 100644 index a64cc1ea..00000000 --- a/clones/lisp/www.cliki.net/Chipz.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: chipz - - - - - - - -
chipz
Chipz is a decompression library for decompressing DEFLATE (RFC 1951) data such as ZLIB (RFC 1950), GZIP (RFC 1952), as well as bzip2.

Homepage

It is the reading complement to Salza2.

The newest version is 0.8.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Chirp.html b/clones/lisp/www.cliki.net/Chirp.html deleted file mode 100644 index ae1bccc1..00000000 --- a/clones/lisp/www.cliki.net/Chirp.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: Chirp - - - - - - - -
Chirp
Chirp is a twitter client library. It aims to provide full coverage of the Twitter REST API as well as a bunch of helper functions and methods to make interaction easier and more extensible.

The project can be found on github including a fully documented symbol index and a getting started tutorial.
-As of March 2014, Chirp is on Quicklisp and implements all twitter API calls.

Chirp is licensed under the Artistic License 2.0.


-web API
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Chris Capel.html b/clones/lisp/www.cliki.net/Chris Capel.html deleted file mode 100644 index c699fc25..00000000 --- a/clones/lisp/www.cliki.net/Chris Capel.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Chris Capel - - - - - - - -
Chris Capel
I am Chris Capel. I live in the US. I live in Texas. I live in the middle of nowhere. Consequently, I live on the internet.

I hack SLIME, UCW, and (perhaps) Linedit. I use PostgreSQL. I may eventually get into GUIs. I use Firefox.

I program C#/MSSQL for a living. Bank software. It's fun. I spend a lot of time with Lisp, though, to ease the frustrations of living without macros. When I really start to need them, I do something like sb.Append("namespace AchImporter {"); and so on. Poor man's macros. They're painful, but not as painful as what I'd otherwise be forced into.

I have a webpage. Enter if you dare. It's here.


-I Am A Person, thank you.
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Christian Lynbech.html b/clones/lisp/www.cliki.net/Christian Lynbech.html deleted file mode 100644 index e0424222..00000000 --- a/clones/lisp/www.cliki.net/Christian Lynbech.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Christian Lynbech - - - - - - - -
Christian Lynbech
I am a Person. I have been using a loving Lisp for quite some time. I have yet to make a significant contribution other than trying make the occasionally funny post on comp.lang.lisp and alt.religion.emacs.
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Christophe.html b/clones/lisp/www.cliki.net/Christophe.html deleted file mode 100644 index cd17db28..00000000 --- a/clones/lisp/www.cliki.net/Christophe.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Christophe - - - - - - - -
Christophe
Christophe is a Person, when he's not being a physicist, a musician or an arts administrator.

You may be interested in his homepage, or, since you're probably after some code, the page detailing his (limited) hacks.

Christophe is involved in cCLan as a stepping stone towards the LispOS replacement cirCLe; he was responsible for the SPARC/Linux support in SBCL, and is now one of the maintainers; projects beyond his SBCL-related ones include design of small utilities, and small tinkering on large projects. He claims that his lack of a surname and absence from YoungLispers is a historical accident.

Christophe spoke on SBCL design, implementation and future at the Libre Software Meeting 2002; the slides from his talk are available from his homepage; he keeps an infrequently-updated mostly-Lisp-related Weblog at Advogato. -

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Christopher Browne.html b/clones/lisp/www.cliki.net/Christopher Browne.html deleted file mode 100644 index c1c961d5..00000000 --- a/clones/lisp/www.cliki.net/Christopher Browne.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Christopher Browne - - - - - - - - -
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Chun Tian (binghe).html b/clones/lisp/www.cliki.net/Chun Tian (binghe).html deleted file mode 100644 index 9fcee3c7..00000000 --- a/clones/lisp/www.cliki.net/Chun Tian (binghe).html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Chun Tian (binghe) - - - - - - - -
Chun Tian (binghe)
Chun Tian (binghe) is a well known Common Lisp programmer in China, see binghe for more information.


Person

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Chunga.html b/clones/lisp/www.cliki.net/Chunga.html deleted file mode 100644 index 1dc3213b..00000000 --- a/clones/lisp/www.cliki.net/Chunga.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Chunga - - - - - - - -
Chunga
Chunga is a web/networking library which implements portable chunked HTTP streams as described in RFC 2616.

It's written by Edi Weitz and can be found at https://edicl.github.io/chunga/.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Cl-BUNNY - RabbitMQ Client.html b/clones/lisp/www.cliki.net/Cl-BUNNY - RabbitMQ Client.html deleted file mode 100644 index 8fb83a5e..00000000 --- a/clones/lisp/www.cliki.net/Cl-BUNNY - RabbitMQ Client.html +++ /dev/null @@ -1,65 +0,0 @@ - - - - - CLiki: Cl-BUNNY - RabbitMQ Client - - - - - - - -
Cl-BUNNY - RabbitMQ Client
CL-BUNNY is a RabbitMQ client. CL-BUNNY is based on IOLib and inspired by bunny and pika.

Example -

-(defun hello-world () - (with-connection () - (with-channel () - (let ((x (exchange.default))) - (-> - (queue.declare :name "cl-bunny.examples.hello-world" :auto-delete t) - (subscribe (lambda (message) - (log:info "Received ~a" - (message-body-string message))))) - (publish x "Hello world!" :routing-key "cl-bunny.examples.hello-world")) - (sleep 1)))) -

For more information, see the repository and cl-rabbit project website

License: MIT


-Topics: Distributed messaging
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Clack.html b/clones/lisp/www.cliki.net/Clack.html deleted file mode 100644 index 83e23882..00000000 --- a/clones/lisp/www.cliki.net/Clack.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: clack - - - - - - - -
clack
Clack is a Web Application Environment for Common Lisp inspired by Python's WSGI and Ruby's Rack. Your awesome web framework should base on this.

Homepage: http://clacklisp.org
-GitHub: https://github.com/fukamachi/clack

License: LLGPL

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Clasp.html b/clones/lisp/www.cliki.net/Clasp.html deleted file mode 100644 index 7f454b6c..00000000 --- a/clones/lisp/www.cliki.net/Clasp.html +++ /dev/null @@ -1,64 +0,0 @@ - - - - - CLiki: Clasp - - - - - - - -
Clasp
Clasp is a Common Lisp implementation that interoperates with C++ and uses LLVM for just-in-time (JIT) compilation to native code. See announcing clasp for the initial announcement.

If you would like to try out Clasp and are running Arch Linux, there is an AUR package available.

Also see the following in case you would like to follow Clasp's development: -


-Common Lisp implementation
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Clavier.html b/clones/lisp/www.cliki.net/Clavier.html deleted file mode 100644 index 7cda6588..00000000 --- a/clones/lisp/www.cliki.net/Clavier.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Clavier - - - - - - - -
Clavier
General purpose validation library for Common Lisp.

Depends on: alexandria, cl-ppcre, closer-mop, chronicity, cl-fad

Repository: https://github.com/mmontone/clavier


-MIT-LICENSE
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Cldoc.html b/clones/lisp/www.cliki.net/Cldoc.html deleted file mode 100644 index 8580bf07..00000000 --- a/clones/lisp/www.cliki.net/Cldoc.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: CLDOC - - - - - - - -
CLDOC
CLDOC reads lisp source files and generates documentation using the selected output driver. It currently has an HTML driver that generates XHTML 1.0 Strict. This HTML driver has some simple DWIM (Do What I Mean) capabilities using the doctree string parser facilities.

This project has been mainly inspired by user-manual from Mark Kantrowitz, the CSS file Gilbert Baumann made for McCLIM documentation and of course by the JavaDoc tool from Sun.

Repository: https://github.com/danlentz/cldoc

License: LLGPL


-Documentation Tool
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Cletris.html b/clones/lisp/www.cliki.net/Cletris.html deleted file mode 100644 index da2e3968..00000000 --- a/clones/lisp/www.cliki.net/Cletris.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Cletris - - - - - - - -
Cletris
Cletris is a Tetris-like Game.

The project page: cletris

The current release: 0.8.0


-pal, MIT-LICENSE
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Clickr.html b/clones/lisp/www.cliki.net/Clickr.html deleted file mode 100644 index 113960bf..00000000 --- a/clones/lisp/www.cliki.net/Clickr.html +++ /dev/null @@ -1,56 +0,0 @@ - - - - - CLiki: clickr - - - - - - - -
clickr
Clickr is a high-level binding library of the Flickr API for Common -Lisp. -The current version : 0.2

-See this blog entry for documentation and a usage example.


-web API -
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Cliconv.html b/clones/lisp/www.cliki.net/Cliconv.html deleted file mode 100644 index 04d7199b..00000000 --- a/clones/lisp/www.cliki.net/Cliconv.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Cliconv - - - - - - - -
Cliconv
Cliconv is a simple FFI interface to the iconv library that lets Common Lisp programs translate byte sequences from/to different character encodings.

Homepage: http://wcp.sdf-eu.org/software/#cliconv

Download: http://wcp.sdf-eu.org/software/cliconv-20150207T212922.tbz

License: LGPL


-UFFI
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Clifford Thompson.html b/clones/lisp/www.cliki.net/Clifford Thompson.html deleted file mode 100644 index fd952d88..00000000 --- a/clones/lisp/www.cliki.net/Clifford Thompson.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Clifford Thompson - - - - - - - -
Clifford Thompson
Clifford Thompson is a Person with an interest in applying Lisp to Services Science - SSME.


- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Climacs.html b/clones/lisp/www.cliki.net/Climacs.html deleted file mode 100644 index e2f0d925..00000000 --- a/clones/lisp/www.cliki.net/Climacs.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: climacs - - - - - - - -
climacs
Climacs is an Emacs-like text editor written in Common Lisp.

It is a CLIM application. Its development resources are summarized at -its project page on common-lisp.net.

As of July 2006, Climacs is a useful tool for writing Common Lisp code, but it does not have close integration with a REPL, debugger or inspector like SLIME. The CLIM-desktop project provides additional integration with Climacs into other applications (most notably the McCLIM Listener), but does not greatly enhance Climacs' capabilities for editing Common Lisp. Climacs can presently do parameter hinting, code evaluation, symbol completion, displaying of compiler notes and definition-editing.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Climc.html b/clones/lisp/www.cliki.net/Climc.html deleted file mode 100644 index b02f1cf2..00000000 --- a/clones/lisp/www.cliki.net/Climc.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Climc - - - - - - - -
Climc
A Common Lisp Instant Messaging Client. It is a CLIM application.

Depends on: McCLIM, cl-xmpp, cl-ppcre

Repository: https://github.com/nlamirault/climc


-MIT-LICENSE
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Climon.html b/clones/lisp/www.cliki.net/Climon.html deleted file mode 100644 index 54d73a4a..00000000 --- a/clones/lisp/www.cliki.net/Climon.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Climon - - - - - - - - -
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Clint Moore.html b/clones/lisp/www.cliki.net/Clint Moore.html deleted file mode 100644 index ccf57a62..00000000 --- a/clones/lisp/www.cliki.net/Clint Moore.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Clint Moore - - - - - - - -
Clint Moore
I'm a programmer who has committed to using Common Lisp exclusively for a year on personal projects.

Also, I'm a Person

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Clip.html b/clones/lisp/www.cliki.net/Clip.html deleted file mode 100644 index ee0a243d..00000000 --- a/clones/lisp/www.cliki.net/Clip.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: Clip - - - - - - - -
Clip
Clip is an attempt at a templating library that allows you to write templates in a way that is both accessible to direct webdesign and flexible. The main idea is to incorporate transformation commands into an HTML file through tags and attributes. Clip is heavily dependant on Plump and lQuery.

The project can be found on github including a fully documented symbol index and a getting started tutorial.
-As of August 2014, Clip is available on Quicklisp.

Clip is licensed under the Artistic License 2.0.


-web templating library HTML Template
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Clisp.html b/clones/lisp/www.cliki.net/Clisp.html deleted file mode 100644 index 76f41e53..00000000 --- a/clones/lisp/www.cliki.net/Clisp.html +++ /dev/null @@ -1,84 +0,0 @@ - - - - - CLiki: CLISP - - - - - - - -
CLISP
CLISP is a Common Lisp implementation by Bruno Haible, then of Karlsruhe University, and Michael Stoll, then of Munich University, both in Germany. It mostly supports the Lisp described in the ANSI Common Lisp standard.

CLISP includes an interpreter, a compiler, a debugger, CLOS, MOP, arbitrary precision floats, a foreign language interface and a socket interface.

An X11 interface is available through CLX and Garnet.

Command line editing is provided by GNU Readline which makes it one of the nicer Lisps to use interactively - you can auto-complete function and file names with tab, use up arrow to get previous commands and it does parenthesis-matching.

Cross-platform preemptive multiprocessing is in alpha.

Homepage: https://www.gnu.org/software/clisp/

Source code repository: https://gitlab.com/gnu-clisp/clisp

License: GPL-2.0-or-later

Local CLISP links

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Clobber.html b/clones/lisp/www.cliki.net/Clobber.html deleted file mode 100644 index 37d9753c..00000000 --- a/clones/lisp/www.cliki.net/Clobber.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Clobber - - - - - - - -
Clobber
An ObjectStore which aims to be a simpler, more flexible, and more robust alternative to CommonLispPrevalence systems, especially cl-prevalence.

Repository - https://github.com/robert-strandh/Clobber

License: Public Domain

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Clocc.html b/clones/lisp/www.cliki.net/Clocc.html deleted file mode 100644 index 2098b3e5..00000000 --- a/clones/lisp/www.cliki.net/Clocc.html +++ /dev/null @@ -1,89 +0,0 @@ - - - - - CLiki: CLOCC - - - - - - - -
CLOCC
The Common Lisp Open Code Collection contains Lisp code for various -applications which is:

-
-Common Lisp -
-
i.e. runs in ANSI Common Lisp implementations -
-
-Free Software -
-
according to the DFSG - - Debian Free Software Guidelines - (e.g. licensed under GPL, - LGPL, - MIT-LICENSE or BSD licenses, or Public Domain) -
-
-Portable -
-
i.e. should be portable among CL implementations with low - effort, and does not require modifications to the CL - implementation itself -
-
-Self-contained -
-
i.e. does not require packages not in this repository -
-
-Ready to use -
-
i.e. runs out of the box in the free CL implementations, except for SBCL. -
-

Presently it includes mk-defsystem (3.6 and 4.0), CLOCC-PORT (portability code for networking and other CL extensions), and CLLIB ("a library of miscellaneous routines", including an XML parser among other things).

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Clon.html b/clones/lisp/www.cliki.net/Clon.html deleted file mode 100644 index 8d111c68..00000000 --- a/clones/lisp/www.cliki.net/Clon.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: Clon - - - - - - - -
Clon
There are three packages by the name of CLON, although the third one doesn't actually introduce any conflict because the package is named net.didierverna.clon.

Clon: A cron-like scheduling library

A task scheduler library much like cron for lisp that is implemented as a shallow layer on top of SBCL timers. It's written by Gabor Melis and can be found at http://quotenil.com/clon/clon-latest.tar.gz. It's forked near 2014 with some bug-fix.

It's then forked again by Jin-Cheng Guu in mid 2021 into his repo, aiming to let clon replace traditional cron managers. (It's renamed to cl-schedule since v0.0.5 as there are too many name clashes.) The forked version also provides more examples, documents and features. In particular, in an example below we show how to make a schedule that does what a traditional cron manager would do for the control string

*/25 5-6,10 * 7 1-2

Long story short, it can be expressed as the following.

(make-typed-cron-schedule

:minute '(satisfies twenty-five-p)

:hour '(or (integer 5 6) (member 10))

:month 7

:day-of-week '(integer 0 1))

Clon: Common Lisp Object Network

CLON (Common Lisp Object Network) is a prototype-based object system for Common Lisp written by David O'Toole. The details of inheritance, message passing, and field lookup are inspired by the Io language and the Garnet UI toolkit (KR in particular). It doesn't seem to be available anywhere. CLON is used in RLX, a game engine for rogue-like games.

Clon: the Command-Line Options Nuker

Clon is a library for managing command-line options in standalone Common Lisp applications. It provides a unified option syntax with both short and long names, automatic completion of partial names and automatic retrieval/conversion of option arguments from the command-line, associated environment variables, fallback or default values. Clon comes with a set of extensible option types (switches, paths, strings etc.). Clon also provides automatic generation and formatting of help strings, with support for highlighting on tty's through ISO/IEC 6429 SGR. This formatting is customizable through "themes".

Clon currently works on Unix (including MacOS X) and Windows (Cygwin, MinGW/MSYS) with SBCL, CMUCL, CCL, ECL, CLISP, ABCL, Allegro (both standard and modern) and LispWorks.

Clon is written by Didier Verna. -Clon's homepage is here.


-command-line options parser
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Closer to MOP.html b/clones/lisp/www.cliki.net/Closer to MOP.html deleted file mode 100644 index 1bed9601..00000000 --- a/clones/lisp/www.cliki.net/Closer to MOP.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Closer to MOP - - - - - - - -
Closer to MOP
Closer to MOP is a compatibility layer that rectifies many of the absent or incorrect MOP features as detected by MOP Feature Tests. Closer to MOP has an asdf system definition, so it should be straightforward to include it in your own projects. The package that exports the relevant symbols is called CLOSER-MOP and also has the shorter nickname C2MOP.

Closer to MOP is written and maintained by Pascal Costanza. See Common-Lisp.net for more information.


-CLOS MIT
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CloserLookAtCharacters.html b/clones/lisp/www.cliki.net/CloserLookAtCharacters.html deleted file mode 100644 index b47e6206..00000000 --- a/clones/lisp/www.cliki.net/CloserLookAtCharacters.html +++ /dev/null @@ -1,151 +0,0 @@ - - - - - CLiki: CloserLookAtCharacters - - - - - - - -
CloserLookAtCharacters

Characters are not their codes -- Encodings and external format in Common Lisp

By default, Lisp files are text files. A text file is a file containing characters. That is, things like aleph, three, e with acute accent, exclamation point, etc.

Lisp objects are typed, so there's no problem in Lisp with manipulating character objects. But in a Unix (POSIX) file we can only store numbers between 0 and 255. Unix (POSIX) has no notion of text file. So we need to encode the characters into a coded byte stream.

There are several different coding systems for characters. The first step in defining a coding system is to specify the set of characters we want to encode. The second step is to define a bijective mapping between this set of characters and a subset of integer numbers. A third step may be to define a way to encode integer numbers bigger than 255 as a sequence of integer numbers between 0 and 255. Optionally, you may define in an additional step some meaning for additional codes that are not used so far, for purposes such as controlling output device or structuring files (defining records, blocks, etc).

For example, ASCII defines the following set of characters: -

-SPC  !   "   #   $   %   &   '   (   )   *   +   ,   -   .   /  
- 0   1   2   3   4   5   6   7   8   9   :   ;   <   =   >   ?  
- @   A   B   C   D   E   F   G   H   I   J   K   L   M   N   O  
- P   Q   R   S   T   U   V   W   X   Y   Z   [   \   ]   ^   _  
- `   a   b   c   d   e   f   g   h   i   j   k   l   m   n   o  
- p   q   r   s   t   u   v   w   x   y   z   {   |   }   ~      
-

ASCII defines the following mapping between characters and numbers: -

- 32 SPC  33  !   34  "   35  #   36  $   37  %   38  &   39  '  
- 40  (   41  )   42  *   43  +   44  ,   45  -   46  .   47  /  
- 48  0   49  1   50  2   51  3   52  4   53  5   54  6   55  7  
- 56  8   57  9   58  :   59  ;   60  <   61  =   62  >   63  ?  
- 64  @   65  A   66  B   67  C   68  D   69  E   70  F   71  G  
- 72  H   73  I   74  J   75  K   76  L   77  M   78  N   79  O  
- 80  P   81  Q   82  R   83  S   84  T   85  U   86  V   87  W  
- 88  X   89  Y   90  Z   91  [   92  \   93  ]   94  ^   95  _  
- 96  `   97  a   98  b   99  c  100  d  101  e  102  f  103  g  
-104  h  105  i  106  j  107  k  108  l  109  m  110  n  111  o  
-112  p  113  q  114  r  115  s  116  t  117  u  118  v  119  w  
-120  x  121  y  122  z  123  {  124  |  125  }  126  ~          
-

Since all numbers are between 0 and 255, no further processing is necessary to get a unique byte sequence for each character.

Finally, since there are unused numbers, ASCII defines some control codes: -

-  0 NUL    1 SOH    2 STX    3 ETX    4 EOT    5 ENQ    6 ACK    7 BEL  
-  8 BS     9 TAB   10 LF    11 VT    12 FF    13 CR    14 SO    15 SI   
- 16 DLE   17 DC1   18 DC2   19 DC3   20 DC4   21 NAK   22 SYN   23 ETB  
- 24 CAN   25 EM    26 SUB   27 ESC   28 FS    29 GS    30 RS    31 US   
- 32 SPC   33  !    34  "    35  #    36  $    37  %    38  &    39  '  
- 40  (    41  )    42  *    43  +    44  ,    45  -    46  .    47  /  
- 48  0    49  1    50  2    51  3    52  4    53  5    54  6    55  7  
- 56  8    57  9    58  :    59  ;    60  <    61  =    62  >    63  ?  
- 64  @    65  A    66  B    67  C    68  D    69  E    70  F    71  G  
- 72  H    73  I    74  J    75  K    76  L    77  M    78  N    79  O  
- 80  P    81  Q    82  R    83  S    84  T    85  U    86  V    87  W  
- 88  X    89  Y    90  Z    91  [    92  \    93  ]    94  ^    95  _  
- 96  `    97  a    98  b    99  c   100  d   101  e   102  f   103  g  
-104  h   105  i   106  j   107  k   108  l   109  m   110  n   111  o  
-112  p   113  q   114  r   115  s   116  t   117  u   118  v   119  w  
-120  x   121  y   122  z   123  {   124  |   125  }   126  ~   127 DEL  
-

Note however that ASCII doesn't define anything for byte values between 128 and 255.

-Some coding systems such as ISO-8859-1 or the various Unicode coding systems are defined as extensions of ASCII (but a few (old) are totally different, and a few are modifications of ASCII).

The various ISO-8859 coding systems add additional characters to the ASCII character set, and map them to codes between 160 and 255. Additional control codes are defined for codes between 128 and 159.

Unicode defines a much bigger character set and maps it to integers between 0 and 1114111. Then several ways to map these integers to sequences of bytes are defined, such as UTF-7, UTF-8, UTF-16LE, UTF-16BE, etc. One interesting property of UTF-8 is ASCII compatibility, i.e. in both systems, characters which belong to the ASCII set are encoded with the same byte sequence. But this may be misleading when you try to read UTF-8 files using the ASCII encoding: it may work most of the time, but will fail as soon as you encounter a character which is not in the ASCII set.

Now given that the Common Lisp Standard Character Set is exactly the ASCII character set (how lucky!), and that ASCII is used by Unix (POSIX), it is quite possible that the default EXTERNAL-FORMAT used to read and write text files in Lisp is ASCII.

If the file contains a byte between 128 and 255, there's no corresponding character in the ASCII set, so it will raise an error. If you try to write a character outside of the ASCII set, then there will be no way to encode it and it will raise an error. If you try to read a byte between 0 and 31 (excluding 13 or 10, one or both of which may control the line termination), it may very well raise an error.

Some implementations may use other encodings and external-formats by default or by configuration, and may map control codes to pseudo-characters in order to avoid raising errors. But this is implementation specific behavior. Some implementations extend the ISO-8859-1 coding system to map the control codes to pseudo-characters so there's a 1-1 correspondence between [0,255] and these characters.

Using this external-format on these implementations, you may be able to "safely" copy binary files. But this is only valid for some very specific implementations in very specific circumstances.

In conclusion, if you want to copy a file of bytes, you should use :ELEMENT-TYPE '(UNSIGNED-BYTE 8) (assuming it does what you want on your implementation/OS). If you want to copy a text file with a specific encoding, you must give the implementation specific :EXTERNAL-FORMAT. What you've programmed is only guaranteed to work on "well formed" "text" files, i.e. text files produced by the same Lisp implementation on the same system.

What about unix file names?

Unix systems don't use characters to name files. They use sequences of bytes, not containing 0 or 47. 46 and the sequence (46 46) are reserved for the name of the current directory and the parent directory, respectively.

On 2007-01-29 19:45, on irc://irc.freenode.org/#scheme (channel now moved to Libera Chat), "Riastradh" wrote the following about unix pathnames, bytes and characters:

"Please, let's [be pedantic], because this is too important an issue to handle lightly and screw up.

On Unix, a pathname is an array of bytes, where a byte is usually an octet. (It could be a septet, theoretically, but I don't think there are any modern Unix systems where this is the case.) [Or a ninet.]

The byte #x2F has special meaning in the pathname. Note that this is the interpretation of the actual bits involved; it is not the character `/' that means anything to Unix, but the byte #x2F. Here, by `the character ``/'' ', I mean the symbol that you are shown when an ASCII text renderer displays the byte #x2F, and the graphical and semantic implications thereof.

(In Unicode, `character' is *not* a well-defined term; its definition is explicitly avoided because there are so many different possible concepts competing for the name, so none was given it. There are abstract characters, encoded characters, code points, scalar values, glyphs, default grapheme clusters, and more; this is why I explain what I mean by `the character ``/'' '.)

(Also, by `byte' I mean the smallest addressible unit of memory -- i.e. what C very misleadingly calls `char' --, and by `octet' I mean an array of eight bits.)

Now, on Unix, the various system calls and library routines that work with pathnames represent them as arrays of bytes, because that is what a pathname is on Unix. They don't know anything about text codecs, internationalization, user localization, and so on; they deal with arrays of bytes.

When writing programs that work with pathnames and perhaps present them to users, however, we usually want two sorts of higher-level abstraction: one, a structure identifiable to the programming language, partly for convenience, partly for clarity, and partly for the sake of portability; and decoding and encoding pathnames for users.

The user has some notion of `text', which must be stored physically on the file system somehow; the file system knows about bytes, which must be presented to the user in an understandable format somehow. To accomodate this, Unix has a number of environment variables (which are, incidentally, also named by byte arrays) by which the user can identify preferences in the means of translation between machine and human understanding.

For example, the user might often deal with Hebrew and not much else, and may choose to use ISO-8859-7 to store pathnames. Or another user might be uninterested in Western isolationism, and instead prefer culturally insulting approximation of Eastern languages by choosing to store pathnames in UTF-8, allowing the full range of Unicode text in his pathnames.

The operating system cares nothing about the user's sociocultural background, however, and deals only in bytes.

These two users may need to communicate at some point, and they would like their programs to present pathnames without loss of information. But on the other hand, they probably also want a consistent file system without two distinct file names (that is, byte arrays) for what they each see as the same thing -- a particular name composed of Hebrew and Latin text, say. (Unfortunately, there *must* be some information lost in the translation from Unicode to ISO-8859-7, but never mind that for now.) (By the way, I apologize if I have offended anyone by my choice of cultural derogation -- my intent was to poke fun at everyone equally.)

When writing portable programs that deal with pathnames, furthermore, we often want two different sorts of pathnames: those handed to us by the operating system or otherwise tied to the byte array model, and those that we wrote ourselves or read from user input with a higher-level notion of what text the user intends.

Now, it is not entirely clear what choices are best for the mapping between the two sorts of pathnames I described -- `text pathnames' and `byte pathnames', say.

In Scheme48 1.5, the decision is made for the programmer: whenever he constructs a pathname (or `os-string') from a byte vector, its textual interpretation is fixed by the locale when the Scheme48 image was started; whenever he constructs a pathname (or `os-string') from a textual description, its encoding in bytes is fixed by the locale at the time the Scheme48 image was started."

Implementation Specific Support for Encodings

ACL

ACL has extensive support for different text coding systems. For details see International Character Support in Allegro CL.

-

CLISP

CLISP is usually compiled with libiconv and Unicode support. It supports all the coding systems provided by libiconv, exported as variables from the CHARSET package. The EXTERNAL-FORMAT arguments can take a EXT:ENCODING object which is composed of the character set (as exported from CHARSET) and a line terminator mode, which indicate which control codes are used to encode a #\NEW-LINE pseudo-character.

There are command-line arguments and variables in the CUSTOM package to set various default encodings (pathnames, file contents, terminal, foreign function calls, miscellaneous).

Two functions are provided to encode and decode between strings of characters and vector of bytes: EXT:CONVERT-STRING-FROM-BYTES and EXT:CONVERT-STRING-TO-BYTES.

See the CLISP implementation notes, 31.5. Encodings.

CMUCL

CMUCL apparently supports utf-8 I/O through its simple-streams implementation, as well as iso-8859-1; its regular file streams support only iso-8859-1.

CMUCL release 20a supports Unicode strings, many more external formats on all streams, and mapping between Unicode pathnames and OS byte-sequences.

The following external formats are recognized: -

- :ASCII :CP1250 :CP1251 :CP1252 :CP1253 :CP1254 :CP1255 :CP1256 :CP1257
- :CP1258 :ISO8859-1 :ISO8859-10 :ISO8859-13 :ISO8859-14 :ISO8859-15
- :ISO8859-2 :ISO8859-3 :ISO8859-4 :ISO8859-5 :ISO8859-6 :ISO8859-7
- :ISO8859-8 :ISO8859-9 :KOI8-R :MAC-CYRILLIC :MAC-GREEK :MAC-ICELANDIC
- :MAC-LATIN2 :MAC-ROMAN :MAC-TURKISH :UTF-16-BE :UTF-16-LE :UTF-16
- :UTF-32-BE :UTF-32-LE :UTF-32 :UTF-8
-
-along with various aliases (:LATIN-1 is an alias for :ISO8859-1).

There are also composing external formats (external formats that must be combined with an external format): -

- :BETA-GK :FINAL-SIGMA :CR :CRLF
-
-Thus, an external format of '(:utf-8 :crlf) means that UTF-8 is the main encoding but CR/LF characters will be converted on input to a linefeed and on output a linefeed becomes a CR/LF sequence.

See the Internationalization chapter from the CMU User's Manual.

Clozure CL

CCL (formerly OpenMCL) supports Unicode with 32-bit characters and strings. Supported character encodings are:

(:UTF-16BE :ISO-8859-11 :ISO-8859-10 :US-ASCII :ISO-8859-2 :ISO-8859-15 :ISO-8859-9 :IBM866 :ISO-8859-7 :ISO-8859-8 - :EUC-JP :UTF-16 :UTF-32 :CP936 :ISO-8859-1 :ISO-8859-14 :ISO-8859-16 :WINDOWS-31J :GB2312 :UCS-2BE :ISO-8859-13 - :UCS-2LE :UTF-32LE :ISO-8859-4 :UTF-16LE :ISO-8859-3 :UCS-2 :ISO-8859-6 :UTF-32BE :ISO-8859-5 :MACINTOSH :UTF-8)

An external format can specify a character encoding and/or line termination keyword, as well as the domain where it's used.

SBCL

SBCL supports a limited number of coding systems. Because the interface has not been finalized yet, they are undocumented, but as of the 0.9.15 release the following are recognized: -

-(:ASCII :CP1250 :CP1251 :CP1252 :CP1253 :CP1254 :CP1255 :CP1256 :CP1257 :CP1258
- :CP437 :CP850 :CP852 :CP855 :CP857 :CP860 :CP861 :CP862 :CP863 :CP864 :CP865
- :CP866 :CP869 :CP874 :EBCDIC-US :EUC-JP :ISO-8859-1 :ISO-8859-10 :ISO-8859-11
- :ISO-8859-13 :ISO-8859-14 :ISO-8859-15 :ISO-8859-2 :ISO-8859-3 :ISO-8859-4
- :ISO-8859-5 :ISO-8859-6 :ISO-8859-7 :ISO-8859-8 :ISO-8859-9 :KOI8-R :KOI8-U
- :UCS-2BE :UCS-2LE :UTF-8 :X-MAC-CYRILLIC)
-
-along with various aliases (so for instance :LATIN-9 is an alias for :ISO-8859-15). At present, there is no support for automatic translation of line-ending or byte-order-mark conventions.

Additionally, for in-memory conversion, SBCL provides the following functions -

-SB-EXT:STRING-TO-OCTETS string &key external-format --> octets
-SB-EXT:OCTETS-TO-STRING octets &key external-format --> string
-
-string -- a string.
-octets -- a vector of (unsigned-byte 8).
-external-format -- a keyword designating an external format (see above)
-

Until the interface with external formats is settled and documented (which essentially means figuring out how to handle newlines, byte-order-marks and similar), (apropos "EXTERNAL-FORMAT") is likely to be a good way to find out what is supported.

Other implementations

Please add links and indications about support of encodings in other implementations.

Working with character encodings in a semi-portable way

The Flexi-streams library can read and write character data in various single- or multi-octet encodings which can be changed on the fly.

Flexi-streams supports UTF-8, UTF-16, UTF-32, all ISO 8859 character sets, a couple of Windows code pages and US-ASCII.

External links

Wikipedia has more information about the various coding systems: -

Markus Kuhn's UTF-8 and Unicode FAQ is another very comprehensive resource.

Nolan Eakins also has an article describing how to use Unicode with Slime, Clisp, and SBCL. The article's example is defining a function with a Unicode name.


-Comments from Jack Unrue: -I suggest changing the "if you want to copy a file" paragraph, such -that the recommedation is for verbatim file copy operations to treat -every file as if it were binary, to avoid accidental changes to -end-line formats in addition to character encodings. And use the word -"process" instead of "copy" in the second sentence of that paragraph.

Also, it might be worth mentioning that text files may have a -byte order mark if they are encoded in one of the Unicode encodings.


-Categories: Online Tutorial CLISP SBCL
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CloserLookAtHemlock.html b/clones/lisp/www.cliki.net/CloserLookAtHemlock.html deleted file mode 100644 index b1ea108f..00000000 --- a/clones/lisp/www.cliki.net/CloserLookAtHemlock.html +++ /dev/null @@ -1,78 +0,0 @@ - - - - - CLiki: CloserLookAtHemlock - - - - - - - -
CloserLookAtHemlock
Hemlock seems quite alien if you've only used GNU Emacs and XEmacs before. Here's description of getting acquainted with it.

First impressions

When it starts there are some differences that jump out at you: commands names look Like This and not like-this, and space bar is used for completion instead of tab. Fortunately most of the key bindings are the same, so you can get around pretty easily. A read of the very good Hemlock User's Manual makes it easy to adjust to the rest.

Under the hood there are differences too, most obviously that text is structured into doubly-linked lists of lines, rather than linear chunks of characters.

Second impressions

Once you're up and about, you can see that there are much fewer fancy add-ons to Hemlock than GNU Emacs - no surprise there. The editor generally feels pretty good, though it's easy to bump into something that's "missing". But all the code is there and it's all written in Lisp, so it's quite inviting to dive in and hack things.

Home sickness

Being ASCII-perverted I use C-h for backspace and C-m for return, which are not the default bindings in Hemlock. This is easily fixed by creating a ~/hemlock-init.lisp file containing:

-(in-package :hemlock)
-(bind-key "delete previous character" #k"C-h" :global)
-(bind-key "new line" #k"C-m" :global)
-

well it looks like someone has already beat me to it. i had a hard time getting my key bindings working for delete, home, etc. working from the example init file in the hemlock manual i judged that you would do something like this

-(bind-key "delete next character" '#(#\delete))
-

or something like that. this is not the case and the way to do it is

-(bind-key "delete next character" #k"delete")
-

other ones you might find interesting are

-#k"home" #k"end" #k"pageup" #k"pagedown"
-

See section 18.1 of the Hemlock Command Implementor's Manual for more details about keys and key events.

Hemlock and Debian Woody

Emacs Wiki: Hemlock confirms that Hemlock was moved into the cmucl-source package in Debian Woody.

To install Hemlock:

    -
  • Make sure CMUCL is installed and configured. I install the latest version from "unstable":
    -
    -apt-get install -t unstable cmucl cmucl-normal
    -
    -Then run "cmuclconfig" and follow the prompts.
  • -
  • Install the cmucl-source package and wait for it to complete compiling: -
    -apt-get install -t unstable cmucl-source
    -
    -
  • -
  • As a user start a lisp session from a terminal in X: -
    -$ lisp
    -
    -
  • -
  • Then type (ed) to start the hemlock editor. That's it!
  • -
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CloserLookAtSyntax.html b/clones/lisp/www.cliki.net/CloserLookAtSyntax.html deleted file mode 100644 index d474344f..00000000 --- a/clones/lisp/www.cliki.net/CloserLookAtSyntax.html +++ /dev/null @@ -1,165 +0,0 @@ - - - - - CLiki: CloserLookAtSyntax - - - - - - - -
CloserLookAtSyntax
From time to time, we see lisp very newbies try to write "blocks" of expressions within parentheses like: -
((expression1) (expression2))
-on the model, it is assumed, of C: -
{statement1; statement2;}

This is not the way of Lisp.

Hey newbie! Here is the secret:

Lisp has no syntax. Lisp has no parentheses. Lisp has no lists.

Well, it has, some, but not at the same level the other languages have -or don't have them.

-

Lisp has no syntax.

Indeed, since the sources are but syntactic trees, there's no concrete -syntax for lisp. Or at least, not a single one. We tend to write -nodes of these trees with the "list" syntax: '(' item ... ')', but -actually there are a lot of other ways to build this syntactic tree -(DAG actually), including various reader or normal macros.

But inside a program, There is no syntax, eg. for a complex number, no -#c(1.2 3.4); there are only complex numbers, with values such as -1.2+3.4*i.

Lisp has no parentheses.

Indeed, just try it: -

-(map nil (function print) '(a b c))
-
-A 
-B 
-C 
---> NIL
-
-See? 0 parentheses in (a b c).

-In lisp _sources_, there are no parentheses. Of course, actually -there are parentheses at the level of the characters reads by the -standard lisp reader. But they could very easily disappear:

-(set-syntax-from-char #\[ #\()
-(set-syntax-from-char #\] #\))
-(set-macro-character #\[ (lambda (stream char) (read-delimited-list #\] stream t)))
-
-Et hop! No parentheses anymore: -
-[map nil [function print] '[a b c]]
-
-A 
-B 
-C 
---> NIL
-

Or we could write a macro or a parser, that would generate some code -with a lot of tree nodes, that could be printed by the standard lisp -printer with a lot of conventional parentheses, but which wouldn't -contain any parenthese in the source (of the macro, or the parsed -text).

-

Lisp has no lists.

Again, just ask it: -

-(type-of '(a b c)) --> CONS
-(type-of '())      --> NULL
-
-See? No type LIST here. -List is not a primitive lisp type. -The primitive non-atomic Lisp type is the CONS cell. -And lists are but a pun on cons cells, at a higher level of abstraction.

Above the level of the CONS cells, we build an abstraction named LIST. -So we define FIRST = CAR, REST = CDR, ENDP = NULL, -and LIST = (CONS ... (CONS ... '())).

But above this level of "lists", that are actually just cons cells, -we build an abstraction named syntactic tree. So we define: -OPERATOR = FIRST; ARGUMENTS = REST; EMPTYP = ENDP and MAKE-NODE = CONS.

OPERATOR being the _label_ of the tree node, and

ARGUMENTS being the _children_ of the tree node.

Lisp sources

The _sources_ of a lisp program are just syntactic trees, at a higher -level of abstraction relatively to the textual input that may (or may -not) be used to build the tree.

-Of course, at this higher level, there is some 'syntax'. After all, -they're called syntactic trees. But it's an "abstract" syntax, epured -from mundane details such as what character to put here or there. -What remains is only the label of the node, the operator, and an -ordered list of children, the arguments. -

-       label: +      children: 1 2 3
-       label: IF     children: <condition> <then-clause> <else-clause>
-       label: PROGN  children: <expression>...
-

You need to know the order of the children, what child to put at what -position, because this is what is significant. Happily, there are -some conventions (e.g. in the order of the arguments to macros, we -usually put the name of the thing declared, or the name of the -variables first, while the body or the other variable-in-number -clauses come last), and there are some tools like keyword arguments -that allow one to get free from this ordering constraint.

-We don't need, and it would be ridiculous from the point of view of -list, to specify a grammar rule with a pair of characters and a syntax -like in C: -

-     block ::= '{' { statement ';' } '}' .
-
-or even, to specify some BEGIN and END tokens like in Pascal: -
-     block ::= 'BEGIN' [ statement { ';' statement } ] 'END' .
-
-(note the artificial difference in _syntax_! Blocks, both in Pascal -and in C are parsed the same, into a node of a syntactic tree such as: -
-      label: BLOCK  children: statement...
-
-and this is all that matters. Well, in lisp, we just put: -
-      label: BLOCK  children: statement...
-
-in the source.

For example, by way of the READER (and therefore, using the characters -to which the reader macro to build symbol lists is bound to): -

-(map nil (function print)
-         (read-from-string "(BLOCK statement1 statement2 statement3)"))
-
-BLOCK 
-STATEMENT1 
-STATEMENT2 
-STATEMENT3 
---> NIL
-

But we could also build the syntactic tree node by way of an expression: -

-(map nil (function print)
-         (cons 'BLOCK  (append (list 'statement1 'statement2)
-                               (cons 'statement3 '()))))
-
-BLOCK 
-STATEMENT1 
-STATEMENT2 
-STATEMENT3 
---> NIL
-


-Categories: Online Tutorial
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Closette.html b/clones/lisp/www.cliki.net/Closette.html deleted file mode 100644 index 5b9404b7..00000000 --- a/clones/lisp/www.cliki.net/Closette.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Closette - - - - - - - -
Closette
A working Closette package (with ASDF definitions) can be found on Github, it can be compiled and loaded in almost every CL implementation.


-CLOS AMOP MIT
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Closure-html.html b/clones/lisp/www.cliki.net/Closure-html.html deleted file mode 100644 index 37ee37c7..00000000 --- a/clones/lisp/www.cliki.net/Closure-html.html +++ /dev/null @@ -1,68 +0,0 @@ - - - - - CLiki: closure-html - - - - - - - -
closure-html
Closure HTML is a portable HTML parsing library that understands malformed HTML.

This project is asdf-installable (release tarball below) and available in clbuild (git version).

Original author: Gilbert Baumann

Current maintainer: David Lichteblau

Depends on: closure-common, flexi-streams

Repository: https://repo.or.cz/w/closure-html.git

License: MIT

Feature overview

    -
  • Supports HTML 4 and understands malformed HTML. -
  • -
  • -Serialization implemented using an event API called HAX, inspired by SAX. -
  • -
  • Can be used with XML representations designed for cxml -
  • -
-In-memory representations that can be used with Closure HTML:

-

Relation to Closure XML

chtml is an error-correcting HTML parser; cxml an XML parser.

Etymology

chtml is short for Closure HTML, in reference to the Closure web browser it was originally written for.

Note that the Closure web browser is not related to the Clozure implementation of Common Lisp and works on various Common Lisp implementations.

Tarball

https://common-lisp.net/project/closure/download/closure-html.tar.gz

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Closure.html b/clones/lisp/www.cliki.net/Closure.html deleted file mode 100644 index 90eb3bbf..00000000 --- a/clones/lisp/www.cliki.net/Closure.html +++ /dev/null @@ -1,68 +0,0 @@ - - - - - CLiki: Closure - - - - - - - -
Closure
Closure is a free web browser written completely in Common Lisp.

Author: Gilbert Baumann

Repository: https://gitlab.common-lisp.net/closure/closure

Depends on: mcclim, cxml, closure-html, bordeaux-threads, trivial-sockets, zip, flexi-streams, skippy

This project doesn't provide a release tarball and is not asdf-installable. It is, however, available in clbuild.

Feature overview

    -
  • GUI is based on CLIM - primarily developed using McCLIM. -(Support for images is limited to the CLIM-CLX backend for X11-only at -this point.) -
  • -
  • Supports HTML 4, using closure-html -
  • -
  • -CSS 1 support (support for CSS 2 not complete) -
  • -
  • Released under an MIT-style license -
  • -
  • known to run, as of December 2006, on SBCL 1.0 and -CMUCL 19d (probably also OpenMCL). -
  • -
-

Etymology

Note that Closure is not related to the Clozure implementation of Common -Lisp and works on various Common Lisp implementations.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Clot.html b/clones/lisp/www.cliki.net/Clot.html deleted file mode 100644 index 89a9d198..00000000 --- a/clones/lisp/www.cliki.net/Clot.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Clot - - - - - - - -
Clot
CLOT is a library for plotting data sets in charts of different types. Currently it supports bar, histogram, line, and pie charts, all with some optional graphic decorations. It requires SCLF and CL-GD.

Homepage: http://wcp.sdf-eu.org/software/clot/index.html

Download: http://wcp.sdf-eu.org/software/clot/clot-20150207T211923.tbz

License: LGPL

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Clouseau.html b/clones/lisp/www.cliki.net/Clouseau.html deleted file mode 100644 index 4212da77..00000000 --- a/clones/lisp/www.cliki.net/Clouseau.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Clouseau - - - - - - - -
Clouseau
"Clouseau" is the name of McCLIM's inspector application, which helps with debugging.

The code is available at: https://github.com/McCLIM/McCLIM/tree/master/Apps/Clouseau

Documentation can be found at: https://common-lisp.net/project/mcclim/static/manual/mcclim.html#Inspector

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Clozure.html b/clones/lisp/www.cliki.net/Clozure.html deleted file mode 100644 index 121897a5..00000000 --- a/clones/lisp/www.cliki.net/Clozure.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Clozure - - - - - - - -
Clozure
Clozure Associates is a Lisp consulting company; it sponsors the development of Clozure Common Lisp (CCL).
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Clss.html b/clones/lisp/www.cliki.net/Clss.html deleted file mode 100644 index 87efea19..00000000 --- a/clones/lisp/www.cliki.net/Clss.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: CLSS - - - - - - - -
CLSS
CLSS is a DOM traversal/search engine using CSS selectors. It uses the Plump DOM.

The project can be found on github including a fully documented symbol index and a getting started tutorial.
-As of May 2014, CLSS is available on Quicklisp.

CLSS is licensed under the Artistic License 2.0.


-XML HTML web
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Cmucl.html b/clones/lisp/www.cliki.net/Cmucl.html deleted file mode 100644 index 586cabbb..00000000 --- a/clones/lisp/www.cliki.net/Cmucl.html +++ /dev/null @@ -1,106 +0,0 @@ - - - - - CLiki: CMUCL - - - - - - - -
CMUCL
CMUCL is a high-performance, free (mostly Public Domain) Common Lisp implementation that aims towards ANSI compatibility and runs on a number of Unix platforms - including Linux/ix86, Linux/Alpha, -FreeBSD/ix86, NetBSD/ix86, OpenBSD/ix86, Solaris/SPARC, -HP-UX/HPPA, and IRIX/MIPS - though not all of these ports are current. -See the project home page at cons.org -for more information.

Debian GNU/Linux users will find that their distribution includes -CMUCL packages (Stable version, -Testing version, -Unstable version) -which they can grab using apt-get. More information about the CMUCL port to Debian can be found at CMUCL on Debian. Other Linux packages are listed here: https://pkgs.org/download/cmucl

The EncyCMUCLopedia is a collection of most - if not all - of the documentation related to CMUCL. It is updated a couple of times per year. The latest version is June 17, 2001. - -The Design of CMU Common Lisp documents internal details of the CMU Common Lisp compiler and run-time system. By Robert A. MacLachlan (ed), updated January 15, 2003.

Not sure anyone besides me has had a problem with this, but I just thought I'd mention that if you set *print-lines* and/or *print-right-margin* to sufficiently low values, error-messages may show up as just "..", which is quite confusing. Oh, and if something is weird, remember to try without your super-tweaked init.lisp-file, like I didn't. (lisp -noinit)

Related pages

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Cobstor.html b/clones/lisp/www.cliki.net/Cobstor.html deleted file mode 100644 index acfc5051..00000000 --- a/clones/lisp/www.cliki.net/Cobstor.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Cobstor - - - - - - - -
Cobstor
Cobstor is a tool and an API to seamlessly access legacy Cobol application files from Common Lisp. The design is client/server; those familiar with IPC architectures such as Corba or Java Beans, should understand cobstor in no time.

Lisp proxy stubs talk via a simple IPC layer to Cobol agents which in turn access the database for you. All you need is the Cobol record declaration (the copy file, in Cobol speak) and cobstor will automatically generate the Cobol agent and the Lisp proxy for you.

It's been developed on CMUCL+AcuCobol but it should be easily portable to other Lisp systems that support MOP, and Cobol systems with socket primitives.

Homepage: http://wcp.sdf-eu.org/software/#cobstor

Download: http://wcp.sdf-eu.org/software/cobstor-20150207T212348.tbz

License: LGPL


-Topics: FFI protocol
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Cocoa.html b/clones/lisp/www.cliki.net/Cocoa.html deleted file mode 100644 index 07a0eb32..00000000 --- a/clones/lisp/www.cliki.net/Cocoa.html +++ /dev/null @@ -1,61 +0,0 @@ - - - - - CLiki: Cocoa - - - - - - - -
Cocoa
Libraries to interface with the Mac OS X Cocoa GUI API: -
    -
  • -CL-ObjC - - CL-OBJC is a portable common-lisp/objective-c bridge written using CFFI -
  • -
  • -Objective-CL - - Objective-CL is a Common-Lisp/Objective-C bridge currently supporting a range of Lisp implementations on Mac OS X and GNUstep -
  • -
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Coding Convention.html b/clones/lisp/www.cliki.net/Coding Convention.html deleted file mode 100644 index 232eb791..00000000 --- a/clones/lisp/www.cliki.net/Coding Convention.html +++ /dev/null @@ -1,62 +0,0 @@ - - - - - CLiki: Coding Convention - - - - - - - -
Coding Convention
This page describes some common coding convention that you'll see in lisp source code.

Use a different number of semicolons for a comment to provide information on the comment. See the Tips on Writing Comments section from the Elisp manual for examples.

    -
  • Use a single semicolon when commenting on code on the same line
  • -
  • Use two semicolons when commenting on code on the next line
  • -
  • Use three semicolons when commenting on the following block of code
  • -
  • Use four semicolons when commenting on the next section of code
  • -
-Avoid using tabs. Put (setq indent-tabs-mode nil) in ~/.emacs to replace tabs with spaces.

Additional Resources -


-programming tips
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Colleen.html b/clones/lisp/www.cliki.net/Colleen.html deleted file mode 100644 index 7cd9790a..00000000 --- a/clones/lisp/www.cliki.net/Colleen.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: Colleen - - - - - - - -
Colleen
Colleen is yet another IRC chat bot framework. Its main features are multiple server connections, extensive event system, multi-module system and a simple command construct. Included in the base are a variety of modules from web searching and url resolving to chat logging and custom dictionaries and more.

The project can be found on github including a fully documented symbol index and a getting started tutorial.
-As of April 2014, Colleen is available on Quicklisp.

Colleen is licensed under the Artistic License 2.0.

Colleen is no longer maintained and has been superseded by Maiden.


-IRC
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Common Lisp Controller.html b/clones/lisp/www.cliki.net/Common Lisp Controller.html deleted file mode 100644 index 53e7f4e2..00000000 --- a/clones/lisp/www.cliki.net/Common Lisp Controller.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Common Lisp Controller - - - - - - - - -
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Common Lisp GTK-Server Wrapper.html b/clones/lisp/www.cliki.net/Common Lisp GTK-Server Wrapper.html deleted file mode 100644 index ad7ea1c6..00000000 --- a/clones/lisp/www.cliki.net/Common Lisp GTK-Server Wrapper.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Common Lisp GTK-Server Wrapper - - - - - - - -
Common Lisp GTK-Server Wrapper
Common Lisp Gtk-Server Wrapper is a new way to write platform-independent gui applications in Common Lisp. With this wrapper you can develop gui applications using the Gtk+ Library in a platform independent manner.

This wrapper works with Gtk-Server, a really wonderful program that enables the access to the GTK widget set for another process using many communication protocols like stdin/stdout, tcp/udp port, named pipe, etc.

It works with many common lisp implementations (Clisp, Sbcl, Cmucl, Lispworks) and on many platforms (Linux, MacOS X, Windows).


-GTK binding, BSD license, IPC
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Common Lisp Implementation.html b/clones/lisp/www.cliki.net/Common Lisp Implementation.html deleted file mode 100644 index d8b422ff..00000000 --- a/clones/lisp/www.cliki.net/Common Lisp Implementation.html +++ /dev/null @@ -1,220 +0,0 @@ - - - - - CLiki: Common Lisp implementation - - - - - - - -
Common Lisp implementation
Common Lisp implementations and their *features*.

Comparison of actively developed Common Lisp implementations

All the implementations below provide an FFI and sockets interface. Callbacks mean in this context that the FFI is capable of passing lisp-functions as callbacks to foreign functions. The startup file is loaded when the Lisp starts. Not all platforms listed may be actively supported.

Note: Some implementation builds fail to include FFI, sockets, and/or threads. Fink CLISP fails to includes threads, and MacPorts anything fails to include FFI. Aptitude lisps are severely out of date: SBCL fails on Xen, and ECL crashes during installation.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
ImplementationSupported PlatformsCompilerThreads?FeaturesStartup fileLicense
CLISPWindows, Mac OS X, Linux, Solaris, FreeBSD, NetBSD, OpenBSD, Dragonfly BSDBytecodeYes (experimental)Small image size, very efficient bignums, Callbacks, - modules -~/.clisprc.lispGPL2
CMUCLLinux, Mac OS X, Solaris, FreeBSD, NetBSD, OpenBSD, IRIX, HPUXBytecode, Native & Block CompilationNoHigh quality native compiler, foreign callbacks~/.cmucl-init.lispBSD3
ECLLinux, FreeBSD, NetBSD, OpenBSD, Solaris, Windows, Mac OS X, iOS, AndroidNative via C, also bytecodeYes (all platforms)Executable delivery and portability. Integrates well with C programs (i.e. Embeddable, native powerful FFI).~/.eclrcLGPL-2.1+
CCLMac OS X, Linux, FreeBSD, Solaris, Android, Windows XP and later, HerokuNativeYes (all platforms)Small image size, fast compiler, convenient and powerful FFI, callbacks, executable delivery, precise gc~/ccl-init.lispApache 2
SBCLLinux, Mac OS X, FreeBSD, NetBSD, OpenBSD, Windows (sbcl's platform table) -NativeYesHigh quality native compiler; callbacks; executable delivery;~/.sbclrcBSD2+PD
ABCLJVM, Google App EngineJVM bytecodeYesFFI to Java, platform independence~/.abclrcGPL+Classpath exception
MKCLLinux, Windows XP and laterNative via C, bytecode-compiled interpreterYesPOSIX compliant runtime on Linux, Embeddable, FFI with callbacks.~/.mkclrcLGPL3

Daniel Weinreb has a current (as of February 2010) survey of Common Lisp implementations that is more detailed than the chart above.

All Free Software Common Lisp implementations (some of these may not be actively developed):

For non-free implementations, see the list on wikipedia.

If performance is an important criterion for you, you might be interested in the Performance Benchmarks page.

You may also use this what-implementation CL program to help you determine what implementation to use. You may use it with telnet://hubble.informatimago.com:8101.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Common Lisp Library Audience Expansion Toolkit.html b/clones/lisp/www.cliki.net/Common Lisp Library Audience Expansion Toolkit.html deleted file mode 100644 index cc2bd510..00000000 --- a/clones/lisp/www.cliki.net/Common Lisp Library Audience Expansion Toolkit.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Common Lisp Library Audience Expansion Toolkit - - - - - - - -
Common Lisp Library Audience Expansion Toolkit
FFI

CLAUDE (the Common Lisp Library Audience Expansion Toolkit) exports libraries written in Common Lisp, so that applications being developed in other languages can access them. CLAUDE co-operates with foreign runtimes in the management of CLOS objects, records, arrays and more primitive types. Lisp macros make the task of exporting a library simple and elegant; template documentation along with C headers and sample code files relieve some of the burden of explaining such exports to the application programmer.

http://www.nicklevine.org/claude/

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Common Lisp Music.html b/clones/lisp/www.cliki.net/Common Lisp Music.html deleted file mode 100644 index ed41b185..00000000 --- a/clones/lisp/www.cliki.net/Common Lisp Music.html +++ /dev/null @@ -1,69 +0,0 @@ - - - - - CLiki: Common Lisp Music - - - - - - - -
Common Lisp Music
is a Music synthesis and signal processing package in the Music V family. CLM has several sections: the "generators", instruments (definstrument and *.ins), examples of note lists (with-sound, *.clm), a "make" facility for sound files (with-mix), various functions that are useful in sound file work (sound-let, mix) and two way communication with snd an audio editor that uses guile as its scripting engine.

Common Lisp Music works in the following environments:

    -
  • SGI with ACL, CMU-CL, or Clisp -
  • -
  • Mac with MCL and MPW C -
  • -
  • Sun with CLisp or CMUCL -
  • -
  • Linux/LinuxPPC with ACL, CMUCL, or Clisp -
  • -
  • Windows with ACL or Clisp -
  • -
  • FreeBSD with Clisp -
  • -
  • DEC Alpha with Clisp (no audio) -
  • -
  • Mac OSX with Clisp or SBCL -
  • -

It can be used in conjunction with Common Music and Common Music Notation. -See the CLM home page at CCRMA for downloads and more information.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Common Lisp Persistency Manager.html b/clones/lisp/www.cliki.net/Common Lisp Persistency Manager.html deleted file mode 100644 index d424585c..00000000 --- a/clones/lisp/www.cliki.net/Common Lisp Persistency Manager.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Common Lisp Persistency Manager - - - - - - - -
Common Lisp Persistency Manager
A software package for serialization of Common Lisp data structures, much like Python's pickle facility. It supports CLOS classes and structures, hash tables, arrays, vectors, symbols, numbers, lists, conses, etc. Part of the motivation for this system is that PLOB! was too complicated for the author's purposes. As this is old (but still working) code, it includes an old-school define-system macro, with support for Genera, LispWorks, ACL, and MCL.

Repository: https://github.com/lambdamikel/Common-Lisp-Persistency-Manager

License: GPL3


-Topic: persistence
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Common Lisp Reasoner.html b/clones/lisp/www.cliki.net/Common Lisp Reasoner.html deleted file mode 100644 index 724ab1f5..00000000 --- a/clones/lisp/www.cliki.net/Common Lisp Reasoner.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Common Lisp Reasoner - - - - - - - -
Common Lisp Reasoner
Common Lisp meets AI problem-solving meets the semantic web. Extends CLOS using the MOP (i.e., it's a language extension). Powerful rule language. Serializes and deserializes (using the CXML parser) RDF/XML. Common Lisp Reasoner home
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Common Lisp Recipes.html b/clones/lisp/www.cliki.net/Common Lisp Recipes.html deleted file mode 100644 index 9abc0383..00000000 --- a/clones/lisp/www.cliki.net/Common Lisp Recipes.html +++ /dev/null @@ -1,74 +0,0 @@ - - - - - CLiki: Common Lisp Recipes - - - - - - - -
Common Lisp Recipes
"Common Lisp Recipes" is a book by Edi Weitz, published by Apress in 2016. It has 772 pages and is available as a paperback or in various eBook formats.

More information (including errata and some code) can be found here.

Here's the table of contents:

    -
  1. Symbols and Packages
  2. -
  3. Conses, Lists, and Trees
  4. -
  5. Strings and Characters
  6. -
  7. Numbers and Math
  8. -
  9. Arrays and Vectors
  10. -
  11. Hash Tables, Maps, and Sets
  12. -
  13. Sequences and Iteration
  14. -
  15. The Lisp Reader
  16. -
  17. Printing
  18. -
  19. Evaluation, Compilation, and Control Flow
  20. -
  21. Concurrency
  22. -
  23. Error Handling and Avoidance
  24. -
  25. Objects, Classes, Types
  26. -
  27. I/O: Streams and Files
  28. -
  29. Pathnames, Files, Directories
  30. -
  31. Developing and Debugging
  32. -
  33. Optimization
  34. -
  35. Libraries
  36. -
  37. Interfacing with Other Languages
  38. -
  39. Graphical User Interfaces
  40. -
  41. Persistence
  42. -
  43. The World Outside
  44. -
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Common Lisp Utilities.html b/clones/lisp/www.cliki.net/Common Lisp Utilities.html deleted file mode 100644 index 7571ecf5..00000000 --- a/clones/lisp/www.cliki.net/Common Lisp Utilities.html +++ /dev/null @@ -1,92 +0,0 @@ - - - - - CLiki: Common Lisp Utilities - - - - - - - -
Common Lisp Utilities
Note: this page is for historical purposes. See cl-utilities for the finished product.

The Common Lisp Utilities cliki page served as a collection of useful CL utilities. The idea to create a bigger package out of the small suggested packages here got momentum, and resulted in the creation of cl-utilities.


-Motivated by the benefits of discussing design issues in public, possibly utilities "that everyone writes" could be canonicalized and (semi-)standardized.

    -
  • -SPLIT-SEQUENCE -
  • -
  • -EXTREMUM -
  • -
  • -READ-DELIMITED (name is up to debate) - reads a 'line' delimited by the specified character, optionally into a pre-allocated buffer -
  • -
  • EXPT-MOD (name is up to debate) - calculates (mod (expt a b) m) -
  • -
  • -COLLECTING for collecting things into one or more lists -
  • -
  • -WITH-UNIQUE-NAMES executes a series of forms with variables -bound to fresh, uninterned symbols -
  • -
  • -GENSYMLET binds fresh, uninterned symbols to values -
  • -
  • -ROTATE-BYTE bit-rotates a byte -
  • -
  • ARGUMENT-LIST (name, purpose, raison d'etre up for debate) returns -the arglist of a function - useful for editor interfaces, -documentation generators etc. Code could be stolen from ILISP/SLIME/clocc-port for implementations that don't have their own. -
  • -
  • -SHALLOW-COPY-ARRAY -
  • -
  • -COMPOSE composes functions. -
  • -
  • Also worth looking at PARSE-NUMBER -
  • -
  • -DECIMAL-NUMBER -
  • -
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Common Lisp and gnuplot.html b/clones/lisp/www.cliki.net/Common Lisp and gnuplot.html deleted file mode 100644 index 3564f6b1..00000000 --- a/clones/lisp/www.cliki.net/Common Lisp and gnuplot.html +++ /dev/null @@ -1,77 +0,0 @@ - - - - - CLiki: Common Lisp and gnuplot - - - - - - - -
Common Lisp and gnuplot

Interfaces to gnuplot

Currently (2016-12) the only gnuplot libraries maintained in quicklisp are vgplot, CLNUPlot and eazy-gnuplot.

below are historical notes

As there are now at least two (see here and here) mostly private projects that attempt to connect Common Lisp to gnuplot, Gary think it's time to come together and think about a way to do this that feels nice and Lispy.

Both Ryan and Gary are busy and work on these things when demand arises so it's unlikely that we'll see rapid progress - how's that for dampening enthusiasm! On the other hand, if the people show an interest, I'm (Gary) willing to start a project over at common-lisp.net so that people can begin fooling around.

In the meantime, please add your comments below on what you think a Lispy gnuplot should feel like.

Maybe we should start listing the existing libraries, comment on their features before designing? Here is the beginning of such a list:

    -
  1. Sam Steingold's CLLIB contains an interface to gnuplot.
  2. -
  3. another project has been mentioned here: cgn . At the moment, It has been tested on Linux and Windows, but should work on MacOS X, OpenBSD ... That's thanks to it using LTK for the pipe. Now I'm adding some sugar like facilities to set titles, grids, to do scatter plots with errorbars, etc. Now can save postscript copies of you graphs
  4. -
  5. -Gary's CLNUPlot)
  6. -
  7. Ryan's cl-gnuplot
  8. -
  9. Wheeler Ruml's plot package. -"I have not prepared this code for distribution in any way", he states on his page.
  10. -
  11. David Wallis' NLISP -
  12. -
--- Roland Kaufmann

Are we discussing a gnuplot specific interface or a generic interface?

Good question. From the title of the page and the list I started, I would say -not for the moment, but when designing a generic interface, it would be a good -idea to keep other backends in mind. -I am not familiar with either plotutils or Dataplot, but note that gnuplot has -been chosen as plotter for a several programs (Emacs Calc, GNU Octave, R, Maxima, -(not sure about Axiom)) --- Roland Kaufmann

See also the plotting page.


-Things what I (Felip) think an interface to gnuplot must have: -
    -
  1. A pipe that works on the more important OS: Linux, Windows, BSDs and MacOS X. This can be done through Ltk or kmrcl. It would be nice if we use a third's library, which should not be mantained by us.
  2. -
  3. Facilities to do the more common actions: setting titles, ranges, doing function and scatter plots ...
  4. -
  5. Facilities to save copies of the graphics, and to print them directly
  6. -
  7. A nice lispy interface
  8. -
  9. Some kind of facility to write directly to the pipe. This way, users can use features which are not wrapped by the library
  10. -
  11. Don't know how possible or easy this'd be, but it'd be nice to have some kind of "callbacks", so that you can define functions in Lisp which are then sampled/plotted in Gnuplot.
  12. -
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Common Lisp implementation.html b/clones/lisp/www.cliki.net/Common Lisp implementation.html deleted file mode 100644 index d8b422ff..00000000 --- a/clones/lisp/www.cliki.net/Common Lisp implementation.html +++ /dev/null @@ -1,220 +0,0 @@ - - - - - CLiki: Common Lisp implementation - - - - - - - -
Common Lisp implementation
Common Lisp implementations and their *features*.

Comparison of actively developed Common Lisp implementations

All the implementations below provide an FFI and sockets interface. Callbacks mean in this context that the FFI is capable of passing lisp-functions as callbacks to foreign functions. The startup file is loaded when the Lisp starts. Not all platforms listed may be actively supported.

Note: Some implementation builds fail to include FFI, sockets, and/or threads. Fink CLISP fails to includes threads, and MacPorts anything fails to include FFI. Aptitude lisps are severely out of date: SBCL fails on Xen, and ECL crashes during installation.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
ImplementationSupported PlatformsCompilerThreads?FeaturesStartup fileLicense
CLISPWindows, Mac OS X, Linux, Solaris, FreeBSD, NetBSD, OpenBSD, Dragonfly BSDBytecodeYes (experimental)Small image size, very efficient bignums, Callbacks, - modules -~/.clisprc.lispGPL2
CMUCLLinux, Mac OS X, Solaris, FreeBSD, NetBSD, OpenBSD, IRIX, HPUXBytecode, Native & Block CompilationNoHigh quality native compiler, foreign callbacks~/.cmucl-init.lispBSD3
ECLLinux, FreeBSD, NetBSD, OpenBSD, Solaris, Windows, Mac OS X, iOS, AndroidNative via C, also bytecodeYes (all platforms)Executable delivery and portability. Integrates well with C programs (i.e. Embeddable, native powerful FFI).~/.eclrcLGPL-2.1+
CCLMac OS X, Linux, FreeBSD, Solaris, Android, Windows XP and later, HerokuNativeYes (all platforms)Small image size, fast compiler, convenient and powerful FFI, callbacks, executable delivery, precise gc~/ccl-init.lispApache 2
SBCLLinux, Mac OS X, FreeBSD, NetBSD, OpenBSD, Windows (sbcl's platform table) -NativeYesHigh quality native compiler; callbacks; executable delivery;~/.sbclrcBSD2+PD
ABCLJVM, Google App EngineJVM bytecodeYesFFI to Java, platform independence~/.abclrcGPL+Classpath exception
MKCLLinux, Windows XP and laterNative via C, bytecode-compiled interpreterYesPOSIX compliant runtime on Linux, Embeddable, FFI with callbacks.~/.mkclrcLGPL3

Daniel Weinreb has a current (as of February 2010) survey of Common Lisp implementations that is more detailed than the chart above.

All Free Software Common Lisp implementations (some of these may not be actively developed):

For non-free implementations, see the list on wikipedia.

If performance is an important criterion for you, you might be interested in the Performance Benchmarks page.

You may also use this what-implementation CL program to help you determine what implementation to use. You may use it with telnet://hubble.informatimago.com:8101.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Common Lisp utilities.html b/clones/lisp/www.cliki.net/Common Lisp utilities.html deleted file mode 100644 index 7571ecf5..00000000 --- a/clones/lisp/www.cliki.net/Common Lisp utilities.html +++ /dev/null @@ -1,92 +0,0 @@ - - - - - CLiki: Common Lisp Utilities - - - - - - - -
Common Lisp Utilities
Note: this page is for historical purposes. See cl-utilities for the finished product.

The Common Lisp Utilities cliki page served as a collection of useful CL utilities. The idea to create a bigger package out of the small suggested packages here got momentum, and resulted in the creation of cl-utilities.


-Motivated by the benefits of discussing design issues in public, possibly utilities "that everyone writes" could be canonicalized and (semi-)standardized.

    -
  • -SPLIT-SEQUENCE -
  • -
  • -EXTREMUM -
  • -
  • -READ-DELIMITED (name is up to debate) - reads a 'line' delimited by the specified character, optionally into a pre-allocated buffer -
  • -
  • EXPT-MOD (name is up to debate) - calculates (mod (expt a b) m) -
  • -
  • -COLLECTING for collecting things into one or more lists -
  • -
  • -WITH-UNIQUE-NAMES executes a series of forms with variables -bound to fresh, uninterned symbols -
  • -
  • -GENSYMLET binds fresh, uninterned symbols to values -
  • -
  • -ROTATE-BYTE bit-rotates a byte -
  • -
  • ARGUMENT-LIST (name, purpose, raison d'etre up for debate) returns -the arglist of a function - useful for editor interfaces, -documentation generators etc. Code could be stolen from ILISP/SLIME/clocc-port for implementations that don't have their own. -
  • -
  • -SHALLOW-COPY-ARRAY -
  • -
  • -COMPOSE composes functions. -
  • -
  • Also worth looking at PARSE-NUMBER -
  • -
  • -DECIMAL-NUMBER -
  • -
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Common Lisp.html b/clones/lisp/www.cliki.net/Common Lisp.html deleted file mode 100644 index 6e3e4aab..00000000 --- a/clones/lisp/www.cliki.net/Common Lisp.html +++ /dev/null @@ -1,92 +0,0 @@ - - - - - CLiki: Common Lisp - - - - - - - -
Common Lisp
Common Lisp is a multi-paradigm programming language in the Lisp language family. It is available in a variety of implementations (see Common Lisp implementation) that provide deployment options on platforms ranging from embedded systems to supercomputer clusters. Because Common Lisp provides the possibility for high-performance and dynamic code, it is used both for system programming, application programming, and as a scripting language.

Common Lisp has a reputation to be an extremely well designed, stable, industrial strength, standardized language, with quality implementations suitable for anything from hobby projects to space travel.

Common Lisp is standardized by ANSI as ANSI INCITS 226-1994 (R2004), formerly known as X3.226-1994 (R1999), and sometimes refered to as X3J13, the name of the ANSI standardization committee. A hypertext version of the Common Lisp standard was made available by Kent Pitman as the CLHS.

Common Lisp Features

-
    -
  • interactivity (dynamic redefinitions)
  • -
  • first-class symbols
  • -
  • arbitrary-precision integers
  • -
  • exact rational arithmetic
  • -
  • well-integrated complex numbers
  • -
  • generalized references
  • -
  • multiple values
  • -
  • first-class functions
  • -
  • anonymous functions
  • -
  • macros
  • -
  • multiple inheritance
  • -
  • multiple dispatch
  • -
  • generic functions
  • -
  • method combination
  • -
  • (first-class) classes and meta classes
  • -
  • (first-class) packages
  • -
  • built-in programmable parser (read)
  • -
  • built-in programmable unparser
  • -
  • reader macros
  • -
  • compiler macros
  • -
  • optional argument
  • -
  • keyword arguments
  • -
  • meta-object protocol
  • -
  • special (dynamically scoped) variables
  • -
  • named blocks, nonlocal goto (catch/throw)
  • -
  • conditions, restarts
  • -
  • the loop macro
  • -
  • the format function
  • -
  • type declarations
  • -
  • compiler available at run-time
  • -
  • extensive list processing features.
  • -

References: -

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Common Music Notation.html b/clones/lisp/www.cliki.net/Common Music Notation.html deleted file mode 100644 index 56054fb2..00000000 --- a/clones/lisp/www.cliki.net/Common Music Notation.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: Common Music Notation - - - - - - - -
Common Music Notation
Common Music Notation is an independent subsystem of Common Music. It provides a way of describing musical notation in terms of Lisp programmes using CLOS, so that not only can Lisp programmers typeset Music with it, but they can use the power of Lisp to aid in composing. Common Music Notation is known to run in ACL, MCL, CLISP and CMUCL. For downloads, documentation and -mailing lists see the CMN home page.

-

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Common Music.html b/clones/lisp/www.cliki.net/Common Music.html deleted file mode 100644 index 25085426..00000000 --- a/clones/lisp/www.cliki.net/Common Music.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Common Music - - - - - - - -
Common Music
Common Music (CM) is an object-oriented Music composition environment. It produces sound by transforming a high-level representation of musical structure into a variety of control protocols for sound synthesis and display. It runs on GCL, CLISP, CMUCL, OPENMCL as well as some other Lisps.

There was some question previously about the license for this package. From the project page: "CM is released under the LLGPL (Lisp Lesser General Public License)."

For more information, see the CM web page on SourceForge or the CM mailing list.

A common-music page exists.

There is a new e-book out by Heinrich Konrad Taube (creator of CM), called Notes from the Metalevel An Introduction to Computer Composition, about computer music representation and composition using CM (and also includes quite a bit of introductory Lisp).

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Common lisp implementation.html b/clones/lisp/www.cliki.net/Common lisp implementation.html deleted file mode 100644 index d8b422ff..00000000 --- a/clones/lisp/www.cliki.net/Common lisp implementation.html +++ /dev/null @@ -1,220 +0,0 @@ - - - - - CLiki: Common Lisp implementation - - - - - - - -
Common Lisp implementation
Common Lisp implementations and their *features*.

Comparison of actively developed Common Lisp implementations

All the implementations below provide an FFI and sockets interface. Callbacks mean in this context that the FFI is capable of passing lisp-functions as callbacks to foreign functions. The startup file is loaded when the Lisp starts. Not all platforms listed may be actively supported.

Note: Some implementation builds fail to include FFI, sockets, and/or threads. Fink CLISP fails to includes threads, and MacPorts anything fails to include FFI. Aptitude lisps are severely out of date: SBCL fails on Xen, and ECL crashes during installation.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
ImplementationSupported PlatformsCompilerThreads?FeaturesStartup fileLicense
CLISPWindows, Mac OS X, Linux, Solaris, FreeBSD, NetBSD, OpenBSD, Dragonfly BSDBytecodeYes (experimental)Small image size, very efficient bignums, Callbacks, - modules -~/.clisprc.lispGPL2
CMUCLLinux, Mac OS X, Solaris, FreeBSD, NetBSD, OpenBSD, IRIX, HPUXBytecode, Native & Block CompilationNoHigh quality native compiler, foreign callbacks~/.cmucl-init.lispBSD3
ECLLinux, FreeBSD, NetBSD, OpenBSD, Solaris, Windows, Mac OS X, iOS, AndroidNative via C, also bytecodeYes (all platforms)Executable delivery and portability. Integrates well with C programs (i.e. Embeddable, native powerful FFI).~/.eclrcLGPL-2.1+
CCLMac OS X, Linux, FreeBSD, Solaris, Android, Windows XP and later, HerokuNativeYes (all platforms)Small image size, fast compiler, convenient and powerful FFI, callbacks, executable delivery, precise gc~/ccl-init.lispApache 2
SBCLLinux, Mac OS X, FreeBSD, NetBSD, OpenBSD, Windows (sbcl's platform table) -NativeYesHigh quality native compiler; callbacks; executable delivery;~/.sbclrcBSD2+PD
ABCLJVM, Google App EngineJVM bytecodeYesFFI to Java, platform independence~/.abclrcGPL+Classpath exception
MKCLLinux, Windows XP and laterNative via C, bytecode-compiled interpreterYesPOSIX compliant runtime on Linux, Embeddable, FFI with callbacks.~/.mkclrcLGPL3

Daniel Weinreb has a current (as of February 2010) survey of Common Lisp implementations that is more detailed than the chart above.

All Free Software Common Lisp implementations (some of these may not be actively developed):

For non-free implementations, see the list on wikipedia.

If performance is an important criterion for you, you might be interested in the Performance Benchmarks page.

You may also use this what-implementation CL program to help you determine what implementation to use. You may use it with telnet://hubble.informatimago.com:8101.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Common-Lisp-Controller.html b/clones/lisp/www.cliki.net/Common-Lisp-Controller.html deleted file mode 100644 index 56e43277..00000000 --- a/clones/lisp/www.cliki.net/Common-Lisp-Controller.html +++ /dev/null @@ -1,85 +0,0 @@ - - - - - CLiki: common-lisp-controller - - - - - - - -
common-lisp-controller
A system for installing Common Lisp libraries and source on Debian, Fedora, Gentoo and Ubuntu Linux systems.

Released packages are available from packages.debian.org. As of August 2009, the latest package for the Debian sid (unstable) distribution is version 6.18.

Low traffic mailing lists are clc-users and clc-devel. Debian packaging questions are directed to pkg-common-lisp-devel. An old source repository, last updated in 2005, is at Debian alioth.

Authors are Peter Van Eynde, Kevin Rosenberg and Rene van Bevern.

A manual for version 7 (2010) is at https://github.com/GitoriousLispBackup/common-lisp-controller/blob/master/DESIGN.txt, though additional documentation is included with the package.

Currently, Common Lisp Controller is supported by the following -Common Lisp implementations in Debian: -

The very first thing you have to do is: -

-# aptitude install common-lisp-controller
-
- -Installation of other Common Lisp libraries should then be a simple matter of: -
-# aptitude install <package name>
-
-e.g aptitude install cl-split-sequence -You're good to go now.

How it works (note: we're describing version 4 here):

    -
  • it's expected to be used with a package system that can run setup -scripts after installing things.
  • -
  • lisp packages are distributed as source code, placed in the /usr/share/common-lisp/source/package/.
  • -
  • asdf is required. Each package needs a system definition that expects it to be found in /usr/share/common-lisp/systems/.
  • -
  • it does not anymore use the logical pathname system. Instead it overrides the asdf:output-files method to divert the fasls to a user, implementation and library specific location. At the moment /var/cache/common-lisp-controller/user-name/implementation/library/.
  • -
  • To use a library the user just has to use (clc:clc-require :foo) -
  • -
  • To recompile all libraries the user can use (clc:clc-build-all-packages) or (clc:clc-build-all-packages t) to ignore any errors during rebuilding.
  • -
  • On installation of an implementation it should run /usr/sbin/register-common-lisp-implementation bar where bar is the name of the implementation. On removal it should call the /usr/sbin/unregister-common-lisp-implementation bar command.
  • -
  • An implementation should provide a /usr/lib/common-lisp/bin/bar.sh script that implements the install-clc command.
  • -
  • On installation libraries should call /usr/sbin/register-common-lisp-source foo on removal /usr/sbin/unregister-common-lisp-source foo.
  • -
  • Also there is now a debconf interface for site-name stuff that implementations should use if possible. The results are stored in /etc/lisp-config.lisp.
  • -

We simply add a system location to asdf's ASDF:*CENTRAL-REGISTRY*, so the native locations still work. To install local packages, either use asdf-install or modify at ASDF:*CENTRAL-REGISTRY* to also point to your files.


-installer
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Common-Lisp.net.html b/clones/lisp/www.cliki.net/Common-Lisp.net.html deleted file mode 100644 index 9c8c645a..00000000 --- a/clones/lisp/www.cliki.net/Common-Lisp.net.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: common-lisp.net - - - - - - - -
common-lisp.net
Common-lisp.net provides hosting services (mailinglists, cvs, ftp, etc) to (not necessarily) free Common Lisp projects. See https://common-lisp.net/ for details.
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CommonLispPrevalence.html b/clones/lisp/www.cliki.net/CommonLispPrevalence.html deleted file mode 100644 index cf39ff3f..00000000 --- a/clones/lisp/www.cliki.net/CommonLispPrevalence.html +++ /dev/null @@ -1,66 +0,0 @@ - - - - - CLiki: CommonLispPrevalence - - - - - - - -
CommonLispPrevalence
A way to let your lisp environment be your Database.

See also: cl-prevalence.

Most stuff here from the Common Lisp Prevalence website. This code was written by Sven Van Caekenberghe using OpenMCL, an open source Common Lisp implementation for MacOS X (Darwin) and LinuxPPC. CMUCL is known to run this code successfully.

Release 1, June 10, 2003: First Public Release

This is a proof of concept implementation of Object Prevalence. Object Prevalence is a simple but interesting concept first proposed by Klaus Wuestefeld in 2001. IBM developerWorks has a reasonable Introduction to Object Prevalence article. (But see also the 1987 paper by Birrell, Jones and Wobber entitled A Simple and Efficient Implementation for Small Databases where most of these concepts are worked out in detail minus the cool sounding name! gwking).

The main Java implementation is called Prevayler, and it's available from here. Prevayler claims whopping benchmarks, because it stores objects in RAM. However, Prevayler garantees that "if you pull the plug, your object will 'prevail' ." (This quote from Klaus from a magazine article).

Arthur Lemmens also gave an overview on the various Common Lisp ways to achieve object persistence, covering these prevalence libraries.

    -
  • Most databases are only a couple of hundreds of megabytes big, often even less.
  • -
  • Most computers can easily take a couple of hundreds of megabytes of data in RAM, big servers can hold many gigabytes.
  • -
  • Mapping objects to databases is at least tedious and time consuming, but often also complex and error prone.
  • -
  • Let's throw away the database and just consider the domain model objects as the database.
  • -
  • Let's make sure we can serialize and deserialize our objects to and from a some persistent medium such as a file system.
  • -
  • If we store our complete set of domain model objects to a persistent medium we create a snapshot.
  • -
  • We query by using the data structure manipulation functionality of our programming language, running from RAM, queries will be extremely fast.
  • -
  • Let's agree to only change our object model using transaction objects that combine the data and the functionality to execute the transaction.
  • -
  • In order to preserve the ACID properties of our system, we log each transaction to some persistent medium by serializing it after we execute it. The is called the transaction log.
  • -
  • When the system goes down (intentionally or unintentionally) we restore its latest state by first reading in the latest snapshot and by re-executing each transaction from the transaction log.
  • -
  • Transactions must be deterministic and re-entrant (so they also need to record the current time if necessary).
  • -
  • In a multi-threaded system, transactions are globally serialized.
  • -

NOTE: This is exactly what Smalltalk does (before 2001 :).

Another try at common lisp prevalence is available at the bknr website. It doesn't use XML serialization as Sven's code does, but instead writes LISP snapshot and transaction-log files that can be restored using LOAD.

An alternative to prevalence use an object database like Elephant. Elephant is transparent like prevalence (automatically serializing lisp values) but backed by Sleepycat/Berkeley DB, an embedded database, as well -as relational databases. Since the cache is mapped to in-process memory, reads are very fast. Sleepycat is very mature, and supports many advanced features.

The simplest way to do a web site with persistent data is just to use the reader and printer to serialize your objects. You can go more complex than that, if you want, and that's what bknr does, for instance. lisppaste serializes its transactions as XML; cl-blog just uses serialized sexprs. I have no idea what cliki looks like on disk.

manardb may be a more efficient implementation of prevalence; it can also store very large datasets.


-ObjectStore
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CommonQt.html b/clones/lisp/www.cliki.net/CommonQt.html deleted file mode 100644 index 56b508ad..00000000 --- a/clones/lisp/www.cliki.net/CommonQt.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: CommonQt - - - - - - - -
CommonQt
CommonQt is a SMOKE-based binding to the Qt GUI library.

Homepage: http://common-lisp.net/project/commonqt/

License: MIT

See also: qtools cl-smoke eql

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Community.html b/clones/lisp/www.cliki.net/Community.html deleted file mode 100644 index 1428479f..00000000 --- a/clones/lisp/www.cliki.net/Community.html +++ /dev/null @@ -1,92 +0,0 @@ - - - - - CLiki: Community - - - - - - - -
Community
    -
  • -ALU - - The Association of Lisp Users (ALU) is a user group which was set up to promote Lisp, help inform and educate Lisp users in general, and help represent Lisp users as a group to the vendors -
  • -
  • -CLUS - - CLUS, or Common Lisp UltraSpec, is a community project to create a contemporary and unified documentation file for the whole modern Common Lisp universe -
  • -
  • -David Steuber - - David Steuber is a Person who tries to hack in Lisp with Carbon Emacs, OpenMCL, and SBCL -
  • -
  • -Doug Tolton - - Doug Tolton is person, who is stll trying to figure both Lisp and Cliki out -
  • -
  • -FSF - - The Free Software Foundation was founded by EMACS creator Richard Stallman to maintain the shared community that the early hackers had, and to counter the for-profit world with a set free software tools and operating system -
  • -
  • -International Lisp Conference 2002 - - The International Lisp Conference 2002 was in San Francisco, October 27th- October 31st -
  • -
  • -International Lisp Conference 2003 - - The International Lisp Conference 2003 -
  • -
  • -Regional Lisp groups - - Hungary -
  • -
  • -sharplispers - - A group of Common Lisp hackers who occasionally maintain otherwise abandoned or quasi-abandoned Common Lisp software packages -
  • -
  • -SLUG - - The Symbolics Lisp Users Group (SLUG) was the precursor to the ALU -
  • -
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Compo.html b/clones/lisp/www.cliki.net/Compo.html deleted file mode 100644 index b4cba657..00000000 --- a/clones/lisp/www.cliki.net/Compo.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Compo - - - - - - - -
Compo
Compo is a language to describe in a natural way simple or complex structures of Music.

License: ?

Homepage: http://sourceforge.net/projects/compo/

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Compression.html b/clones/lisp/www.cliki.net/Compression.html deleted file mode 100644 index df20f8d5..00000000 --- a/clones/lisp/www.cliki.net/Compression.html +++ /dev/null @@ -1,92 +0,0 @@ - - - - - CLiki: Compression - - - - - - - -
Compression
Data compression in Common Lisp.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Concrete-Syntax-Tree.html b/clones/lisp/www.cliki.net/Concrete-Syntax-Tree.html deleted file mode 100644 index 14dd5810..00000000 --- a/clones/lisp/www.cliki.net/Concrete-Syntax-Tree.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Concrete-Syntax-Tree - - - - - - - -
Concrete-Syntax-Tree
Concrete Syntax Trees represent s-expressions with source information.

Depends on: Acclimation

License: BSD 2-Clause


-parser, metaprogramming
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Concurrency.html b/clones/lisp/www.cliki.net/Concurrency.html deleted file mode 100644 index 758095b7..00000000 --- a/clones/lisp/www.cliki.net/Concurrency.html +++ /dev/null @@ -1,250 +0,0 @@ - - - - - CLiki: concurrency - - - - - - - -
concurrency
Doing more than one thing at a time.

    -
  • -bailout - - Supervision trees for Common Lisp -
  • -
  • -blackbird - - Blackbird is a modern promise implementation -
  • -
  • -Bordeaux-Threads - - Bordeaux-Threads lets you write multi-threaded applications in a portable way -
  • -
  • -bt-semaphore - - simple semaphores for bordeaux-threads -
  • -
  • -Calispel - - Calispel is a concurrency library for thread-safe message-passing channels, in the style of the occam programming language -
  • -
  • -chanl - - ChanL is a concurrency library built on top of bordeaux-threads that provides channels as thread-synchronisation primitives -
  • -
  • -cl-actors - - A simple Common Lisp implementation of the actor model of concurrency -
  • -
  • -cl-async - - Cl-async is a asynchronous I/O library wrapping the libuv C library -
  • -
  • -cl-cuda - - Cl-cuda is a library to use Nvidia CUDA in Common Lisp programs -
  • -
  • -cl-flow - - Asynchronous non-blocking concurrency in Common Lisp, similar to what green threads are for -
  • -
  • -cl-future - - Cl-future is a simple way to achieve parallelism for common lisp on multiprocessor shared memory Unix machines -
  • -
  • -cl-gpu - - cl-gpu is a translator from a subset of Common Lisp to CUDA for writing GPU kernels -
  • -
  • -cl-muproc - - CL-MUPROC is an Erlang-inspired concurrency library available under the BSD license for Lispworks, OpenMCL, SBCL, CMUCL, and ACL -
  • -
  • -Eager Future2 - - Eager Future2 provides composable concurrency primitives that unify parallel and lazy evaluation, are integrated with CL's condition system, and have automatic resource management -
  • -
  • -green-threads - - GREEN-THREADS is a portable library implementing green threads (lightweight, cooperatively multitasked, user threads) in Common Lisp -
  • -
  • -lparallel - - lparallel is a new concurrency library -
  • -
  • -memento-mori - - memento-mori is a library for writing robust, actor-based systems -
  • -
  • -pcall - - PCall is a concurrency library that implements simple 'result-oriented' parallelism on top of Bordeaux-Threads -
  • -
  • -Petalisp - - Elegant code generation for high-performance computing -
  • -
  • -pretend-event-loop - - This is a common lisp library that simulates an event loop -
  • -
  • -stmx - - STMX is an actively maintained, high-performance concurrency library providing Transactional Memory for Common Lisp -
  • -
  • -thread-pool - - thread-pool is library that allows asynchronous function execution from a static thread pool -
  • -
  • -threading-queue - - threading-queue is a CL macro to distribute work on several threads, feeding the data via thread-safe-queues over several steps -
  • -
  • -trivial-timers - - Trivial-timers is a minimally portable implementation of the SBCL timer extension using Bordeaux-Threads -
  • -

Threads are a popular technique for concurrent programming: -

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Conference.html b/clones/lisp/www.cliki.net/Conference.html deleted file mode 100644 index 15e6070d..00000000 --- a/clones/lisp/www.cliki.net/Conference.html +++ /dev/null @@ -1,120 +0,0 @@ - - - - - CLiki: Conference - - - - - - - -
Conference
Planning on going to a conference? This Cliki page is intended as a starting point for news of conferences with a Lisp theme or at which Lispers are likely to be present in significant numbers

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Configuration.html b/clones/lisp/www.cliki.net/Configuration.html deleted file mode 100644 index e8d08c18..00000000 --- a/clones/lisp/www.cliki.net/Configuration.html +++ /dev/null @@ -1,92 +0,0 @@ - - - - - CLiki: Configuration - - - - - - - -
Configuration
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Conrad Barski.html b/clones/lisp/www.cliki.net/Conrad Barski.html deleted file mode 100644 index bee09e21..00000000 --- a/clones/lisp/www.cliki.net/Conrad Barski.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Conrad Barski - - - - - - - -
Conrad Barski
Conrad Barski is the author of the book Land of Lisp. He has an M.D. from the University of Miami and close to 20 years of programming experience. He is the creator of the famed Lisp Alien mascot. -person
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Consfigurator.html b/clones/lisp/www.cliki.net/Consfigurator.html deleted file mode 100644 index 4712f824..00000000 --- a/clones/lisp/www.cliki.net/Consfigurator.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Consfigurator - - - - - - - - -
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Consolidation.html b/clones/lisp/www.cliki.net/Consolidation.html deleted file mode 100644 index f5853e24..00000000 --- a/clones/lisp/www.cliki.net/Consolidation.html +++ /dev/null @@ -1,70 +0,0 @@ - - - - - CLiki: Consolidation - - - - - - - -
Consolidation
This page is here to help coordinate library consolidation efforts -(see also discussion on /r/lisp)

If you know of, are involved in, or would like to propose a consolidation effort, please create a topic below with links to the -relevant libraries, discussions etc.

There are currently consolidation efforts underway for the following topics: -

  • -data structures
    - -status: in progress
    -library: Lisp Interface Library
    -lead: Faré
    -mailing list: lisp-interface-library-devel@common-lisp.net - -
  • -ml style pattern-matching
    - -status: in progress
    -library: Optima
    -maintainer: Tomohiro Matsuyama (m2ym) - -

know of any others? add them here!


-standards
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Context Lite.html b/clones/lisp/www.cliki.net/Context Lite.html deleted file mode 100644 index aea89b70..00000000 --- a/clones/lisp/www.cliki.net/Context Lite.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Context Lite - - - - - - - -
Context Lite
Context Lite is a language extension for writing methods that specialize on the values of dynamic/special variables at runtime. It's similar to ContextL, but uses special variables instead of "layers", and is only for methods. Different methods on the same generic function may specialize on different sets of special variables.

Context Lite's source code is available on Github.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ContextL.html b/clones/lisp/www.cliki.net/ContextL.html deleted file mode 100644 index 837e7889..00000000 --- a/clones/lisp/www.cliki.net/ContextL.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: ContextL - - - - - - - -
ContextL
ContextL is a language extension for Context-oriented Programming.

Currently, there is no documentation available, but you can find a small test case in the distribution and an introduction to ContextL's features in a first overview paper (contextl-soa.pdf).

ContextL is written and maintained by Pascal Costanza.

Repository: https://github.com/pcostanza/contextl

License: MIT

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Convenience library.html b/clones/lisp/www.cliki.net/Convenience library.html deleted file mode 100644 index 859d57be..00000000 --- a/clones/lisp/www.cliki.net/Convenience library.html +++ /dev/null @@ -1,244 +0,0 @@ - - - - - CLiki: convenience library - - - - - - - -
convenience library
Convenience libraries may make your code shorter to write, or may make it harder to read. Please read about The Great Macro Debate if you're considering using any of these libraries.

    -
  • -Anaphora - - Anaphora is the anaphoric macro collection from Hell; it includes many new fiends in addition to old friends like AIF and AWHEN -
  • -
  • -anaphoric-variants - - anaphoric-variants gives access to anaphoric variants of operators through one macro: anaphoric -
  • -
  • -cartesian-product-switch - - cartesian-product-switch is a macro for choosing the appropriate form to execute according to the combined results of multiple tests -
  • -
  • -cdr_assoc - - A setf method for (cdr (assoc ...)) -
  • -
  • -cl-anonfun - - cl-anonfun - anonymous function helpers for Common Lisp -
  • -
  • -cl-groupby - - Short implementation of Scalas groupBy functionality for Common Lisp -
  • -
  • -cl-hash-util - - cl-hash-util is a very basic library for dealing with CL's hash tables -
  • -
  • -cl-interpol - - CL-INTERPOL modifies the reader so that you can have interpolation of strings similar to Perl or Unix Shell scripts -
  • -
  • -cl-pdf.arglists - - cl-pdf.arglists improves the argument lists of CL-PDF and cl-typesetting, for easier interactive development -
  • -
  • -cl-reexport - - cl-reexport makes a package reexport symbols which are external symbols in other packages -
  • -
  • -cl-syntax-sugar - - cl-syntax-sugar is a convenience library of reader macros and of helper functions to create new syntax extensions and to use them with ASDF and Slime without enabling them in the global readtable -
  • -
  • -clesh - - Clesh is a library that makes it possible to embed -
  • -
  • -clhs ASDF wrapper - - This installation helper makes it even easier to install a copy of the CLHS locally -
  • -
  • -com.google.base - - The base package contains code that's highly likely to be useful in every Lisp application -
  • -
  • -com.informatimago.common-lisp.interactive - - informatimago interactive is a collection of Unix-like file browsing commands, and REPL-management tools -
  • -
  • -curly - - Curly is set of two reader macros for easy function currying and -
  • -
  • -defclass* - - defclass* is a convenience library to make the usage of defclass-like constructs easier (defcondition*, deflayer*, etc) -
  • -
  • -defclass-std - - A shortcut macro to write DEFCLASS forms quickly -
  • -
  • -DEFINER - - DEFINER is a small hack which demonstrates the power of CL macro facilities -
  • -
  • -defstar - - Defstar is a collection of Common Lisp macros that can be used in place of defun, defmethod, defgeneric, defvar, defparameter, flet, labels, let* and lambda -
  • -
  • -demacs - - Demacs is an extensible way of defining various things -
  • -
  • -documentation-utils - - This is a small library to help you with managing the docstrings for your library -
  • -
  • -enhanced-eval-when - - enhanced-eval-when provides an enhanced eval-when macro that supports (eval-when t ...) as a shorthand for (eval-when (:compile-toplevel :load-toplevel :execute) ...), addressing concerns about verbosity -
  • -
  • -enhanced-multiple-value-bind - - enhanced-multiple-value-bind provides an enhanced multiple-value-bind macro that adds support for lambda list keywords by expanding to a multiple-value-call when necessary -
  • -
  • -f-underscore - - F-underscore is a convenience library to make writing lambdas shorter without having to resort to special syntax like arc's square brackets -
  • -
  • -folio2 - - A collection of small libraries: functional idioms and data structures in Common Lisp and a common set of APIs for them -
  • -
  • -ia-hash-table - - Indifferent access hash-tables for Common Lisp -
  • -
  • -let-plus - - LET+ extends let* with destructuring forms, slot access, hash table elements and various other constructs with a consistent interface -
  • -
  • -lispc - - A powerful macrolanguage for C -
  • -
  • -literate-lisp - - Provides some support for org files as Lisp source files, including ASDF interface -
  • -
  • -macro-level - - macro-level is an embarassingly trivial convenience macro that saves on indentation while being more concise and direct -
  • -
  • -map-bind - - map-bind is a macro that allows visual grouping of variables with their corresponding values (not necessarily 1:1) in calls to mapping operators when using an inline LAMBDA -
  • -
  • -mccme-helpers - - Yet another set of utilities functions -
  • -
  • -mexpr - - mexpr is an Infix syntax library -
  • -
  • -Misc-Extensions - - A convenience library containing a motley collection of macros and other extensions -
  • -
  • -multiple-value-variants - - multiple-value-variants gives access to multiple-value variants of operators through one macro: multiple-value -
  • -
  • -Named multiple-values - - Named-multiple-values is a piece of macrology that enables one to deal with -
  • -
  • -outer-parentheses-free-repl - - outer-parentheses-free-repl (OPFR) lets you input the outermost s-exp into your REPL without having to surround it with parentheses -
  • -
  • -pathname-utils - - This is a collection of common tests and operations to help handling pathnames -
  • -
  • -persistent-variables - - Persistent-variables is a convenience library that makes it easy to serialize and deserialize variables -
  • -
  • -place-modifiers - - place-modifiers essentially gives access to hundreds of modify-macros through one single macro: modify -
  • -
  • -positional-lambda - - positional-lambda is a concise, intuitive and flexible syntax (macro) for trivial lambdas that eschews explicit (and often contextually-redundant) naming of parameter variables in favor of positional references, with support for a used or ignored &rest parameter and automatic declaration of ignored parameters when logical "gaps" are left in the positional references -
  • -
  • -read-macros - - read-macros is a convenience library of useful read macros for CL -
  • -
  • -simplified-types - - Homepage: https://github.com/marcoheisig/simplified-types -
  • -
  • -the - - The THE package provides the THE* macro that takes name of some type and a form and wraps that form recursively into (THE ...) -
  • -
  • -trivial-update - - This is a little library that gives its user tools to easily change place with any supplied function -
  • -
  • -type-r - - The complete collection of accessor functions and patterns to access the elements in a compound type specifier -
  • -
  • -X.LET-STAR - - X LET-STAR is a convenience library not unlike bind, but smaller, extendible, nicely written and bug-free (hopefully :) -
  • -
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Corba.html b/clones/lisp/www.cliki.net/Corba.html deleted file mode 100644 index 5c55af5e..00000000 --- a/clones/lisp/www.cliki.net/Corba.html +++ /dev/null @@ -1,62 +0,0 @@ - - - - - CLiki: CORBA - - - - - - - -
CORBA
CORBA is the Common Object Request Broker Architecture. The document describing OMG CORBA bindings for Common Lisp is available at https://www.omg.org/spec/LISP/.

Peter Van Eynde: CORBA is a poor match with CLOS: CORBA methods can have a variable number of arguments, which results in having all methods having arguments (object &rest parameters) . This is less then ideal, and especially the GUI tools like ilisp are helpless to give useful argument lists. There is no concept of a mix-in of course

The ANY type is nice, but most implementations only convert the first level of an ANY object, so you'll get a list of ANY objects instead of a list of lisp objects like strings and integers. You need to realize each object in turn to get that list of lisp things. Note that this is not a problem with the current implementations, but with a basic problem related to the copying problem in Common Lisp.

Other CORBA problems include the failure of many people to realize that this is Network programming and things like bandwith and latency are not to be underestimated. So no "This method returns a cookie and you need to use this object method to itterate through it" but: "This methods returns the number of records found and a list containing the first N results, use method foo to get the next N". The latter method reduces latency and makes better use of the network bandwidth. I could rant for hours on this subject... Peter Van Eynde

Another thing: CORBA uses CDR-encoding which is the on-the-wire encoding of objects, not the memory-saving trick used in the old lisp machines :-).

CDR, in the context of CORBA, is a Common Data Representation (PDF).

For free CORBA implementations for Common Lisp, see

-
-standards
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/CoreServer.html b/clones/lisp/www.cliki.net/CoreServer.html deleted file mode 100644 index 2a7491a3..00000000 --- a/clones/lisp/www.cliki.net/CoreServer.html +++ /dev/null @@ -1,78 +0,0 @@ - - - - - CLiki: CoreServer - - - - - - - -
CoreServer
Core-Server is a web framework and application server. It heavily uses higher order functions, composable data streams and continuations. These features allow developers to develop applications in fewer lines of code. Fewer lines of code leads to easy maintanence and rapid development.

Key Features: -

    -
  • Able to use higher order functions, continuations
  • -
  • Able to build domain specific language
  • -
  • Rapid development in fewer lines of code
  • -
  • Easy maintanence
  • -
  • Built in Prevalence in-memory database (1000x faster than SQL)
  • -
  • Component/ Web framework ready for Web 2.0 (No more serializing, deserializing or RPC)
  • -
  • Built-in support for Dojo Toolkit for building interactive UI's
  • -
  • Built-in support for FCKeditor
  • -
  • Full RFC implementations - 822, 2046, 2109, 2388, 2396, 2616, 2617 (no more protocol bugs)
  • -
  • Runs on Steel Bank Common Lisp (SBCL)
  • -
  • Easy linux installer for Gentoo, Ubuntu, Debian and Pardus
  • -
  • Able to control several unix services like: -
      -
    • Apache Web Server
    • -
    • Postfix Email Server
    • -
    • TinyDNS Server
    • -
    -
  • -
  • Suitable for virtual hosting, can be run behind Apache or can serve directly
  • -
  • Javascript render library, write in lisp and core-server will serve it as javascript
  • -
  • HTML parser and render library
  • -
  • RSS parser and render library
  • -
  • CSS render library
  • -
  • Even HTML can be transformed into javascript to run inside a browser!
  • -
-and more...

https://github.com/evrim/core-server

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Corman Common Lisp.html b/clones/lisp/www.cliki.net/Corman Common Lisp.html deleted file mode 100644 index 3bf08bdf..00000000 --- a/clones/lisp/www.cliki.net/Corman Common Lisp.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Corman Common Lisp - - - - - - - -
Corman Common Lisp
Corman Lisp is a Common Lisp development environment for Microsoft Windows operating systems running on Intel platforms.

Corman Lisp consists of a Common Lisp native code compiler for Intel processors, 80x86 assembler and disassembler, incremental linker and multi-window text editor. It requires a system running a Microsoft Windows operating system (such as Windows XP, Windows 2000, Windows ME or Windows NT). It is fully integrated with the Win32 API, and all the Windows API functions are readily available from Lisp.

Corman Lisp incorporates state-of-the-art compiler technology to bring you a Common Lisp system unmatched on Windows platforms.

Corman Lisp works on Windows XP SP3 and newer. It is also reported to work on Linux via Wine.

Corman Common Lisp is now MIT licensed. The canonical home of this release is https://github.com/sharplispers/cormanlisp


-Common Lisp implementation Windows
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Cornel.html b/clones/lisp/www.cliki.net/Cornel.html deleted file mode 100644 index 72791465..00000000 --- a/clones/lisp/www.cliki.net/Cornel.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Cornel - - - - - - - -
Cornel
Cornel is a Person interested in security, functional programming and biocomputing. He is in a team developing a P systems (membrane calculus) simulator, using CLIPS in a quite functional way.

His home page.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Cosmin Stejerean.html b/clones/lisp/www.cliki.net/Cosmin Stejerean.html deleted file mode 100644 index c1511466..00000000 --- a/clones/lisp/www.cliki.net/Cosmin Stejerean.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: Cosmin Stejerean - - - - - - - -
Cosmin Stejerean
Cosmin Stejerean is a Person currently trying to master CL (specifically SBCL).

-


-Person -
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Craig Brozefsky.html b/clones/lisp/www.cliki.net/Craig Brozefsky.html deleted file mode 100644 index 21a751c0..00000000 --- a/clones/lisp/www.cliki.net/Craig Brozefsky.html +++ /dev/null @@ -1,73 +0,0 @@ - - - - - CLiki: Craig Brozefsky - - - - - - - -
Craig Brozefsky
Craig Brozefsky, rumored to be a Person, is also a Lisp hacker and Free Software devotee.

Packages he has worked on include: -
-

-
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Craig Lanning.html b/clones/lisp/www.cliki.net/Craig Lanning.html deleted file mode 100644 index 47afbfe0..00000000 --- a/clones/lisp/www.cliki.net/Craig Lanning.html +++ /dev/null @@ -1,71 +0,0 @@ - - - - - CLiki: Craig Lanning - - - - - - - -
Craig Lanning
Craig Lanning is a Person that has been accused by his wife of -being paid to play. (It never seemed to stop her from helping -spend whatever money came in, though.)

My introduction to lisp happened in 1985, 3 weeks before my wedding, -when, as a co-op student, I was sent to Cambrige, Mass. for 2 weeks of -training at Symbolics. (My way of helping with the wedding was to -stay out of the way until it was time to show up for the ceremony.) -Ever since then, I have done most of my professional programming on -Symbolics Lisp Machines. The last couple of years I have used -Xanalys' LispWorks on a Linux PC.

At one time I (as a civilian) managed a lab of 12 Lisp Machines: 6 -Symbolics 3650's, 5 TI Explorer II's, and one LMI (a TI Explorer by -any other name) for the U.S. Army. I also taught an 8 week course in -how to program LispM's.

I have since changed from civil service to the private sector (as a -government contractor). I now work on various (Lisp based) projects -related to printed circuit assembly manufacturing and product data -standards (ISO 10303). My current project involves maintaining an -open source application (Express Engine) for working with ISO 10303 -based schemata and data populations.

I just recently discovered CMUCL and SBCL. I think that either -of them combined with McCLIM and a set of CLIM based tools (Editor, -Lisp Listener, Windowed Debugger, etc.) would make an excellent -development environment. -

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Creating Executables.html b/clones/lisp/www.cliki.net/Creating Executables.html deleted file mode 100644 index bf1bd45e..00000000 --- a/clones/lisp/www.cliki.net/Creating Executables.html +++ /dev/null @@ -1,98 +0,0 @@ - - - - - CLiki: Creating Executables - - - - - - - -
Creating Executables
Most Common Lisp implementations support creating native-format executable files.

The typical route involves loading all of the program's code into the Lisp environment, dumping the current state of the Lisp process into a disk image, and identifying a start function (ie main).

Since the disk image contains the entire Common Lisp system (compiler, debugger, documentation strings, etc.), the executable will be typically larger than a compiled C program (even if you statically link the C code).

Another form of disk image requires a copy of the particular Lisp implementation to be installed on the recipient's machine. This is no different in principle from a C application requiring platform-specific dynamic libraries to run. This complicates deployment - the disk image is tied to a particular implementation version, and you typically end up having to include the Lisp implementation executable anyway.

Due to platform limitations, some Lisp implementations can't produce native executables (for example, ABCL can only make JAR files). Other implementations are only able to dump disk images that require a separate copy of the implementation executable. An alternative to executables is available on Unix platforms in the form of shell scripting.

There are a few tools designed to help with creating executables: -

-The Lispbuilder wiki has a couple of tutorials for making executables on different OSes (including Windows): - -Implementation specific information: -
-
CLISP
-
-Saving an Image on CLISP and Application Delivery for CLISP -
-
SBCL
-
Saving a Core Image for SBCL
-
CCL
-
Saving Applications on OpenMCL/Clozure Common Lisp
-
ECL
-
-Building standalone executables for ECL (which supports multiple methods of code delivery)
-
CMUCL
-
Only supports creating executables on Linux and FreeBSD on x86 (see CMUCL FAQ)
-

The best support (tree shaking, binary patches, etc.) for executables is available in commercial implementations: -

-
Allegro
-
Application Delivery for Allegro Common Lisp
-
LispWorks
-
Application Delivery for Xanalys Lispworks

-


-FAQ system programming deployment -
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Cryptography.html b/clones/lisp/www.cliki.net/Cryptography.html deleted file mode 100644 index a7c0ea0a..00000000 --- a/clones/lisp/www.cliki.net/Cryptography.html +++ /dev/null @@ -1,168 +0,0 @@ - - - - - CLiki: Cryptography - - - - - - - -
Cryptography
    -
  • -adler32 - - Adler-32 is a hash algorithm like CRC-32, except that it is much faster and carries a slightly higher probability of collisions -
  • -
  • -ARC4 - - A Common Lisp implementation of ARC4 (trademark: RC4), a stream cipher, can be found below -
  • -
  • -Blowfish - - Blowfish is a 64-bit encryption algorithm, with a key length between 32 and 448 bits -
  • -
  • -CL+SSL - - CL+SSL is a portable interface to OpenSSL -
  • -
  • -cl-cracklib - - cl-cracklib is a UFFI interface to cracklib's FascistCheck function -
  • -
  • -cl-crc64 - - cl-crc64 implements 64 bit cyclic redundancy checks in Common Lisp -
  • -
  • -CL-MD5 - - CL-MD5 is a Common Lisp implementation of MD5 -
  • -
  • -cl-one-time-passwords - - cl-one-time-passwords implements HOTP (RFC 4226) and TOTP (RFC 6238) in Common Lisp -
  • -
  • -cl-pass - - cl-pass is a password hashing (via PBKDF2) and verification library -
  • -
  • -cl-password-store - - Password management for Common Lisp (web) applications -
  • -
  • -CL-PLUS-SSL - - This library is a fork of SSL-CMUCL -
  • -
  • -CL-TLS - - CL-TLS is a prototype Common Lisp implementation of TLS and related protocols and standards including: -
  • -
  • -CLJWT - - A library for issuing and validating JSON Web Tokens -
  • -
  • -CRC-32 - - A library to compute the CRC-32 algorithm that is described in RFC 1952 -
  • -
  • -GPGME - - GPGME (GnuPG Made Easy) is a C language library that provides a high-level cryptography API for encryption, decryption, signing, signature verification and key management -
  • -
  • -iescrypt - - A tool to encrypt and/or sign files -
  • -
  • -Ironclad - - Ironclad is a Common Lisp Cryptography package; several block encryption algorithms and hash functions are included with the initial release -
  • -
  • -isaac - - An implementation of the isaac CPRNG in Common Lisp -
  • -
  • -md5 - - md5 is a cryptographic Message-Digest algorithm from RSA Data Security, Inc -
  • -
  • -PRBS - - Library of pseudo-random binary sequence generators (LFSR-2 and LFSR-4) and related functions in Common Lisp -
  • -
  • -random-state - - This is a collection of pseudo random number generators (PRNGs) -
  • -
  • -SAFER - - SAFER (Secure And Fast Encryption Routine) is a block cipher that was first published in 1993, followed by later variants -
  • -
  • -secure-random - - secure-random provides a cryptographically secure pseudo-random number generator for Common Lisp -
  • -
  • -session-token - - session-token is a simple session token generator based on Session::Token -
  • -
  • -SHA1 - - Secure Hash Algorithm 1 (SHA1) is defined in RFC 3174, and therefore more-or-less counts as a protocol -
  • -
  • -sha3 - - This library is an implementation of the Secure Hash Algorithm 3 (SHA-3), also known as Keccak -
  • -
  • -SSL-CMUCL - - SSL-CMUCL is an interface to SSL streams for CMUCL -
  • -
  • -XXTEA - - XXTEA is an encryption algorithm, first introduced in 1998, which is relatively easy to implement -
  • -
  • -Ystok-MD5 - - Ystok-MD5 is a Cryptography library implementing MD5 and MD5 APR (Apache Portable Runtime) -
  • -
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Curl.html b/clones/lisp/www.cliki.net/Curl.html deleted file mode 100644 index 8f2cc1f0..00000000 --- a/clones/lisp/www.cliki.net/Curl.html +++ /dev/null @@ -1,56 +0,0 @@ - - - - - CLiki: Curl - - - - - - - -
Curl
Curl is a library and tool for downloading from URLs, to which the cl-curl interface provides access. Other uses of the name:

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Current recommended libraries.html b/clones/lisp/www.cliki.net/Current recommended libraries.html deleted file mode 100644 index e67829ac..00000000 --- a/clones/lisp/www.cliki.net/Current recommended libraries.html +++ /dev/null @@ -1,284 +0,0 @@ - - - - - CLiki: Current recommended libraries - - - - - - - -
Current recommended libraries
Cliki contributors (that's you!) believe that the libraries on this page are considered "good enough for government use", and serve as a starting point when looking for a library covering a given field.

If you feel that a certain library should be written then please add it to Suggested Programming Projects or write it yourself.

A clean and up-to-date, yet rather subjective listing of recommended libraries can be found here (2015), it saw an update there (2020), and another list is maintained on Github on awesome-cl. To search for libraries across Quicklisp, Cliki, GitHub and BitBucket, there exists the Quicksearch library.

Library management / installation / Handling Packages

    -
  • -Quicklisp - A popular way of obtaining lisp libraries
  • -
  • -asdf - System definition, aka Makefiles(in some implementation like sbcl, this is - already installed by default)
  • -
  • Qlot is a project-local library installer using Quicklisp facility. This aims to be like Bundler of Ruby or Carton of Perl. -
  • -
  • Roswell is a Lisp implementation installer/manager, library installer, script launcher, and much more ! -
  • -
  • CLPM is a relatively new package manager for Common Lisp. It works as well for system-wide or directory-local packages. It supports HTTPS and allows explicitely versioned dependencies. -
  • -

Web development

-See also Quickdocs.

Frameworks and development tools:

    -
  • Caveman - a lightweight, server independant, fully extensible web framework with database integration. -
  • -
  • CLOG - A JS over WebSockets based framework
  • -
  • -CL-Weblocks - a continuations based framework
  • -
  • -ningle - a very lightweight web application framework using Clack
  • -
-HTTP server: -
    -
  • -Clack - a wrapper API for HTTP requests/responses with multiple webserver backends. Inspired by Python's WSGI and Ruby's Rack
  • -
  • -Hunchentoot - the de-facto standard HTTP web server
  • -
  • -Woo - a fast libev-based async web server with worker thread support
  • -
  • -Wookie - an async application/web server
  • -
-HTTP client: - -HTTP parser: -
    -
  • -Plump - a markup parser, tolerant on malformed html. It can be queried with Lquery or Clss. -
  • -
-Utilities: -
    -
  • -CL-WHO HTML generator
  • -
  • -Parenscript JavaScript compiler
  • -
  • -css-lite is a library for generating CSS from an s-exp based syntax
  • -
  • -quri URI library
  • -
-SQL database connectivity: - -Internationalization (i18) and localization (l10n): -
    -
  • Character encoding/decoding: flexi-streams - focus on features
  • -
  • Character encoding/decoding: babel - focus on speed
  • -
  • Character categories, etc: cl-unicode -
  • -
  • Localization (number formats, etc): cl-l10n -
  • -

APIs to websites

-
    -
  • -Chirp A full Twitter API library
  • -
  • -Humbler Easy Tumblr interaction
  • -

Game development

-
    -
  • -xelf - Formerly known as blocky. "Xelf extends Common Lisp with an Emacs-inspired 2D OpenGL game engine, a game project editor interface, and an integrated command shell" - http://www.xelf.me
  • -

General purpose utility libraries and commonly used libraries

-
    -
  • -alexandria — Collection of portable general purpose utilities. Used by a large number of other projects.
  • -
  • -serapeum — A supplement to Alexandria, also conservative but less so.
  • -
  • -iterate — A lispy and extensible replacement for the LOOP macro.
  • -
  • -closer-mop — A popular compatibility library allowing portable access to the MOP across implementations.
  • -
  • Regular expressions: cl-ppcre — Popular and fast regular expressions engine.
  • -
  • Pattern Matching: trivia — ML-style pattern matcher.
  • -
  • Collections: -
      -
    • -lisp-interface-library is a collection of pure and stateful data structures in interface-passing style
    • -
    • -FSet is a functional set-theoretic collections package
    • -
    -
  • -
  • Mathematics: -
      -
    • -GSLL is an interface to the GNU Scientific Library
    • -
    • -Maxima is a computer algebra system
    • -
    • -RCL is a interface to R
    • -
    -
  • -
  • Compression: -
      -
    • -Salza2 is a Common Lisp library for creating compressed data in the ZLIB, DEFLATE, or GZIP data formats, described in RFC 1950, RFC 1951, and RFC 1952, respectively. It does not use any external libraries for compression. It does not yet support decompression.
    • -
    • -Chipz is a decompression library for decompressing DEFLATE (RFC 1951) data such as ZLIB (RFC 1950), GZIP (RFC 1952), as well as bzip2. -
    • -
    -
  • -

Common data formats

-XML: -
    -
  • -CXML namespace, validating, SAX, StAX, W3C DOM, XPath 1.0, XSLT 1.0
  • -
  • -S-XML simple XML parser
  • -
  • -XMLS simple XML parser
  • -
-JSON (see -Difference between JSON libraries): -
    -
  • -cl-json : A CLOS-extensible JSON parser and generator.
  • -
  • -yason: Another extensible JSON parse and generator.
  • -
-CSV -
    -
  • -CL-CSV : a library to parse and write csv (comma-separated-values) files.
  • -
-id3v2

The book Practical Common Lisp implements an id3v2 parser, the source code can be found at its website

System and low level management

Project managements

Logging: -

    -
  • -Log4CL is high performance extensible logging library for Common Lisp -
  • -
-Unit Testing: -

Graphics libraries

-Graphical User Interface: -

Graphical drawing library: -

Audio

-
    -
  • -mixalot. Mixalot currently consists of a mixer component providing straightforward audio output on Linux (via ALSA) and other platforms (using libao), a CFFI binding to the libmpg123 library, and a helper component allowing playback of MP3 files through the mixer.
  • -

Encryption

-
    -
  • -Ironclad : A native Common Lisp package with support for several ciphers and hash functions
  • -

PRNG

-
    -
  • -MT19937 : a portable Mersenne Twister pseudo-random number generator. Has its own *random-state* and supports seeding from any integer.
  • -

Parallel, concurrent and async programming

-
    -
  • -lparallel : A Common Lisp library for parallel programming
  • -
  • -chanl : ChanL is a concurrency library built on top of bordeaux-threads that provides channels as thread-synchronisation primitives
  • -
  • -cl-async : cl-async implements a higher-level interface for non-blocking, asynchronous programming in Common Lisp
  • -
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Cusp.html b/clones/lisp/www.cliki.net/Cusp.html deleted file mode 100644 index 9f47af8d..00000000 --- a/clones/lisp/www.cliki.net/Cusp.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Cusp - - - - - - - -
Cusp
Cusp is an Eclipse IDE plugin that was available from http://bitfauna.com/projects/cusp/index.html and runs on top of SBCL. There are builds for Windows, Linux and OS X (Intel) available.

Cusp was written by Tim Jasko.

Project's site was http://cusp.devjavu.com/wiki.

Source was found at https://code.google.com/archive/p/cusp/

And there is a clone at github: https://github.com/budden/cusp

Article on CUSP at IBM Developer: https://www.ibm.com/developerworks/opensource/library/os-eclipse-lispcusp/index.html

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Cyclosis.html b/clones/lisp/www.cliki.net/Cyclosis.html deleted file mode 100644 index b3457b65..00000000 --- a/clones/lisp/www.cliki.net/Cyclosis.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Cyclosis - - - - - - - -
Cyclosis
Cyclosis is a combined implementation of the functionality of the Common Lisp stream dictionary and that of the Gray streams proposal.

Repository: https://github.com/s-expressionists/Cyclosis

License: BSD 2-Clause


-system programming
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Cygwin.html b/clones/lisp/www.cliki.net/Cygwin.html deleted file mode 100644 index 2c389954..00000000 --- a/clones/lisp/www.cliki.net/Cygwin.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Cygwin - - - - - - - -
Cygwin
Cygwin is a UNIX environment for Windows. See the Cygwin home page.
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Cyrus Harmon.html b/clones/lisp/www.cliki.net/Cyrus Harmon.html deleted file mode 100644 index df0e8e67..00000000 --- a/clones/lisp/www.cliki.net/Cyrus Harmon.html +++ /dev/null @@ -1,90 +0,0 @@ - - - - - CLiki: Cyrus Harmon - - - - - - - -
Cyrus Harmon
Cyrus Harmon is a Graduate Student who uses lisp to write software for computational biology and image processing.

You can now read my lisp related ramblings at http://cyrusharmon.org/cl/blog/

Cyrus has developed a number of lisp packages, which can be found on his website.

A long time ago, when I didn't understand lisp very well, I had a bunch of questions. For posterity's sake, I leave them below:

1. Why are there so many but so few good open source lisp implementations? It seems there's at least one lisp implementation, emacs lisp, on basically every platfrom anyone cares about. Yet most sane persons would not consider writing applications in emacs lisp. Why can't we unify emacs lisp and common lisp? I'm sure this has been asked countless times and answered even more.

Ok, this question isn't necessarily valid anymore. There are at least 6 good open source common-lisp implementations that I am aware of, and probably more. They can be found elsewhere on cliki, no doubt, but, at a minimum, SBCL, CMUCL, OpenMCL, clisp, ecl, and abcl are all interesting open-source lisps with at least one virtue or another.

As for the emacs/common-lisp unification, this is probably also addressed elsewhere on cliki, but there are two approaches here. One is to rewrite an emacs-like editor with nice lisp integration, syntax-aware editing, etc... and this has been done at least twice with hemlock and, more recently, climacs. climacs seems to have an enthusiastic and active developer community and is progressing nicely. It requires CLIM which, if climacs were ever to approach anything like emacs' ubiquity, still requires substantial work, primarily in making it work well on multiple platforms, at least as I see it. The second approach would be to put a common-lisp engine underneath emacs directly, upgrading the emacs APIs to be common-lisp instead of emacs lisp and then forward-porting gnus, vm, mule, etc... I know folks have thought about doing this before, but I don't know if anyone is actively doing this. ECL seems like it would make an interesting candidate for this.

2. Why is calling foreign functions such a black art? I know people do it, but it looks pretty hairy. Why doesn't swig support various flavors of lisp? Swig supports two schemes and OCAML ferchrisakes, why can't it play nice with, say, openmcl?

Black art? What is black art about this: -

-CL-USER(8): (define-alien-routine getenv c-string (name c-string))                                                            
-GETENV
-CL-USER(9): (define-alien-routine setenv int (name c-string) (value c-string) (replace int))
-SETENV
-CL-USER(10): (getenv "FOO")                                                                                                   
-NIL
-CL-USER(11): (setenv "FOO" "BAR" 1)                                                                                           
-0
-CL-USER(12): (getenv "FOO")                                                                                                   
-"BAR"
-

Of course, fully automagical header file parsing would be even neater, -but other than that, what more can you ask? No extra step whatsoever -- -calling C is often easier from CL then from C. ;-) --Nikodemus Siivola

Ah, but which version of lisp does this work in? The black art comes from knowing that define-alien-routine is an SBCL thing. What is the corresponding OpenMCL equivalent? CLISP etc... Sure, there are things like UFFI which attempt to unify this, but I would argue that it is knowing all of these little details that turn it into a "black art". Also, I see fully automagical header file parsing as a requirement for really calling C in a nice way. Or at least semi-automagic, as you get with SWIG. SWIG apparently supports sexpr's and there's some code to tweak this into right FFI declarations, but getting this all (unsupported stuff) to work is what makes it, IMHO, a black art.

Have you ever tried to feed non-trivial C-code to SWIG? I have, and -concluded that it was less work to code the whole thing anew in CL than -annotate the headers for Ruby.

Most CLs provide quite sane FFI's -- and if you need to be portable you -can go the UFFI route. How many implementations do you use? It's important -to realize that if you keep your core portable (which is easy) you can -safely worry about portability when it matters. You wrote for SBCL FFI, -and need an OpenMCL port? No problemo -- unless your work is extemely FFI -centric the porting is *not going to be a sticking problem, really.

Ok, having played around with OpenMCL's FFI stuff a bit more, I'm willing to admit that: -

-(defun TIFFOpen (file mode)
-  (with-cstrs ((c-file file) (c-mode mode))
-              (ccl::external-call "_TIFFOpen" :address c-file :address c-mode :address)))
-
-may not exactly qualify as being in the "black art" category. But the points remain that 1) this is a (very) simple example, 2) it's specific to OpenMCL, 3) it's specific to Darwin (although I imagine the _EntryPoint convention is basically the same under most Unixes) and 4) the documentation for more complex examples (pointers to arrays, etc...) is fairly minimal and it's not obvious at first glance how to go about hooking this stuff up properly. However, having done a little bit of it, it is pretty cool. You can even attach gdb to a running openmcl process and debug your C code that's being called from lisp. I suppose this is expected and maybe even obvious, but I found it to be pretty neat and handy.

I'm planning on packaging up this TIFF stuff and posting as an example of how to do FFI with openmcl. This stuff may be obvious to most, but it wasn't to me, so hopefully this will help others avoid banging their heads the same places I banged mine.

3. Following question 1, so everyone (mostly) has (at least) one flavor of lisp on their machine in emacs-lisp. It's free, it runs on most platforms and seems pretty ubiquitous. Yet earlier I complained about the lack of a good free lisp implementation. What's up with emacs-lisp? Why is it unsatisfactory as a general purpose lisp? Why doesn't emacs use a decent version of common-lisp as its language?

Ok, emacs-lisp blows for lots of reasons. Primarily because it predates common-lisp and doesn't do all the things we know and love and expect our lisp implementation to do. -- Cyrus Harmon

4. So how the heck do you get asdf to, when defining a system, load another system? I want to be able to say that module foo requires module bar. But when I do it seems I have to explicitly say which :components in bar I need. I don't want to have to do that and want to be able to just depend on the whole system.

You can add a ":depends-on" argument to the system, such as: -

-(defsystem :foobar
-	:name "A sample"
-	:depends-on (aserve))
-

Cool! That coupled with:

-(setf asdf:*central-registry*
-  '(*default-pathname-defaults*
-    #p"matrix/"
-    #p"tiff/")
-)
-

is exactly what I needed! -

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/D.html b/clones/lisp/www.cliki.net/D.html deleted file mode 100644 index cb9fcbef..00000000 --- a/clones/lisp/www.cliki.net/D.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: D - - - - - - - -
D
The D Common Lisp library exists to enable using doubly-linked lists in a program using a style which resembles singly-linked lists as closely as reasonable. The fundamental unit of this library is CONS, containing a CBR, CAR, and CDR; this scheme very pleasantly uses the first four letters of the alphabet, and CBR can be thought of as having a backwards mnemonic.

Here is the page dedicated to this program. -


-library data structure AGPL
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/DBC.html b/clones/lisp/www.cliki.net/DBC.html deleted file mode 100644 index 989608cb..00000000 --- a/clones/lisp/www.cliki.net/DBC.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: DBC - - - - - - - -
DBC
DBC is a library for doing Design by contract ala the Eiffel programming language in Common Lisp.

License: public domain

Homepage: http://www.gauss.muc.de/tools/dbc/dbc-intro.html


-language extension
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/DECIMAL-NUMBER.html b/clones/lisp/www.cliki.net/DECIMAL-NUMBER.html deleted file mode 100644 index 23e69b9d..00000000 --- a/clones/lisp/www.cliki.net/DECIMAL-NUMBER.html +++ /dev/null @@ -1,76 +0,0 @@ - - - - - CLiki: DECIMAL-NUMBER - - - - - - - -
DECIMAL-NUMBER
This is one of the hypothetical Common Lisp Utilities. (See also Decimals and wu-decimal.)

TRT = implement General Decimal Arithmetic spec

temporary hack ...

(use-package "SPLIT-SEQUENCE") - -(defun constituentp (char &optional (rt *readtable*)) - #+cmu19 - (lisp::constituentp char rt)) - -(defun read-string-while (test &optional (stream *standard-input*) (eof-value nil) (recursive-p nil)) - (coerce (loop as x = (peek-char nil stream nil eof-value recursive-p) - while (and (not (equal x eof-value)) (funcall test x)) - collect (read-char stream nil eof-value recursive-p)) - 'string)) - -(defun decimal-reader (s c n) - (declare (ignore c n)) - (parse-decimal (read-string-while #'constituentp s nil t))) - -(defun parse-decimal (str) - (let* ((parts (split-sequence #\. str)) - (a (car parts)) - (b (cadr parts)) - (a1 (parse-integer a)) - (b1 (or (parse-integer (or b "0") :junk-allowed t) 0))) - (+ a1 (/ b1 (expt 10 (length b)))))) - -(defun use-decimal () - (set-dispatch-macro-character #\# #\D #'decimal-reader *readtable*))
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/DEFINER.html b/clones/lisp/www.cliki.net/DEFINER.html deleted file mode 100644 index 2e444a70..00000000 --- a/clones/lisp/www.cliki.net/DEFINER.html +++ /dev/null @@ -1,59 +0,0 @@ - - - - - CLiki: DEFINER - - - - - - - -
DEFINER
DEFINER is a small hack which demonstrates the power of CL macro facilities.

Homepage: https://common-lisp.net/project/definer/

Essentially it allows for a (let's say it!) Pythonesque, or better, a Dylan-like syntax for various definition forms. E.g.

    -
  • (def var foo 42)

  • -
  • (def class panda (animal))

  • -
  • (def struct tree-node content left right)

  • -
  • (def method bar ((x string)) (print x))

  • -
  • (def method bar :after ((x string)) (print "Just printed a string!")) -
  • -


-convenience library
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/DEFLATE.html b/clones/lisp/www.cliki.net/DEFLATE.html deleted file mode 100644 index 618fc06f..00000000 --- a/clones/lisp/www.cliki.net/DEFLATE.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: deflate - - - - - - - -
deflate
Deflate by Pierre Mai is a Common Lisp implementation of Deflate (RFC 1951) decompression, with optional support for ZLIB-style (RFC 1950) and gzip-style (RFC 1952) wrappers of deflate streams. It currently does not handle compression. Deflate has no dependencies on other libraries. Deflate is, at present, the decompression library used by Quicklisp.

Home page: https://pmsf.eu/resources/lisp/Deflate.html

Repository: https://github.com/pmai/Deflate

License: MIT/X11

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/DEFLEXER.html b/clones/lisp/www.cliki.net/DEFLEXER.html deleted file mode 100644 index 1eeed2be..00000000 --- a/clones/lisp/www.cliki.net/DEFLEXER.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: DEFLEXER - - - - - - - -
DEFLEXER
The LEXER package implements a lexical-analyzer-generator called DEFLEXER, which is built on top of both REGEX and CLAWK.

Homepage: https://github.com/Munksgaard/lispbuilder/tree/master/lispbuilder-lexer

License: BSD 3-Clause

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/DEXADOR.html b/clones/lisp/www.cliki.net/DEXADOR.html deleted file mode 100644 index 0a8246fb..00000000 --- a/clones/lisp/www.cliki.net/DEXADOR.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Dexador - - - - - - - -
Dexador
Dexador is a high-performance HTTP client library with neat APIs and connection-pooling.

https://github.com/fukamachi/dexador

License: MIT

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/DFSG.html b/clones/lisp/www.cliki.net/DFSG.html deleted file mode 100644 index 5cdb1c94..00000000 --- a/clones/lisp/www.cliki.net/DFSG.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: DFSG - - - - - - - -
DFSG
The DFSG, or Debian Free Software Guidelines, are a set of criteria that software Licenses must comply with to form part of the Debian system. They -have since been adopted with minor changes to form the Open Source Definition v1.9 at the Open Source Initiative.

CLiki is not part of the Debian project, but the DFSG is a convenient -definition of what we mean by `free', so we have adopted these guidelines as criteria for software to be listed here.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/DOM.html b/clones/lisp/www.cliki.net/DOM.html deleted file mode 100644 index 3c4655fe..00000000 --- a/clones/lisp/www.cliki.net/DOM.html +++ /dev/null @@ -1,68 +0,0 @@ - - - - - CLiki: DOM - - - - - - - -
DOM
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/DRAKMA.html b/clones/lisp/www.cliki.net/DRAKMA.html deleted file mode 100644 index 782e23db..00000000 --- a/clones/lisp/www.cliki.net/DRAKMA.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: Drakma - - - - - - - -
Drakma
Drakma is a fully-featured Common Lisp HTTP client library that knows how to handle HTTP/1.1 -chunking, persistent connections, re-usable sockets, SSL, continuable -uploads, cookies, and other things.

It was developed on LispWorks, but can be used with several other Common Lisp implementations as well.

It's written by Edi Weitz and can be found at http://weitz.de/drakma/.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/DTP Prover.html b/clones/lisp/www.cliki.net/DTP Prover.html deleted file mode 100644 index 1a55857d..00000000 --- a/clones/lisp/www.cliki.net/DTP Prover.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: DTP Prover - - - - - - - -
DTP Prover
DTP (Don's Theorem Prover) is "a sound and complete inference engine -for first-order predicate calculus. It specializes in domain-independent control of inference."

The source and documentation for DTP is available here: http://www.cs.cmu.edu/afs/cs.cmu.edu/project/ai-repository/ai/areas/reasonng/atp/systems/dtp/0.html


-Application, Theorem Provers, CMU AI Repository
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Dan Moniz.html b/clones/lisp/www.cliki.net/Dan Moniz.html deleted file mode 100644 index 8f4feac7..00000000 --- a/clones/lisp/www.cliki.net/Dan Moniz.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Dan Moniz - - - - - - - -
Dan Moniz
Dan Moniz is a Person who really likes Lisp and sometimes visits and more rarely sometimes edits pages on CLiki.
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/DanMuller.html b/clones/lisp/www.cliki.net/DanMuller.html deleted file mode 100644 index 71b9eb43..00000000 --- a/clones/lisp/www.cliki.net/DanMuller.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: DanMuller - - - - - - - - -
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Dandelion.html b/clones/lisp/www.cliki.net/Dandelion.html deleted file mode 100644 index c411d37f..00000000 --- a/clones/lisp/www.cliki.net/Dandelion.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Dandelion - - - - - - - -
Dandelion
Dandelion is a plugin for Eclipse that supports Lisp programming in the Eclipse platform. It comes with two ready to use Lisp environments: SBCL and CLISP. It is possible to connect other environments.

Repository: https://github.com/Ragnaroek/dandelion

License: GPL


-Topics: IDE development
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Daniel Barlow.html b/clones/lisp/www.cliki.net/Daniel Barlow.html deleted file mode 100644 index cfb72e63..00000000 --- a/clones/lisp/www.cliki.net/Daniel Barlow.html +++ /dev/null @@ -1,72 +0,0 @@ - - - - - CLiki: Daniel Barlow - - - - - - - -
Daniel Barlow
Daniel Barlow is a Person, using the term in a fairly broad sense. He prefers Linux (but will settle for GNU/Linux), Common Lisp, and SBCL. He was originally culpable for much of this CLiki thing, but thankfully it snowballed and these days he's not involved with it except as a user.

Past interests have included: -

    -
  • SBCL: Threading and AMD64 ports. Previously also Alpha and PPC ports, the contrib system, and random other stuff mostly pertaining to low-level and backend stuff. See the SBCL Internals CLiki site -
  • -
  • Araneida: the web server this all runs on -
  • -
  • asdf: A System Definition Facility -
  • -
  • detachtty: run persistent CL (or any other) processes in a detachable way, reattach to them using ssh across the network -
  • -

He has a web site/blog thing at www.coruskate.net. Although having been pretty much uninvolved with Lisp for the last few years (this comment dated June 2007) he recently got a job that uses it so is around again a little more these days.

-

Conferences etc

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Daniel Kochmański.html b/clones/lisp/www.cliki.net/Daniel Kochmański.html deleted file mode 100644 index bd0b1522..00000000 --- a/clones/lisp/www.cliki.net/Daniel Kochmański.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Daniel Kochmański - - - - - - - -
Daniel Kochmański
My name is Daniel Kochmański. I'm the current maintainer of the ECL, cl-bench, metering and probably some other applications. I try to make a living of Common Lisp. I often contribute to other libraries to increase the support for ECL and to tweak bugs which bug me at my own projects.

I've recently launched a company TurtleWare, which is open for the Common Lisp consultancy (hello[at]turtleware[dot]eu). -person

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Daniel Lowe.html b/clones/lisp/www.cliki.net/Daniel Lowe.html deleted file mode 100644 index ca6131f8..00000000 --- a/clones/lisp/www.cliki.net/Daniel Lowe.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Daniel Lowe - - - - - - - -
Daniel Lowe
Daniel Lowe has been tentatively classified as a Person living in Waltham, MA. He has been working with Common Lisp since 2001, and since then his pet projects have been written almost entirely in lisp, including the local-time library. He now works as a developer at Google, and occasionally hangs out on #lisp as dlowe.

He has a GPG public key that he uses to sign emails and ASDF projects.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Daniel Weinreb.html b/clones/lisp/www.cliki.net/Daniel Weinreb.html deleted file mode 100644 index 1deda6aa..00000000 --- a/clones/lisp/www.cliki.net/Daniel Weinreb.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Daniel Weinreb - - - - - - - -
Daniel Weinreb
One of the co-authors of Common Lisp the Language.

Person

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Darian Lanx.html b/clones/lisp/www.cliki.net/Darian Lanx.html deleted file mode 100644 index 82709d39..00000000 --- a/clones/lisp/www.cliki.net/Darian Lanx.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Darian Lanx - - - - - - - -
Darian Lanx
Just a little note about a as,C hacker that learns LISP now.

person

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Darwin.html b/clones/lisp/www.cliki.net/Darwin.html deleted file mode 100644 index 30a88449..00000000 --- a/clones/lisp/www.cliki.net/Darwin.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Darwin - - - - - - - -
Darwin
The open source part of MacOS X. Darwin includes the UNIX kernel and BSD-based user-land command line utilities.

As Darwin is the bottom-most layer of MacOS X, any Common Lisp implementation that works there will work with Darwin, with the exception of any that require Apple's proprietary Aqua GUI, of which there are none. LispWorks, for instance, can use Aqua, but will work without it, from the command line.

Darwin even works on the Intel x86 (PC)!

Darwin can be downloaded from opensource.apple.com.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Data Structure.html b/clones/lisp/www.cliki.net/Data Structure.html deleted file mode 100644 index 1f76c87b..00000000 --- a/clones/lisp/www.cliki.net/Data Structure.html +++ /dev/null @@ -1,289 +0,0 @@ - - - - - CLiki: data structure - - - - - - - -
data structure
Various data structures.

NB: for a good library of general purpose data-structures, I (actually Fare Rideau) recommend -cl-containers if you want stateful (imperative) variants, or lisp-interface-library if you want pure (functional) variants. If you implement more data-structures, we recommend you extend their respective interfaces. For more specialized data-structures, read on.

    -
  • -access - - Access is a library to ease getting and setting values in nested dictionary-like objects by providing a unified interface to hash-tables, clos-objects, plists and alists -
  • -
  • -array-operations - - Provides commonly used operations on arrays -
  • -
  • -avl-tree - - AVL (Adelson-Velsky-Landis) Tree is a self-balancing binary search tree implementation in Common Lisp -
  • -
  • -B-Tries - - An implementation of the data structure described in the paper "B-tries for disk-based string management" (PDF) -
  • -
  • -binomial-heap - - Binomial-heap is an implementation of the binomial heap data structure -
  • -
  • -bk-tree - - This page is moved to https://github.com/vy/bk-tree -
  • -
  • -bknr-skip-list - - An implementation of skip lists for bknr -
  • -
  • -BST - - BST is a Common Lisp library for working with binary search trees that can contain any kind of values -
  • -
  • -cacle - - cacle implements an extensible cache data structure -
  • -
  • -cl-bloom - - Bloom filters in Common Lisp with efficient hashing -
  • -
  • -cl-btree - - B-Tree implemented in Common Lisp -
  • -
  • -cl-cache-tables - - cl-cache-tables is a wrapper around native hash-tables to facilitate in-process caching of common lisp data structures -
  • -
  • -cl-competitive - - A code collection maintained mainly for competitive programming, and partly for just understanding algorithms -
  • -
  • -cl-containers - - cl-containers adds binary search trees, red-black trees, sparse arrays, and other useful containers -
  • -
  • -cl-custom-hash-table - - cl-custom-hash-table extends the hash table data structure by allowing the use of arbitrary TEST/HASH functions, in addition to the TEST functions allowed by the standard (EQ, EQL, EQUAL and EQUALP) -
  • -
  • -cl-dawg - - CL-DAWG is a DoubleArray/DAWG implementation -
  • -
  • -cl-heap - - CL-HEAP implements the binary heap, Fibonacci heap, and priority queue data structures -
  • -
  • -cl-slice - - This library was unmaintained for several years -
  • -
  • -cl-speedy-queue - - cl-speedy-queue is a portable, non-consing, optimized queue implementation -
  • -
  • -cl-string-match - - Provides substring (subsequence) search and text processing algorithms implementations including regular expression, prefix/suffix tree data structures, etc -
  • -
  • -cl-treemaps - - cl-treemaps is a lightweight and fast implementation of binary trees -
  • -
  • -colliflower - - Colliflower is a library for abstaractions around data structures -
  • -
  • -D - - The D Common Lisp library exists to enable using doubly-linked lists in a program using a style which resembles singly-linked lists as closely as reasonable -
  • -
  • -data-table - - data-table is a library providing a data structure that has rows of data and column names and types (ie database results) -
  • -
  • -dawg - - A DoubleArray / DAWG implementation -
  • -
  • -dict - - DICT is a hash table implementation -
  • -
  • -dlist - - dlist is a Common Lisp library that implements the doubly-linked list -
  • -
  • -fare-utils - - fare-utils is a collection of utilities from Fare Rideau -
  • -
  • -fern - - An efficient, consp, self-adjusting key-value trie-index abstraction for uuid namespaces -
  • -
  • -Flexichain - - Flexichain is an API for editable sequences -
  • -
  • -folio2 - - A collection of small libraries: functional idioms and data structures in Common Lisp and a common set of APIs for them -
  • -
  • -FSet - - FSet is a functional set-theoretic collections data structure library by Scott L -
  • -
  • -Funds - - Funds provides portable, purely functional data structures written in Common Lisp -
  • -
  • -genhash - - NET HEXAPODIA HASHTABLES is a data structure library for generic hash tables -
  • -
  • -heap - - Simple implementation of a binary heap for Common Lisp -
  • -
  • -Heresy - - Heresy is an implementation of the lazy list data structure -
  • -
  • -hh-redblack - - hh-redblack provides in-memory and disk-based red-black trees -
  • -
  • -jarw-dictionary - - jarw-dictionary is a generic map/dictionary interface with implementations using internal hash-tables, property lists, files and directories including in-memory caching -
  • -
  • -jpl-queues - - jpl-queues is a library implementing a few different kinds of queue data structures -
  • -
  • -kdtree-jk - - KDTREE-JK is a package for building efficent KD-Trees in Common Lisp -
  • -
  • -lazy - - This is a simple lazy form evaluation package for Common Lisp -
  • -
  • -lisp-interface-library - - lisp-interface-library is a collection of pure and stateful data structures in interface-passing style from Fare Rideau -
  • -
  • -minheap - - minheap provides several heap data structures with meldable min-heap and priority queue functionality -
  • -
  • -nary-tree - - The n-ary-tree package implements an automatically rebalancing B-tree data structure which supports n >= 5 items in any mixture of types per node -
  • -
  • -patty - - Patty is a library that facilitates working with functional data structures on top of CLOS -
  • -
  • -pipes - - pipes implements the input stream (lazy list) data structure -
  • -
  • -queues - - A Common Lisp queue library with features such as non-consing thread safe queues and fibonacci priority queues -
  • -
  • -quick-arrays - - quick-arrays is a Debian package of the Quick Arrays concept -
  • -
  • -Red-Black-trees - - Red-Black-trees is an implementation of red-black-trees (a data structure) -
  • -
  • -ropes - - ropes is an implementation of the rope data structure, an alternative to strings with more efficient concatenation -
  • -
  • -SEMI-PRECIOUS - - SEMI-PRECIOUS is a library of algorithms/data structures -
  • -
  • -Series - - A library providing data structure that combines aspects of sequences, (lazy) streams and loops, using a technique known as “fusion” or “deforestation” -
  • -
  • -spatial-trees - - spatial-trees is a set of dynamic index data structures for spatially-extended data -
  • -
  • -Sycamore - - Sycamore implements several purely functional data structures in Common Lisp -
  • -
  • -symbol-namespaces - - symbol-namespaces defines a new kind of package that's named by a symbol rather than a string -
  • -
  • -TREES - - TREES provides several binary tree data structures exposed through a uniform CLOS interface -
  • -
  • -versioned-objects - - For any Common Lisp mutable object, allows to store versioning tree of all of the edits connecting its various versions -
  • -
  • -vp-trees - - vp-trees is an implementation of the vantage point tree data structure in Common Lisp -
  • -
  • -X.FDATATYPES - - XFDATATYPES implements 3 functional data structures: -
  • -
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Data formats.html b/clones/lisp/www.cliki.net/Data formats.html deleted file mode 100644 index cc33b97f..00000000 --- a/clones/lisp/www.cliki.net/Data formats.html +++ /dev/null @@ -1,535 +0,0 @@ - - - - - CLiki: Data formats - - - - - - - -
Data formats
Anything to do with various file and data formats.

File formats: (main topic: file format) -

Image file formats: (main topic: image file) -

Data formats: (main topic: data format) -

Wire formats: (main topic: wire format, see also networking) -

    -
  • -ASN.1 - - Abstract Syntax Notation #1, the Common Lisp implementation and language mapping -
  • -
  • -cl-marshal - - Simple and fast marshalling of all kinds of Lisp data structures -
  • -
  • -cl-protobufs - - CL-PROTOBUFS is a library to use Google Protocol Buffers in Common Lisp, originally written by Scott McKay at ITA by Google -
  • -
  • -cl-stomp - - cl-stomp is an implementation of STOMP (Streaming Text Orientated Messaging Protocol) -
  • -
  • -de.setf.thrift - - de.setf.thrift is a binding for the Apache Thrift framework for scalable cross-language services development -
  • -
  • -S-PROTOBUF - - S-PROTOBUF is a library to encode data in the Google Protocol Buffers wire format -
  • -
  • -Swank - - Swank is distributed as part of SLIME -
  • -
  • -userial - - A Common Lisp library for serializing to binary buffers -
  • -

Binary formats: (main topic: binary format) -

    -
  • -Binary-types - - Binary-types is a library for accessing binary format files with fixed bit-length code-words -
  • -
  • -binascii - - binascii is a binary format library for converting binary data to ASCII -
  • -
  • -bintype - - BINTYPE is a specification-driven parser generator for binary formats -
  • -
  • -cl-binary-file - - The binary file package contains utilities to read and write binary files -
  • -
  • -cl-pack - - CL-PACK supplies Perl/PHP/Ruby/Python compatible pack() and unpack() functions to allow easy use of binary format protocols and files with the above mentioned languages and C -
  • -
  • -cl-rfc4251 - - cl-rfc4251 is a Common Lisp system, which provides support for parsing RFC 4251 encoded binary data, as described in the Data Type Representations Used in the SSH Protocols section of the document -
  • -
  • -cl-wbxml - - CL-WBXML reads and writes WAP Binary XML -
  • -
  • -de.setf.utility - - de setf utility is a collection of Common Lisp utilities functions and several purpose-specific libraries -
  • -
  • -dso-binary-class - - dso-binary-class allows you to declare classes with a specific binary disk layout, and then read and write instances easily -
  • -
  • -fast-io - - Fast-io is about improving performance to octet-vectors and octet streams (though primarily the former, while wrapping the latter) -
  • -
  • -float-features - - float-features is a portability library for IEEE float features that are not covered by the CL standard -
  • -
  • -id3v2 - - Parser for the ID3v2 binary format -
  • -
  • -IE3FP - - IE3FP is a library to code and decode floating point numbers in IEEE 754 binary format -
  • -
  • -ieee-floats - - IEEE-Floats provides a way of converting values of type float and double-float to and from their binary format representation as defined by IEEE 754 (which is commonly used by processors and network protocols) -
  • -
  • -LISP-BINARY - - A library to easily read and write complex binary formats -
  • -
  • -nibbles - - Nibbles is a library for accessing octet-addressed blocks of data -
  • -
  • -odd-streams - - ODD-STREAMS implements binary streams with "odd" byte sizes -
  • -
  • -packer - - The PACKER binary format library implements a "little language" for C-style structures, along the lines of Perl's pack() or Python's struct module -
  • -
  • -stl - - Read binary triangle data from STL files -
  • -
  • -stl-io - - The stl-io library deals with reading and writing binary STL files -
  • -
  • -swap-bytes - - swap-bytes is a library for efficient endianness conversion in SBCL and CCL -
  • -
  • -trivial-bit-streams - - Trivial-bit-streams implements flexible buffered bit streams -
  • -

Compression and archives: (main topic: compression) -

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Data structure.html b/clones/lisp/www.cliki.net/Data structure.html deleted file mode 100644 index 1f76c87b..00000000 --- a/clones/lisp/www.cliki.net/Data structure.html +++ /dev/null @@ -1,289 +0,0 @@ - - - - - CLiki: data structure - - - - - - - -
data structure
Various data structures.

NB: for a good library of general purpose data-structures, I (actually Fare Rideau) recommend -cl-containers if you want stateful (imperative) variants, or lisp-interface-library if you want pure (functional) variants. If you implement more data-structures, we recommend you extend their respective interfaces. For more specialized data-structures, read on.

    -
  • -access - - Access is a library to ease getting and setting values in nested dictionary-like objects by providing a unified interface to hash-tables, clos-objects, plists and alists -
  • -
  • -array-operations - - Provides commonly used operations on arrays -
  • -
  • -avl-tree - - AVL (Adelson-Velsky-Landis) Tree is a self-balancing binary search tree implementation in Common Lisp -
  • -
  • -B-Tries - - An implementation of the data structure described in the paper "B-tries for disk-based string management" (PDF) -
  • -
  • -binomial-heap - - Binomial-heap is an implementation of the binomial heap data structure -
  • -
  • -bk-tree - - This page is moved to https://github.com/vy/bk-tree -
  • -
  • -bknr-skip-list - - An implementation of skip lists for bknr -
  • -
  • -BST - - BST is a Common Lisp library for working with binary search trees that can contain any kind of values -
  • -
  • -cacle - - cacle implements an extensible cache data structure -
  • -
  • -cl-bloom - - Bloom filters in Common Lisp with efficient hashing -
  • -
  • -cl-btree - - B-Tree implemented in Common Lisp -
  • -
  • -cl-cache-tables - - cl-cache-tables is a wrapper around native hash-tables to facilitate in-process caching of common lisp data structures -
  • -
  • -cl-competitive - - A code collection maintained mainly for competitive programming, and partly for just understanding algorithms -
  • -
  • -cl-containers - - cl-containers adds binary search trees, red-black trees, sparse arrays, and other useful containers -
  • -
  • -cl-custom-hash-table - - cl-custom-hash-table extends the hash table data structure by allowing the use of arbitrary TEST/HASH functions, in addition to the TEST functions allowed by the standard (EQ, EQL, EQUAL and EQUALP) -
  • -
  • -cl-dawg - - CL-DAWG is a DoubleArray/DAWG implementation -
  • -
  • -cl-heap - - CL-HEAP implements the binary heap, Fibonacci heap, and priority queue data structures -
  • -
  • -cl-slice - - This library was unmaintained for several years -
  • -
  • -cl-speedy-queue - - cl-speedy-queue is a portable, non-consing, optimized queue implementation -
  • -
  • -cl-string-match - - Provides substring (subsequence) search and text processing algorithms implementations including regular expression, prefix/suffix tree data structures, etc -
  • -
  • -cl-treemaps - - cl-treemaps is a lightweight and fast implementation of binary trees -
  • -
  • -colliflower - - Colliflower is a library for abstaractions around data structures -
  • -
  • -D - - The D Common Lisp library exists to enable using doubly-linked lists in a program using a style which resembles singly-linked lists as closely as reasonable -
  • -
  • -data-table - - data-table is a library providing a data structure that has rows of data and column names and types (ie database results) -
  • -
  • -dawg - - A DoubleArray / DAWG implementation -
  • -
  • -dict - - DICT is a hash table implementation -
  • -
  • -dlist - - dlist is a Common Lisp library that implements the doubly-linked list -
  • -
  • -fare-utils - - fare-utils is a collection of utilities from Fare Rideau -
  • -
  • -fern - - An efficient, consp, self-adjusting key-value trie-index abstraction for uuid namespaces -
  • -
  • -Flexichain - - Flexichain is an API for editable sequences -
  • -
  • -folio2 - - A collection of small libraries: functional idioms and data structures in Common Lisp and a common set of APIs for them -
  • -
  • -FSet - - FSet is a functional set-theoretic collections data structure library by Scott L -
  • -
  • -Funds - - Funds provides portable, purely functional data structures written in Common Lisp -
  • -
  • -genhash - - NET HEXAPODIA HASHTABLES is a data structure library for generic hash tables -
  • -
  • -heap - - Simple implementation of a binary heap for Common Lisp -
  • -
  • -Heresy - - Heresy is an implementation of the lazy list data structure -
  • -
  • -hh-redblack - - hh-redblack provides in-memory and disk-based red-black trees -
  • -
  • -jarw-dictionary - - jarw-dictionary is a generic map/dictionary interface with implementations using internal hash-tables, property lists, files and directories including in-memory caching -
  • -
  • -jpl-queues - - jpl-queues is a library implementing a few different kinds of queue data structures -
  • -
  • -kdtree-jk - - KDTREE-JK is a package for building efficent KD-Trees in Common Lisp -
  • -
  • -lazy - - This is a simple lazy form evaluation package for Common Lisp -
  • -
  • -lisp-interface-library - - lisp-interface-library is a collection of pure and stateful data structures in interface-passing style from Fare Rideau -
  • -
  • -minheap - - minheap provides several heap data structures with meldable min-heap and priority queue functionality -
  • -
  • -nary-tree - - The n-ary-tree package implements an automatically rebalancing B-tree data structure which supports n >= 5 items in any mixture of types per node -
  • -
  • -patty - - Patty is a library that facilitates working with functional data structures on top of CLOS -
  • -
  • -pipes - - pipes implements the input stream (lazy list) data structure -
  • -
  • -queues - - A Common Lisp queue library with features such as non-consing thread safe queues and fibonacci priority queues -
  • -
  • -quick-arrays - - quick-arrays is a Debian package of the Quick Arrays concept -
  • -
  • -Red-Black-trees - - Red-Black-trees is an implementation of red-black-trees (a data structure) -
  • -
  • -ropes - - ropes is an implementation of the rope data structure, an alternative to strings with more efficient concatenation -
  • -
  • -SEMI-PRECIOUS - - SEMI-PRECIOUS is a library of algorithms/data structures -
  • -
  • -Series - - A library providing data structure that combines aspects of sequences, (lazy) streams and loops, using a technique known as “fusion” or “deforestation” -
  • -
  • -spatial-trees - - spatial-trees is a set of dynamic index data structures for spatially-extended data -
  • -
  • -Sycamore - - Sycamore implements several purely functional data structures in Common Lisp -
  • -
  • -symbol-namespaces - - symbol-namespaces defines a new kind of package that's named by a symbol rather than a string -
  • -
  • -TREES - - TREES provides several binary tree data structures exposed through a uniform CLOS interface -
  • -
  • -versioned-objects - - For any Common Lisp mutable object, allows to store versioning tree of all of the edits connecting its various versions -
  • -
  • -vp-trees - - vp-trees is an implementation of the vantage point tree data structure in Common Lisp -
  • -
  • -X.FDATATYPES - - XFDATATYPES implements 3 functional data structures: -
  • -
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/DataMiningTools Lisp slides.html b/clones/lisp/www.cliki.net/DataMiningTools Lisp slides.html deleted file mode 100644 index 0ba34ec4..00000000 --- a/clones/lisp/www.cliki.net/DataMiningTools Lisp slides.html +++ /dev/null @@ -1,95 +0,0 @@ - - - - - CLiki: DataMiningTools Lisp slides - - - - - - - -
DataMiningTools Lisp slides
DataMiningTools is an online education company that has produced a set of freely-viewable introductory slides on Common Lisp:

-

Online Tutorial

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Database.html b/clones/lisp/www.cliki.net/Database.html deleted file mode 100644 index 15788820..00000000 --- a/clones/lisp/www.cliki.net/Database.html +++ /dev/null @@ -1,369 +0,0 @@ - - - - - CLiki: Database - - - - - - - -
Database
Database-related software; RDBMS glue, OO databases, etc. Anything that helps manage state across multiple Lisp sessions is eligible.

Relational and SQL database projects: (main topic: SQL) -

ORM libraries: (main topic: ORM) -

    -
  • -cl-perec - - cl-perec is a CLOS ORM based on cl-rdbms -
  • -
  • -CLSQL - - CLSQL is a Database interface that can access a number of different SQL database engines -
  • -
  • -CLSQL-ORM - - CLSQL-ORM is an library to generate clsql view-classes from existing databases, by introspecting on the "information_schema" of the running database -
  • -
  • -Mito - - An ORM for Common Lisp with migrations, relationships and PostgreSQL support -
  • -
  • -Submarine - - Submarine is a Common Lisp library that's somewhere between a PostgreSQL library and an object persistence system -
  • -
  • -YstokSQL - - YstokSQL is a Common Lisp library for interfacing relational Database via ODBC -
  • -

CLOS OO databases: (main topic: ObjectStore) -

Structured storage/NOSQL projects: (main topic: StructuredStorage) -

Simple serialization: (main topic: serialization) -

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Dataflow.html b/clones/lisp/www.cliki.net/Dataflow.html deleted file mode 100644 index 342f13fd..00000000 --- a/clones/lisp/www.cliki.net/Dataflow.html +++ /dev/null @@ -1,72 +0,0 @@ - - - - - CLiki: Dataflow - - - - - - - -
Dataflow
    -
  • -cells - - cells is a dataflow extension to CLOS (think spreadsheet-type programming, with slots being spreadsheet cells) by Kenny Tilton -
  • -
  • -cl-flow - - Asynchronous non-blocking concurrency in Common Lisp, similar to what green threads are for -
  • -
  • -CL-REACTIVE - - Reactive programming at the variable/function level for Common Lisp -
  • -
  • -computed-class - - A class metaobject for computed slot values and more -
  • -
  • -gecol - - gecol provides bindings to GECODE in order to enjoy constraint programming in Lisp -
  • -
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Date-Calc.html b/clones/lisp/www.cliki.net/Date-Calc.html deleted file mode 100644 index 028b0c23..00000000 --- a/clones/lisp/www.cliki.net/Date-Calc.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Date-Calc - - - - - - - -
Date-Calc
Date-Calc aims to be a port of the Perl Date::Calc time-handling library.

Date-Calc Ver 0.2, December 2005

The package has been succesfully tested with CLISP, SBCL and CMUCL.

A test script can be used to verify some functions against the Perl Date::Calc module. Therefore when you want to use it please install this module prior to testing. The Tester works only with SBCL and CMUCL.

-The package and Tester are available for download.

PerlDoc

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Datoura.html b/clones/lisp/www.cliki.net/Datoura.html deleted file mode 100644 index c1cbd0a1..00000000 --- a/clones/lisp/www.cliki.net/Datoura.html +++ /dev/null @@ -1,57 +0,0 @@ - - - - - CLiki: Datoura - - - - - - - -
Datoura
The "Data Touring Machine" is a small, simple and powerful data analysis and plotting application, that generates postscript output. It is distributed with the GPL. Datoura handles data table loading and manipulation (csv-import, subsetting, grouping, -statistics). The graphics and plot routines handle sequences as input data, -so you don't need to load your data into any custom data structures to use -them. Datoura can handle plots of ~1 million data points fairly quickly,

The command style is borrowed from Mathematica and postscript with a set of "graphics primitives" such as points, lines, circles, polygons and "postscript-directives" which pass commands through directly to the postscript interpreter.

Plots such as histogram, scatter-plot, profile, function-plot and parametric-plot are generated from "graphics primitives". Plots can be superimposed with proper axis-handling.

Datoura was written in Clisp and was tested in GCL. It should work in any common lisp implementation.

Written by Steve Eichblatt. See the new -Datoura Homepage for screenshots, documentation and source code.
-Note that while I am hosting the Datoura page, I do not have much time to -work on it.-- Roland Kaufmann

An asdf-installable version can be found here.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Dave Cooper.html b/clones/lisp/www.cliki.net/Dave Cooper.html deleted file mode 100644 index 3e50d32a..00000000 --- a/clones/lisp/www.cliki.net/Dave Cooper.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Dave Cooper - - - - - - - -
Dave Cooper
I work for a company called Genworks, and use Common Lisp to develop our product which is called General-purpose Declarative Language (GDL).

person

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Dave Pearson.html b/clones/lisp/www.cliki.net/Dave Pearson.html deleted file mode 100644 index a05a9fb2..00000000 --- a/clones/lisp/www.cliki.net/Dave Pearson.html +++ /dev/null @@ -1,70 +0,0 @@ - - - - - CLiki: Dave Pearson - - - - - - - -
Dave Pearson
Dave Pearson is a Person who likes to knock out the odd bit of -free software from time to time. He's quite fond of Common Lisp.

http://www.davep.org/ is his home page.

Some of the CL code he's made available is:

-_(org-davep-nntp)     - NNTP client.
-_(org-davep-dict)     - A dictd (RFC2229) client.
-_(org-davep-dictrepl) - A dictd (RFC2229) client repl.
-_(org-davep-cldict)   - A dictd (RFC2229) client for use with *(McCLIM).
-_(org-davep-newsrc)   - ~/.newsrc reader.
-_(slashdot.lisp)      - slashdot headline grabber (reads <A HREF="http://slashdot.org/slashdot.xml">slashdot.xml</a>).
-_(slashcache.lisp)    - slashdot headline cache (useful for dialup users).
-


I, Dave Pearson, do solemnly offer these my responses to The Road to Lisp Survey:

When did you first try Lisp seriously?

Assuming you mean Common Lisp I think it was sometime around 1998 or 1999, although I'd been dabbling -with the language for a while before then.

Which Lisp did you try?

Common Lisp. Assuming you meant that anyway and what you're really asking -is "which implementation of Common Lisp did you try" the answer would be Allegro -and clisp.

What led you to try Lisp?

A desire to play with different languages. On top of that I was quite an avid -GNU emacs user and I'd started to dabble with elisp. Getting to know -elisp then lead me to playing with Common Lisp.

If you were trying Lisp out of unhappiness with another language, what was it and what did you not like about it, or what about Lisp were you hoping to find different?

If I knew what I was hoping to find that was different I probably wouldn't -have found it different, would I?

How far have you gotten in your study of Lisp? (I know, that is hard to measure)

I've got far enough to write some code that I'm happy to let the world see. -I'm not sure that's really a measure of anything but it's the best -measure I can think of.

What do you think of Lisp so far?

If I were dropped on a desert island and told that I could have only -one programming language to play with it would be Common Lisp.


-Switch Date 1990s RtL Language Curiosity RtL Emacs Elisp
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Dave Warner.html b/clones/lisp/www.cliki.net/Dave Warner.html deleted file mode 100644 index b6025baa..00000000 --- a/clones/lisp/www.cliki.net/Dave Warner.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Dave Warner - - - - - - - -
Dave Warner
Recovering Pythonista. Having now re-discovered Lisp (my initial encounter was the CP/M version of Franz Lisp running on an Apple ][e), I spend my free time reading On Lisp. -person
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/David A. Wheeler.html b/clones/lisp/www.cliki.net/David A. Wheeler.html deleted file mode 100644 index 1f60566f..00000000 --- a/clones/lisp/www.cliki.net/David A. Wheeler.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: David A. Wheeler - - - - - - - -
David A. Wheeler
David A. Wheeler is a Person who has been doing Lisp since the mid-1980s; you can blame him for the readable library.

You can see evidence of his insanity at: http://www.dwheeler.com.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/David Botton.html b/clones/lisp/www.cliki.net/David Botton.html deleted file mode 100644 index b6e3988b..00000000 --- a/clones/lisp/www.cliki.net/David Botton.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: David Botton - - - - - - - -
David Botton
David Botton is the Person that created CLOG
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/David Golden.html b/clones/lisp/www.cliki.net/David Golden.html deleted file mode 100644 index f06c6644..00000000 --- a/clones/lisp/www.cliki.net/David Golden.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: David Golden - - - - - - - -
David Golden
A Person.

A Lisp user.

A Homepage -

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/David Lindes.html b/clones/lisp/www.cliki.net/David Lindes.html deleted file mode 100644 index 8e30922f..00000000 --- a/clones/lisp/www.cliki.net/David Lindes.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: David Lindes - - - - - - - -
David Lindes
David Lindes is a Person who, as of 2012, is getting more and more into playing with Common Lisp. I'm also interested in participating in Community...

When not hacking on Lisp code, I also do a bit of photography, traveling, and a little bit of filmmaking.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/David Mullen.html b/clones/lisp/www.cliki.net/David Mullen.html deleted file mode 100644 index b7c62e38..00000000 --- a/clones/lisp/www.cliki.net/David Mullen.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: David Mullen - - - - - - - -
David Mullen
David Mullen, ostensibly a person, gravitated towards CL from low-level programming. He uses Clozure CL and has published source code.
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/David O'Toole.html b/clones/lisp/www.cliki.net/David O'Toole.html deleted file mode 100644 index 027758e5..00000000 --- a/clones/lisp/www.cliki.net/David O'Toole.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: David O'Toole - - - - - - - -
David O'Toole
I am a Person living in the northeastern United States. My favorite programming languages are Common Lisp and Emacs Lisp. I develop various puzzle hobby games with Common Lisp. See also Xelf
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/David Owen.html b/clones/lisp/www.cliki.net/David Owen.html deleted file mode 100644 index bc91060e..00000000 --- a/clones/lisp/www.cliki.net/David Owen.html +++ /dev/null @@ -1,62 +0,0 @@ - - - - - CLiki: David Owen - - - - - - - -
David Owen
David Owen is the person largely to blame for the following bits:

-
dso-binary-class
-
Uh...
-
dso-csv
-
A simple CSV parser
-
dso-lex
-
A simple lexer-generator
-
dso-parse
-
A PEG parser-generator
-
dso-util
-
Simple utilities
-
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/David Steuber.html b/clones/lisp/www.cliki.net/David Steuber.html deleted file mode 100644 index 1db70166..00000000 --- a/clones/lisp/www.cliki.net/David Steuber.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: David Steuber - - - - - - - -
David Steuber
David Steuber is a Person who tries to hack in Lisp with Carbon Emacs, OpenMCL, and SBCL.

He has a little website that he claims is not a blog here. He also has an e-mail address that is locatable by humans and far too many e-mail harvesters.


-Community -User of: OpenMCL SBCL Carbon Emacs Mac OS X Debian Linux
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/David_Douthitt.html b/clones/lisp/www.cliki.net/David_Douthitt.html deleted file mode 100644 index 048c0573..00000000 --- a/clones/lisp/www.cliki.net/David_Douthitt.html +++ /dev/null @@ -1,68 +0,0 @@ - - - - - CLiki: David_Douthitt - - - - - - - -
David_Douthitt
David Douthitt is a Person, and a UNIX system administrator.. His interests include:
    -
  • Computer languages, including: Ruby, FORTH, LISP, Smalltalk, C, Eiffel...
  • -
  • Foreign languages, including French, Spanish, and Russian...
  • -
  • UNIX security
  • -
  • Internetworking between UNIX and... that other OS.... any other OS...
  • -
  • UNIX and Linux
  • -
-I have the following experience: -
    -
  • Linux - since Linux 1.99
  • -
  • Eight plus years of UNIX - including HP-UX, Unixware, and BSD
  • -
  • Perl, Forth, ksh, C, and Ruby
  • -
  • UNIX Security tools - tripwire, samhain, nessus, portsentry
  • -
  • UNIX Monitoring tools - SEC, PCP, Nagios, Cacti
  • -
-I am certified LPIC Level 1, Linux+, and RHCT. - -Who am I really? I'm a conservative (plain) Mennonite, father to five - and available for hire.
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Debian Package.html b/clones/lisp/www.cliki.net/Debian Package.html deleted file mode 100644 index fa03fefb..00000000 --- a/clones/lisp/www.cliki.net/Debian Package.html +++ /dev/null @@ -1,88 +0,0 @@ - - - - - CLiki: Debian Package - - - - - - - -
Debian Package
Topic marker for Debian packages on CLiki.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Debian package.html b/clones/lisp/www.cliki.net/Debian package.html deleted file mode 100644 index fa03fefb..00000000 --- a/clones/lisp/www.cliki.net/Debian package.html +++ /dev/null @@ -1,88 +0,0 @@ - - - - - CLiki: Debian Package - - - - - - - -
Debian Package
Topic marker for Debian packages on CLiki.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Debian.html b/clones/lisp/www.cliki.net/Debian.html deleted file mode 100644 index 0347d8b7..00000000 --- a/clones/lisp/www.cliki.net/Debian.html +++ /dev/null @@ -1,177 +0,0 @@ - - - - - CLiki: Debian - - - - - - - -
Debian
Debian GNU/Linux is a non-commercial Linux-distribution which is very popular with developers, and has CMUCL packages which are frequently updated. All the software in -the main distribution (section) - of Debian is DFSG-compliant - they invented the guidelines, after all.

Quite a lot of CL software is in Debian, packaged using the common-lisp-controller system. Look for packages whose names start with cl-. There is the CL-Debian project, that provides information about Common Lisp packaging, various source packages in Darcs repositories and a mailing list.

Extra repositories

Backports has packages of recent Common Lisp libraries and implementations for Debian GNU/Linux Sarge on many architectures. Usage instructions can be found here.

Extra repositories also exist for Ubuntu releases, where the platform dependent packages are available for i386 only. The lines for your /etc/apt/source.list file look like this: For sarge add

deb http://people.debian.org/~pvaneynd/cl-sarge-packages ./
for ubuntu breezy add
deb http://people.debian.org/~pvaneynd/cl-breezy-packages ./

Lisp-related packages

Most Lisp programmers use the latest version of Debian called Sid or unstable. -This version of Debian contains:

Implementations

-

Software packages on CLiki

Other Software packages

Many of these are actually on CLiki, but miss the Debian package topic marker, which -would make them show up on the list above. Industrious souls are encouraged to add such -markers and delete the corresponding entry, if any, from this list.

Suggestions/Hints/etc for package creators

-
    -
  • Please use a package prefix that helps to track down the package in - Debian and dselect in particular. A prefix will hopefully also help - wrt inclusion in ordinary Debian and to avoid name conflicts. One such - prefix might be cl- for ordinary Common Lisp libraries. -
  • -
  • If possible, use :Depends for other systems instead of including - them in your package. As an example, the Langband-package should - depend on binary-types instead of including them in the its package. -
  • -
  • Persons investigating the natures and features of packaging systems, and persons intending to create Debian packages, may be interested in the page here on Debian Packages
  • -

Hints for users

-
    -
  • When using Debian and the common-lisp-controller version 4, all packages can be loaded using the (clc:clc-require :name) syntax. For example, the cl-infix package can be loaded using (clc:clc-require :infix). -
  • -
  • With an implementation that uses the common-lisp-controller you can simply use (clc:clc-require :infix) to load the precompiled version. -
  • -

-

Wishlist

-
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/DebianIRC.html b/clones/lisp/www.cliki.net/DebianIRC.html deleted file mode 100644 index eb569d40..00000000 --- a/clones/lisp/www.cliki.net/DebianIRC.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: DebianIRC - - - - - - - -
DebianIRC
Drop by Debian IRC (irc.debian.org) channel #lisp some time. There's some -fun folks doing cool lisp hacks at all hours of the day and night.

Check out logs at http://tunes.org/~nef/logs/lisp/. -Note that this channel is not in active use anymore. See the IRC topic for more information.


-obsolete
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Debugging.html b/clones/lisp/www.cliki.net/Debugging.html deleted file mode 100644 index dfa84298..00000000 --- a/clones/lisp/www.cliki.net/Debugging.html +++ /dev/null @@ -1,104 +0,0 @@ - - - - - CLiki: debugging - - - - - - - -
debugging
Advice and tools for debugging Lisp code.

    -
  • -Clouseau - - "Clouseau" is the name of McCLIM's inspector application, which helps with debugging -
  • -
  • -common-db - - common-db is a programmable debugging substrate, mostly geared to driving target devices by establishing control via on-chip debugging machinery through a JTAG (IEEE 1149.1) external port -
  • -
  • -decaf - - Decaf is an Java debugger GUI written in Lisp using CLIM -
  • -
  • -Firephp - - Firephp is implementation of firephp protocol for Common Lisp -
  • -
  • -gtfl - - GTFL is a graphical terminal for Common Lisp -
  • -
  • -journal - - A library for logging, tracing, testing and persistence -
  • -
  • -Lint - - What should a CL lint-like tool look for? -
  • -
  • -PREPL - - prepl is a REPL implementation, also known as a Lisp listener -
  • -
  • -pretty-function - - pretty-function provides an API for making individual functions pprint differently when written to an output stream -
  • -
  • -swank-client - - Common Lisp implementation of a Slime / Swank client -
  • -
  • -trivial-backtrace - - Trivial backtrace is a simple platform independent interface for generating a backtrace -
  • -
  • -TutorialClispDebugger - - Small Clisp Debugger Tutorial -
  • -
  • -TutorialDebuggingDeadLock - - Debugging a dead-lock in a program using bordeaux-threads in ccl -
  • -
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Decimals.html b/clones/lisp/www.cliki.net/Decimals.html deleted file mode 100644 index 90dcb842..00000000 --- a/clones/lisp/www.cliki.net/Decimals.html +++ /dev/null @@ -1,86 +0,0 @@ - - - - - CLiki: Decimals - - - - - - - -
Decimals
A decimal number parser and formatting package for Common Lisp.

The package can be installed through Quicklisp: (ql:quickload "decimals")

Link to the package source code and README file: DECIMALS.

This package introduces three public functions and one macro. See their own documentation for complete description. Here's a short introduction.


Function: PARSE-DECIMAL-NUMBER (string &key ...)

Examine a string for a decimal number and return it as a rational number.

-DECIMALS> (parse-decimal-number "12,34" :decimal-separator #\,)
-617/50
-

-Function: FORMAT-DECIMAL-NUMBER (number &key ...)

Apply specified decimal number formatting rules to a number and return a formatted string.

-DECIMALS> (format-decimal-number 20000/3 :round-magnitude -3
-                                 :decimal-separator ","
-                                 :integer-group-separator " "
-                                 :integer-minimum-width 7)
-"  6 666,667"
-("" "6 666" "," "667")
-

-DECIMALS> (loop for e from -5 upto 5
-                do (print (format-decimal-number
-                           (expt 10 e) :round-magnitude -5
-                           :decimal-separator ","
-                           :integer-minimum-width 7
-                           :integer-group-separator " "
-                           :fractional-minimum-width 7
-                           :fractional-group-separator " ")))
-
-"      0,000 01"
-"      0,000 1 "
-"      0,001   "
-"      0,01    "
-"      0,1     "
-"      1       "
-"     10       "
-"    100       "
-"  1 000       "
-" 10 000       "
-"100 000       "
-NIL
-

Function: ROUND-HALF-AWAY-FROM-ZERO (number &optional (divisor 1))

A rounding function similar to CL:ROUND except that when number is exactly half-way between two integers round always away from zero. FORMAT-DECIMAL-NUMBER uses this rounding function by default.

Macro: DEFINE-DECIMAL-FORMATTER (name &body keyword-arguments)

Define a custom decimal number formatter function suitable for the ~/ directive of CL:FORMAT.


-Tags: Library, Mathematics, Public Domain -
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Declt.html b/clones/lisp/www.cliki.net/Declt.html deleted file mode 100644 index 3e098350..00000000 --- a/clones/lisp/www.cliki.net/Declt.html +++ /dev/null @@ -1,74 +0,0 @@ - - - - - CLiki: Declt - - - - - - - -
Declt
Declt (pronounce "dec'let") is a reference manual generator for -Common Lisp libraries. It works by loading an ASDF system and introspecting -its contents. The generated documentation contains the description for -the system itself and its components (modules and files), the packages -defined in that system and the definitions found in those packages.

Exported and internal definitions are listed separately. This allows the -reader to have a quick view on the library's public API. Within each -section, definitions are sorted lexicographically.

In addition to ASDF system components and packages, Declt documents -the following definitions: constants, special variables, symbol macros, -macros, setf expanders, compiler macros, functions (including -setf ones), generic functions and methods (including setf ones), -method combinations, conditions, structures, classes and types.

The generated documentation includes every possible bit of information -that introspecting can provide: documentation strings, lambda lists -(including qualifiers and specializers where appropriate), slots -(including type, allocation and initialization arguments), definition -source file etc.

Every documented item provides a full set of cross-references to related -items: ASDF component dependencies, parents and children, classes direct -methods, super and subclasses, slot readers and writers, setf -expanders access and update functions etc.

Finally, Declt produces exhaustive and multiple-entry indexes for -every documented item.

Reference manuals are generated in Texinfo format (compatible, but not -requiring Texinfo 5). From there it is possible to produce readable / -printable output in info, HTML, PDF, DVI and PostScript with tools such -as makeinfo, texi2dvi or texi2pdf.

The Declt reference manual is the primary example of documentation generated by Declt itself.

Declt's homepage is -here.


-Declt is a documentation tool written by Didier Verna...
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Demyltify.html b/clones/lisp/www.cliki.net/Demyltify.html deleted file mode 100644 index 17b99b12..00000000 --- a/clones/lisp/www.cliki.net/Demyltify.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Demyltify - - - - - - - -
Demyltify
Demyltify is a library that lets you write Sendmail email filters (milters) in Common Lisp.

Homepage: http://wcp.sdf-eu.org/software/

Download: http://wcp.sdf-eu.org/software/demyltify-20150210T125529.tbz

License: LGPL

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Dennis Decker Jensen.html b/clones/lisp/www.cliki.net/Dennis Decker Jensen.html deleted file mode 100644 index 57751574..00000000 --- a/clones/lisp/www.cliki.net/Dennis Decker Jensen.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Dennis Decker Jensen - - - - - - - -
Dennis Decker Jensen
A Person who likes programming languages and dabbled with Lisp alot. Especially GCL and CLisp implementations. I did the initial translation to Danish of CLisp.
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Deployment.html b/clones/lisp/www.cliki.net/Deployment.html deleted file mode 100644 index 058bb3a5..00000000 --- a/clones/lisp/www.cliki.net/Deployment.html +++ /dev/null @@ -1,76 +0,0 @@ - - - - - CLiki: Deployment - - - - - - - -
Deployment
    -
  • -cl-daemonize - - cl-daemonize is a tool to daemonize a Lisp process without the need for screen/detachtty -
  • -
  • -cl-launch - - cl-launch is a unix utility to make your Lisp software easily invokable from the shell command-line -
  • -
  • -Consfigurator - - A system for declarative configuration management using Common Lisp -
  • -
  • -Creating Executables - - Most Common Lisp implementations support creating native-format executable files -
  • -
  • -lispx-proxy - - lispx-proxy (Lisp Execution Proxy) is a Lisp application launcher for Windows (A *nix port with limited functionality is also available) -
  • -
  • -Unix shell scripting - - This is a guide for writing Unix shell scripts in various Common Lisp implementations -
  • -
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Design by contract.html b/clones/lisp/www.cliki.net/Design by contract.html deleted file mode 100644 index ac809dd9..00000000 --- a/clones/lisp/www.cliki.net/Design by contract.html +++ /dev/null @@ -1,60 +0,0 @@ - - - - - CLiki: Design by contract - - - - - - - -
Design by contract
Design by contract is an approach for designing software. It prescribes that software designers should define formal, precise and verifiable interface specifications for software components, which extend the ordinary definition of abstract data types with preconditions, postconditions and invariants. These specifications are referred to as "contracts", in accordance with a conceptual metaphor with the conditions and obligations of business contracts.

The technique was pioneered by Bertrand Meyer in his design of Eiffel.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Development.html b/clones/lisp/www.cliki.net/Development.html deleted file mode 100644 index 9ab7042e..00000000 --- a/clones/lisp/www.cliki.net/Development.html +++ /dev/null @@ -1,657 +0,0 @@ - - - - - CLiki: Development - - - - - - - -
Development
Development, building, testing, and documentation aids.

Editor/IDE support

    -
  • -Cross-editor plugins -
      -
    • -Parinfer is a mode that helps keeping both indentation and parens balanced. It is easy to start with and yet it offers advanced features à la Paredit. It is available on many editors (Emacs, Vim, Atom, Sublime Text, Visual Studio Code, LightTable, CodeMirror,…). -
    • -
    - -
  • -
  • -Emacs -
      -
    • -SLIME is the Superior Lisp Interaction Mode, Extended -
    • -
    • PORTACLE is a portable and multiplatform development environment, pre-configured with SBCL, Quicklisp, Emacs, Slime and Git. Download, extract and use, no installation needed. -
    • -
    -
  • -vi/vim -
      -
    • -VLIME is a Common Lisp dev environment for Vim (and Neovim), similar to SLIME for Emacs and SLIMV for Vim. (Also look for some newer forks.) -
    • -
    • -Slimv provides SLIME-like Lisp and Clojure REPL inside Vim with profiling, Hyperspec lookup, Paredit-like structured editing -
    • -
    • -Nekthuth is a vim plugin and CL library which gives vim users some interactive Lisp development/IDE features akin to SLIME -
    • -
    • -VIlisp, an (inferior) inferior lisp mode for vim. -
    • -
    • -Limp, another (slightly less inferior) inferior lisp mode for Vim. -
    • -
    • -Using vi with Lisp -
    • -
    -
  • - Atom -
      -
    • -SLIMA is an Atom plugin for Common Lisp development.
    • -
    -
  • -Eclipse -
      -
    • -Cusp An Eclipse plugin that comes out of the box with SBCL and Swank for Windows, Linux, and OSX -
    • -
    • -Dandelion Another Eclipse plugin, currently available with CLISP (for WinXP, MacosX, Linux). It supports the developer with syntax analyses as you type (limited), syntax highlighting, code completion, parenthesis matching, apropos and a listener. -
    • -
    -
  • -Other -
      -
    • Lem is a stand-alone, Emacs-like editor built in Common Lisp. -
    • -
    • -MCLIDE is an open source Mac OS X IDE for Lisp implementations using the SWANK protocol of SLIME. It supports Common Lisp, Clojure, and Scheme. -
    • -
    • -Climacs is an Emacs-like text editor written in Common Lisp using McCLIM. -
    • -
    • -Hemlock is an Emacs-like editor written in CL not using CLIM. -
    • -
    • -Able a IDE written in CL itself, for Mac/Windows/Linux, also with interaction mode. -
    • -
    • -LispIDE is a basic editor for several Lisp and Scheme implementations available for Windows. -
    • -
    • -Clcon is a cross-platform Lisp IDE with permissive license. It uses SWANK protocol of SLIME to connect to server. Under construction, no releases yet. -
    • -
    -
  • -

Build/make tools (main topic: build) see also: tools to Obtain libraries. -

    -
  • -asdf - - ASDF (Another System Definition Facility) is an extensible build facility for Common Lisp software -
  • -
  • -ASDlite - - ASDlite is a light-weight version of ASDF, a popular build facility for Common Lisp -
  • -
  • -corona - - Corona is a library for building and controlling virtual machines -
  • -
  • -evol - - evol - entrenched virtues of lisp (love reversed) aims to be a compatible and full-fledged replacement for the GNU autotools stack targeted at coping with the autotools' shortcomings while not repeating the mistakes made and still being made at comparable build tool projects -
  • -
  • -mk-defsystem - - MK-defsystem is a system definition utility; it fills a similar role for CL as make(1) does for C -
  • -
  • -Overlord - - Overlord is an experimental build system for Common Lisp, inspired by Redo -
  • -
  • -poiu - - poiu is an asdf extension that builds in parallel -
  • -
  • -XCVB - - XCVB, an eXtensible Component Verifier and Builder for Lisp is an attempt to replace asdf -
  • -

Deployment (main topic: deployment) -

    -
  • -cl-daemonize - - cl-daemonize is a tool to daemonize a Lisp process without the need for screen/detachtty -
  • -
  • -cl-launch - - cl-launch is a unix utility to make your Lisp software easily invokable from the shell command-line -
  • -
  • -Consfigurator - - A system for declarative configuration management using Common Lisp -
  • -
  • -Creating Executables - - Most Common Lisp implementations support creating native-format executable files -
  • -
  • -lispx-proxy - - lispx-proxy (Lisp Execution Proxy) is a Lisp application launcher for Windows (A *nix port with limited functionality is also available) -
  • -
  • -Unix shell scripting - - This is a guide for writing Unix shell scripts in various Common Lisp implementations -
  • -

Testing (main topic: test framework) -

Configuration (main topic: configuration) -

Logging (main topic: logging) -

    -
  • -a-cl-logger - - A common lisp logging library providing context sensitive logging of more than just strings to more than just local files / output streams -
  • -
  • -cl-grip - - cl-grip is a high-level logging system for Common Lisp, focusing on a clear user interface, support for flexible structured logging, and easy extensibility for different backends to support direct logging to various inputs -
  • -
  • -cl-log - - CL-LOG is a general purpose logging utility, loosely modelled in some respects after Gary King's Log5 -
  • -
  • -cl-syslog - - Common Lisp interface to local and remote Syslog facilities -
  • -
  • -flood - - Comfortable, powerful and tiny logging library for common lisp -
  • -
  • -hu.dwim.logger - - hu,dwim,logger is a logging library -
  • -
  • -irc-logger - - irc-logger is a networking library written by Kevin Rosenberg which uses the cl-irc library to provide multichannel Internet Relay Chat (IRC) logging -
  • -
  • -journal - - A library for logging, tracing, testing and persistence -
  • -
  • -Log4CL - - Log4CL is high performance extensible logging library for Common Lisp -
  • -
  • -log5 - - Log5 is a logging library organized around five things: categories, outputs, senders, messages and contexts -
  • -
  • -LoGS - - A programmable log analysis engine available under the terms of the GPL -
  • -
  • -logv - - Logv is a cognitively lightweight logging utility for Common Lisp -
  • -
  • -Verbose - - Verbose is a logging framework that aims to provide a good default setup as well as an extensible back-end to suit all your logging needs -
  • -
  • -vom - - A tiny logging library for Common Lisp -
  • -

Documentation (main topic: documentation tool) -

    -
  • -Albert - - Albert is a Common Lisp doc-generator, comparable to Javadoc and Doxygen -
  • -
  • -argdoc - - simple package documentation library for common lisp -
  • -
  • -atdoc - - Atdoc generates documentation for Common Lisp packages -
  • -
  • -CL-API - - CL-API is a documentation tool that generates an API in HTML format, given a package name and reading docstrings -
  • -
  • -cl-docweaver - - A document weaver for Common Lisp -
  • -
  • -cl-gendoc - - cl-gendoc is a simple but flexible modular document generator for Common Lisp -
  • -
  • -CLDOC - - CLDOC reads lisp source files and generates documentation using the selected output driver -
  • -
  • -clod - - CLOD is a Common Lisp doc-generator, similar to Albert, Cldoc and so on -
  • -
  • -Declt - - Declt (pronounce "dec'let") is a reference manual generator for -
  • -
  • -docudown - - Docudown is a Lisp documentation tool built on top of CL-Markdown -
  • -
  • -documentation-template - - documentation-template is a documentation tool that automatically produces HTML documentation from the exported symbols of a package -
  • -
  • -hyperdoc - - Hyperdoc means mapping symbols to documentation URIs for libraries as well -
  • -
  • -hyperspec-lookup - - hyperspec-lookup is an ANSI Common Lisp library that gives the user an interface to mapping symbols to URLs for the Common Lisp Hyperspec and Common Lisp Object System (CLOS) MetaObject Protocol -
  • -
  • -incf-cl - - (INCF CL) is a collection of utilities -
  • -
  • -LispDoc - - LispDoc is a documentation tool (probably somewhat OpenMCL specific) that automatically generates HTML documentation for all symbols exported from one or more packages from their documentation strings -
  • -
  • -manifest - - Manifest is a documentation tool for semi-automatically documenting Common Lisp packages as a set of web pages, using the toot web server -
  • -
  • -MGL-PAX - - MGL-PAX is an exploratory programming environment and documentation generator -
  • -
  • -qbook - - qbook -
  • -
  • -sb-texinfo - - sb-texinfo was originally written for processing the SBCL docstrings by Rudi Sclatte in 2004, and has been maintained as part of SBCL since then -
  • -
  • -Staple - - A tool to generate documentation about Lisp projects through an HTML template -
  • -
  • -tinaa - - Tinaa is Not An Acronym -
  • -

Version control software: (main topic: version control) -

Literate programming systems: (main topic: literate programming) -

    -
  • -cl-org-mode has a tangle feature to do literate programming in org-mode. -
  • -
  • -literate-lisp provides tangle-free Org support for ASDF -
  • -
  • -CLWeb A literate programming system for Common Lisp. -
  • -
  • -MGL-PAX: A literate programming system turned inside out. -
  • -

Miscellaneous -

    -
  • -Redshank refactoring and editing extensions to SLIME. -
  • -
  • -slime-lispunit for more convenient TDD with SLIME (see also this post). -
  • -
  • Matthias Holzl's Design by Contract package. -
  • -
  • -cl-heredoc - Common Lisp reader heredoc dispatcher, very useful for testing parsers -
  • -
  • -Step is a portable code single-stepper and debugger. -
  • -
  • -METERING is a portable code profiling tool, for gathering timing and consing statistics while a program is running. -
  • -
  • -Benchmarks: Benchmarking Suites can be used to compare different implementations. -
  • -

Topic -

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Dexador.html b/clones/lisp/www.cliki.net/Dexador.html deleted file mode 100644 index 0a8246fb..00000000 --- a/clones/lisp/www.cliki.net/Dexador.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Dexador - - - - - - - -
Dexador
Dexador is a high-performance HTTP client library with neat APIs and connection-pooling.

https://github.com/fukamachi/dexador

License: MIT

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Didier Verna.html b/clones/lisp/www.cliki.net/Didier Verna.html deleted file mode 100644 index 8d1e71d4..00000000 --- a/clones/lisp/www.cliki.net/Didier Verna.html +++ /dev/null @@ -1,64 +0,0 @@ - - - - - CLiki: Didier Verna - - - - - - - -
Didier Verna
Didier Verna likes Common Lisp, Jazz, and Aïkido.

-Dr. Didier Verna has a Ph.D. in Computer Science and is currently working as -an assistant professor for the Research and Development Laboratory of EPITA, a private computer science university located in Paris. He gives lectures on Operating Systems, Computer Graphics, Functional Programming and Typesetting. His research interests include Genericity, Performance, Object Orientation and Functional Programming, all in one language: Common Lisp. -

-Didier Verna is also quite involved in free software: he has been one of the -core maintainers of XEmacs for 10 years. He is also the author of several LaTeX packages (FiNK, FiXme, QCM and CurVe) and an occasional contributor to other Free Software projects (the GNU Autotools most notably; he was one of the technical reviewers for the "Goat Book"). -

-Didier Verna currently organizes the European Lisp Workshop co-located every year with ECOOP, and is a member of the European Lisp Symposium steering committee. -

-All of this is actually only true 3 days a week. The rest of the time, Didier Verna is a semi-professional Jazz musician. -

-


-Didier Verna, like many people, is a person... -Didier Verna maintains Clon, Declt, CL-RCFiles and asdf-flv
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Difference between JSON libraries.html b/clones/lisp/www.cliki.net/Difference between JSON libraries.html deleted file mode 100644 index 5e922abb..00000000 --- a/clones/lisp/www.cliki.net/Difference between JSON libraries.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: Difference between JSON libraries - - - - - - - -
Difference between JSON libraries
As can be expected, the libraries do much of the same if you have basic needs. However, significant differences exist and should be considered in choosing which library is right for any particular project. Many applications are asymmetric in how they will use these libraries. If you are mostly getting JSON data from somewhere else, parsing it and using it, then jsown will likely be your best choice. It is focused on decoding JSON data and is an order of magnitude faster than any other library at this task. If you do not want to write your own methods for generic functions and you are going back and forth between JSON objects and clos objects, I would recommend cl-json. If you need to pay particular attention to the differences between null, nil and false, you should probably consider st-json. If you are going to be encoding lisp data but are not sure what the data will look like, cl-json may be your best choice because it handles different types of lisp data out of the box better than the other libraries. For example, handed a list of alists or a list of plists, cl-json correctly encoded an array of json objects and an array of JSON arrays respectively. Neither st-json nor yason could cope with that in one call. In the cases of st-json and yason, you would have to break it into loops and run the encoding function on elements. On the other hand, cl-json could, in theory, suffer an attack because it interns everything as a keyword. So a lot of badly formed could have undesired results.

At the end of the day, your particular data and requirements will determine which library is best for any particular application and you need to pay attention to what your data will look like and what the receiving end will do with it. For example, in one test, yason:encode choked on a list which included a keyword :NULL in an unexpected location. Cl-json just encoded it as the string "null" and st-json encoded it as 'null' (not a string). In testing for your use, deliberately feed badly formed data and see how the library reacts. Some will throw recoverable conditions (depending on the error) while others may actually lock up a thread.

Resources


-programming tips
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Dimitry Gashinsky.html b/clones/lisp/www.cliki.net/Dimitry Gashinsky.html deleted file mode 100644 index 66e79322..00000000 --- a/clones/lisp/www.cliki.net/Dimitry Gashinsky.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Dimitry Gashinsky - - - - - - - -
Dimitry Gashinsky
I am a Person. I use Lisp since 1996. My goal is AI.

Homepage: http://www.gashinsky.com
-Email: dim i try at gash in sky dot com

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Distributed.html b/clones/lisp/www.cliki.net/Distributed.html deleted file mode 100644 index 78788f6c..00000000 --- a/clones/lisp/www.cliki.net/Distributed.html +++ /dev/null @@ -1,139 +0,0 @@ - - - - - CLiki: Distributed - - - - - - - -
Distributed
There are many systems for Distributed programming based on Common Lisp.

-See Also:

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Djula.html b/clones/lisp/www.cliki.net/Djula.html deleted file mode 100644 index 7f4d98ed..00000000 --- a/clones/lisp/www.cliki.net/Djula.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: djula - - - - - - - -
djula
Djula is a Common Lisp port of the Django HTML template language. It also adds several new features documented on its homepage.

Homepage: https://mmontone.github.io/djula/

Repository: https://github.com/mmontone/djula

Original author: Nick Allen


-MIT-LICENSE
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Dmitri Ivanov.html b/clones/lisp/www.cliki.net/Dmitri Ivanov.html deleted file mode 100644 index c42e5ca2..00000000 --- a/clones/lisp/www.cliki.net/Dmitri Ivanov.html +++ /dev/null @@ -1,61 +0,0 @@ - - - - - CLiki: Dmitri Ivanov - - - - - - - -
Dmitri Ivanov
I, Dmitri Ivanov, am a Person.

My homepage: lisp.ystok.ru

I am the author of Ystok-family of Common Lisp libraries. -

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Dmitry Zhukov.html b/clones/lisp/www.cliki.net/Dmitry Zhukov.html deleted file mode 100644 index 714ca5d0..00000000 --- a/clones/lisp/www.cliki.net/Dmitry Zhukov.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Dmitry Zhukov - - - - - - - -
Dmitry Zhukov
I love USA. High Five!

person

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Document preparation.html b/clones/lisp/www.cliki.net/Document preparation.html deleted file mode 100644 index 7f86df66..00000000 --- a/clones/lisp/www.cliki.net/Document preparation.html +++ /dev/null @@ -1,128 +0,0 @@ - - - - - CLiki: document preparation - - - - - - - -
document preparation
Libraries for preparing documents (PDF, TeX, etc.). See also HTML generators.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Document.html b/clones/lisp/www.cliki.net/Document.html deleted file mode 100644 index c7a23ab9..00000000 --- a/clones/lisp/www.cliki.net/Document.html +++ /dev/null @@ -1,97 +0,0 @@ - - - - - CLiki: Document - - - - - - - -
Document
Books, articles, introductions, and summaries about Lisp. See also the Online Tutorials.

-
-Some more Lisp books available online:

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Documentation Tool.html b/clones/lisp/www.cliki.net/Documentation Tool.html deleted file mode 100644 index 92f35b55..00000000 --- a/clones/lisp/www.cliki.net/Documentation Tool.html +++ /dev/null @@ -1,146 +0,0 @@ - - - - - CLiki: Documentation Tool - - - - - - - -
Documentation Tool
There are a number of tools to extract information from (possibly marked up) Common Lisp source code available:

    -
  • -Albert - - Albert is a Common Lisp doc-generator, comparable to Javadoc and Doxygen -
  • -
  • -argdoc - - simple package documentation library for common lisp -
  • -
  • -atdoc - - Atdoc generates documentation for Common Lisp packages -
  • -
  • -CL-API - - CL-API is a documentation tool that generates an API in HTML format, given a package name and reading docstrings -
  • -
  • -cl-docweaver - - A document weaver for Common Lisp -
  • -
  • -cl-gendoc - - cl-gendoc is a simple but flexible modular document generator for Common Lisp -
  • -
  • -CLDOC - - CLDOC reads lisp source files and generates documentation using the selected output driver -
  • -
  • -clod - - CLOD is a Common Lisp doc-generator, similar to Albert, Cldoc and so on -
  • -
  • -Declt - - Declt (pronounce "dec'let") is a reference manual generator for -
  • -
  • -docudown - - Docudown is a Lisp documentation tool built on top of CL-Markdown -
  • -
  • -documentation-template - - documentation-template is a documentation tool that automatically produces HTML documentation from the exported symbols of a package -
  • -
  • -hyperdoc - - Hyperdoc means mapping symbols to documentation URIs for libraries as well -
  • -
  • -hyperspec-lookup - - hyperspec-lookup is an ANSI Common Lisp library that gives the user an interface to mapping symbols to URLs for the Common Lisp Hyperspec and Common Lisp Object System (CLOS) MetaObject Protocol -
  • -
  • -incf-cl - - (INCF CL) is a collection of utilities -
  • -
  • -LispDoc - - LispDoc is a documentation tool (probably somewhat OpenMCL specific) that automatically generates HTML documentation for all symbols exported from one or more packages from their documentation strings -
  • -
  • -manifest - - Manifest is a documentation tool for semi-automatically documenting Common Lisp packages as a set of web pages, using the toot web server -
  • -
  • -MGL-PAX - - MGL-PAX is an exploratory programming environment and documentation generator -
  • -
  • -qbook - - qbook -
  • -
  • -sb-texinfo - - sb-texinfo was originally written for processing the SBCL docstrings by Rudi Sclatte in 2004, and has been maintained as part of SBCL since then -
  • -
  • -Staple - - A tool to generate documentation about Lisp projects through an HTML template -
  • -
  • -tinaa - - Tinaa is Not An Acronym -
  • -
-There is a fairly extensive review covering many of these tools: https://sites.google.com/site/sabraonthehill/lisp-document-generation-apps/lisp-generation-apps-v1.

Not on CLiki

    -
  • -TeX - style macros for formatting Lisp code.
  • -
  • -User Manual: Automatical User Manual Creation.
  • -
  • -VGrind/TGrind - entries for Common Lisp.
  • -
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Documentation tool.html b/clones/lisp/www.cliki.net/Documentation tool.html deleted file mode 100644 index 92f35b55..00000000 --- a/clones/lisp/www.cliki.net/Documentation tool.html +++ /dev/null @@ -1,146 +0,0 @@ - - - - - CLiki: Documentation Tool - - - - - - - -
Documentation Tool
There are a number of tools to extract information from (possibly marked up) Common Lisp source code available:

    -
  • -Albert - - Albert is a Common Lisp doc-generator, comparable to Javadoc and Doxygen -
  • -
  • -argdoc - - simple package documentation library for common lisp -
  • -
  • -atdoc - - Atdoc generates documentation for Common Lisp packages -
  • -
  • -CL-API - - CL-API is a documentation tool that generates an API in HTML format, given a package name and reading docstrings -
  • -
  • -cl-docweaver - - A document weaver for Common Lisp -
  • -
  • -cl-gendoc - - cl-gendoc is a simple but flexible modular document generator for Common Lisp -
  • -
  • -CLDOC - - CLDOC reads lisp source files and generates documentation using the selected output driver -
  • -
  • -clod - - CLOD is a Common Lisp doc-generator, similar to Albert, Cldoc and so on -
  • -
  • -Declt - - Declt (pronounce "dec'let") is a reference manual generator for -
  • -
  • -docudown - - Docudown is a Lisp documentation tool built on top of CL-Markdown -
  • -
  • -documentation-template - - documentation-template is a documentation tool that automatically produces HTML documentation from the exported symbols of a package -
  • -
  • -hyperdoc - - Hyperdoc means mapping symbols to documentation URIs for libraries as well -
  • -
  • -hyperspec-lookup - - hyperspec-lookup is an ANSI Common Lisp library that gives the user an interface to mapping symbols to URLs for the Common Lisp Hyperspec and Common Lisp Object System (CLOS) MetaObject Protocol -
  • -
  • -incf-cl - - (INCF CL) is a collection of utilities -
  • -
  • -LispDoc - - LispDoc is a documentation tool (probably somewhat OpenMCL specific) that automatically generates HTML documentation for all symbols exported from one or more packages from their documentation strings -
  • -
  • -manifest - - Manifest is a documentation tool for semi-automatically documenting Common Lisp packages as a set of web pages, using the toot web server -
  • -
  • -MGL-PAX - - MGL-PAX is an exploratory programming environment and documentation generator -
  • -
  • -qbook - - qbook -
  • -
  • -sb-texinfo - - sb-texinfo was originally written for processing the SBCL docstrings by Rudi Sclatte in 2004, and has been maintained as part of SBCL since then -
  • -
  • -Staple - - A tool to generate documentation about Lisp projects through an HTML template -
  • -
  • -tinaa - - Tinaa is Not An Acronym -
  • -
-There is a fairly extensive review covering many of these tools: https://sites.google.com/site/sabraonthehill/lisp-document-generation-apps/lisp-generation-apps-v1.

Not on CLiki

    -
  • -TeX - style macros for formatting Lisp code.
  • -
  • -User Manual: Automatical User Manual Creation.
  • -
  • -VGrind/TGrind - entries for Common Lisp.
  • -
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Documentation.html b/clones/lisp/www.cliki.net/Documentation.html deleted file mode 100644 index db23a942..00000000 --- a/clones/lisp/www.cliki.net/Documentation.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Documentation - - - - - - - -
Documentation
We also have Documents and Documentation tools.

But documentation is cool too. Some things need more of it.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Donald Fisk.html b/clones/lisp/www.cliki.net/Donald Fisk.html deleted file mode 100644 index 680338f8..00000000 --- a/clones/lisp/www.cliki.net/Donald Fisk.html +++ /dev/null @@ -1,59 +0,0 @@ - - - - - CLiki: Donald Fisk - - - - - - - -
Donald Fisk
An instance of the class Person.

I first learned Lisp in early 1982, when I bought Winston and Horn, 1st -Edition. See Donald Fisk's Road to Lisp.

Since then, I've been programming commercially in Scheme, then -Common Lisp, for a number of years.

My computing experience covers interpreters and compilers, Artificial Intelligence, -Speech Processing, Telecommunications, document processing -and a few other things. Mainly R&D and systems programming.

I have recently developed and released my own Lisp dialect and -environment (Emblem), as the substrate of a completely new language -system (Full Metal Jacket) -which I am developing. I presented a paper on this at the International Lisp Conference 2003.

Most of my non-Lisping is in C. I also have significant experience -in Bash, Prolog, Pascal, Java, and various assembly languages.

My web page

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Doors.html b/clones/lisp/www.cliki.net/Doors.html deleted file mode 100644 index 60785628..00000000 --- a/clones/lisp/www.cliki.net/Doors.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: doors - - - - - - - -
doors
Doors is an attempt to bring essential features of MS Windows (such as basic Windows API, COM and OLE) into Common Lisp.

It is a high-level FFI binding with a lisper-friendly interface. It can be obtained from Github here: https://github.com/Lovesan/doors.

It uses Virgil as a back-end. It also depends on trivial-features, alexandria, trivial-garbage, closer-mop, and bordeaux-threads.


Doors is also the name of an "embryonic" attempt at a window manager for McCLIM: https://github.com/admich/Doors.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Doug Tolton.html b/clones/lisp/www.cliki.net/Doug Tolton.html deleted file mode 100644 index 6877d8e7..00000000 --- a/clones/lisp/www.cliki.net/Doug Tolton.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Doug Tolton - - - - - - - -
Doug Tolton
Doug Tolton is person, who is stll trying to figure both Lisp and Cliki out.

I've been using Lisp for a little while now, Doug Tolton's Road to Lisp, I am still fascinated by it. I've even fit in a Lisp project or two at work. :)

I attended the ILC 2003, that was an incredible conference. I had a chance to meet with some very great people, and some incredibly smart people. I highly encourage anyone thinking about attending a Lisp Conference. Truly, you have the opportunity to rub shoulders with giants.


-Community
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Drakma-async.html b/clones/lisp/www.cliki.net/Drakma-async.html deleted file mode 100644 index cc8525ae..00000000 --- a/clones/lisp/www.cliki.net/Drakma-async.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Drakma-async - - - - - - - -
Drakma-async
drakma-async is an HTTP client that runs on top of cl-async and aims to be API-compatible with the Drakma library. Internally, it uses a lot of Drakma's code (converted to use CPS).

See drakma-async on Github.

See also: cl-async Drakma

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Drakma.html b/clones/lisp/www.cliki.net/Drakma.html deleted file mode 100644 index 782e23db..00000000 --- a/clones/lisp/www.cliki.net/Drakma.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: Drakma - - - - - - - -
Drakma
Drakma is a fully-featured Common Lisp HTTP client library that knows how to handle HTTP/1.1 -chunking, persistent connections, re-usable sockets, SSL, continuable -uploads, cookies, and other things.

It was developed on LispWorks, but can be used with several other Common Lisp implementations as well.

It's written by Edi Weitz and can be found at http://weitz.de/drakma/.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Drew McDermott.html b/clones/lisp/www.cliki.net/Drew McDermott.html deleted file mode 100644 index 9fba076b..00000000 --- a/clones/lisp/www.cliki.net/Drew McDermott.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Drew McDermott - - - - - - - -
Drew McDermott
Drew McDermott is a Person who teaches AI at Yale University and has been hacking Lisp since 1965.


-AI
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Duologue.html b/clones/lisp/www.cliki.net/Duologue.html deleted file mode 100644 index 62deebee..00000000 --- a/clones/lisp/www.cliki.net/Duologue.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Duologue - - - - - - - -
Duologue
High-level user interaction library for Common Lisp.

Depends on: anaphora, alexandria, clavier, chronicity, cl-ansi-text, cl-fad

Repository: https://github.com/mmontone/duologue

License: MIT


-console
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Dwight Holman.html b/clones/lisp/www.cliki.net/Dwight Holman.html deleted file mode 100644 index f008513e..00000000 --- a/clones/lisp/www.cliki.net/Dwight Holman.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Dwight Holman - - - - - - - -
Dwight Holman
Dwight Holman is a Person attending California State University, Chico. -Excelling in Computer Science at such a notorious party school is like ripping through wet toilet paper. Therefore, Dwight has plenty of spare time.

He has the commit bit on climacs, the market leader in Common Lisp emacs implementations.

He is currently developing clim-desktop.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Dynamic ADTs.html b/clones/lisp/www.cliki.net/Dynamic ADTs.html deleted file mode 100644 index 5fc50d55..00000000 --- a/clones/lisp/www.cliki.net/Dynamic ADTs.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Dynamic ADTs - - - - - - - -
Dynamic ADTs
Dynamic ADTs are abstract data types with a framework for observation and adaptation. Instances of DADTs can track their history and change their underlying behaviour to better suit their (potential) use. DADTs can be used to implement an ADT with multiple implementations or combine different ADTs into one ADT without the need to create hybrid data structures. They also work as a data profiling mechanism.

Paper: https://www.csd.uwo.ca/~watt/pub/reprints/2007-ilc-dadt.pdf


-obsolete
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/E-on-CL.html b/clones/lisp/www.cliki.net/E-on-CL.html deleted file mode 100644 index f571a719..00000000 --- a/clones/lisp/www.cliki.net/E-on-CL.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: E-on-CL - - - - - - - -
E-on-CL
E-on-CL is an implementation of the E programming language in Common Lisp.

Homepage: http://wiki.erights.org/wiki/E-on-CL

Source repository (Subversion): http://switchb.org/svn/e/cl-e/trunk/

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ECL.html b/clones/lisp/www.cliki.net/ECL.html deleted file mode 100644 index 7d192770..00000000 --- a/clones/lisp/www.cliki.net/ECL.html +++ /dev/null @@ -1,57 +0,0 @@ - - - - - CLiki: ECL - - - - - - - -
ECL
Embeddable Common Lisp, a member of the KCL Family, is a Common Lisp implementation initially developed by Giuseppe Attardi, maintained for many years by Juan Jose Garcia-Ripoll and currently maintained by Daniel Kochmański. ECL is the successor to EcoLisp).

It is a small but complete implementation which features a very small bytecode interpreter, compilation via C, generation of standalone executables and DLLs, loadable binary files, CLOS, CLX, sockets, and more... The areas that need work are

    -
  • improving the extensions -
  • -
  • improving the compiler and the performance -
  • -
-Project page is located at https://common-lisp.net/project/ecl/. ECL runs on Linux, FreeBSD, NetBSD, OpenBSD, Windows (Using Mingw and Microsoft Visual C++), MacOS X/Darwin (x86 and PPC) and Solaris (x86 and Sparc). It supports threads on all operating systems. Experimental builds for Android, NaCL and iOS exist.

I compiled it using mingw gcc under win32. threading also works under win32 making it the best free common lisp implementation available on that platform.

There is also a FreeBSD port to install it from and an X-Chat Common Lisp Plugin.

A package for NetBSD is available via pkgsrc.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ELASTIC-NEWLINE.html b/clones/lisp/www.cliki.net/ELASTIC-NEWLINE.html deleted file mode 100644 index 2747177f..00000000 --- a/clones/lisp/www.cliki.net/ELASTIC-NEWLINE.html +++ /dev/null @@ -1,67 +0,0 @@ - - - - - CLiki: ELASTIC-NEWLINE - - - - - - - -
ELASTIC-NEWLINE

Proposal

Add an ELASTIC-NEWLINE function. (ELASTIC-NEWLINE [stream]) is like -FRESH-LINE but the other way around: It outputs a conditional newline -on the stream that is annulled if the next output on the stream -happens to be a newline. More precisely, (ELASTIC-NEWLINE [stream]) causes -a newline to be output right before the next character is written on the stream, -if this character is not a newline. The newline is also output if the next -operation on the stream is FRESH-LINE, FINISH-OUTPUT, -FORCE-OUTPUT or CLOSE. Whether the newline is output eagerly -(at the moment ELASTIC-NEWLINE is called) or lazily (right before the next output -operation), i.e. whether the visible cursor will be positioned in the new line -already or trailing on the previous line, is implementation dependent.

The functionality of ELASTIC-NEWLINE is also available through the -FORMAT directive ~..

The motivation of ELASTIC-NEWLINE is that it allows for interoperability -with code that uses different newline conventions, without adding spurious -blank lines. Code that uses (format t "~&A line of text.~.") interoperates -nicely with code that uses the convention (format t "A line of text.~%") -but also with code that uses the convention (format t "~%A line of text.").

Available in CLISP.


-Topics: document proposed extensions to ANSI
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ELI.html b/clones/lisp/www.cliki.net/ELI.html deleted file mode 100644 index 856bb06f..00000000 --- a/clones/lisp/www.cliki.net/ELI.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: ELI - - - - - - - - -
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ELisp.html b/clones/lisp/www.cliki.net/ELisp.html deleted file mode 100644 index 8c08eb59..00000000 --- a/clones/lisp/www.cliki.net/ELisp.html +++ /dev/null @@ -1,108 +0,0 @@ - - - - - CLiki: elisp - - - - - - - -
elisp
Emacs Lisp

A dialect of Lisp used by the Emacs text editor. -It includes hordes of functions directed to (go figure) editing text.

Perhaps it is a common route into the Lisp world, since anyone who gets to know Emacs will be exposed to it? Hackers naturally will start hacking, and it does seem to be hack-friendly - at least on the surface.

(Elisp was also the name of a Lisp dialect by Chuck Hedrick (and others?) -at Rutgers University. It ran on DEC-20 machines.)


While there are extensions that add Common-Lisp-like functionality to it, it is quite distinct from Common Lisp. In particular it is dynamically scoped rather than lexically scoped. This can cause large amounts of confusion for programmers used to lexical scoping as in Common Lisp. (One reason for this dynamic scoping is said to be that RMS felt it would be easier to write editing code with dynamic scoping. Some people suppose that the real reason was political; to be incompatible with the emerging work on Common Lisp.)

-Taken from Lisp newbie since I would like to digress,

[...] I'm hacking elisp because it's nearest and most convenient. I discover it doesn't implement #'func in any meaningful way, given what I've seen of On Lisp and CMUCL.

emacs-lisp is bad for your health

Can you enumerate? So is driving to work, but the C-x C-e thing is very handy. Should I get a "proper lisp IDE"? I like Emacs. 8-(

Try ILISP (or SLIME, which has probably replaced ILISP for most people) - it's an emacs mode for real lisp, and very nearly as handy as the builtin lisp interaction mode

    -
  • elisp has dynamic scope as above, and this can cause headaches -
  • -
  • elisp's symbols are case sensitive (This seems good to me. Why does CL waste time doing stricmp when strcmp is a smidge faster?) -
    CL's symbols are case-sensitive too. It's just that the reader upper-cases everything by default. Try (eq '|abc| 'abc) sometime. -
    Uppercase in the English sense - in turkish, the uppercase of 'i' is not 'I' -
  • -
  • elisp at v21.2 does not implement tail recursion, but this is merely an efficiency problem. Doesn't stop you writing TR-able code. -
  • -
  • elisp has no package system, which causes namespacing issues. You might counter that this `doesn't bite you until you have a large program', but you're sharing that namespace with all the other lisp in emacs, and emacs already is a large program ... Currently, packages solve that by prepending [packagename]- before their identifiers. Emacs hackers are used to having very long identifiers to type. -
  • -
  • elisp has sucky arithmetic: no bignums, no rationals, silent overflow. (/ 6 4) => 1 - what's with that?
    -Looks like an int to me. That won't bother the C programmers, but I can see it's much less neat than returning 3/2. -
  • -
  • elisp has sucky GC too, from what I understand
  • -


-Emacs Wiki: https://www.emacswiki.org/

Despite the long list of technical imperfections, I find programming in Emacs Lisp extremely pleasant. There is some very neat interaction between the language and the editor. For example, if you are using Emacs buffers as "network buffers" (i.e. containing data for you to decode), then you can do nice things like single-step code in the debugger while watching how the point moves around in the network buffer containing a message you're decoding. I love it! -- LukeGorrie

Search: -

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/EMACS.html b/clones/lisp/www.cliki.net/EMACS.html deleted file mode 100644 index 6e179201..00000000 --- a/clones/lisp/www.cliki.net/EMACS.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Emacs - - - - - - - -
Emacs
Emacs is the One True Editor. It has a fairly long history for a computer program, having begun from a large pile of community-developed macros written in ITS TECO (which stood for 'Tape/Text Editor and Corrector'). The implementation used on the original Lisp Machines was called EINE, for 'EINE Is Not EMACS'. The second version of EINE on the Lisp Machines was known as ZWEI, for 'ZWEI Was Eine Initially'. These are also version numbers in German. These Emacsen were written in Lisp out of necessity, not out of choice, since ZetaLisp was the systems programming language on the Lisp Machines.

Another implementation of Emacs, called Multics Emacs (since it ran on Multics), innovated the notion of using Lisp as the programming language for implementing Emacs. The version of Emacs implemented by James Gosling (commonly known as Gosmacs) came directly from Multics Emacs. Richard Stallman's GNU Emacs has Gosmacs as its ancestor, and from GNU Emacs came XEmacs. Most Common Lisp systems implement their own idiosyncratic and non-portable Emacs, such as CMUCL's Hemlock.

For an extensive collection of information about various Emacs implementations see Craig Finseth's Emacs Implementations and Literature. Craig Finseth also has an excellent treatise on the implementation of Emacs-like editors available for free in HTML format, The Craft of Text Editing. It is required reading for any Emacs implementor.

Work is very slowly progressing to design a portable Emacs based on Common Lisp, (and maybe even CLIM) rather than the idiosyncratic and aging Emacs Lisp dialect, elisp, that all Emacsen deriving from GNU Emacs use. Take a look at CL-Emacs for more information.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/EMI.html b/clones/lisp/www.cliki.net/EMI.html deleted file mode 100644 index 6c7b5323..00000000 --- a/clones/lisp/www.cliki.net/EMI.html +++ /dev/null @@ -1,61 +0,0 @@ - - - - - CLiki: EMI - - - - - - - -
EMI
EMI (Experiments in Musical Intelligence) is David Cope's project to develop systems which are capable of automatic analysis and resynthesis of musical styles.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/EQL.html b/clones/lisp/www.cliki.net/EQL.html deleted file mode 100644 index 790f135b..00000000 --- a/clones/lisp/www.cliki.net/EQL.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: EQL - - - - - - - -
EQL
EQL is Embedded Qt Lisp, a Qt4/Qt5 GUI library binding embedded in ECL. It features no external dependencies (Lisp/C++ libraries/parsers, that is, the binding is fully self-contained), supports overriding virtual Qt functions, translations (Qt Linguist), and loading UI files (Qt Designer).

Additionally, it can easily be embedded in Qt4/C++ applications.

Hosted on GitLab, see Repo, Wiki

There is also a Qt5 version, see: Repo, Wiki; worthwhile to mention is the integration with QML, including some interesting examples, as Lisp and QML play very nice together.

There is also an android and an iOS port of it, which works with both QML and traditional QWidgets, see EQL5-Android and EQL5-iOS.

License: MIT

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ESRAP.html b/clones/lisp/www.cliki.net/ESRAP.html deleted file mode 100644 index 3619e7f2..00000000 --- a/clones/lisp/www.cliki.net/ESRAP.html +++ /dev/null @@ -1,61 +0,0 @@ - - - - - CLiki: ESRAP - - - - - - - -
ESRAP
A packrat parser for Common Lisp

In addition to regular Packrat / Parsing Grammar / TDPL features ESRAP -supports:

    -
  • dynamic redefinition of nonterminals -
  • -
  • inline grammars -
  • -
  • semantic predicates -
  • -
  • introspective facilities -
  • -

Homepage: GitHub Pages

Repository: GitHub

License: BSD

See Also: esrap-peg, esrap-liquid, parseq

Topics: Text

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/EXPT-MOD.html b/clones/lisp/www.cliki.net/EXPT-MOD.html deleted file mode 100644 index 192e14ae..00000000 --- a/clones/lisp/www.cliki.net/EXPT-MOD.html +++ /dev/null @@ -1,67 +0,0 @@ - - - - - CLiki: EXPT-MOD - - - - - - - -
EXPT-MOD
One of the proposed Common Lisp utilities, modular exponentiation is -important for many -algorithms like Miller-Rabin and RSA. Although it can be implemented portably -(see below), it would benefit from implementation-specific (i.e. fast) implementations.

Here is an example by Jochen Schmidt of how EXPT-MOD can be implemented in portable -Common Lisp: -

-(defun expt-mod (n exponent modulus)
-  "As (mod (expt n exponent) modulus), but more efficient."
-  (declare (optimize (speed 3) (safety 0) (space 0) (debug 0)))  
-  (loop with result = 1
-        for i of-type fixnum from 0 below (integer-length exponent)
-        for sqr = n then (mod (* sqr sqr) modulus)
-        when (logbitp i exponent) do
-        (setf result (mod (* result sqr) modulus))
-        finally (return result)))
-

Q: Why standardize an interface (well, a function name)? Lisp implementations that want to provide an accelerated (expt (mod ...)) can do that with a compiler macro, right? -A: Yes, but if you rely on that compiler macro as programmer you will get horrible performance, if your implementation does not have an optimized algorithm for (expt (mod ...))

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/EXTREMUM.html b/clones/lisp/www.cliki.net/EXTREMUM.html deleted file mode 100644 index 384c3af9..00000000 --- a/clones/lisp/www.cliki.net/EXTREMUM.html +++ /dev/null @@ -1,78 +0,0 @@ - - - - - CLiki: EXTREMUM - - - - - - - -
EXTREMUM
This is one of the hypothetical Common Lisp Utilities

Function EXTREMUM

Syntax:

extremum sequence predicate &key key (start 0) end => morally-smallest-element

Arguments and Values:

sequence---a proper sequence.

predicate---a designator for a function of two arguments that returns a generalized boolean.

key---a designator for a function of one argument, or nil.

start, end---bounding index designators of sequence. The defaults for start and end are 0 and nil, respectively.

morally-smallest-element---the element of sequence that would appear first if the sequence were ordered according to sort using predicate and key

Description:

extremum returns the element of sequence that would appear first if the subsequence of sequence specified by start and end were ordered according to sort using predicate and key.

extremum determines the relationship between two elements by giving keys extracted from the elements to the predicate. The first argument to the predicate function is the part of one element of sequence extracted by the key function (if supplied); the second argument is the part of another element of sequence extracted by the key function (if supplied). Predicate should return true if and only if the first argument is strictly less than the second (in some appropriate sense). If the first argument is greater than or equal to the second (in the appropriate sense), then the predicate should return false.

The argument to the key function is the sequence element. The return value of the key function becomes an argument to predicate. If key is not supplied or nil, the sequence element itself is used. There is no guarantee on the number of times the key will be called.

If the key and predicate always return, then the operation will always terminate. This is guaranteed even if the predicate does not really consistently represent a total order (in which case the answer may be wrong). If the key consistently returns meaningful keys, and the predicate does reflect some total ordering criterion on those keys, then the answer will be right.

The predicate is assumed to consider two elements x and y to be equal if (funcall predicate x y) and (funcall predicate y x) are both false.

The return value of (extremum predicate sequence :key key) can be defined as (elt (sort predicate (subseq sequence start end) :key key) 0), but may use faster (less asymptotically complex) algorithms to find this answer.

Exceptional situations:

If sequence is empty, then the error no-extremum is signalled. Invoking the continue restart will cause extremum to return NIL.

Should be prepared to signal an error of type type-error if sequence is not a proper sequence.


-[AK] I'd like a function that returns the n most extreme values. Also I'd like this function to exist in both consing and destructive versions, or maybe a destructive version is enough.

[Christophe] What would you like the destructive thing to do? Note that EXTREMUM, unlike SORT, in the non-destructive version needs only one storage location. I'm confused. As for the n most extreme values idea, it's fine by me, but I think that we do actually need more discussion in a public forum on this one.

[AK] The comment about a destructive version referred to the n most extreme values idea.

Rainer Joswig points out that you can do this using REDUCE. -I thought there was some reason I'd considered and rejected REDUCE already, but have no idea what. Anyone?

[Rahul Jain] Maybe because it doesn't work with vectors?

[Christophe] No. REDUCE works with vectors; however, (reduce 'max '(1 2 3) :key '-) will return -1, not 1; this isn't so much of a problem with an invertible key function, but consider (reduce 'min list-of-expensive-things :key 'price).

[Tim Moore] You can do this using REDUCE, but you start venturing into the territory of functions which are a pain to write every time you need them and which may have more efficient implementations than using the high level functions:

(defun extremum (sequence predicate &key (key #'identity) (start 0) end) - (reduce #'(lambda (x y) - (if (funcall predicate (funcall key x) (funcall key y)) - x - y)) - sequence :start start :end end))

[Dan Knapp] Of course, the obvious way around this is:

(defun comparator (test &optional (key #'identity) (start 0) end) - (lambda (a b) (if (funcall test - (funcall key a) - (funcall key b)) - a - b))) - -(defun extremum (sequence test &key (key #'identity)) - (reduce (comparator test key) sequence - :start start :end end))

Though if you're going to do it with higher-order -functions in this way, you'd probably -just want (comparator), since (extremum) isn't adding -anything at all.

[A N Other] An efficient implementation of extremum would call the key function less often.

[Anonymous Coward] This specification does not (unless I misread it) properly cover the case where multiple elements have equal keys (according to predicate). In such a case, a consistent order is imposed, but it is not total, so the specification explicitly allows the answer to be wrong. That is weird; it would be reasonable to expect one of the minimal elements to be returned. Also, "the element that would appear first if the sequence were ordered according to sort" is a weak description because (a) that element is not uniquely determined (if sort is not stable) and (b) it makes it impossible to implement extremum portably without actually invoking sort (it requires that extremum makes the same decision sort would make). -Maybe we need two variants, extremum and stable-extremum.

[Anonymous Coward] What happens if sequence is empty? I think an error should -be signalled. Maybe we should take an initial-value argument like reduce -does.

[Anonymous Non-Coward] I am very confused here. Why should this not be a new -keyword for reduce instead of a completely new function? I view extremum as -merely a stopgap until it is possible to overload reduce to accept the new -keyword or until the standard allows reduce to accept it. reduce is the first -thing anybody is going to think of for this. So maybe we should call it -reduce-new or something.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Eager Future2.html b/clones/lisp/www.cliki.net/Eager Future2.html deleted file mode 100644 index 64828a3d..00000000 --- a/clones/lisp/www.cliki.net/Eager Future2.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Eager Future2 - - - - - - - -
Eager Future2
Eager Future2 provides composable concurrency primitives that unify parallel and lazy evaluation, are integrated with CL's condition system, and have automatic resource management.

Eager Future2 is the successor to Eager Future, which was a fork of PCall.

Homepage: https://common-lisp.net/project/eager-future/

License: LGPL-3.0-or-later

Repository: https://gitlab.common-lisp.net/vsedach/eager-future2.git

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Eager-Future.html b/clones/lisp/www.cliki.net/Eager-Future.html deleted file mode 100644 index 263f3ec4..00000000 --- a/clones/lisp/www.cliki.net/Eager-Future.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: eager-future - - - - - - - -
eager-future
Eager Future has been superseded by Eager Future2


-obsolete
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Eclipse.html b/clones/lisp/www.cliki.net/Eclipse.html deleted file mode 100644 index 6c55f4e7..00000000 --- a/clones/lisp/www.cliki.net/Eclipse.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: eclipse - - - - - - - -
eclipse
Eclipse is an X11 window manager written entirely in Common Lisp.

Originally created by a group of students of the 4th year CS program in Bordeaux as part of their their second-semester programming project, it's now being developed further as a free software application.

Homepage: http://common-lisp.net/project/eclipse

License: ???

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Edgar Goncalves.html b/clones/lisp/www.cliki.net/Edgar Goncalves.html deleted file mode 100644 index 4757f255..00000000 --- a/clones/lisp/www.cliki.net/Edgar Goncalves.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Edgar Goncalves - - - - - - - -
Edgar Goncalves
Edgar Goncalves -yes, the ascii world dictates that he must loose a cedilla...-, a Person who first saw the light through a couple of parenthesis in the year 2000, and never looked back. Occasionally, he steps back from lisp to check out the so called "real world", and tries to get back as soon as possible, a bit frightened!


He is the author of the following projects:

- rtm-lisp-api

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Edi Weitz.html b/clones/lisp/www.cliki.net/Edi Weitz.html deleted file mode 100644 index 323feae1..00000000 --- a/clones/lisp/www.cliki.net/Edi Weitz.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Edi Weitz - - - - - - - -
Edi Weitz
Edi Weitz is a Person. He is the author of the book Common Lisp Recipes and of various CL libraries which can be found here.
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Editing Lisp Code with Emacs.html b/clones/lisp/www.cliki.net/Editing Lisp Code with Emacs.html deleted file mode 100644 index 9d1b8bc5..00000000 --- a/clones/lisp/www.cliki.net/Editing Lisp Code with Emacs.html +++ /dev/null @@ -1,151 +0,0 @@ - - - - - CLiki: Editing Lisp Code with Emacs - - - - - - - -
Editing Lisp Code with Emacs

Keyboard tips

    -
  • Use the Standard US keyboard layout. The US keyboard's layout (unlike the - western European keyboard layouts) makes typing the punctuation - characters you need in programming languages easy.
  • -
  • Learn to touch-type.
  • -
  • Invest in a quality keyboard.
  • -

Key Swapping

    -
  • Alt key for Meta, not Escape.
  • -
  • Turn Capslock into Control.
  • -

Here's a complete keyboard layout suggested by -a photo -of a Lisp Machine keyboard:

    -
  • Swap Capslock and Backspace (Rubout in LM).
  • -
  • Swap parentheses and brackets (US layout).
  • -
  • Alt and Altgr are now Control.
  • -
  • Win keys are now Meta
  • -
  • Control keys are now Alt
  • -
  • Menu key is Compose (or Altgr).
  • -
  • Alt+arrows works like C-M-f, C-M-b, C-M-u, C-M-d, etc. (like PLT DrScheme)
  • -
  • Using a European PC 105 keyboard, the less-than ( -
  • -

-(I'm am using lately the layout: Alt/AltGr -> Control, Win -> Meta+Control, Control -> Meta. It works for Emacs and most applications. But I have problems with Xterm (Control does not work anymore), Rxvt, etc. Outside Gnome and KDE, I must use Eterm (or ansi-term within Emacs).)

Some xmodmap files that describe the Lisp machine keyboard on the picture above reasonably faithfully can be found here.

The xkeycaps program -takes care of this on X, MacOS users can -use uControl, -Windows users can -use XKeymacs.

In just about every programming language I've ever used (C, Java, -Perl, bash and LISP), and in normal prose, parentheses occur far -more often than the square bracket characters. So it's important to -make typing the parenthesis easy:

-(keyboard-translate ?\( ?\[)
-(keyboard-translate ?\[ ?\()
-(keyboard-translate ?\) ?\])
-(keyboard-translate ?\] ?\))
-

This assumes that the [ and ] are easy to reach unshifted chars.

The keyboard-translates above can interfere with pasting text using -the mouse in emacs. Another way to accomplish the same thing while -limiting the effect to Slime is:

-(define-key slime-mode-map (kbd "[") 'insert-parentheses)
-(define-key slime-mode-map (kbd "]") 'move-past-close-and-reindent)
-(define-key slime-mode-map (kbd "(") (lambda () (interactive) (insert "[")))
-(define-key slime-mode-map (kbd ")") (lambda () (interactive) (insert "]")))
-

If using Paredit, this code can be used to swap parentheses and square brackets:

-(define-key paredit-mode-map (kbd "[") 'paredit-open-round)
-(define-key paredit-mode-map (kbd "]") 'paredit-close-round)
-(define-key paredit-mode-map (kbd "M-[") 'paredit-wrap-round)
-(define-key paredit-mode-map (kbd "(") 'paredit-open-square)
-(define-key paredit-mode-map (kbd ")") 'paredit-close-square)
-

Structured editing

What is structured editing?

Structured editing is a way of editing source code which attempts, -as much as is possible, to keep the source code consistently -valid. This means, among other things, that the inserting of an open -parenthesis should insert the closing one as well (similarly for -").

Taylor R. Campbell (Riastradh on #lisp) has written a package of -lisp editing code called paredit.

There also is the newer Parinfer, which helps to keep both indentation and parens balanced. It is easy to get started and yet it provides advanced features à la Paredit, so you should definitely take a look.

The rest of this page uses functions defined in Paredit.

Start with paredit-open-list it inserts both the open and the -closing parenthesis and then leaves the cursor between the two (unless -we're in a comment or string, in which case it inserts a lone ( -character). After filling in the LISP form, use the paredit-close-list -command which moves past the closing parenthesis and reindents the -line. Here's my setup:

-(define-key slime-mode-map [(?\()] 'paredit-open-list)
-(define-key slime-mode-map [(?\))] 'paredit-close-list)
-(define-key slime-mode-map [(return)] 'paredit-newline)
-

Unstructured editing

So how do you insert a simple, standalone "(" or ")" character? I -happen to have the "=" character directly below ")" and the "\" character just to the -left of that; so here's what I use:

-(define-key slime-mode-map [(control ?\=)] (lambda () (interactive) (insert "(")))
-(define-key slime-mode-map [(control ?\\)] (lambda () (interactive) (insert ")")))
-

Choose something that makes sense to use and which requires at most -one key press (though it will probably be modified). Even with -structured editing you'll still need to insert a lone parenthesis every -now and then. Note: You can also just as easily do C-q ( -and C-q ); personally, I insert lone parentheses often -enough that that's too many keypresses for my tastes.

Splicing, Dicing and Moving Around

When editing LISP code, you shouldn't think of the source code as text, but as program structure (SEXPs). With parenthesis-aware editors, we get the same functionality used in IntelliSense (otherwise a separate IDE component in other languages). The basic lists/program manipulation commands (basic EMACS bindings) are:

    -
  • transpose-sexps (C-M-t) - swap the sexp before point with the sexp after point.
  • backward-sexp (C-M-b) - move to before the preceding sexp.
  • forward-sexp (C-M-f) - move after the following sexp.
  • kill-sexp (C-M-k) - kill the following sexp.
  • backward-up-list (C-M-u) - move point to the start of the enclosing list.
  • up-list (not bound by default) - move forward out of the current enclosing list.
  • down-list (C-M-d) - move the just after the open paren of the next list.
  • mark-sexp (C-M-@) - Keep the cursor at the start of an s-exp and executing this key strokes highlight the entire S-expression.
  • -

All of these functions take prefix args which specify how many -sexps to move around. backward-up-list can take a negative arg which -moves out of the enclosing parens but forwards, basically simulating -up-list.

When editing LISP code you will use these the -forward/backward/transpose-sexp functions far more often the the char -versions, I'd suggest swapping them so that, for example, C-M-t -(transpose-sexp) is C-t and C-t (transpose-char) is C-M-t:

-(define-key slime-mode-map (kbd "C-t") 'transpose-sexps)
-(define-key slime-mode-map (kbd "C-M-t") 'transpose-chars)
-(define-key slime-mode-map (kbd "C-b") 'backward-sexp)
-(define-key slime-mode-map (kbd "C-M-b") 'backward-char)
-(define-key slime-mode-map (kbd "C-f") 'forward-sexp)
-(define-key slime-mode-map (kbd "C-M-f") 'forward-char)
-

Use the standard keybindings for a bit and after you've figured out -how they work and how often you use them, chose some keybindings based -on your preferences. For example, I have a Dvorak keyboard where the -H, T, and N keys are located directly under the right hand, so I've -put the forward functions on then N key, the transpose functions on -the T key, and the backward functions on the H key.

In addition, paredit provides the following commands:

    -
  • paredit-open-list (() - Inserts a balanced parenthesis pair.
  • paredit-close-list (M-)) - Moves past one closing parenthesis and reindents.
  • paredit-close-list-and-newline ()) - Moves past one closing delimiter, adds a newline, and reindents.
  • paredit-splice-sexp (M-s) - Splices the list that the point is on by removing its delimiters.
  • paredit-backward-delete (DEL) - Deletes a character backward or moves backward over a delimiter.
  • paredit-forward-slurp-sexp (C-)) - Adds the S-expression following the current list into that list by moving the closing delimiter.
  • paredit-backward-slurp-sexp (C-() - Adds the S-expression preceding the current list into that list by moving the closing ((sic) opening?) delimiter.
  • paredit-forward-barf-sexp (C-}) - Removes the last S-expression in the current list from that list by moving the closing delimiter.
  • paredit-backward-barf-sexp (C-{) - Removes the first S-expression in the current list from that list by moving the closing ((sic) opening?) delimiter.
  • paredit-wrap-sexp (M-() - Wraps the following S-expression in a list.
  • -

For example, leaving point inside the Sexp (b c), slurping (a (b c) -d e f) forward would result in (a (b c d) e f), then (a (b c d e) f), -and finally (a (b c d e f)). Barfing reverses/undoes slurps. Refer to -the paredit.el -package for more functions that are similar to text editing functions, -but additionally respect parentheses (and even quotes) around SEXPs.

Indentation

A simple, consistent way to indent lisp code is using C-M-q -at the begining of an s-exp. Alternatively, use C-M-\ to -re-indent the selected region.

Learning Emacs commands

Key Quiz is a quiz game that teaches you Emacs key-bindings.

Paredit Cheat Sheet for paredit commands beyond the scope of this document.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Editor Hints.html b/clones/lisp/www.cliki.net/Editor Hints.html deleted file mode 100644 index 39b3adac..00000000 --- a/clones/lisp/www.cliki.net/Editor Hints.html +++ /dev/null @@ -1,67 +0,0 @@ - - - - - CLiki: Editor Hints - - - - - - - -
Editor Hints
The Editor Hints system is intended to provide a number of facilities to provide hints in lisp code that can be consulted by editor interfaces to determine how to indent, etc.

The common-lisp.net project page is here.

Planned components: -

    -
  • -named-readtables (done) -
  • -
  • facility to specify how forms are supposed to be indented -
  • -
  • Documentation retrieval (this became hyperdoc) -
  • -
  • support for using markup in docstrings -
  • -
  • First class source locations -
  • -
  • functions to query the programmer for input -
  • -


-development
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Edward O'Connor.html b/clones/lisp/www.cliki.net/Edward O'Connor.html deleted file mode 100644 index 1f58e9a5..00000000 --- a/clones/lisp/www.cliki.net/Edward O'Connor.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Edward O'Connor - - - - - - - -
Edward O'Connor
Having been born in 1979, I suppose I'm a YoungLisper. Here's my web page.

person

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Eirik Mikkelsen.html b/clones/lisp/www.cliki.net/Eirik Mikkelsen.html deleted file mode 100644 index 82ff8d30..00000000 --- a/clones/lisp/www.cliki.net/Eirik Mikkelsen.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Eirik Mikkelsen - - - - - - - -
Eirik Mikkelsen
Eirik Mikkelsen falls under the definition of a Person.

He has a weblog with some Lisp related content at http://d-brane.org/blog.

Eirik Mikkelsen lurks on #lisp under the nick "xirie".

Very rarely he creates wiki pages where he refers to himself in the third person.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Electronics.html b/clones/lisp/www.cliki.net/Electronics.html deleted file mode 100644 index 04fe75e7..00000000 --- a/clones/lisp/www.cliki.net/Electronics.html +++ /dev/null @@ -1,76 +0,0 @@ - - - - - CLiki: Electronics - - - - - - - -
Electronics
Tools for electronics design and signal processing.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Elephant.html b/clones/lisp/www.cliki.net/Elephant.html deleted file mode 100644 index 49700588..00000000 --- a/clones/lisp/www.cliki.net/Elephant.html +++ /dev/null @@ -1,65 +0,0 @@ - - - - - CLiki: Elephant - - - - - - - -
Elephant
[unmaintained] A portable object database based on Sleepycat (Berkeley DB) or relational databases.

As of Dec. 5, 2005, Elephant has been tested with BerkeleyDB, SQLite3, and Postgres, and allows seamless migration of data between those repositories. -For a while it did not work with Unicode enabled SBCL versions, but that has been fixed. - -


-This comparison by an Elephant developer contrasts it with today's early versions of Rucksack. -

Things to keep in mind

If you want to modify the value in a slot which doesn't hold a persistent object, just set the whole slot. Because otherwise the updated slot won't be stored in the DB. Here's an example:

;; Wrong -- the DB won't update -(setf (first (slot1 my-persistent-object)) - 'foo) - -;; Ok -(setf (slot1 my-persistent-object) - (cons 'foo (rest (slot1 my-persistent-object)))) -

Of all supported backends, BDB appears to be the primary and recommended one. Elephant may be difficult to run with Berkley DB backend on modern systems. It is not present in Quicklisp, probably due to external dependencies. It worked on 64-bit SBCL 1.4.5 / Linux 4.9 with (:berkeley-db-version . "4.7") (and not 4.8) and ASDF 3.1.5.

FAQ and the source code corresponding to the most recent (as of 2018-03-11) recommended version are somewhat non-trivial to locate. Here goes the FAQ. Concerning the source code, Darcs FAQ recommends the following to fetch repository if you don't have darcs software: - wget -r -nH -np -R "index.html*" http://www.common-lisp.net/project/elephant. This will probably fetch more than you need but it works.

Homepage: at common-lisp.net.

Fork with most recent patches: GitHub

License: LLGPL


-ObjectStore persistence
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Emacs customizations.html b/clones/lisp/www.cliki.net/Emacs customizations.html deleted file mode 100644 index a7392e05..00000000 --- a/clones/lisp/www.cliki.net/Emacs customizations.html +++ /dev/null @@ -1,62 +0,0 @@ - - - - - CLiki: Emacs customizations - - - - - - - -
Emacs customizations
Here I hope we can collect a bunch of .emacs files that display the power and versatility of Emacs used to program Lisp. This has the topic Emacs customizations. Please create your page and add the topic marker. It'll show up here.

-Another good Emacs resource is EmacsWiki.


-Topics: Emacs, IDE
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Emacs to CL Porting Attempts.html b/clones/lisp/www.cliki.net/Emacs to CL Porting Attempts.html deleted file mode 100644 index 622ea6ac..00000000 --- a/clones/lisp/www.cliki.net/Emacs to CL Porting Attempts.html +++ /dev/null @@ -1,79 +0,0 @@ - - - - - CLiki: Emacs to CL Porting Attempts - - - - - - - -
Emacs to CL Porting Attempts

Porting Emacs to CL Attempts

This page is not for emacsen and half-emacs clones, but attempts trying to exactly porting Emacs to CL

Attempts -

    -
  • hemlocks's elisp attempt -
  • -
  • clocc's elisp attempt -
  • -
  • pupcraft's elisp attempt -
      -
    • Lessons learned: -
    • -
    • 1. The development of emacs mirrors the complexity of the development of the modern computer. Thus, hacks to enable extremely low baud rate, C macros sprinkled everywhere to enable "efficiency" when C compilers did not support inlining, and lovecraftian x windows support. -
    • -
    • 2. The emacs community does not really care about the benefits of emacs being written in CL. -
    • -
    • 3. Common Lisp users rely heavily on Emacs + Slime. Common Lisp Users would love emacs to be written in CL, but the emacs community at large couldn't care less. in fact, Richard Stallman actively hates Common Lisp users due to their association with Symbolics. This is a systematic force slowly killing off Common Lisp users. -
    • -
    • 4. Emacs is an absolute beast, and porting directly in one go to CL would be impossible. Therefore the seemingly only way to port Emacs directly is to embed ECL (embeddable common lisp) in Emacs and incrementally compile the emacs C source code from C into Common Lisp via ECL and a custom C macro parser/compiler, gradually replacing all the C functions with ECL callbacks written in Common Lisp. This is where the project gives up. Writing a custom C macro parser and interpreter, C refactoring tool, a lisp to pycparser bridge, and standards-compliant Common Lisp runtime for ANSI C and related standard libraries in order to run Emacs in Common Lisp seems to be the correct solution, but it was just too hard. Maybe a future soul will find this knowledge useful, but they would have to be incredibly strong and capable. -
    • -
    -
  • -

Related links -

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Emacs.html b/clones/lisp/www.cliki.net/Emacs.html deleted file mode 100644 index 6e179201..00000000 --- a/clones/lisp/www.cliki.net/Emacs.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Emacs - - - - - - - -
Emacs
Emacs is the One True Editor. It has a fairly long history for a computer program, having begun from a large pile of community-developed macros written in ITS TECO (which stood for 'Tape/Text Editor and Corrector'). The implementation used on the original Lisp Machines was called EINE, for 'EINE Is Not EMACS'. The second version of EINE on the Lisp Machines was known as ZWEI, for 'ZWEI Was Eine Initially'. These are also version numbers in German. These Emacsen were written in Lisp out of necessity, not out of choice, since ZetaLisp was the systems programming language on the Lisp Machines.

Another implementation of Emacs, called Multics Emacs (since it ran on Multics), innovated the notion of using Lisp as the programming language for implementing Emacs. The version of Emacs implemented by James Gosling (commonly known as Gosmacs) came directly from Multics Emacs. Richard Stallman's GNU Emacs has Gosmacs as its ancestor, and from GNU Emacs came XEmacs. Most Common Lisp systems implement their own idiosyncratic and non-portable Emacs, such as CMUCL's Hemlock.

For an extensive collection of information about various Emacs implementations see Craig Finseth's Emacs Implementations and Literature. Craig Finseth also has an excellent treatise on the implementation of Emacs-like editors available for free in HTML format, The Craft of Text Editing. It is required reading for any Emacs implementor.

Work is very slowly progressing to design a portable Emacs based on Common Lisp, (and maybe even CLIM) rather than the idiosyncratic and aging Emacs Lisp dialect, elisp, that all Emacsen deriving from GNU Emacs use. Take a look at CL-Emacs for more information.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Enchant.html b/clones/lisp/www.cliki.net/Enchant.html deleted file mode 100644 index 9c86b7c8..00000000 --- a/clones/lisp/www.cliki.net/Enchant.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Enchant - - - - - - - -
Enchant
An interface for Enchant spell-checker library

CL Enchant is a Common Lisp interface for the Enchant spell-checker library. Enchant is a generic spell-checker library which uses other spell-checkers transparently as back-end. For more information see the project's page: CL Enchant.

Tags: Library, Text, Public Domain

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Encline.html b/clones/lisp/www.cliki.net/Encline.html deleted file mode 100644 index ae216841..00000000 --- a/clones/lisp/www.cliki.net/Encline.html +++ /dev/null @@ -1,73 +0,0 @@ - - - - - CLiki: Encline - - - - - - - -
Encline
Encline is a Common Lisp software engine for enterprise-class software development.

Encline will include the following layers:

    -
  • Frame Database -
  • -
  • Workflow Engine -
  • -
  • Group Communication Toolkit -
  • -
  • Transaction Monitor -
  • -
  • Failure Recovery System -
  • -
-Encline development is a result of 2 years of attempts to model the common enterprise-class software infrastructure and should be suitable for the following niches:

    -
  • Groupware -
  • -
  • Content Management -
  • -
  • Manufacturing -
  • -
  • Decision Management -
  • -
-and so on. The project is at a very initial stage of development, however the most important concepts are already issued.

Project is available here (dormant/obsolete; FTP/repository links are broken).

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Engelke Eschner.html b/clones/lisp/www.cliki.net/Engelke Eschner.html deleted file mode 100644 index 839bff6f..00000000 --- a/clones/lisp/www.cliki.net/Engelke Eschner.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Engelke Eschner - - - - - - - -
Engelke Eschner
I guess I'm a Person who probably belongs to the group of YoungLispers, but I don't consider myself a Lisper yet.

I do Java at university, PHP at work and Lisp in my sparetime.

I do have a blog, too.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Eos.html b/clones/lisp/www.cliki.net/Eos.html deleted file mode 100644 index 605ec897..00000000 --- a/clones/lisp/www.cliki.net/Eos.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Eos - - - - - - - -
Eos
Eos is an obsolete fork of FiveAM developed by Adlai Chandrasekhar.

Source repository: https://github.com/adlai/Eos

License: MIT

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Epilog System and Episodic Logic.html b/clones/lisp/www.cliki.net/Epilog System and Episodic Logic.html deleted file mode 100644 index 7ae7fa87..00000000 --- a/clones/lisp/www.cliki.net/Epilog System and Episodic Logic.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Epilog System and Episodic Logic - - - - - - - -
Epilog System and Episodic Logic
In contrast to Epilog Inference Package, the original Epilog system was created by Schubert, Hwang and Schaeffer for knowledge representation in Natural Language Processing, and is documented at the University of Rochester's Web. While it is properly a member of Knowledge Representation Systems, it can be consider a member of Theorem Provers as well.
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Erik Enge.html b/clones/lisp/www.cliki.net/Erik Enge.html deleted file mode 100644 index f88506cb..00000000 --- a/clones/lisp/www.cliki.net/Erik Enge.html +++ /dev/null @@ -1,71 +0,0 @@ - - - - - CLiki: Erik Enge - - - - - - - -
Erik Enge
Erik Enge is a Person.

Projects:

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Erik Greenwald.html b/clones/lisp/www.cliki.net/Erik Greenwald.html deleted file mode 100644 index 86218049..00000000 --- a/clones/lisp/www.cliki.net/Erik Greenwald.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Erik Greenwald - - - - - - - -
Erik Greenwald
Erik Greenwald is a Lisper and a Person.

He's working on a replacement for the defunct cia.vc service https://github.com/erikg/cl-cia with a UCW frontend at http://elfga.com/notify.

His blog is at http://elfga.com/blog/

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Erik Winkels.html b/clones/lisp/www.cliki.net/Erik Winkels.html deleted file mode 100644 index 7a08ed6f..00000000 --- a/clones/lisp/www.cliki.net/Erik Winkels.html +++ /dev/null @@ -1,64 +0,0 @@ - - - - - CLiki: Erik Winkels - - - - - - - -
Erik Winkels
Erik Winkels is a Person. Discovered Lisp first on his Atari ST somewhere in 1987 and then didn't think about it for about twelve years. Came across Stephen Slade's Object Oriented Common Lisp in a second-hand bookstore, thought it looked interesting and has been hooked ever since. Progress is slow but certain.

Current projects: -

Older projects: -

    -
  • CL-SDL: Common Lisp bindings for the SDL (Simple Directmedia Library).
    -(I'm not working on this project anymore, Matthew Danish is now the project lead.) -
  • -

You can reach me at aerique@xs4all.nl or waste some time at http://www.aerique.net/.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Ernestine.html b/clones/lisp/www.cliki.net/Ernestine.html deleted file mode 100644 index 54dc14d5..00000000 --- a/clones/lisp/www.cliki.net/Ernestine.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Ernestine - - - - - - - -
Ernestine
Ernestine is a music management application written in Common Lisp -It is a CLIM application.

The project page : Ernestine


- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Erudite.html b/clones/lisp/www.cliki.net/Erudite.html deleted file mode 100644 index b6d6661b..00000000 --- a/clones/lisp/www.cliki.net/Erudite.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Erudite - - - - - - - - -
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Erwin J. Prinz.html b/clones/lisp/www.cliki.net/Erwin J. Prinz.html deleted file mode 100644 index 712ddd8d..00000000 --- a/clones/lisp/www.cliki.net/Erwin J. Prinz.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Erwin J. Prinz - - - - - - - -
Erwin J. Prinz
I am Erwin J. Prinz am a Person and have been using Lisp for about 2 years now. I hail from Jestetten, Germany, and live in Austin, Texas, working for Freescale Semiconductor Inc.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Esrap.html b/clones/lisp/www.cliki.net/Esrap.html deleted file mode 100644 index 3619e7f2..00000000 --- a/clones/lisp/www.cliki.net/Esrap.html +++ /dev/null @@ -1,61 +0,0 @@ - - - - - CLiki: ESRAP - - - - - - - -
ESRAP
A packrat parser for Common Lisp

In addition to regular Packrat / Parsing Grammar / TDPL features ESRAP -supports:

    -
  • dynamic redefinition of nonterminals -
  • -
  • inline grammars -
  • -
  • semantic predicates -
  • -
  • introspective facilities -
  • -

Homepage: GitHub Pages

Repository: GitHub

License: BSD

See Also: esrap-peg, esrap-liquid, parseq

Topics: Text

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Etiquette.html b/clones/lisp/www.cliki.net/Etiquette.html deleted file mode 100644 index 72733b62..00000000 --- a/clones/lisp/www.cliki.net/Etiquette.html +++ /dev/null @@ -1,73 +0,0 @@ - - - - - CLiki: Etiquette - - - - - - - -
Etiquette
Etiquette is a networking protocol construction framework.

The project's goal is to build a framework for rapid design of network communication code. Etiquette interaction protocols will capture communication occuring in networked applications along with error-handling and security monitoring code. Etiquette provides debugging facilities (tracing and single-stepping the protocols, with fine-grained control over the reported details).

Features implemented: -

    -
  • First-class interaction protocols -
  • -
  • Support for legacy protocols -
  • -
  • Basic error handling -
  • -
  • Debugging facilities -
  • -
  • TCP/IP communication transport -
  • -

TODO: -

    -
  • Protocol encapsulation -
  • -
  • Explicit protocol looping syntax -
  • -
  • Sophisticated recovery policies -
  • -
  • Built-in security hazard reporting -
  • -

Etiquette is written in Common Lisp. The project is written in modular and object-oriented fashion. The SourceForge project page is here. The author is Eugene Zaikonnikov.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Eugene Zaikonnikov.html b/clones/lisp/www.cliki.net/Eugene Zaikonnikov.html deleted file mode 100644 index d14e0ff1..00000000 --- a/clones/lisp/www.cliki.net/Eugene Zaikonnikov.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Eugene Zaikonnikov - - - - - - - -
Eugene Zaikonnikov
Can be found on the #lisp IRC channel and known there as Varjag.


-Person
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/European Common Lisp Meeting, April 2005.html b/clones/lisp/www.cliki.net/European Common Lisp Meeting, April 2005.html deleted file mode 100644 index fe77aa46..00000000 --- a/clones/lisp/www.cliki.net/European Common Lisp Meeting, April 2005.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: European Common Lisp Meeting, April 2005 - - - - - - - -
European Common Lisp Meeting, April 2005
The European Common Lisp Meeting, April 2005 (more a Conference actually) took place in Amsterdam on the 24th of April 2005.
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/European Common Lisp Meeting, April 2006.html b/clones/lisp/www.cliki.net/European Common Lisp Meeting, April 2006.html deleted file mode 100644 index 87c58e74..00000000 --- a/clones/lisp/www.cliki.net/European Common Lisp Meeting, April 2006.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: European Common Lisp Meeting, April 2006 - - - - - - - -
European Common Lisp Meeting, April 2006
The European Common Lisp Meeting, April 2006 (more a Conference actually) took place in Hamburg on the 30th of April 2006.
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/European Common Lisp Meeting, April 2008.html b/clones/lisp/www.cliki.net/European Common Lisp Meeting, April 2008.html deleted file mode 100644 index 56c3440d..00000000 --- a/clones/lisp/www.cliki.net/European Common Lisp Meeting, April 2008.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: European Common Lisp Meeting, April 2008 - - - - - - - -
European Common Lisp Meeting, April 2008
The European Common Lisp Meeting, April 2008 (more a Conference actually) took place in Amsterdam on the 20th of April 2008. More info is at the meeting's page.
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/European LISP and Scheme Workshop.html b/clones/lisp/www.cliki.net/European LISP and Scheme Workshop.html deleted file mode 100644 index 660c1500..00000000 --- a/clones/lisp/www.cliki.net/European LISP and Scheme Workshop.html +++ /dev/null @@ -1,60 +0,0 @@ - - - - - CLiki: European LISP and Scheme Workshop - - - - - - - -
European LISP and Scheme Workshop
List of workshops:

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/European Lisp Symposium 2009.html b/clones/lisp/www.cliki.net/European Lisp Symposium 2009.html deleted file mode 100644 index 2fd8caa7..00000000 --- a/clones/lisp/www.cliki.net/European Lisp Symposium 2009.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: European Lisp Symposium 2009 - - - - - - - -
European Lisp Symposium 2009
The second European Lisp Symposium will be held in Milan, Italy, May 27-29 2009. See the web site for information: ELS 2009.


-Conference
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/European Lisp and Scheme Workshop.html b/clones/lisp/www.cliki.net/European Lisp and Scheme Workshop.html deleted file mode 100644 index 660c1500..00000000 --- a/clones/lisp/www.cliki.net/European Lisp and Scheme Workshop.html +++ /dev/null @@ -1,60 +0,0 @@ - - - - - CLiki: European LISP and Scheme Workshop - - - - - - - -
European LISP and Scheme Workshop
List of workshops:

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Exercises.html b/clones/lisp/www.cliki.net/Exercises.html deleted file mode 100644 index e7e2033b..00000000 --- a/clones/lisp/www.cliki.net/Exercises.html +++ /dev/null @@ -1,126 +0,0 @@ - - - - - CLiki: Exercises - - - - - - - -
Exercises

Common Lisp Programming Exercises

In general, you don't have to use a strict Common Lisp exercise -source: a problem statement or a specification can be implemented in -any programming language, including Common Lisp, even if the author of -the problem had another specific programming language in mind. Of -course, that means that some exercises become trivial, and other may -be more difficult, so some adaptation may be needed: just take it as -part of the exercise ;-)

Nevertheless, Common Lisp has specific and unique features which can only be addressed by a carefully designed set of exercises tailored to it. For example, standard exercises won't cover conditions or multiple (return) values, let alone macros.

Lisp Books:

  • -ANSI Common Lisp by Paul Graham seems to be the only textbook in existence coming with what resembles an exhaustive set of basic exercises. Check out annotations on this book by Chris Riesbeck as Graham's CL style is not flawless.
  • Despite its title, the book Paradigms of Artificial Intelligence Programming by Peter Norvig is a very good introductory book to Common Lisp. Each chapter contains exercises and answers to them.
  • - -Structure and Interpretation of Computer Programs -has a number of exercises, similarly designed with scheme in mind, -but that one can implement in Common Lisp without difficulty, such as: -Solutions in CL -by Eli Bendersky (only the first exercises are in CL, later he -switched to scheme, but you can do everything in CL).

  • -

-Probably the best sources of lisp exercises are your university -courses and teachers, for example:

-Here are some other lisp exercises sources.

-

Some automatic on-line programming series accept lisp submissions, or -lisp produced results, including:

  • -Kattis Online Judge -where you would submit CL programs run with sbcl. See Kattis Lisp Help.

  • -
  • -Sphere Online Judge -where you would submit CL programs run with sbcl

  • -
  • -Project Euler -where I'm told you only have to submit the answers, -so you can use any CL implementation to compute them.

  • -
  • -CodeEval -has many coding challenges categorized easy, moderate, hard. -It doesn't accept solutions written in CL, but who cares? -
  • -

There are also language agnostic programming exercises books such as: -

A useful resource can be IDEone, a web IDE allowing you to write, compile and run little programs in various languages, including Common Lisp (sbcl or clisp).

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Exporting Struct-Related Functions.html b/clones/lisp/www.cliki.net/Exporting Struct-Related Functions.html deleted file mode 100644 index 9f4c9813..00000000 --- a/clones/lisp/www.cliki.net/Exporting Struct-Related Functions.html +++ /dev/null @@ -1,56 +0,0 @@ - - - - - CLiki: Exporting Struct-Related Functions - - - - - - - -
Exporting Struct-Related Functions
Brief discussion of functions to be considered for export when creating Lisp structures with defstruct

(defstruct url - (protocol :http :type (member :http :ftp)) - (server nil :type string) - (port 80 :type integer) - (path "/" :type string))

Certain functions, by default, are created along with it. These include the accessors (url-protocol), (url-server), (url-port), and (url-path); the constructor (make-url); the copier (copy-url); and the type predicate (url-p).

Suppose that you are using packages, and you wish to make this struct available to packages which import the one it's defined in. The only things you *have* to export are the accessors, but the constructor is useful too and there's no good reason not to export it. The same goes for the copier and the type predicate.

What about the name of the struct, itself? Sure, you can test with (url-p ...), but you can't test with (typep ... 'url) unless you export the name. You also can't use type designators which reference the struct, such as '(or url string), which you might very plausibly want to use to refer to a url OR a string which specifies one.

You could use '(or whatever-package::url string), but it's best to reserve double colons for REALLY unusual situations, to make it easy to recognize and search for those situations. This hardly qualifies.

Of course, "url" is going to be a very common variable name. There are going to be accidental situations where other packages use that symbol without any obvious indication that the symbol really comes from the URL package.

But think: is this going to cause problems? The same issue could be raised regarding standard type names ("cons" and "member" come to mind as ones which are likely to be unwittingly used as variable names). It doesn't cause trouble, because Common Lisp has separate namespaces (if you can call them that) for variables and types. The only way where you'd get into trouble is if "url" were used as a global variable by some package, but it won't be - that's one reason it's good to have naming conventions such as "*name*" for global variables.

So, if you're trying to export a struct completely, you should always export: the accessors, the constructor, the copier, the type predicate, and the name of the struct.


-online tutorial programming tips
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Express Engine.html b/clones/lisp/www.cliki.net/Express Engine.html deleted file mode 100644 index 58f5c45d..00000000 --- a/clones/lisp/www.cliki.net/Express Engine.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Express Engine - - - - - - - -
Express Engine
Express Engine is an Application for working with EXPRESS and EXPRESS-X schemas and their associated data populations.

Express Engine can be run as a GUI application or as a command line application. Currently, development is done using Xanalys LispWorks on Linux. The GUI version was written using LispWorks' CAPI system so only LispWorks can build the GUI at this time.

The application is currently undergoing massive changes part of which is a switch to a completely CLIM based GUI. Hopefully, this will mean that CMUCL or SBCL combined with McCLIM will be a viable development platform.

Express Engine is actively being maintained as a project on SourceForge.net. The project web site and Summary page are available. -

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Exscribe.html b/clones/lisp/www.cliki.net/Exscribe.html deleted file mode 100644 index f7d3de91..00000000 --- a/clones/lisp/www.cliki.net/Exscribe.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - CLiki: Exscribe - - - - - - - -
Exscribe
Exscribe is a CL-based document authoring tool in the spirit of Manuel Serrano's Scribe.

Current Exscribe features (as of version 0.94.2) include: output to HTML or PDF, good support for HTML footnotes (endnotes only on PDF backend), ok support for table-of-contents and bibliography, and most importantly, programmability.

All that in a way largely compatible with Manuel Serrano's Scribe (given a published abstraction layer). -These feature are few, but useful enough so that I (Fare Rideau) use Exscribe for all the pages I write.

Currently missing (intended future) features include: a better cl-typesetting backend (work in progress), Markdown/ReST/TeX syntax in addition/complement/combination with the Scribble syntax, cl-bibtex bridge, graphics, boxes, orphans, styles, etc.

Unlike most other document authoring systems, Exscribe is programmable: I casually compute content on-the-fly within documents. -However, unlike the only widespread programmable document authoring system, namely (La)TeX, it's programmable in a decent language, namely Lisp.

Exscribe is directly inspired by Manuel Serrano's Scribe, and largely compatible with it. Actually, I use Exscribe as a drop-in replacement for Scribe, within the strictures of my programming style: with a small abstraction layer, my Scribe files run with both Scribe and Exscribe, with similar output as seen with a web browser (the output of Exscribe is actually cleaner).

I use Exscribe with Scribble syntax, but it is trivial to translate from your usual SEXP syntax, and there is a builtin mechanism to allow for arbitrary text filters (so you could embed a Markdown syntax within Exscribe documents).

I used to use Scribe, but Scribe was discontinued in favor of the slightly incompatible Skribe. Instead of learning Skribe and migrating my documents to it, and continue to cope with a few small limitations that really annoyed me, I opted to reimplement myself a variant of Scribe. The result is Exscribe. In many ways, it's a quick and dirty hack, thrown together in a few tens of hours of intensive work. But I like the architecture of it, and though it doesn't do much, it does just what I need for the time being, and it does it exactly the way I want. When it fails, I have noone to blame but myself. All my new web pages are written with it.

Exscribe currently mainly targets HTML and so currently is mainly a web authoring tool, and it can also be used as a Lisp Markup Language. But a CL-typesetting backend is already available, and will hopefully match and surpass the HTML backend Real Soon Now(tm).

At the time being, Exscribe is definitely not for non-hacker users: error checking and reporting is minimal, and documentation is almost absent. However, in its current state it is already fit for use by developers, and I'm open to collaboration to develop it. The Scribe documentation should be mostly valid, and an example that uses most of the capabilities present in Exscribe is here: - http://fare.tunes.org/files/asdf-packages/exscribe-examples.tar.gz

Bitrot has made it impossible to get the native code Scribe running anymore (one probably could if willing to invest some substantial effort in either retrocomputing or porting). However, the unstable and slow JVM version of Scribe can still be run. Exscribe on CMUCL or SBCL compiles my documents much faster (performance is less good with other implementations, but always better than the JVM Scribe on my documents).

Exscribe depends on other packages: meta, fare-utils, fare-matcher, scribble and cl-launch. You will need cl-launch to run it from the unix command-line. The PDF backend uses cl-typesetting. You can also compile Exscribe with XCVB.

Exscribe source code is at: https://gitlab.common-lisp.net/frideau/exscribe

Note that the referred Scribe does not really have anything to do with the already established language Scribe from the early 1980's. That is why Manuel Serrano renamed it to Skribe in its new (slightly incompatible) incarnation. Though there were implementations of the old Scribe in Lisp, it didn't have a Lisp-related syntax. See Brian Reid, "Scribe: A Document Specification Language and its Compiler", Technical Report CMU-CS-81-100, 1981.


-document preparation
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Extension webactions.html b/clones/lisp/www.cliki.net/Extension webactions.html deleted file mode 100644 index 5a04f474..00000000 --- a/clones/lisp/www.cliki.net/Extension webactions.html +++ /dev/null @@ -1,303 +0,0 @@ - - - - - CLiki: Extension webactions - - - - - - - -
Extension webactions
Well it seems that I had similiar ideas about how a web development tool might look as the implementor if kpax might have have also. However let me stress the following: The forthcoming code is totally undocumented and just used here internally. It combines a few ideas I had about web development, and it borrows from following things: -
    -
  • ucw -
  • -
  • kpax
  • -
  • clim
  • -

      Yeah you read that write it borrows from clim. On of it's major attractions to me is the Present/Accept Model. Some others have worked for me in this area and they ported this tool to the web surrounding. If there is some interest, then I might make it publicy available. Just let me know.

      Now here's my take on extending webactions into that direction -

    -
(in-package :qss.wa.shop) - -(defclass pane () - ((view-name :accessor view-name :initarg :view-name) - (view-value :accessor view-value :initarg :view-value - :initform "") - (model-slot :accessor model-slot :initarg :model-slot))) - -(defclass input-pane (pane) - ((prompt :accessor prompt :initarg :prompt :initform "") - (view-value-valid :accessor view-value-valid :initform t) - (is-missing :accessor is-missing - :initarg :is-missing - :initform nil))) - -(defclass checkbox-pane (input-pane) - ((default :accessor default :initarg :default))) - -(defclass text-input-pane (input-pane) - ((size :accessor size :initarg :size :initform "20") - (maxlength :accessor maxlength :initarg :maxlength :initform - "20"))) - -(defclass text-area-input-pane (input-pane) - ((rows :accessor rows :initarg :rows :initform "10") - (cols :accessor cols :initarg :cols :initform "50"))) - -(defclass password-input-pane (text-input-pane) - ()) - -(defclass integer-input-pane (text-input-pane) - ()) - - - - -(defclass option-input-pane (input-pane) - ((default :accessor default :initarg :default :initform nil) - (options :accessor options :initarg :options :type list))) - - - -(defclass view () ()) -(defclass html-view (view) ()) -(defclass html-table-view (html-view) ()) - -(defparameter +html-view+ (make-instance 'html-view)) -(defparameter +html-table-view+ (make-instance 'html-table-view)) - - - -(defclass form () - ((panes :accessor panes :initarg :panes :type list))) - -(defclass prompt-form (form) ()) - -(defgeneric form-validator (form req) - (:documentation "A collection to validata a whole form, -will probably call into view-validator which is used for -validating one visual element")) - - -(defgeneric view-validator (input-pane)) -(defgeneric prompt-for (thing view stream) - (:method ((pane text-input-pane) (view html-view) stream) - (if (is-missing pane) - (html-stream stream - ((:span :class "missing") - ((:input :type "text" :name (view-name - pane) - :size (size pane) - :maxlength (maxlength pane) - :value "")))) - (html-stream - stream - ((:input :type "text" :name (view-name pane) - :size (size pane) - :maxlength (maxlength pane) - :value (view-value pane) - ))))) - (:method ((pane text-area-input-pane) (view html-view) stream) - (if (is-missing pane) - (html-stream stream - ((:span :class "missing") - ((:textarea :name (view-name pane) - :cols (cols pane) - :rows (rows pane)) - ""))) - (html-stream - stream - ((:textarea :name (view-name pane) - :cols (cols pane) - :rows (rows pane)) - (:princ-safe (view-value pane)))))) - - ;;; ATTENTION redundant code could be factored out - - (:method ((pane password-input-pane) (view html-view) stream) - (if (is-missing pane) - (html-stream stream - ((:span :class "missing") - ((:input :type "password" :name (view-name - pane) - :size (size pane) - :maxlength (maxlength pane) - :value "")))) - (html-stream - stream - ((:input :type "password" :name (view-name pane) - :size (size pane) - :maxlength (maxlength pane) - :value ""))))) - (:method ((pane option-input-pane) (view html-view) stream) - (html-stream - stream - ((:select :name (view-name pane)) - (dolist (option (options pane)) - (html-stream - stream - (if (string= option (default pane)) - (progn - (inspect option) - (html-stream - stream - ((:option :selected "selected") - (write-string option stream)))) - (html-stream - stream - (:option (write-string option stream)))))))))) - -;; I feel the prompt and present stuff can be combined -;; just for the time beeing I separate them - -(defgeneric present (thing view stream) - (:method ((thing text-input-pane) (view html-table-view) stream) - (write-string (view-value thing) stream))) -

Agreed, some of you can write this much more elegant. But for my use it's "good" enough and "extensible" enough.

As said it's not documented at all, because it was/is my first take on it.

Just so much -view-name is the name I like to give the visual control (in some web-form) -view-value is the containing value -model-slot is a link to a slot of a Database object.

The kpax developers have similiar but much more elaborated scheme. AFAIKS I would go in the same direction.

So here's what the kpax developers have written: -

(defclass web-form-field-definition () - ((parent :accessor get-parent :initarg :parent) - (name :accessor get-name :initarg :name) - (label :accessor get-label :initform nil) - (type :accessor get-type :initarg :type) - (formatter :accessor get-formatter :initform #'princ-to-string) - (parser :accessor get-parser :initform #'identity) - (validator :accessor get-validator :initform (constantly t)) - (options :accessor get-options :initform nil) - (comments :accessor get-comments :initform nil))) -

As you see they have though a little bit further. The have a formatter function, a parser function and a validator function tight to the visual element. But what they do not have is a link to some external objects (for persistence e.g).

My idea is that updates may look like this:

(defmethod update-model-from-view ((view input-pane) (model t1-class)) - (setf (slot-value model (slot-value view 'model-slot)) - (view-value view))) -

The kpax Developers have written: -

(defun copy-slots-form->object (form object slots) - "Copy the named slots from a form to an object" - (dolist (slot slots) - (cond ((symbolp slot) - (setf (slot-value object slot) (field-value form slot))) - ((consp slot) - (setf (slot-value object (cdr slot)) (field-value form (car slot)))) - (t - (error "unknown slot spec ~s" slot))))) -

But as you can see this approaches are nearly identical. And this is an interesting coincidence. I did not know how that the kpax people did it that way.

Now let's see some small example:

How I do a form

;;;; Input panes for addresses -;; It's obvious that this code can be generated, just for now -;; write it down by hand -(defclass address-street (text-input-pane) - ((prompt :initform "Your address:") - (view-name :initform "adr-street") - (model-slot :initform 'qss.db:adr-street))) - - -(defclass address-city (text-input-pane) - ((prompt :initform "Your city:") - (view-name :initform "adr-city") - (model-slot :initform 'qss.db:adr-city))) - - -(defclass address-zip (text-input-pane) - ((prompt :initform "Your zip-code:") - (view-name :initform "adr-zip") - (model-slot :initform 'qss.db:adr-zip))) - - -(defclass address-country (text-input-pane) - ((prompt :initform "Your country:") - (view-name :initform "adr-country") - (model-slot :initform 'qss.db:adr-country))) - -;;; the address input form - -(defclass address-input-form (form) - ((address-street :accessor address-street - :initform (make-instance 'address-street)) - (address-city :accessor address-city - :initform (make-instance 'address-city)) - (address-zip :accessor address-zip - :initform (make-instance 'address-zip)) - (address-country :accessor address-country - :initform (make-instance 'address-country)))) - -(defmethod initialize-instance :after ((form address-input-form) &rest initargs) - "This step is done to have a 'flat' view into the form, this probably won't work -anytime, but if it does it eases the validation and output massivly, instead of -x calls one can use a loop." - (declare (ignore initargs)) - (setf (panes form) - (list (address-street form) - (address-city form) - (address-zip form) - (address-country form)))) - -

I do not have the exact counterpart, but some excerpt from it:

The kpax way

(defwebform demo-web-form - ((:group personal-info - :label "Personal Info" - :members ((fullname :text :label "Fullname") - (username :text :label "Username" - :options (:size 10) - :validator (all required (limited-string 8 4) contains-no-spaces)) - (password :password :label "Password" - :options (:size 10) - :validator (or optional (limited-string 32))) - (password2 :password :label "Password" - :options (:size 10) :comment "[Confirmation]" - :validator (or optional (limited-string 32))) - (gender :choice - :options (:values *genders* :style :buttons) - :parser parse-keyword :formatter string-capitalize - :validator (or optional (list-element *genders*))) - (age :text :label "Age" - :options (:size 4) - :parser s-utils:parse-integer-safely - :validator (integer-range 0 150)))) -

Now it gets interesting. We can compare the design decisions: -The kpax Developers have tighten the validators to the slots of a class, I let them stay alone as "generic" functions", the ucw folks have bind it to the slots of the class also. The charactristics are therefor: -

    -
  • the ucw and kpax people have to think about the validators while defining this form.
  • -
  • In my solution this is deferred to later.
  • -
-Of course that is not fully true, because they can give the slot a new value later also.

But their example has one advantage: They can see on one sight what they can expect for the slots of their view class. This is not true for my solution. You have to browse -

    -
  • the class
  • -
  • the generic functions (for parsing, presenting, formatting, validation)
  • -

Of course my solution needs less memory. But this hardly could be a problem nowadays. So I'd argue the decisions from the ucw and kpax are the better ones.

What do you think?


-web development webactions kpax ucw
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/F2CL.html b/clones/lisp/www.cliki.net/F2CL.html deleted file mode 100644 index e9a4ba82..00000000 --- a/clones/lisp/www.cliki.net/F2CL.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: F2CL - - - - - - - -
F2CL
F2CL is a Fortran 77 programming language to Common Lisp translator. It comes as part of CLOCC. It is also available as a Debian package named cl-f2cl.
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/FAQ.html b/clones/lisp/www.cliki.net/FAQ.html deleted file mode 100644 index 00bbe06f..00000000 --- a/clones/lisp/www.cliki.net/FAQ.html +++ /dev/null @@ -1,80 +0,0 @@ - - - - - CLiki: FAQ - - - - - - - -
FAQ
Use this topic marker to tag any CLiki pages that answer Frequently Asked Questions.

    -
  • -Case sensitivity - - FAQ: Is Common Lisp really case-sensitive? -
  • -
  • -comp.lang.lisp - - Everybody's favourite newsgroup: comp.lang.lisp (news:comp.lang.lisp) is an excellent place to get help with a programming problem, but if you ask about an obvious homework problem you'll be unmercifully chided, or helped in ways your teacher will least expect -
  • -
  • -Creating Executables - - Most Common Lisp implementations support creating native-format executable files -
  • -
  • -directory listing - - FAQ: How do I list the contents of a directory? How do I tell if a pathname is a file or directory? -
  • -
  • -Lisp newbie - - Where do I start? -
  • -
  • -Naming conventions - - Some symbol naming conventions, distilled from CLHS, the Lisp FAQ, and comp.lang.lisp -
  • -
  • -Nasal Demons - - An euphemism for -
  • -
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/FEMLISP.html b/clones/lisp/www.cliki.net/FEMLISP.html deleted file mode 100644 index dacc40a9..00000000 --- a/clones/lisp/www.cliki.net/FEMLISP.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: FEMLISP - - - - - - - -
FEMLISP
FEMLISP is a Mathematics Application which solves partial differential equations with the help of the finite element method (FEM).

Source code is available at the project site, CVS access via savannah.nongnu.org. I am thinking about moving it to common-lisp.net. (Nicolas Neuss)

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/FFA.html b/clones/lisp/www.cliki.net/FFA.html deleted file mode 100644 index 0b643a3f..00000000 --- a/clones/lisp/www.cliki.net/FFA.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: ffa - - - - - - - -
ffa
Foreign friendly arrays for Common Lisp. Provides a macro that allows foreign functions to access the contents of the array at a given pointer, using the best available method given the Common Lisp implementation.

See the announcement, or read the documentation in the package.

Note that in July 2008, I split the array operation functions that do not depend on CFFI into the package ARRAY-OPERATIONS.

You can download the latest version from Github. The license is LLGPL.


-FFI
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/FFI.html b/clones/lisp/www.cliki.net/FFI.html deleted file mode 100644 index 19492217..00000000 --- a/clones/lisp/www.cliki.net/FFI.html +++ /dev/null @@ -1,288 +0,0 @@ - - - - - CLiki: ffi - - - - - - - -
ffi
FFI is short for Foreign Function Interface, which is useful for linking to arbitrary C (and not only) libraries from Lisp code.

    -
  • -ah2cl - - ah2cl (Another Header to Common Lisp converter) is a tool for parsing C header files and generating FFI bindings for CLISP and UFFI -
  • -
  • -bike - - bike is a library which implements cross-platform Common Lisp interface to .Net Core platform, using lisp compatibility layers -
  • -
  • -c2ffi - - c2ffi is a tool for extracting declarations from C source and header using Clang's AST -
  • -
  • -CFFI - - CFFI, the Common Foreign Function Interface, purports to be a portable foreign function interface for Common Lisp -
  • -
  • -cffi-j - - cffi-j is a set of CFFI bindings for the J programming language (libj.so library) -
  • -
  • -cffi-objects - - CFFI-objects is a library that enhances CFFI with several new constructions to use when you need to work with complex structures or objects -
  • -
  • -cl-applescript - - cl-applescript provides an FFI API for interfacing AppleScript and Common Lisp -
  • -
  • -cl-autowrap - - cl-autowrap is a point-and-shoot tool for creating and distributing FFI wrappers -
  • -
  • -CL-ObjC - - CL-OBJC is a portable common-lisp/objective-c bridge written using CFFI -
  • -
  • -CL-Pango - - CL-PANGO is a cffi binding to the Pango text formatting library -
  • -
  • -cl-tc - - cl-tc is a set of bindings for the Tokyo Cabinet database -
  • -
  • -cl-tk - - CL-TK provides a simple bridge to Tcl/Tk -
  • -
  • -clave - - The Common Lisp Audio Video Engine (CLAVE) is a Lisp FFmpeg interface -
  • -
  • -CLAW - - Common Lisp autowrapping facility for quickly creating -
  • -
  • -CLERIC - - CLERIC (Common Lisp Erlang Interface) is an implementation of the Erlang distribution protocol, comparable with erl_interface and jinterface -
  • -
  • -Cliconv - - Cliconv is a simple FFI interface to the iconv library that lets Common Lisp programs translate byte sequences from/to different character encodings -
  • -
  • -CLLIB - - CLLIB is a varied collection of Common lisp tools and routines in CLOCC -
  • -
  • -clTcl - - clTcl provides an interface to Tcl/Tk via Tcl scripts embedded in Common Lisp -
  • -
  • -Cobstor - - Cobstor is a tool and an API to seamlessly access legacy Cobol application files from Common Lisp -
  • -
  • -Common Lisp Library Audience Expansion Toolkit - - FFI -
  • -
  • -cparse - - cparse is a C header file parser for building FFIs -
  • -
  • -de.setf.thrift - - de.setf.thrift is a binding for the Apache Thrift framework for scalable cross-language services development -
  • -
  • -de.setf.utility - - de setf utility is a collection of Common Lisp utilities functions and several purpose-specific libraries -
  • -
  • -doors - - Doors is an attempt to bring essential features of MS Windows (such as basic Windows API, COM and OLE) into Common Lisp -
  • -
  • -ffa - - Foreign friendly arrays for Common Lisp -
  • -
  • -ffigen - - FFIGEN (Foreign Function Interface GENerator) is a program suite that facilitates the writing of translators from C header files to foreign function interfaces for particular language implementations. -- FFIGEN Home Page -
  • -
  • -foreign-numeric-vector - - foreign-numeric-vector is a package for working with numeric vectors stored in the foreign (non-Lisp) heap -
  • -
  • -Gelisp - - Gelisp is an opensource, efficient, high-level API wrapping the Generic Constraints Development Environment (GECODE) for Common Lisp -
  • -
  • -lh-usb - - lh-usb is a set of bindings for the Linux usbfs interface for writing usb device drivers from user-space Lisp code -
  • -
  • -Objective-CL - - Objective-CL is a Common-Lisp/Objective-C bridge currently supporting a range of Lisp implementations on Mac OS X and GNUstep -
  • -
  • -perl-in-lisp - - Perl-in-Lisp is a Common Lisp FFI interface to the Perl 5 API -
  • -
  • -Pyffi - - Pyffi, inspired by Python-on-Lisp, is a Python programming language FFI for Common Lisp -
  • -
  • -Python-On-Lisp - - Python-On-Lisp is a Python programming language FFI for Common Lisp -
  • -
  • -RCL - - RCL is an FFI to communicate with the R statistics environment -
  • -
  • -rclg - - An R (statistics programming language) FFI for Common Lisp -
  • -
  • -resolver - - A UFFI interface to Linux's libresolv library (see resolver(3)) -
  • -
  • -SWIG - - SWIG is a (non-CL) tool that can generate FFI binding code from C/C++ header file declarations -
  • -
  • -uffi - - CFFI is recommended as the replacement for UFFI. -
  • -
  • -Virgil - - Virgil is a high-level and extensible FFI, built on top of CFFI and oriented towards marshaling lisp data into raw memory and back -
  • -
  • -WAAF-CFFI - - WITH-ARRAY-AS-FOREIGN-POINTER - Allows Lisp arrays to be passed to foreign functions by copying their contents to malloc'ed foreign space, using only CFFI -
  • -
  • -winhttp - - CFFI bindings to WinHTTP -
  • -

Integrating with Java: (main topic: Java) -

    -
  • -ABCL - - Armed Bear Common Lisp (aka ABCL) is a -
  • -
  • -abcl-jazz - - Code examples on to call the Java Swing API under ABCL to program GUIs -
  • -
  • -cloak - - cloak is an experimental implementation of the JVM for SBCL on Linux/x86 -
  • -
  • -CLplusJ - - CL+J is an exact, safe and complete Common Lisp interface to Java through JNI -
  • -
  • -decaf - - Decaf is an Java debugger GUI written in Lisp using CLIM -
  • -
  • -Foil - - Foil (Foreign Object Interface for Lisp) consists of a protocol and a set of libraries that facilitate access to popular object runtimes, such as the JVM (Java) and the CLI/CLR (.NET), and their libraries, from Lisp -
  • -
  • -JACOL - - The JACOL system can be used to link Java and Common Lisp applications -
  • -
  • -Jatha - - Jatha is a Java library that implements a fairly large subset of Common LISP, including most of the datatypes (e.g -
  • -
  • -jfli - - jfli provides comprehensive, safe, dynamic and Lisp-y access to Java and Java libraries as if they were Lisp libraries, for use in Lisp programs, i.e -
  • -
  • -jss - - jss is an extension for ABCL that makes it easier for me(AlanRuttenberg) to write lisp code that calls java libraries -
  • -
  • -LinJ - - Linj is a Common Lisp-like language that tries to be as similar to -
  • -
  • -Lisplets - - Lisplets are Java Servlets that forward their requests, and gather their response headers, using s-expressions over sockets -
  • -
  • -Mark Davidson - - I have been working with these infernal machines for over 22 years, and have dabbled with Lisp over time.. -
  • -
  • -snow - - Snow is a GUI description language for Java and Common Lisp, currently supporting the Swing UI library -
  • -

Integrating with .NET: (main topic: .NET) -

    -
  • -bike - - bike is a library which implements cross-platform Common Lisp interface to .Net Core platform, using lisp compatibility layers -
  • -
  • -Foil - - Foil (Foreign Object Interface for Lisp) consists of a protocol and a set of libraries that facilitate access to popular object runtimes, such as the JVM (Java) and the CLI/CLR (.NET), and their libraries, from Lisp -
  • -
  • -RDNZL - - RDNZL (pronounced "Redunzl") enables Common Lisp applications to interact with dot-NET libraries -
  • -

Of interest to FFI implementors may be Reini Urban's survey and thoughts of various FFI implementations (last modified: 2004-05-04).

One step beyond FFI is the programming language topic, which lists various programming languages implemented in Common Lisp.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/FFIGEN.html b/clones/lisp/www.cliki.net/FFIGEN.html deleted file mode 100644 index 34a94fbf..00000000 --- a/clones/lisp/www.cliki.net/FFIGEN.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: ffigen - - - - - - - -
ffigen
FFIGEN (Foreign Function Interface GENerator) is a program suite that facilitates the writing of translators from C header files to foreign function interfaces for particular language implementations. -- FFIGEN Home Page

FFIGEN can be found at http://www.ccs.neu.edu/home/lth/ffigen.

-


-FFI -
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/FFT.html b/clones/lisp/www.cliki.net/FFT.html deleted file mode 100644 index b4943fdd..00000000 --- a/clones/lisp/www.cliki.net/FFT.html +++ /dev/null @@ -1,68 +0,0 @@ - - - - - CLiki: FFT - - - - - - - -
FFT
A Common Lisp library to do Fast Fourier Transform on a multi-dimensional array of numbers. See Bordeaux-FFT for a faster implementation for one-dimensional arrays.

This library is by Patrick Stein.

The array can be any number of dimensions, but each dimension must be a power-of-two in size.

Here is a simple example on a two-dimensional input buffer. -

(require :asdf) -(asdf:operate 'asdf:load-op 'fft) - -(defparameter *buf* #2A((1 2 3 4)(5 6 7 8))) - -(let ((transformed (fft:fft *buf*))) - (fft:ifft transformed)) -

Here is an example using the a parallelized version that uses pcall which, in turn, uses Bordeaux-Threads: -

(require :asdf) -(asdf:operate 'asdf:load-op 'pfft) - -(defparameter *buf* #2A((1 2 3 4)(5 6 7 8))) - -(let ((transformed (pfft:pfft *buf*))) - (pfft:pifft transformed)) -

For a more complete description, see the home page.


-Mathematics
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/FILE-TYPES.html b/clones/lisp/www.cliki.net/FILE-TYPES.html deleted file mode 100644 index 8f730ce0..00000000 --- a/clones/lisp/www.cliki.net/FILE-TYPES.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: FILE-TYPES - - - - - - - -
FILE-TYPES
FILE-TYPES is a library to identify file formats based on file names. Written by Max Rottenkolber.


-AGPL
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/FORMAT cheat sheet.html b/clones/lisp/www.cliki.net/FORMAT cheat sheet.html deleted file mode 100644 index d8ff4c03..00000000 --- a/clones/lisp/www.cliki.net/FORMAT cheat sheet.html +++ /dev/null @@ -1,94 +0,0 @@ - - - - - CLiki: FORMAT cheat sheet - - - - - - - -
FORMAT cheat sheet
This is a mirror of http://www.celebris.net/~danlei/linux-bsd/format-strings.html (taking from the snapshot archived on 2008-03-27). Enjoy!

Common Lisp Format Control Strings

Overview of the Common Lisp format function’s control -strings. Mostly taken from the -Common Lisp HyperSpec, reduced to the examples.

Basic Output

-~c Character

(format nil "~c" #\A) => "A" -(format nil "~c" #\Space) => " " -(format nil "~:c" #\Space) => "Space" -(format nil "~@c" #\Space) => "#\\ " -(format nil "~@:c" #\Control-Partial) => "Control-<PARTIAL> (Top-F)"

-~% Newline

(format nil "~%") => "\n" -(format nil "~2%") => "\n\n"

-~& Fresh-Line

Outputs a newline if the output stream is not at the beginning of -a line. ~n& produces -~&~(n-1)%.

(format nil "~&") => "" -(format nil "a~&b") => "a\nb" -(format nil "~2&") => "\n" -(format nil "a~2&b") => "a\n\nb"

-~| Page

(format nil "~|") => "^L" -(format nil "~2|") => "^L^L") => "^L^L"

-~~ Tilde

(format nil "~~") => "~" -(format nil "~2~") => "~~"

Radix Control

-~r Radix

~nr prints arg in radix -n. The modifier flags and any remaining parameters are used as -for the ~d directive. The full form is -~radix,mincol,padchar,commachar,comma-intervalr. -If no prefix arguments are given, the argument should be an integer and is printed as an English word or Roman numeral.

(format nil "~2r" 10) => "1010" -(format nil "~16r" 10) => "A" -(format nil "~r" 4) => "four" -(format nil "~:r" 4) => "fourth" -(format nil "~@r" 4) => "IV" -(format nil "~@:r" 4) => "IIII"

-~d Decimal

The most general form of ~d is -~mincol,padchar,commachar,comma-intervald. -If arg is not an integer, it is printed in ~a format and decimal base.

(format nil "~d" 42) => "42" -(format nil "~@d" 42) => "+42" -(format nil "~:d" 123456789) => "123,456,789" -(format nil "~4d" 42) => " 42" -(format nil "~4,'#d" 42) => "##42" -(format nil "~,,'|:d" 123456789) => "123|456|789" -(format nil "~,,,4:d" 123456789) => "1,2345,6789" -(format nil "~d" 1.23) => "1.23"

-~b Binary

Just like ~d but prints in radix 2.

(format nil "~b" 10) => "1010"

-~o Octal

Just like ~d but prints in radix 8.

(format nil "~o" 10) => "12"

-~x Hexadecimal

Just like ~d but prints in radix 16.

(format nil "~x" 10) => "A"

Also see this FORMAT summary table.


-document, programming tips
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/FORMAT.html b/clones/lisp/www.cliki.net/FORMAT.html deleted file mode 100644 index b0d13e50..00000000 --- a/clones/lisp/www.cliki.net/FORMAT.html +++ /dev/null @@ -1,61 +0,0 @@ - - - - - CLiki: format - - - - - - - -
format
    -
  • -FORMAT is Common Lisp's function for creating formatted text output. It is analogous to C's 'printf', but FORMAT can do a whole lot more.
  • -
  • An article, Advanced Use of Lisp's FORMAT Function, shows how to make full use of FORMAT's abilities. (The article was previously at lisp-p.org)
  • -
  • Drew McDermott has a good argument for not using FORMAT.
  • -
  • -py-format has a lisp port of Python's str.format method, using the curly-brace {} notation.
  • -
  • A table comprehensively summarizing all FORMAT directives and the various arguments and modifiers they accept (along with further relevant information) is available.
  • -
-
-Online Tutorial, Document
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/FReT.html b/clones/lisp/www.cliki.net/FReT.html deleted file mode 100644 index f0f4f8a2..00000000 --- a/clones/lisp/www.cliki.net/FReT.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: FReT - - - - - - - -
FReT
FReT (Framework for Regression Testing) is a unit test framework with interactive testing and authoring of tests. It is CLOS-based, along the lines of XPTEST and clos-unit: test cases are organized in suites that are arranged in an inheritance hierarchy, with fixtures attached to suites. All these are explicitly represented, which makes it easy for adding new cases and suites, or modifying existing ones. The API for this has been inspired by LIFT, though the names and syntax have been changed a little.
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/FSET.html b/clones/lisp/www.cliki.net/FSET.html deleted file mode 100644 index 27092e8b..00000000 --- a/clones/lisp/www.cliki.net/FSET.html +++ /dev/null @@ -1,65 +0,0 @@ - - - - - CLiki: FSet - - - - - - - -
FSet
FSet is a functional set-theoretic collections data structure library by Scott L. Burson.

Functional means that update operations return a new collection rather than modifying the existing one in place. Set-theoretic means, among other things, that like sets etc. in mathematics, these collections can be arbitrarily nested. Compound types like maps keyed by sets of sequences just work with no additional programmer effort.

FSet is implemented using heterogeneous weight-balanced binary trees. FSet/CL, the Common Lisp implementation, uses a single, global, extensible ordering relation (implemented as a CLOS generic function), so that FSet collections can contain any combination of types.

Some examples to give the flavor: -

-* (setq s1 (set 1 2 3))        ; shadowed version of `set', not `cl:set'
-#{ 1 2 3 }
-* (setq s2 (with s1 'foo))
-#{ 1 2 3 FOO }
-* s1
-#{ 1 2 3 }
-* (setq m1 (map (s1 "without foo") (s2 "with foo")))          ; `map' also shadowed
-#{| (#{ 1 2 3 } "without foo") (#{ 1 2 3 FOO } "with foo") |}
-* (lookup m1 (set 2 3 1))
-"without foo"
-* (lookup m1 (set 3 'foo 1 2))
-"with foo"
-

For more information:

FSet page on Common-Lisp.net

A tutorial

The recommended way to obtain FSet is with Quicklisp.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/FSF.html b/clones/lisp/www.cliki.net/FSF.html deleted file mode 100644 index b7de65b7..00000000 --- a/clones/lisp/www.cliki.net/FSF.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: FSF - - - - - - - -
FSF
The Free Software Foundation was founded by EMACS creator Richard Stallman to maintain the shared community that the early hackers had, and to counter the for-profit world with a set free software tools and operating system. Most of the Linux user space tools are based on FSF software, including awk, sed, cut, find, file, and innumerable others.

The Free Software Foundation created the GPL license, and are the creators of the GNU project and of Savannah.

They have a glossy and colourful -webpage.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/FSVD.html b/clones/lisp/www.cliki.net/FSVD.html deleted file mode 100644 index 6ecb1256..00000000 --- a/clones/lisp/www.cliki.net/FSVD.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: FSVD - - - - - - - -
FSVD
FSVD is a Common Lisp implementation of Simon Funk's quasi SVD as described at http://sifter.org/~simon/journal/20061211.html in the context of its application to the netflix prize.

It's written by Gabor Melis and it is available as a Quicklisp library.

GitHub repository: https://github.com/melisgl/fsvd


-linear algebra data mining
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/FSet.html b/clones/lisp/www.cliki.net/FSet.html deleted file mode 100644 index 27092e8b..00000000 --- a/clones/lisp/www.cliki.net/FSet.html +++ /dev/null @@ -1,65 +0,0 @@ - - - - - CLiki: FSet - - - - - - - -
FSet
FSet is a functional set-theoretic collections data structure library by Scott L. Burson.

Functional means that update operations return a new collection rather than modifying the existing one in place. Set-theoretic means, among other things, that like sets etc. in mathematics, these collections can be arbitrarily nested. Compound types like maps keyed by sets of sequences just work with no additional programmer effort.

FSet is implemented using heterogeneous weight-balanced binary trees. FSet/CL, the Common Lisp implementation, uses a single, global, extensible ordering relation (implemented as a CLOS generic function), so that FSet collections can contain any combination of types.

Some examples to give the flavor: -

-* (setq s1 (set 1 2 3))        ; shadowed version of `set', not `cl:set'
-#{ 1 2 3 }
-* (setq s2 (with s1 'foo))
-#{ 1 2 3 FOO }
-* s1
-#{ 1 2 3 }
-* (setq m1 (map (s1 "without foo") (s2 "with foo")))          ; `map' also shadowed
-#{| (#{ 1 2 3 } "without foo") (#{ 1 2 3 FOO } "with foo") |}
-* (lookup m1 (set 2 3 1))
-"without foo"
-* (lookup m1 (set 3 'foo 1 2))
-"with foo"
-

For more information:

FSet page on Common-Lisp.net

A tutorial

The recommended way to obtain FSet is with Quicklisp.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/FTP.html b/clones/lisp/www.cliki.net/FTP.html deleted file mode 100644 index b4f9febe..00000000 --- a/clones/lisp/www.cliki.net/FTP.html +++ /dev/null @@ -1,60 +0,0 @@ - - - - - CLiki: ftp - - - - - - - -
ftp
Implementations of the File Transfer Protocol:

    -
  • -aftpd - - aftpd is an FTP server written in Common Lisp -
  • -
  • -CL-FTP - - cl-ftp is an FTP client -
  • -
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/FTW.html b/clones/lisp/www.cliki.net/FTW.html deleted file mode 100644 index 6c5b0423..00000000 --- a/clones/lisp/www.cliki.net/FTW.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: FTW - - - - - - - -
FTW
FTW is a Common Lisp Win32 GUI library. Includes dozens of examples, and it is lower-level than Graphic-Forms

GitHub


GUI Windows

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/FUCC.html b/clones/lisp/www.cliki.net/FUCC.html deleted file mode 100644 index d2d8299e..00000000 --- a/clones/lisp/www.cliki.net/FUCC.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: FUCC - - - - - - - -
FUCC
FUCC is FU Compiler Compiler for Common Lisp. It is distributed under terms of MIT-like license.


-parser
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Fabricio Chalub.html b/clones/lisp/www.cliki.net/Fabricio Chalub.html deleted file mode 100644 index dd26257a..00000000 --- a/clones/lisp/www.cliki.net/Fabricio Chalub.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Fabricio Chalub - - - - - - - - -
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Factorial.html b/clones/lisp/www.cliki.net/Factorial.html deleted file mode 100644 index cf2e60d4..00000000 --- a/clones/lisp/www.cliki.net/Factorial.html +++ /dev/null @@ -1,101 +0,0 @@ - - - - - CLiki: Factorial - - - - - - - -
Factorial
The Factorial of n is the product of all the integers between 1 -and n inclusive. Outside of mathematics, it is a common example to explain recursion.

(defun fact (n) - (if (zerop n) - 1 - (* n (fact (1- n))))) -
-Of course, the code here only works for non-negative integers.

Here's an iterative implementation: -

(defun fact (n) - (check-type n unsigned-byte) - (loop for i from 0 to n - for fact = 1 then (* fact i) - finally (return fact))) -

CPS: -

(defun fact (x) - (labels ((fact-aux (n k) - (cond ((zerop n) - (funcall k 1)) - (t - (fact-aux (1- n) (lambda (m) - (funcall k (* m n)))))))) - (check-type x (integer 0 *)) - (fact-aux x #'identity))) -


-There's less wrong with the above than there used to be. It is now the case that these functions simply behave in odd ways when given negative or non-integers; and of course the recursive (first) definition can still overflow the stack.

I still prefer my take, of course...: -

(defun fact (n) - ;; in a _(declarations-are-assertions) compiler like _(CMUCL) or _(SBCL), - ;; I might write (_H(DECLARE) (TYPE UNSIGNED-BYTE N)) here. - (_H(check-type) n _H(unsigned-byte)) - (let ((result 1)) - (declare (type unsigned-byte result)) - (do ((i n (1- i))) - ((= i 0) result) - (setf result (* result i))))) -
-- Christophe

Are the HyperSpec references intentional here? -- Roland Kaufmann

Well, I put them in because people might be interested in the difference between CHECK-TYPE and DECLARE, and might want to look them up. -- (Christophe)

;; A tail-recursive version, w/o an auxiliary function, inspired by Winston's fibonacci function in Lisp, 3rd edition -(defun fact (n &optional (so-far 1)) - (if (<= n 1) - so-far - (fact (- n 1) (* n so-far)))) -

--Above function overflows stack on Lispworks. ---I also use Lispworks (LWM 4.4.5). I don't have any issues with this function, once compiled, for values up to 10000. It seems to hog the machine for (fact 100000), no doubt understandably. Olivier ---If the result is not diaplayed, (fact 10000) takes 0.5 sec. and (fact 100000) takes 69 sec. on 1.8 MHz G5

;; Factorial using anonymous recursive function -(funcall ((lambda (f) #'(lambda (n) (funcall f f n))) - #'(lambda (f n) - (if (= n 0) - 1 - (* n (funcall f f (- n 1)))))) - x) -


-Here's another iterative implementation:

(defun factorial(x) - (reduce '* (loop for a from x downto 1 collect a))) -
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Fare Rideau.html b/clones/lisp/www.cliki.net/Fare Rideau.html deleted file mode 100644 index 041a21fd..00000000 --- a/clones/lisp/www.cliki.net/Fare Rideau.html +++ /dev/null @@ -1,231 +0,0 @@ - - - - - CLiki: Fare Rideau - - - - - - - -
Fare Rideau
Fare Rideau, a Person officially named François-René Rideau Ðặng-Vũ Bân, is a pseudo-random hacker and a dreamer. I'm as much (and as little) of a philosopher as a computer programmer, as you can guess by reading my home page or my blog.

I've written a few Common Lisp hacks that you may find useful, most of which are in quicklisp. -

    -
  • Basic build infrastructure -
      -
    • -asdf 3 (and before that, asdf 2, but not asdf 1). -
    • -
    • -uiop, the portability layer of asdf 3. -
    • -
    -
  • -
  • General purpose libraries: -
      -
    • -lisp-interface-library, a data structure library in Interface Passing Style. -
    • -
    • -fare-utils, a collection of small lisp utilities to make life easier. -
    • -
    • -fare-memoization, a memoization library that actually has a sensible design (unlike all the other ones) -
    • -
    • -fare-mop, a few trivial CLOS utilities that use the MOP. -
    • -
    -
  • -
  • Integration with the Unix command-line: -
      -
    • -cl-launch, an easy-to-use infrastructure to make your Lisp software runnable from the command line. -
    • -
    • -command-line-arguments, to parse arguments in command line scripts. -
    • -
    • -inferior-shell, a library on top of uiop to more nicely invoke external programs from Common Lisp. -
    • -
    • -lisp-invocation, a library to invoke Lisp implementations as external programs. -
    • -
    -
  • -
  • Various ASDF extensions: - -
  • -
  • Document preparation: -
      -
    • -exscribe, my replacement for Manuel Serrano's Scribe and Skribe. -
    • -
    -
  • -
  • Syntactic extensions: -
      -
    • -scribble, a reader extension for Skribe-like syntax or Scribble-like syntax (racket at-syntax), used by exscribe. -
    • -
    • -fare-quasiquote, a portable implementation of quasiquote that you can use with a pattern-matcher, i.e. optima. -
    • -
    • -lambda-reader, a portable way to use λ instead of LAMBDA in your code. -
    • -
    • -reader-interception to replace the Lisp Reader with your own when evaluating forms or compiling files. -
    • -
    -
  • -
  • Miscellaneous: -
      -
    • -fare-csv, a small Text utility to import CSV files. -
    • -
    • -lisp-stripper, a utility to count lines of actual CL code in CL, excluding comments, docstrings and multiline strings. -
    • -
    • -quux-hunchentoot, thread pooling for hunchentoot using lparallel. -
    • -
    • -rpm, simple support for RPM packages from CL. -
    • -
    • -single-threaded-ccl, a library to dump single-threaded images of Clozure CL, so you can use fork(2). -
    • -
    • -workout-timer, a trivial workout timer -
    • -
    -
  • -
  • Obsolete bits include: -
      -
    • -xcvb, a build system that failed to displace asdf, but provides a determinism and parallelism. Not quite superseded by asdf 3. -
    • -
    • -fare-matcher, a ML-style pattern-matcher that is extensible in a Lisp2 way. Now superseded by optima. -
    • -
    • -philip-jose, a "farmer" to manage distributed computations. -
    • -
    • a md5 hash function library. -
    • -
    • an incomplete but hackable skeletal RTF processor. -
    • -
    • -CTO, an old CLiki installation from before Cliki 2. -
    • -
    -
  • -

Note that my former CVS site is out of date, and will be phased out. I now use git (previously monotone). I haven't yet setup a web access to my repository, but more of my software is available on common-lisp.net or github.

My main project is not exactly Lisp, and even less CL, though I'll be possibly be using CL to bootstrap it: it's TUNES.

Lisp-related posts on my blog can now be found -with the tag "lisp". -They notably include, in newer-to-older order: -

Trivia: Faré takes an "é" and is pronounced "Fah-ree".

To contact me, send feed back, etc., see my contact page.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Fare-matcher.html b/clones/lisp/www.cliki.net/Fare-matcher.html deleted file mode 100644 index 2836cef5..00000000 --- a/clones/lisp/www.cliki.net/Fare-matcher.html +++ /dev/null @@ -1,65 +0,0 @@ - - - - - CLiki: fare-matcher - - - - - - - -
fare-matcher
[superseded by optima according to optima's CLiki page] Extends CL with ML-like pattern matching in an extensible way.

fare-matcher is written by Fare Rideau. -It extends CL with pattern matching much like ML or Erlang, -but in a way well integrated with CL, -and with the possibility of extending the core matcher -with arbitrary primitives.

It also includes a matching-friendly implementation of quasiquote, which makes it possible to match source code in an easy way. To use it, you may need to (eval-when (:compile-toplevel :load-toplevel :execute) (fare-quasiquote::enable-quasiquote)).

It depends on fare-utils.

There is a little documentation at fare-matcher-docs.

-fare-matcher source code is at: - https://gitlab.common-lisp.net/frideau/fare-matcher

Variants:

    -
  • -Matthew Danish has some extensions and clean-ups, packaged with an ASDF system, here. It has since been merged with the upstream version (2005-01-31). -
  • -
  • Note that a different pattern matcher with a similar syntax is part of the bese tools as used in UCW. -
  • -
-
-obsolete
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Faré.html b/clones/lisp/www.cliki.net/Faré.html deleted file mode 100644 index 1f02d23b..00000000 --- a/clones/lisp/www.cliki.net/Faré.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Faré - - - - - - - -
Faré
A pseudo-random hacker — my page is at Fare Rideau -person
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/FastCGI.html b/clones/lisp/www.cliki.net/FastCGI.html deleted file mode 100644 index d5489d2e..00000000 --- a/clones/lisp/www.cliki.net/FastCGI.html +++ /dev/null @@ -1,61 +0,0 @@ - - - - - CLiki: FastCGI - - - - - - - -
FastCGI
How to use FastCGI from Common Lisp.

There are currently three ways to use FastCGI to serve Web applications from Common Lisp:

    -
  • One is an FFI binding for CLISP by John Hinsdale. As of CLISP 2.31, it has become incorporated as a module. -
  • -
  • Another one is a Common Lisp FastCGI library and server for CMUCL by Teemu Kalvas. As the original website is gone, the library has been archived here. This is a complete implementation of the FastCGI binary packet protocol in Lisp, from scratch. -
  • -
  • SB-FastCGI is a Common Lisp FastCGI API Toolkit for SBCL, It contains a group of low-level APIs which like the C API of FastCGI, a group of fcgi-server implementations, and a high-level WSGI style interface. See http://kdr2.com/project/sb-fastcgi.html. -
  • -
  • CL-FastCGI is a generic version of SB-FastCGI, targeting to run on mostly Common Lisp implementations. See http://kdr2.com/project/cl-fastcgi.html. -
  • -

Note that running FastCGI doesn't require a module in Apache or other httpd. All that's needed is this useful program.


-CGI
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/FastIndex.html b/clones/lisp/www.cliki.net/FastIndex.html deleted file mode 100644 index e9af6163..00000000 --- a/clones/lisp/www.cliki.net/FastIndex.html +++ /dev/null @@ -1,61 +0,0 @@ - - - - - CLiki: FastIndex - - - - - - - -
FastIndex
FastIndex is a Web server which manages a small online library. It's written in lisp. It never crashes. Visit https://www.nicklevine.org/FastIndex/.

The library currently contains all Sherlock Holmes stories readily available from online sources, plus a few miscellaneous works which I added for testing purposes and then saw no good reason to remove. I'm thinking of adding either Dickens or Shakespeare when I have the time.

The central feature of the site is its search engine, written specifically for this application. To get you started you might want to type the words "impossible improbable" into the search bar and press the Go! button.

All users have a personal bookshelf on which they can place volumes in which they are interested. Passages located through the search engine may be bookmarked and these too can be accessed via the bookshelf.

The website was originally built in the winter of 2000 as a commercial demo, to help some friends raise capital prior to the launch of a new "dot-com". The business idea failed (for the time being, anyway) without the demonstration ever being demonstrated and I was left holding four or five thousand lines of working code and wondering quite what I really had to show for all the effort. However, I had learned a certain amount along the way, about

    -
  • the limitations of pure html as a vehicle for delivering a -non-trivial application over the web
  • -
  • the restrictions inherent in a user interface which is based on -text only - the only graphical signals which this interface gives the -user are either (i) positional or (ii) changes in font and colour (the one exception I have allowed to this is the inclusion of various - eponymous gifs in Conan Doyle's The Adventure of the Dancing Men)
  • -
  • how to build a fully indexed search engine from scratch
  • -
-I therefore decided that I would adapt the software into an academic site: an "open demonstration" of the above technology which may in some small way contribute to knowledge and understanding in these areas. I may decide later to write this up as a paper for potential publication.

Full source code for the FastIndex site has been released under the Lesser General Public License (LGPL). Portability note: Code would need some porting work to run on lisps other than LispWorks.


-CMS
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Favorite Lisp books.html b/clones/lisp/www.cliki.net/Favorite Lisp books.html deleted file mode 100644 index 5b9747bd..00000000 --- a/clones/lisp/www.cliki.net/Favorite Lisp books.html +++ /dev/null @@ -1,294 +0,0 @@ - - - - - CLiki: Favorite Lisp books - - - - - - - -
Favorite Lisp books
Some people's favorite Lisp books.

Donald Fisk: -

    -
  • - Lisp, 1st edition, by Winston and Horn (sentimental reasons -- - this was the book I learned Lisp from) -
  • -
  • - Ansi Common Lisp by Paul Graham -
  • -
  • - On Lisp by Paul Graham -
  • -
  • - Structure and Interpretation of Computer Programs by Abelson - and Sussman (OK so it's Scheme, but does that matter?) -
  • -
  • - Artificial Intelligence Programming (Charniak. Riesbeck, - McDermott) -
  • -
  • - Paradigms of AI Programming by Norvig -
  • -
  • - The Anatomy of Lisp by Allen (this I learned to /implement/ - Lisp from) -
  • -
  • - The Art of the MetaObject Protocol -
  • -
  • - CLTL2 by Steele -
  • -

Tayssir John Gabbour: -

    -
  • - Handbook of Programming Languages, vol. 4: Functional and Logic - Programming Languages; edited by Peter Salus. - This series is written by a bunch of people who are considered experts - in their programming languages. Vol. 4's sections are about Emacs - Lisp, Scheme, Guile, CLOS, and Prolog. While this selection is - extremely odd (for exclusively using lisps in a book about functional - languages, and not putting CLOS in the oop language volume), it at - least makes a nice little lisp book. I learned Emacslisp from it, and - the chapter on Scheme talked about its Algol influences, which is - usually missing in books like SICP or the Little/Seasoned Schemer - books. - I didn't read the other vol. 4 chapters, except part of the CLOS one. - Definitely an underrated book. -
  • -
  • - Programming Language Pragmatics by Michael Scott - This isn't really a lisp book, but it definitely talks about lisp a - lot. I haven't read it completely (right now I'm taking a break and - reading the incredible AIMA), but I think there's a sense where lisp - is really part of any good conversation about programming languages. -
  • -
  • - PAIP, by Norvig - Maybe everyone will mention this. All I have to say is that Norvig - really shouldn't be teaching people things like the defun-memo macro. - This and the disassemble function made it clear to me that CL is a - language that just doesn't fuck around. - In fact, I just realized that I memoized something in Java completely - stupidly months ago. One is so trained in Java to be disciplined, - that the brain falls asleep and the fingers write unmaintainable code. -
  • -
  • - SICP, by Abelson & the Sussmen - I always try to point the video lectures out: - http://www.swiss.ai.mit.edu/classes/6.001/abelson-sussman-lectures/ - I hope someone writes a modifiable version of this book online. - Powerful book, but people should add things in the margins or as - footnotes, because it needs... to be completed in a way that it can't - be as purely a teaching text. Sort of like an epic poem. Concrete - Mathematics by Graham/Knuth/etc kinda did something like this, but as - dead-tree it couldn't go far on this theme. -
  • -

Paolo Amoroso: -

    -
  • - SICP, 1st edition: it introduced me to the Lisp family of languages, and - hooked me forever. It would be more appropriate to say that it was a - lightning strike. -
  • -
  • - CLtL1: it got me curious about Common Lisp. -
  • -
  • - PAIP: it motivated me to learn Common Lisp. -
  • -
  • - Object Oriented Programming in Common Lisp: it got me fascinated with - CLOS and object-oriented programming--in Lisp. -
  • -
  • - On Lisp: it made me feel the power of Lisp. -
  • -

Markus Fix: -

    -
  • - "On Lisp" by Paul Graham
    - I just love this book! In a way it shows that Macros are the - equivalent of /spells/ in role playing games. In fact they are - more powerful, because unlike /spells/ they also redefine the - rules of the game. Somewhat like the /Meta/-chess example in - D.R.Hofstadters "Goedel, Escher, Bach". Rules that change the rules - to change rules. -
  • -
  • - "Performance and Evaluation of Lisp Systems" by R.P.Gabriel pdf
    - Very interesting if you're into the implementation details - of Lisp systems and want to understand efficiency issues involved. -
  • -
  • - "Successful Lisp" by David B. Lamkins
    - My recommendation for Lisp beginners with some programming - background. -
  • -
  • - "Goedel, Escher, Bach" by D.R. Hofstadter
    - Because it got me hooked on programming in general and Lisp - in particular at an early age. -
  • -
  • - "Patterns of Software" by R.P. Gabriel
    - Because it explains alot about the context. I think this is - by far the best explanation of the /patterns/ metaphor regarding - programming. -
  • -

lin8080: -

    -
  • - Here is one for beginners. It is in German and contains basics on 300 - pages. Programmieren in COMMON LISP, Otto Mayer, 2.Auflage, - Spektrum Verlag 1995, ISBN 3-86025-710-2 ~25,-Euros. -
  • -
  • - I should go to ask the library about -Anatomy of lisp, - Mc.Graw-Hill, New York 1978, this title is on the top of my wish-list. -
  • -

Erik Winkels: -

    -
  • - Besides all the aforementioned books by other posters I also really - like "Object-Oriented Common Lisp" from Stephen Slade. It is my main - paper reference. (Maybe because it is the book I started CL with, or - do other people like it as well as a reference besides the Hyperspec?) -
  • -

Klaus Momberger: -

    -
  • - yes, I like it [Slade's books] as well. imho it is THE book to read first, - and PG's "On Lisp" next. -
  • -

Tim Moore: -

Steve Zimmerman: -

    -
  • - _On Lisp_, by Paul Graham -
  • -
  • - _Common Lisp and Artificial Intelligence_, by Patrick R. Harrison -
  • -
  • - _Common Lisp_, by Guy Steele -
  • -
  • - _Franz Lisp_ (not sure if the title's correct; I think it's by the Franz - Corp.) -
  • -
  • - It's not a book, but the info pages on librep - (`info librep' on Unix or Linux) are excellent. -
  • -

Charles Blair: -

    -
  • - i would add Robert Wilensky, Common LISPcraft, as a good supplement to - another book on Common LISP (e.g., Paul Graham, ANSI Common Lisp, or Stephen - Slade, Object-Oriented Common Lisp, both of which have been mentioned here). - it may be a bit dated, and i don't think it quite stands alone as a primer, - but back then wilensky was an informed and enthusiastic writer about LISP. -
  • -

Gareth McCaughan: -

    -
  • - Paradigms of Artificial Intelligence Programming: - Case Studies in Common Lisp. Peter Norvig. - Possibly the best hardcore programming book ever. -
  • -
  • - Lisp in Small Pieces (translated from the French - "Les langages Lisp", or something of the kind). - Christian Queinnec. - A very nice in-depth look at the internal workings - of Lisp-like languages. A bit too Schemey. -
  • -
  • - Common Lisp: The Language (2nd ed.) Guy Steele. - Appallingly out of date, but I found it a great way - to learn the language. I am, however, a bit of a - weirdo, so I don't guarantee that this particular - preference will be very transferable. -
  • -
  • - On Lisp. Paul Graham. - Graham is a vigorous advocate of short, dense programs. - Here are some fine examples of how to write them. -
  • -
  • - Structure and Interpretation of Computer Programs. - Abelson, Sussman and Sussman. - Way too Schemey :-) and not really about Lisp, but - still deserves its fame. -
  • -

David Douthitt:

I'm still learning - or trying to. Here's a list of what's on my shelf:

    -
  • -The Little Lisper - interesting book - trains one to think in LISP ...
  • -
  • -LISP by Winston and Horn - 1st and 3rd editions. 1st edition used MACLISP; 3rd edition uses Common LISP. I picked it (them) up as they seemed to be used in all of the university classes on LISP.
  • -
  • -On Lisp - Paul Graham - fantastic book which clarifies the more advanced portions of Common LISP.
  • -

VÖRÖSBARANYI Zoltán:

In addition to SICP, On Lisp, etc:

    -
  • -Practical Common Lisp by Peter Seibel. A great book, available on-line: http://www.gigamonkeys.com/book/
  • -

Vladimir Sedach:

    -
  • -SICP teaches how to think about programming -
  • -
  • -On Lisp shows what makes Common Lisp great -
  • -
  • -Let Over Lambda is idiosyncratic but has a lot of info on advanced CL programming -
  • -
  • John Allen's Anatomy of Lisp is a great way to understand how the Lisp meta-circular evaluator works, and how that is related to formal logics. If I remember correctly, this book was a major inspiration for SICP and the MIT 6.001 course. -
  • -

For those interested, there are also Online Tutorials and Documents, in addition to more Lisp books.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Fear of Lisp.html b/clones/lisp/www.cliki.net/Fear of Lisp.html deleted file mode 100644 index b2e20420..00000000 --- a/clones/lisp/www.cliki.net/Fear of Lisp.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: Fear of Lisp - - - - - - - -
Fear of Lisp
Fear of Lisp, 'parenthephobia' in Greek, is a disease that affects a large percentage of the population involved in the information technologies. Its symptoms are varied but some examples are a belief in the Inefficiency of Lisp systems, misconceptions about the lack of support for modern programming structures and techniques, confusion regarding its use for programming tasks other than those involving Artificial Intelligence, and most commonly a profound fear of Parentheses.

There are many different reasons why people fear Lisp. Nearly every single one of them is wrong in one way or another, or in many different ways. Some are simple notions which are quite easy to disabuse someone of, for example the Inefficiency of Lisp systems. This is simple -- just show them some performance figures from a Lisp vendor's website, or have them read papers comparing Lisp performance to other languages - Lisp Vs. Java.

But some fears are not so simple, such as the parenthesis fear. This is somewhat related to the problem of introducing Lisp's idiosyncratic terminology, such as CAR, CDR, MAPCAR, and RPLACA, to name a few odd ones. An excellent defense (or rather, explanation and plea for patience) of Lisp's oddnesses in terminology and parenthesization is in Pascal Costanza's Highly Opinionated Guide to Lisp, in section 4 "Some first obstacles".

One particularly intractable problem is the complaint in professional situations that Lisp programmers are hard to find. You may suggest using Lisp as the development language but the answer always seems to come back from the boss sounding like "Yeah, but where will I find someone else to help maintain it?" This is indeed a hard problem, since it's really the truth that Lisp programmers are not a terribly common breed, despite their use of a Common Language.

(Add other examples, discuss, etc.)

-


Is it just me, or is this (a) completely information-free, and (b) basically irrelevant to CLiki anyway? I see no figures, reports or references to provide evidence for the author's hypothesis, and I can't see much about free software or Unix either.

(I don't even see anecdotes. What is this place coming to when even anecdotal evidence is considered too much like hard work?)


Here's a anecdote, written by Erik Naggum: Choice of Language and Programmer Availability.


And furthermore, I don't think this kind of whining and "people who don't use Lisp are stupid"-attitude does Lisp a favor.


True enough -- Timboy's comments on this kind of advocacy. Harley Gorrell


As far as syntax goes it is my opinion that what makes people go 'yuk!' is the absence of distinct textual landmarks. CL is very positional, context-dependent and full of quirks. Consistent indentation only goes so far in revealing structure. It takes a lot of practice to be able to really read lisp rather than merely to decode it. It is, in many ways, the same problem as with standard music notation.


On the other hand, I would love to find some people who could actually read C/C++ rather than "understanding" an application based on some rather arbitrary picture.


When you have a powerful language people will not tolerate anything less -than they're used to, so when you've got lisp hackers they are easier to get -because of the fact that they can't use anything less powerful than lisp

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Features.html b/clones/lisp/www.cliki.net/Features.html deleted file mode 100644 index 4c805a2e..00000000 --- a/clones/lisp/www.cliki.net/Features.html +++ /dev/null @@ -1,346 +0,0 @@ - - - - - CLiki: Features - - - - - - - -
Features
Common lisp allows implementations to have extensions, and has an official way of testing for them, via membership of the *features* list. However, there is no standard for the actual relationship between the name of a feature and its meaning. This page attempts to collect information about currently extant *features* of all Common Lisps.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
FeatureMeaning
ABCLPresent in ABCL -
ALLEGROPresent in Allegro Common Lisp -
ASDFAdded when ASDF-system definition facility is present.
ANSI-CLImplementation purports to conform to the ANSI Common Lisp Standard. In clisp (before 2.26), indicates ansi mode (-a) as opposed to normal mode
CCLClozure Common Lisp
CLISPPresent in CLISP -
CLTL1Implementation purports to conform to the first edition of Common Lisp the Language
CLTL2Implementation purports to conform to the second edition of Common Lisp the Language. Note that according to the letter of the standard :CLTL2 "must not be present in any conforming implementation"
CMUIndicates that the lisp is CMUCL -
CMU17The lisp is CMUCL, of version 18b or earlier
CMU18The lisp is CMUCL, version 18a or later (FIXME: What versions of Peter's correspond to which)
COMMON-LISPShould be present in any vaguely Common Lispy implementation
DRAFT-ANSI-CLImplementation purports to conform to the first draft of ANSI CL
IEEE-FLOATING-POINTImplementation purports to conform to the IEEE specification for floating point arithmetic
INFIXFeature added when the #i infix reader macro is available.
INTERFACE-DESIGNER -MCL interface toolkit
MK-DEFSYSTEMFeature added when Mark Kantrowitz' defsystem is present
PARENSCRIPTAdded by Parenscript Lisp to JavaScript translator to indicate that other libraries may define Parenscript-specific macro duals to enable their translation to JavaScript (see uri-template for an example).
PCLIn CMUCL, indicates that CLOS (the Portable Common Loops version) is present
POPLOGA feature found identifying the Poplog Lisp
SBCLPresent in Steel Bank Common Lisp
UNICODEIn CLISP, indicates that characters are internally unicode -
X3J13Implementation conforms to some draft of ANSI CL
LISPMLisp Machine (eg. used in Moon's MapForms sources).
EXPLORERTi Explorer (eg. used in Moon's MapForms sources).

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

- - -

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Implementation*FEATURES*
CMUCL -(:PCL-STRUCTURES :PORTABLE-COMMONLOOPS :PCL :PYTHON :SMALL - :NO-HEMLOCK :NO-CLM :NO-CLX :GENCGC :CONSTRAIN-FLOAT-TYPE :PROPAGATE-FUN-TYPE - :PROPAGATE-FLOAT-TYPE :RANDOM-MT19937 :MP :HASH-NEW :COMPLEX-FLOAT - :SIGNED-ARRAY :CMU18 :DIRECT-SYSCALL :RELATIVE-PACKAGE-NAMES :X86 :LINUX - :GLIBC2 :UNIX :COMMON :CMU :NEW-COMPILER :CLTL2 :COMMON-LISP :ANSI-CL - :DRAFT-ANSI-CL :X3J13 :IEEE-FLOATING-POINT) -
-CLISP
Documentation on *features* -
-(:CLOS :LOOP :COMPILER :CLISP :ANSI-CL :COMMON-LISP :INTERPRETER - :LOGICAL-PATHNAMES :FFI :GETTEXT :UNICODE :BASE-CHAR=CHARACTER :UNIX) -
pre 2.26 had :CLTL2 instead of :ANSI-CL, except when using -a/--ansi switch -
Depending on host system: one of :UNIX :WIN32 :AMIGA :OS/2 :ACORN-RISCOS -
:PC386 is there with :UNIX Linux Intel/AMD, :WIN32 or :OS/2 systems. -
:FFI, :UNICODE, :SCREEN, :SOCKETS :LOGICAL-PATHNAMES are present on most systems CLISP runs on, but are in fact compilation choices, as well as :GETTEXT, :SYSCALLS or :DIR-KEY. -
SCL 1.1.1 trial on Linux - -(:MK-DEFSYSTEM :COMPILER :IEEE-FLOATING-POINT :ANSI-CL :COMMON-LISP :SCL - :COMMON :UNIX :GLIBC2 :LINUX :X86 :I486 :DIRECT-SYSCALL :GENCGC - :PROPAGATE-FUN-TYPE :PROPAGATE-FLOAT-TYPE :CONSTRAIN-FLOAT-TYPE - :CONSERVATIVE-FLOAT-TYPE :HASH-NEW :RANDOM-MT19937 :RELATIVE-PACKAGE-NAMES - :PTHREAD :SMP) -
ECL -ECoLisp 0.0g : (:DEFPACKAGE :LOOP :IEEE-FLOATING-POINT :IBM-PC :I386 :BSD :UNIX - :ANSI-CL :CLOS :ECL :COMMON)
-ECL 0.8, Mac OS X: (:IEEE-FLOATING-POINT :APPLE :POWERPC :BSD :UNIX :ANSI-CL :CLOS :BOEHM-GC :ECL :COMMON)
-ECL 0.9, Linux: (:NEW :IEEE-FLOATING-POINT :BSD :UNIX :DLOPEN :CLOS :BOEHM-GC :ECL :COMMON :ANSI-CL :COMMON-LISP :I386 :IBM-PC) -
GCL -(:COMPILER :NUMLIB :SDEBUG :DEFPACKAGE TRUNCATE_USE_C CLX-LITTLE-ENDIAN - BSD
- MC68020 BSD386 SPARC (arch-dependent)
- SGC IEEE-FLOATING-POINT UNIX GMP GCL AKCL COMMON - KCL) -
Symbolics Genera 8.3 -(:POSTSCRIPT-CLIM :CLX-CLIM :GENERA-CLIM :CLIM-EXTENDS-CLOS - :CLIM-ANSI-CONDITIONS :CLIM-USES-LISP-STREAM-FUNCTIONS :DEFSYSTEM :ANSI-90 - :GENERA-RELEASE-8-3 :GENERA-RELEASE-8 :SILICA :CLIM-2.0 :CLIM-2 :CLIM - :DEFSTORAGE :CLX-MIT-R5 :CLX-MIT-R4 :XLIB :CLX :CLX-OVERLAPPING-ARRAYS - :CLX-LITTLE-ENDIAN :CLX-ANSI-COMMON-LISP :LOOP-PREFER-POP :LOOP :DEFSTRUCT - :DEBUG-SCHEDULER-QUEUES :NEW-SCHEDULER :LISPM :SYMBOLICS :GENERA :ROW-MAJOR - :IMACH :CHAOS :IEEE-FLOATING-POINT :SORT :FASLOAD :STRING :NEWIO :ROMAN - :TRACE :GRINDEF :GRIND) -
-MCL 5.0b -(:ANSI-CL :ANSI-MAKE-LOAD-FORM :NEW-TABLES :PRIMARY-CLASSES :CCL :CCL-2 :CCL-3 :CORAL :APPLE :DIGITOOL :COMMON-LISP :MCL :CLTL2 :PROCESSES :CARBON-COMPAT :INTERFACES-2 :CCL-4 :CCL-4.2 :CCL-4.3 :CCL-4.3.1 :CCL-4.4 :CCL-4.3.5 :CCL-5.0 :POWERPC :PPC-TARGET :PPC-CLOS) -
OpenMCL -(:PRIMARY-CLASSES :CCL :CCL-2 :CCL-3 :CCL-4 :CORAL :DIGITOOL :COMMON-LISP :MCL :OPENMCL :ANSI-CL :PROCESSES :INTERFACES-2 :POWERPC :PPC-TARGET :PPC-CLOS :CLOZURE :DARWINPPC-TARGET :DARWINPPC-HOST :DARWIN :POWEROPEN-TARGET) -
SBCL -(:LINUX (os-dependent) :ALPHA (arch-dependent) - :IEEE-FLOATING-POINT :SB-TEST :SB-DOC :UNIX :SBCL - :COMMON-LISP :ANSI-CL) -
-The meaning of most SBCL features is documented in -base-target-features.lisp-expr in the source archive
Corman Lisp
-(Win32)
-(:CORMANLISP :PL :COMMON-LISP :WIN32)
-Allegro CL 6.0
-(Linux x86)
-(:ACL-SOCKET :HIPER-SOCKET :PROFILER :MULTIPROCESSING :FLAVORS :LITTLE-ENDIAN :GSGC :COMPILER :USE-STRUCTS-IN-COMPILER :CLOS :DYNLOAD :DLFCN :UNIX - :LINUX :REDHAT6 :LINUX86 :X86 :VERIFY-CAR-CDR :RELATIVE-PACKAGE-NAMES :MODULE-VERSIONS :IEEE :IEEE-FLOATING-POINT :CONFORMING-IEEE :COMMON-LISP :ANSI-CL - :DRAFT-ANSI-CL-2 :X3J13 :ALLEGRO :EXCL :FRANZ-INC :ALLEGRO-VERSION>= :DYNLOAD-ACL-LIBRARY :ALLEGRO-V6.0) -
-Allegro CL 6.1
-(Linux x86)
-(:ACL-SOCKET :HIPER-SOCKET :PROFILER :MULTIPROCESSING :FLAVORS :LITTLE-ENDIAN :GSGC - :COMPILER :USE-STRUCTS-IN-COMPILER :CLOS :DYNLOAD :DLFCN :UNIX :LINUX :REDHAT6 :LINUX86 - :X86 :VERIFY-CAR-CDR :ENCAPSULATING-EFS :RELATIVE-PACKAGE-NAMES :MODULE-VERSIONS :IEEE - :IEEE-FLOATING-POINT :CONFORMING-IEEE :ICS :COMMON-LISP :ANSI-CL :DRAFT-ANSI-CL-2 :X3J13 - :ALLEGRO :EXCL :FRANZ-INC :ALLEGRO-VERSION>= :DYNLOAD-ACL-LIBRARY :ALLEGRO-V6.1) -
-Allegro CL 6.2
-(Linux x86)
-(:ALLEGRO-CL-ENTERPRISE :ACL-SOCKET :HIPER-SOCKET :PROFILER :MULTIPROCESSING :FLAVORS - :LITTLE-ENDIAN :GSGC :COMPILER :USE-STRUCTS-IN-COMPILER :CLOS :DYNLOAD :DLFCN :UNIX - :LINUX :REDHAT6 :LINUX86 :X86 :VERIFY-CAR-CDR :ENCAPSULATING-EFS :RELATIVE-PACKAGE-NAMES - :MODULE-VERSIONS :IEEE :IEEE-FLOATING-POINT :CONFORMING-IEEE :ICS :COMMON-LISP :ANSI-CL - :DRAFT-ANSI-CL-2 :X3J13 :ALLEGRO :EXCL :FRANZ-INC :ALLEGRO-VERSION>= :SYMBOL-VALUE-VECTOR - :DYNLOAD-ACL-LIBRARY :ALLEGRO-V6.2) -
-Allegro CL 6.2
-Windows -
-(:ALLEGRO-CL-ENTERPRISE :ACL-SOCKET :HIPER-SOCKET :PROFILER - :MULTIPROCESSING :FLAVORS :LITTLE-ENDIAN :GSGC :COMPILER - :USE-STRUCTS-IN-COMPILER :CLOS :VERIFY-CAR-CDR :DYNLOAD :DLWIN :X86 - :MSWINDOWS :MICROSOFT :MICROSOFT-32 :ENCAPSULATING-EFS - :RELATIVE-PACKAGE-NAMES :MODULE-VERSIONS :IEEE :IEEE-FLOATING-POINT - :CONFORMING-IEEE :ICS :COMMON-LISP :ANSI-CL :DRAFT-ANSI-CL-2 :X3J13 - :ALLEGRO :EXCL :FRANZ-INC :ALLEGRO-VERSION>= :OS-THREADS :TESTWINAPI - :SYMBOL-VALUE-VECTOR :DYNLOAD-ACL-LIBRARY :ALLEGRO-V6.2) -
-Poplog 15.53 clisp
-(unrelated to other clisp)
-(:POPLOG :COMMON :CLOS :PC 80386 :UNIX :LINUX 2.0 :ELF :POSIX) -
-LispWorks for Windows, Enterprise Edition -(:DBCS-ENV :COMPILE-REVERSE :BYTE-INSTRUCTIONS HARP::PC386 :COMMON-LISPWORKS :COMMON-DEFSYSTEM :CAPI-TOOLKIT :CAPI :LW-EDITOR :COMMON-FFI :NEW-PATCH-SYSTEM :DBCS :UNICODE :WIN32 :IAPX386 :FLOAT :CLOS :ANSI-CL :COMMON-LISP :LATIN-1 :LISPWORKS :LISPWORKS4.2 :LISPWORKS4 :HARLEQUIN-COMMON-LISP :HARLEQUIN-PC-LISP :NEW-PC-COMPILER :COMPILER :REVERSE :LITTLE-ENDIAN :CLASS-SHAKE-USING-GATES :SUPPORTS-CONS-BLOCKS :IEEE-FLOATING-POINT) -
-LispWorks for Macintosh, Enterprise Edition -Darwin/Motif image:
-(:COMMON-LISPWORKS :LW-EDITOR :CAPI-XM-LIB :CAPI-TOOLKIT :CAPI :X11-MOTIF :FFI-X11-XM :FFI-X11-XT :FFI-X11-XLIB :FFI-X11 :X11-MOTIF-NO-LIBRARIES :DBCS-ENV :COMMON-FFI :NEW-PATCH-SYSTEM HARP::POWERPC :BIGIT16-DIV :LL-GLINK :FLUSH-BY-ADDRESS :FOREIGN-ALIGNED :SPLIT-WORD-INSTRUCTIONS :WORD-INSTRUCTIONS :COMPILER :SHALLOW-BINDING :ANSI-CL :COMMON-LISP :IEEE-FLOATING-POINT :LISPWORKS :CLASS-SHAKE-USING-GATES :COMMON-DEFSYSTEM :CLOS :DBCS :UNICODE :UNIX :HARLEQUIN-COMMON-LISP :HARLEQUIN-UNIX-LISP :LATIN-1 :LISPWORKS4 :LISPWORKS4.3 :DARWIN :MAC :MACOSX :APPLE :RS6K HARP::RS6K :NTS :HAVE-SHARED-LIBRARY :MAPPED-IMAGE :FLI-REGISTER-MODULE :PTHREADS) -
-Darwin/Cocoa image:
-(:COMMON-LISPWORKS :LW-EDITOR :CAPI-COCOA-LIB :CAPI-TOOLKIT :CAPI :DBCS-ENV :COCOA :UNIX-WITHOUT-MOTIF :COMMON-FFI :NEW-PATCH-SYSTEM HARP::POWERPC :BIGIT16-DIV :LL-GLINK :FLUSH-BY-ADDRESS :FOREIGN-ALIGNED :SPLIT-WORD-INSTRUCTIONS :WORD-INSTRUCTIONS :COMPILER :SHALLOW-BINDING :ANSI-CL :COMMON-LISP :IEEE-FLOATING-POINT :LISPWORKS :CLASS-SHAKE-USING-GATES :COMMON-DEFSYSTEM :CLOS :DBCS :UNICODE :UNIX :HARLEQUIN-COMMON-LISP :HARLEQUIN-UNIX-LISP :LATIN-1 :LISPWORKS4 :LISPWORKS4.3 :DARWIN :MAC :MACOSX :APPLE :RS6K HARP::RS6K :NTS :HAVE-SHARED-LIBRARY :MAPPED-IMAGE :FLI-REGISTER-MODULE :PTHREADS) -
-CCL 1.11.5
64-bit Windows -
-(:PRIMARY-CLASSES :COMMON-LISP :OPENMCL :CCL :CCL-1.2 :CCL-1.3 :CCL-1.4 :CCL-1.5 :CCL-1.6 :CCL-1.7 :CCL-1.8 :CCL-1.9 :CCL-1.10 :CCL-1.11 :CLOZURE :CLOZURE-COMMON-LISP :ANSI-CL :OPENMCL-UNICODE-STRINGS :IPV6 :OPENMCL-NATIVE-THREADS :OPENMCL-PARTIAL-MOP :MCL-COMMON-MOP-SUBSET :OPENMCL-MOP-2 :OPENMCL-PRIVATE-HASH-TABLES :STATIC-CONSES-SHOULD-WORK-WITH-EGC-IN-CCL :X86-64 :X86_64 :X86-TARGET :X86-HOST :X8664-TARGET :X8664-HOST :WINDOWS-HOST :WINDOWS-TARGET :WIN64-TARGET :WIN64-HOST :64-BIT-TARGET :64-BIT-HOST :WINDOWS :LITTLE-ENDIAN-TARGET :LITTLE-ENDIAN-HOST) -

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Felip.html b/clones/lisp/www.cliki.net/Felip.html deleted file mode 100644 index dc693c13..00000000 --- a/clones/lisp/www.cliki.net/Felip.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Felip - - - - - - - -
Felip
Hello, I'm Felip. I'm a physics student from Spain. -I was born on 28-III-1985, yes, that's, I'm 21 years old. I began programming lisp about 1 year ago. I'm interested mainly in Its applications to numerical computation and physics, but also to recreative things (I've programmed cl-cbr, an application to read comics).

person

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Femlisp.html b/clones/lisp/www.cliki.net/Femlisp.html deleted file mode 100644 index dacc40a9..00000000 --- a/clones/lisp/www.cliki.net/Femlisp.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: FEMLISP - - - - - - - -
FEMLISP
FEMLISP is a Mathematics Application which solves partial differential equations with the help of the finite element method (FEM).

Source code is available at the project site, CVS access via savannah.nongnu.org. I am thinking about moving it to common-lisp.net. (Nicolas Neuss)

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Fibonacci.html b/clones/lisp/www.cliki.net/Fibonacci.html deleted file mode 100644 index d3babe40..00000000 --- a/clones/lisp/www.cliki.net/Fibonacci.html +++ /dev/null @@ -1,230 +0,0 @@ - - - - - CLiki: Fibonacci - - - - - - - -
Fibonacci
The Fibonacci sequence of numbers was described in a mathematics book by Leonardo da Pisa (Fibonacci) called Liber Abaci. The n-th element of the sequence represents the number of pairs of rabbits at the start of the n-th month, beginning with a single pair, given that in every month each pair bears a new pair which becomes productive from the second month on. It is a common example used in education to teach recursion.

Here are the first 14 Fibonacci numbers, starting with F(0):
-0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, ...
-and various Common Lisp implementations for the computation of the nth element of the sequence, structured similarly to the Factorial page:

(defun fib (n) - "Naive recursive computation of the nth element of the Fibonacci sequence" - (check-type n (integer 0 *)) - (if (< n 2) n - (+ (fib (1- n)) (fib (- n 2))))) -

(defun fib (n) - "Tail-recursive computation of the nth element of the Fibonacci sequence" - (check-type n (integer 0 *)) - (labels ((fib-aux (n f1 f2) - (if (zerop n) f1 - (fib-aux (1- n) f2 (+ f1 f2))))) - (fib-aux n 0 1))) -

This loop-based implementation probably written by Nicolas Neuss (my.name@iwr.uni-heidelberg.de): -

(defun fib (n) - "loop-based iterative computation of the nth element of the Fibonacci sequence" - (check-type n (integer 0 *)) - (loop for f1 = 0 then f2 - and f2 = 1 then (+ f1 f2) - repeat n finally (return f1))) -

(defun fib (n) - "do-based iterative computation of the nth element of the Fibonacci sequence" - (check-type n (integer 0 *)) - (do ((i n (1- i)) - (f1 0 f2) - (f2 1 (+ f1 f2))) - ((= i 0) f1))) -

(defun fib (n) - "CPS computation of the nth element of the Fibonacci sequence" - (check-type n (integer 0 *)) - (labels ((fib-aux (n k) - (if (zerop n) - (funcall k 0 1) - (fib-aux (1- n) (lambda (x y) - (funcall k y (+ x y))))))) - (fib-aux n #'(lambda (a b) a)))) -
-It is worth mentioning that the initial (lambda (a b) a), or λab.a in lambda calculus notation, is one of the two Church booleans: true.

You can use multiple values for a truly recursive implementation: -

(defun fib (n) - (labels ((fib2 (n) - (cond ((= n 0) - (values 1 0)) - (t - (multiple-value-bind (val prev-val) - (fib2 (- n 1)) - (values (+ val prev-val) - val)))))) - (nth-value 0 (fib2 n)))) -
-Of course, this is in some sense equivalent to the CPS version, but with the -continuation left implicit. (Author: Drew McDermott, firstname.lastname@yale.edu)

A "successive squaring" method suggested in Structure and Interpretation of Computer Programs, which runs in a logarithmic number of steps: -

(defun fib (n) - "Successive squaring method from SICP" - (check-type n (integer 0 *)) - (labels ((fib-aux (a b p q count) - (cond ((= count 0) b) - ((evenp count) - (fib-aux a - b - (+ (* p p) (* q q)) - (+ (* q q) (* 2 p q)) - (/ count 2))) - (t (fib-aux (+ (* b q) (* a q) (* a p)) - (+ (* b p) (* a q)) - p - q - (- count 1)))))) - (fib-aux 1 0 0 1 n))) -
-Note that the "clever algorithm" mentioned but not cited in SICP is described in an "EWD note" entitled In honour of Fibonacci by Edsger Wybe Dijkstra.

Another successive squaring method based on these formulas: F(2n-1)=F(n)^2+F(n-1)^2, F(2n)=(2F(n-1)+F(n))*F(n). See the end of this section from the Wikipedia article, or see the same EWD note as above, In honour of Fibonacci by Edsger Wybe Dijkstra.

(defun fib (n) - (if (< n 2) n - (if (oddp n) - (let ((k (/ (1+ n) 2))) - (+ (expt (fib k) 2) (expt (fib (1- k)) 2))) - (let* ((k (/ n 2)) (fk (fib k))) - (* (+ (* 2 (fib (1- k))) fk) fk))))) -

And now for something completely different, a generator version, inspired by a Python snippet. - - - - - - - - - - -
PythonLispRubyJavascript
-

-def fib(): - a, b = 0, 1 - while 1: - yield a - a, b = b, a+b -
- - -
(let ((a 0) - (b 1)) - (defun fib () - (prog1 a (psetf a b b (+ a b))))) -
- - - -def make_fib() - a = 0; b = 1 - lambda { - v = a - a, b = b, a + b - v - } -end - - - -
- var fib; - ( - function (){ - var a=0; - var b=1; - fib=function (){ - b=a+(a=b); - return a; - } - })(); -
- - - -Upon successive calls, (fib) will return the next number in the sequence. -JavaScript version by Cosmin Branescu, cosmin.branescu@info.uvt.ro.

;; Taken from Winston's Lisp, 3rd edition, this is a tail-recursive version, w/o an auxiliary function -(defun fib (n &optional (i 1) (previous-month 0) (this-month 1)) - (if (<= n i) - this-month - (fib n (+ 1 i) this-month (+ this-month previous-month)))) -

;;;Original code by Arnold Schoenhage, -;;;translated to Scheme by Bradley J. Lucier (2004), -;;;and adapted to Common Lisp by Nicolas Neuss. -(defun fast-fib-pair (n) - "Returns f_n f_{n+1}." - (case n - ((0) (values 0 1)) - ((1) (values 1 1)) - (t (let ((m (floor n 2))) - (multiple-value-bind (f_m f_m+1) - (fast-fib-pair m) - (let ((f_m^2 (* f_m f_m)) - (f_m+1^2 (* f_m+1 f_m+1))) - (if (evenp n) - (values (- (* 2 f_m+1^2) - (* 3 f_m^2) - (if (oddp m) -2 2)) - (+ f_m^2 f_m+1^2)) - (values (+ f_m^2 f_m+1^2) - (- (* 3 f_m+1^2) - (* 2 f_m^2) - (if (oddp m) -2 2)))))))))) -

;; Fibonacci - Binet's Formula -(defun fib (n) - (* (/ 1 (sqrt 5)) - (- (expt (/ (+ 1 (sqrt 5)) 2) n) - (expt (/ (- 1 (sqrt 5)) 2) n)))) -

or

(defun fib (n) - (/ (- (expt (/ (+ 1 (sqrt 5)) 2) n) - (expt (/ (- 1 (sqrt 5)) 2) n)) - (sqrt 5))) -

and even easier

(defun fib (n) - (prog1 (round (/ (expt (/ (+ 1 (sqrt 5)) 2) n) (sqrt 5)))))

Q: In the Winston & Horn book, n for the two above functions is n+1. Is there some reason for NOT having e.g.
-(expt (/ (- 1 (sqrt 5)) 2) (+ n 1))) ?
-A: Some authors still use a deprecated definition of the Fibonacci sequence, the one that begins with 1, 1 instead of 0, 1. Please see the definition and especially the -closed form. -Also, most books that touch on this topic (Donald Knuth's TAOCP for instance).

Q: Do we have any reason to keep the first implementation instead of the second one based on the Binet formula? --Cornel

Caution: Due to limitations in floating-point representation precision, this last version works - (truncate (fib n)) is correct - only for n < 32.
From that point on, the error rises exponentially approximately like this: new_error = old_error * (5 / 3)
-So, if for n = 32 the error is 1.25, for n = 99 the error is 4.2221247E14. I determined this using CLISP 2.33.2 under GNU Linux on IA32.
-This can be improved by using 5.0d0 instead of 5, which ensures the use of -double-float. CLISP 2.33.2 computes correct values (using (round (fib n)) for -n ≤ 75.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/File Format.html b/clones/lisp/www.cliki.net/File Format.html deleted file mode 100644 index 95c5a493..00000000 --- a/clones/lisp/www.cliki.net/File Format.html +++ /dev/null @@ -1,220 +0,0 @@ - - - - - CLiki: file format - - - - - - - -
file format
This is a page collecting libraries to handle different file formats.

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Fileworthy.html b/clones/lisp/www.cliki.net/Fileworthy.html deleted file mode 100644 index 474b6ab3..00000000 --- a/clones/lisp/www.cliki.net/Fileworthy.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Fileworthy - - - - - - - -
Fileworthy
A simple website to manage your local notes and files across many devices.

Depends on: alexandria, cl-json, cl-ppcre, cl-who, hunchentoot, ironclad, local-time, split-sequence, uiop

Repository: https://github.com/thiru/fileworthy

Documentation: https://thiru.github.io/fileworthy/docs/

License: GPL3


-Application
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Filtered Functions.html b/clones/lisp/www.cliki.net/Filtered Functions.html deleted file mode 100644 index 83bee164..00000000 --- a/clones/lisp/www.cliki.net/Filtered Functions.html +++ /dev/null @@ -1,212 +0,0 @@ - - - - - CLiki: Filtered Functions - - - - - - - -
Filtered Functions
filtered-functions implements arbitrary predicate dispatch for CLOS.

Filtered functions provide an extension of generic function invocation that add a simple preprocessing step before the actual method dispatch is performed and thus enable the use of arbitrary predicates for selecting and applying methods.

Filtered functions is written and maintained by Pascal Costanza. See GitHub or the 2008 paper by pcostanza et al for more information. Part of “Closer project”, according to common-lisp.net.

License: MIT


-language extension -
-
-#|
-Transcript for the video
-Common Lisp Study Group - Filtered Functions
-https://www.youtube.com/channel/UCYg6qFXDE5SGT_YXhuJPU0A
-
-- Is ":filter :something" a method-combination? wasn't aware they can be done that way, but I think because I didn't define ones myself yet
-- Those would be method qualifiers.
-http://www.lispworks.com/reference/HyperSpec/Body/m_defmet.htm
-They are qualifiers for a custom method combination
-|#
-(ql:quickload :filtered-functions)
-(import 'filtered-functions::(define-filtered-function))
-
-;;; instead of (= n 0) (< n 0) (> n 0) I recommend zerop, minusp, plusp.  The general rule in programming is to use the most specific constructs that will do the job. But, there is even more specific for the sign, namely SIGNUM. See http://p-cos.blogspot.com/2009/12/filtered-functions.html
-(defun sign (n)
-  (cond ((minusp n) 'neg)
-	((zerop n) 'zero)
-	((plusp n) 'pos)))
-
-#| Usually, you would write #'sign rather than (function sign)
-Another perspective:
- #' has 10 spikes! be careful.  I prefer the chubby clouds of (function x)…
-and FUNCTION is the only operator that creates closures, so it's very important.  I don't think it should be abbreviated.
-|#
-
-(define-filtered-function fac (n)
-  (:filters (:sign #'sign)))
-
-;;; Similarly, (- n 1) is better expressed as (1- n).
-(defmethod fac :filter :sign ((n (eql 'pos)))
-  (* n (fac (1- n))))
-
-(defmethod fac :filter :sign ((n (eql 'neg)))
-  (error "~A is a negative number, can't compute factorial." n))
-
-(defmethod fac :filter :sign ((n (eql 'zero)))
-  (declare (ignore n))
-  1)
-
-#+will-signal-error
-(fac -2)
-
-(fac 3) ;=> 6
-
-#| the following example shows that a filter doesn't have to be a function
- it can be an arbitrary lisp expression
- - "You know what I actually did in my own program? I actually
- I actually used a generic function for the filter so I can like.. I've got multiple levels of generic functions just to execute a generic function."
- - "That is craziness man"
- - "Anything is allowed"
- - "That's right. It's so beautiful."
-|#
-;;; WHEN should be used only in a context where the value is not needed.
-;;; (when (oddp n) t) should rather be just (oddp n)
-;;; if you wanted to ensure a boolean (since oddp returns a generalized boolean) then (if (oddp n) t nil) should be used. But otherwise, yes, you can work with generalized boolean in general, so just (oddp n) will do
-
-(define-filtered-function print-number-property (n)
-  (:filters (:odd (oddp n))
-	    (:even (evenp n))))
-#|
-Internally it generates lambdas for the arbitrary lisp expressions we've used in the filters. Refactoring them to their own named functions is more apropriate when these expressions are long, 
-|#
-
-(defmethod print-number-property ((n number))
-  (format t "the number is ~A~%" n))
-
-(defmethod print-number-property :before :filter :odd (n)
-  (declare (ignore n))
-  (print "This is an odd number"))
-
-(defmethod print-number-property :before :filter :even (n)
-  (declare (ignore n))
-  (print "This is an even number"))
-
-(print-number-property 1) ; "This is an odd number" the number is 1
-(print-number-property 2) ; "This is an even number" the number is 2
-
-;;; stack example
-
-(defclass stack ()
-  ((contents :initform (make-array 10) :reader stack-contents)
-   (index :initform 0 :accessor stack-index)))
-
-;;; I recommend you use with-accessors rather than with-slots.  Slots are implementation details and it is best to refer to implementation details as little as possible.
-(defun stack-state (stack)
-  (with-accessors ((index stack-index)
-		   (contents stack-contents)) stack
-    (cond ((<= index 0) 'empty)
-	  ((>= index (length contents)) 'full)
-	  (t 'normal))))
-
-(defmethod print-object ((object stack) stream)
-  (print-unreadable-object (object stream :type t)
-    (describe object stream)))
-
-;;; stack interface using filtered methods
-(define-filtered-function stack-push (stack value)
-  (:filters (:state (list #'stack-state #'identity))
-	    (:number (list #'stack-state #'sign))))
-
-#| - All that code that you normally put into a cond for the different situations that you see here, is now just method specialization placed as the types of the arguments that are being passed in.
-The predicates are doing all the work to ensure that the proper method gets called in the actual dispatch machinery of CL. That's really really cool because you've isolated that code into a single location. You can test it, make sure everything works  ...
-- That's really the main thing that makes this nice: it really helps with code separation 
-
-stack is still the stack object. It's not equal to the symbol 'empty.
-And value is not equal to the symbol 'pos, it's actually the value, the number that you passed in. Those eql predicates are there just to do the dispatch.
-
-It makes the code clearer. This gives you some options on how you do your code, and do proper separation of concerns. 
-
-The beauty of it is that it's all built into the machinery: it's just an extension of what's already there using the Metaobject Protocol. It allowed you to create a brand new dispatch mechanism.
-
-With the normal CLOS that doesn't have this extension, unless you were using classes, outside the eql specialization there wasn't any real way to actually say: if the object is of this protocol/type go ahead and dispatch it on it.
-
-I think this opens up a lot of doors for creativity but obviously we want to explore the machinery a little bit more. That's for another time.
-
-In the coming weeks we'll be talking about the Metaobject Protocol in more detail.
-|#
-
-(defmethod stack-push :filter :number (stack (value (eql 'pos)))
-  (setf (aref (stack-contents stack) (stack-index stack)) value)
-  (incf (stack-index stack)))
-
-(defmethod stack-push :filter :state (stack value)
-  (declare (ignore stack))
-  (error "You can only push positive numbers on this stack."))
-
-(defmethod stack-push :filter :number ((stack (eql 'full)) (value (eql 'pos)))
-  (declare (ignore stack value))
-  (error "stack is full"))
-
-(defmethod stack-pop :filter :state ((stack (eql 'empty)))
-  (declare (ignore stack))
-  (error "stack is empty"))
-
-;;; For stack-pop, you could use prog1 to avoid a temporary variable.
-(defmethod stack-pop :filter :state (stack)
-  (prog1
-      (aref (stack-contents stack) (stack-index stack))
-    (decf (stack-index stack))))
-
-(defparameter *test-stack* (make-instance 'stack))
-(stack-push *test-stack* 1)
-#|
-Slots with :INSTANCE allocation:
-CONTENTS                       = #(1 0 0 0 0 0 0 0 0 0)
-  INDEX                          = 1
-|#
-(stack-push *test-stack* 3)
-#|
-Slots with :INSTANCE allocation:
-  CONTENTS                       = #(1 3 0 0 0 0 0 0 0 0)
-  INDEX                          = 2
-|#
-(stack-push *test-stack* -1)
-;;; You can only push positive numbers on this stack. [Condition of type SIMPLE-ERROR]
-(stack-push *test-stack* 0)
-;;; You can only push positive numbers on this stack. [Condition of type SIMPLE-ERROR]
-
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Firephp.html b/clones/lisp/www.cliki.net/Firephp.html deleted file mode 100644 index 87054030..00000000 --- a/clones/lisp/www.cliki.net/Firephp.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: Firephp - - - - - - - -
Firephp
Firephp is implementation of firephp protocol for Common Lisp -It is useful for debugging web applications.

Repository is here https://github.com/html/firephp -
Author: Olexiy A. Zamkoviy

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/FiveAM.html b/clones/lisp/www.cliki.net/FiveAM.html deleted file mode 100644 index e18aa0b6..00000000 --- a/clones/lisp/www.cliki.net/FiveAM.html +++ /dev/null @@ -1,80 +0,0 @@ - - - - - CLiki: FiveAM - - - - - - - -
FiveAM
FiveAM is a Test Framework whose goal is to be as simple as possible.

Author: Marco Baringer

Some useful user comment is linked from the project home page.

has the usual features you would expect from an xUnit style test framework [...] presents a more lispish macro interface.

Distinguishing Characteristics

    -
  1. assert-equal, assert-eql, assert-true, etc. have been replaced by the single is macro which inspects its argument to determine how to test equality
  2. -
  3. Tests and test suites are named via symbols, this allows tests with the same name to peacfully live together (in different packages), and makes removing or runing single tests easy.
  4. -
  5. !, !! and !!! functions for easily re-running recently run tests.
  6. -
  7. inter test dependencies
  8. -


Example:

-CL-USER> (def-suite my-suite :description "My Example Suite")
-CL-USER> (in-suite my-suite)
-CL-USER>
-(test my-tests
-  "Example"
-  (is (= 4 (+ 2 2)) "2 plus 2 wasn't equal to 4 (using #'= to test equality)")
-  (is (= 0 (+ -1 1)))
-  (signals
-      (error "Trying to add 4 to FOO didn't signal an error")
-    (+ 'foo 4))
-  (is (= 0 (+ 1 1)) "this should have failed"))
-CL-USER> (run!)
-...f
- Did 4 checks.
-    Pass: 3 (75%)
-    Skip: 0 ( 0%)
-    Fail: 1 (25%)
-
- Failure Details:
- --------------------------------
- MY-TESTS [Example]: 
-      this should have failed.
- --------------------------------
-
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Flexi-streams.html b/clones/lisp/www.cliki.net/Flexi-streams.html deleted file mode 100644 index fa5da280..00000000 --- a/clones/lisp/www.cliki.net/Flexi-streams.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: flexi-streams - - - - - - - -
flexi-streams
FLEXI-STREAMS is a library which implements "virtual" bivalent streams that can be layered atop real binary/bivalent streams. It can be used to read and write character data in various single- or multi-octet character encodings which can be changed on the fly. It also supplies in-memory binary streams which are similar to string streams.

Depends on: trivial-gray-streams

Repository: https://github.com/edicl/flexi-streams

Author: Edi Weitz


-BSD license
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Flexichain.html b/clones/lisp/www.cliki.net/Flexichain.html deleted file mode 100644 index d7742eb4..00000000 --- a/clones/lisp/www.cliki.net/Flexichain.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Flexichain - - - - - - - -
Flexichain
Flexichain is an API for editable sequences. Its primary use is in end-user applications that edit sequences of objects such as text editors (characters), word processors (characters, paragraphs, sections, etc), score editors (notes, clusters, measures, etc), though it can also be used as a stack and a double-ended queue.

Project page


-Topics: data structure
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Foil.html b/clones/lisp/www.cliki.net/Foil.html deleted file mode 100644 index 255363f7..00000000 --- a/clones/lisp/www.cliki.net/Foil.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Foil - - - - - - - -
Foil
Foil (Foreign Object Interface for Lisp) consists of a protocol and a set of libraries that facilitate access to popular object runtimes, such as the JVM (Java) and the CLI/CLR (.NET), and their libraries, from Lisp.

License: Common Public License 1.0

Homepage: http://foil.sourceforge.net/

Last Update: 2013-04-03

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Fons Haffmans.html b/clones/lisp/www.cliki.net/Fons Haffmans.html deleted file mode 100644 index 692707a4..00000000 --- a/clones/lisp/www.cliki.net/Fons Haffmans.html +++ /dev/null @@ -1,58 +0,0 @@ - - - - - CLiki: Fons Haffmans - - - - - - - -
Fons Haffmans
Fons Haffmans is a Person, or at least I think I am. My interest is in AI -and Natural Language Processing among other things.

More information can be found on my - blog .You can reach me at -fons dot haffmans@gmail dot com.

I maintain the cl-mongo database Library. -I also maintain a - copy -of the cl-twitter api.


-Person
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Foo.html b/clones/lisp/www.cliki.net/Foo.html deleted file mode 100644 index 81e13cf9..00000000 --- a/clones/lisp/www.cliki.net/Foo.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: foo - - - - - - - -
foo
Canonical metasyntactic variable. See also bar

Shouldn't 'metasyntactic' be 'metasemantic'? In many cases foo is in fact a -variable, but its meaning is meant as any variable. Meaning is a semantic -matter, not a syntactic one.

I don't think so. I think the point is you say, things like: A DEFUN form looks lik: (defun foo (bar) ...). In this case foo and bar are standing in, syntactically, for the actual names that you would actually use. -Peter Seibel


-document
- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Formlets.html b/clones/lisp/www.cliki.net/Formlets.html deleted file mode 100644 index 0985e255..00000000 --- a/clones/lisp/www.cliki.net/Formlets.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Formlets - - - - - - - -
Formlets
This package implements self-validating formlets for Hunchentoot (it assumes cl-who). Formlets are an abstraction for standard HTML forms; given that server-side validation is typically the same two step process, it seemed natural to incorporate that into the PLT-Racket style formlet declarations.

It's at 0.1 stages at the moment, so don't expect full functionality or efficiency yet (it does work though; and it cuts down on boilerplate considerably in my projects). Documentation is now up at the github page,

Github page here, which includes use and project documentation in markdown format.

No GPG keys, so download the above at your own risk.

web Utilities Hunchentoot

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Forth.html b/clones/lisp/www.cliki.net/Forth.html deleted file mode 100644 index 4e8f3502..00000000 --- a/clones/lisp/www.cliki.net/Forth.html +++ /dev/null @@ -1,57 +0,0 @@ - - - - - CLiki: Forth - - - - - - - -
Forth
Forth is a structured, imperative, reflective, stack-based programming language. There are several implementations available for Common Lisp:

- -
-
- - -
- - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Fortran.html b/clones/lisp/www.cliki.net/Fortran.html deleted file mode 100644 index 8ae9df06..00000000 --- a/clones/lisp/www.cliki.net/Fortran.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Fortran - - - - - - - -
Fortran
Formula Translator, often claimed to be the oldest programming language still in use. Common Lisp's Format was influenced by the formatting mechanisms in Fortran. -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Forward Discrete Cosine Transform.html b/clones/lisp/www.cliki.net/Forward Discrete Cosine Transform.html deleted file mode 100644 index 18eab485..00000000 --- a/clones/lisp/www.cliki.net/Forward Discrete Cosine Transform.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Forward Discrete Cosine Transform - - - - - - - -
    Forward Discrete Cosine Transform
    forward-dct! is a function implementing forward Discrete Cosine Transform, as used in JPEG.

    Written by R. Matthew Emerson who compared it to the C version from the well-known IJG JPEG library. This code is placed in the Public Domain. Code and comments can be found at thoughtstuff.com.

    Topic: mathematics

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Fract.html b/clones/lisp/www.cliki.net/Fract.html deleted file mode 100644 index 1fbfc64a..00000000 --- a/clones/lisp/www.cliki.net/Fract.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Fract - - - - - - - -
    Fract
    Fract is a web-based fractal zoomer for the Mandelbrot Set. It's using poly-pen for rendering and Araneida for the web support. There are no advanced features, the goal is to keep the code easy to read for someone interested in fractals. The package also includes an offline renderer that you can use to generate hi resolution images of your favorite spots. You can also play easily with the color map.

    The latest stable version is 0.5.19 (fract-0.5.19.tar.gz). It depends on poly-pen, cl-ppcre, and clsql. This is the complete Web and REPL interface and is it not known to be easy to setup. If the only thing you want is to produce cute images and animations, most of the engine was factored out as Mini-Fract 0.6 (mini-fract-0.6.tar.gz). This is a stand alone Common Lisp program; it should be easy to install.

    License: GPL


    -graphics library application
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Fractal hacks.html b/clones/lisp/www.cliki.net/Fractal hacks.html deleted file mode 100644 index 28720070..00000000 --- a/clones/lisp/www.cliki.net/Fractal hacks.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Fractal hacks - - - - - - - -
    Fractal hacks
    Fractal hacks is a collection of programs for drawing fractal curves. Such fractals as the Sierpinski gasket, twin-tree, dragon curve, maze, Koch curve, etc. can be displayed.

    The programs run under CMUCL, CLISP and Allegro CL (ACL) but they should be easily ported to any system with CLX support. The source code was posted by Fred Gilham to the comp.lang.lisp newsgroup on 7 Feb 2000.

    This page is in the Graphics library topic.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Francis Leboutte.html b/clones/lisp/www.cliki.net/Francis Leboutte.html deleted file mode 100644 index dcd36b51..00000000 --- a/clones/lisp/www.cliki.net/Francis Leboutte.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Francis Leboutte - - - - - - - -
    Francis Leboutte
    My professional homepage

    person

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Francisco Vides.html b/clones/lisp/www.cliki.net/Francisco Vides.html deleted file mode 100644 index 6a139d7b..00000000 --- a/clones/lisp/www.cliki.net/Francisco Vides.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Francisco Vides - - - - - - - -
    Francisco Vides
    Francisco Vides is a Person (well, most of the time), who ask himself everyday why took so long to get out of minor languages and reach Common Lisp.

    He hopes to make something good someday (is already working hard).

    Can be contacted at fvides { at } dedaloingenieros.com

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Fred Nicolier.html b/clones/lisp/www.cliki.net/Fred Nicolier.html deleted file mode 100644 index a37aea9e..00000000 --- a/clones/lisp/www.cliki.net/Fred Nicolier.html +++ /dev/null @@ -1,56 +0,0 @@ - - - - - CLiki: Fred Nicolier - - - - - - - -
    Fred Nicolier
    Fred Nicolier is a Person who works as an image processing researcher. He loves lisp and try to maintain the following packages : -

    He as a personal frenchy webpage at here.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Free Software.html b/clones/lisp/www.cliki.net/Free Software.html deleted file mode 100644 index c04c6e69..00000000 --- a/clones/lisp/www.cliki.net/Free Software.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Free Software - - - - - - - -
    Free Software
    Free Software, for the purposes of the CLiki site, is software that complies with the Debian Free Software Guidelines.

    `Open Source' is another name for approximately the same software (minus some really rather picky distinctions) but has a rather different set of political baggage.

    A note from your sponsor: the debate about which of these terms is `better' or `correct' has been done to death many times before. If you want to re-enact it, please don't use CLiki for that purpose.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Free.html b/clones/lisp/www.cliki.net/Free.html deleted file mode 100644 index 370bdd68..00000000 --- a/clones/lisp/www.cliki.net/Free.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: free - - - - - - - -
    free
    For the purposes of the CLiki site, free means "free according to the DFSG". See also non-free -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/FreeBSD.html b/clones/lisp/www.cliki.net/FreeBSD.html deleted file mode 100644 index ef472fef..00000000 --- a/clones/lisp/www.cliki.net/FreeBSD.html +++ /dev/null @@ -1,63 +0,0 @@ - - - - - CLiki: FreeBSD - - - - - - - -
    FreeBSD
    FreeBSD ("the other free operating system") is an advanced operating system for x86, ARM, PowerPC and RISC V. It is derived from BSD UNIX, the version of UNIX developed at the University of California, Berkeley. More information is at its homepage.

    -Common Lisp Implementations

    All these can be installed using the ports system.

      -
    • -SBCL (amd64 and i386)
    • -
    • -CCL (amd64)
    • -
    • -ECL (all supported platforms)
    • -
    • -CMUCL (all supported platforms)
    • -
    • -CLISP (all supported platforms)
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/FriedrichDominicus.html b/clones/lisp/www.cliki.net/FriedrichDominicus.html deleted file mode 100644 index 99a2708f..00000000 --- a/clones/lisp/www.cliki.net/FriedrichDominicus.html +++ /dev/null @@ -1,70 +0,0 @@ - - - - - CLiki: FriedrichDominicus - - - - - - - -
    FriedrichDominicus
    I'm a Person, the homepage from my small company can be accessed at -Q Software Solutions -and my personal hompage is at -My web home

    My favourite languages are those which have stand the proof-of-time. I'm in the "backward-compatablity-preferred" camp, but can see also reasons why others won't follow. However I feel very unpleasant about libraries which change from one minor version to another in a incompatible way.

    I've spend the last 10 years or so on languages development and my pets peeves are the so called 'non-mainstream' languages. The languages I like the most are currently

    * C (see e.g my homepage)

    * Common Lisp (well you guess that, I guess ;-)

    * Ruby

    * Smalltalk

    I do like also: -* Ocaml

    * Haskell

    * Erlang

    * and a few others ;-)

    I have a dislike for -C++, Perl

    I'm undecided about -Java, C# and maybe a thousands more (because I simple do not know them ;-)

    -I've spend quite a few years and a bunch of money on developing a follow up language to Eiffel called Q. It's a proof-of-concept it has not materialized really because it seems there is not market for development tools on Linux.

    As you might think: I was once an enthusiastic Eiffel programmer, but political reasons from two of the major players ISE and the 'free' (beer) development team of Smart(ll)Eiffel have driven me far away.

    Feel free to visit new:comp.lang.eiffel or the Mailings list to get an idea about this stuff.

    Invitation

    -Well I would appreciate if you'd start working with me or with anyone else on -webDevelopmentExample.

    An Essay about why

    -Gary King asked why?The web application development tutorials -Maybe some of you have notices that I havn't wrote a line within a month. I'm a bit sorry about that, but I'm really running short on time and temper. As I wrote here: -Why answer

    The comment from Daniel Barlow just stresses my point: -

    - -There I was thinking that the question was why Lisp hackers don't use it for web dev, but then it turns out from the comments that it's actually why people doing web dev aren't lisp hackers.

    Lucky I didn't waste my time answering the wrong question, then ..." - -

    -From the Blog of http://www.metabang.com/unclog/publisha/why.html answers.

    -

    Comparisons between the diverse Web Development Kits

    I spend a few hours to get into kpax and it seems that this framework lies in betweeen webactions and ucw in regards to functionality. IMHO it's complexity is in between also, but I've the impression that kpax is the best written from the the mentioned tools. However it may be that this is due to my growing knowledge. So maybe it looks a bit easier as it really is.

    But one thing I found very interesting (or amusing) that's the way I wrote my extension for webactions

    Extension webactions

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Funds.html b/clones/lisp/www.cliki.net/Funds.html deleted file mode 100644 index e7ed57ff..00000000 --- a/clones/lisp/www.cliki.net/Funds.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Funds - - - - - - - -
    Funds
    Funds provides portable, purely functional data structures written in Common Lisp.

    Home page: https://common-lisp.net/project/funds/

    License: Apache 2


    -GSoC
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/GBBOpen.html b/clones/lisp/www.cliki.net/GBBOpen.html deleted file mode 100644 index 0a9595c3..00000000 --- a/clones/lisp/www.cliki.net/GBBOpen.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: GBBopen - - - - - - - -
    GBBopen
    GBBopen is a high-performance open source distributed systems framework based on the concepts that were explored and refined in the UMass Generic Blackboard system (see PDF article on that history) and the commercial GBB product. The Portable-Threads library has been spun off from GBBopen, and is available separately (e.g. in Quicklisp).

    Repository: http://gbbopen.org/svn/GBBopen/trunk/

    License: Apache 2


    -Knowledge Representation Systems
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/GBBopen.html b/clones/lisp/www.cliki.net/GBBopen.html deleted file mode 100644 index 0a9595c3..00000000 --- a/clones/lisp/www.cliki.net/GBBopen.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: GBBopen - - - - - - - -
    GBBopen
    GBBopen is a high-performance open source distributed systems framework based on the concepts that were explored and refined in the UMass Generic Blackboard system (see PDF article on that history) and the commercial GBB product. The Portable-Threads library has been spun off from GBBopen, and is available separately (e.g. in Quicklisp).

    Repository: http://gbbopen.org/svn/GBBopen/trunk/

    License: Apache 2


    -Knowledge Representation Systems
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/GCL ANSI Test Suite.html b/clones/lisp/www.cliki.net/GCL ANSI Test Suite.html deleted file mode 100644 index b6ea47e6..00000000 --- a/clones/lisp/www.cliki.net/GCL ANSI Test Suite.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: GCL ANSI Test Suite - - - - - - - -
    GCL ANSI Test Suite
    An ANSI CL compliance test suite located in the GCL cvs tree.

    Maintained by Paul Dietz, the test suite is roughly 85% done. Currently working on tests for: section 25 (Environment).

    See on GitHub.

    The cvs tree: http://cvs.savannah.gnu.org/viewvc/gcl/gcl/ansi-tests/

    The SVN tree: svn://common-lisp.net/project/ansi-test/svn/trunk/ansi-tests

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/GCL.html b/clones/lisp/www.cliki.net/GCL.html deleted file mode 100644 index bcaf4d96..00000000 --- a/clones/lisp/www.cliki.net/GCL.html +++ /dev/null @@ -1,60 +0,0 @@ - - - - - CLiki: GCL - - - - - - - -
    GCL
    GNU Common Lisp is a Common Lisp implementation of the KCL Family that uses gcc to compile Lisp into native binaries. GCL started out as a CLtL1-level CL; steady progress is being made towards bringing it to ANSI CL compliance: It is almost there now. CVS head is rather close to compliance.

    GCL is released under the terms of the LGPL and is the official common lisp of the GNU System. It runs on twelve GNU/Linux architectures (x86 amd64 powerpc s390 sparc arm alpha ia64 hppa m68k mips mipsel), Windows, Sparc Solaris, FreeBSD, and Mac OS X. GCL has support for cross-platform graphical user interfaces using the Tk widget set.

    GCL is closely associated with the Maxima, ACL, ACL2, and Axiom projects.

    GCL is under -active development: the last version was released in September 6, 2014. The project is a GNU Savannah project and uses the GIT version control system.

    The current stable release of GCL (gcl-2.6.12.tar.gz) is 2.6.12, and can -be downloaded from GNU's FTP site. You can check out the GIT development source tree using the following commands:

    -git clone git://git.sv.gnu.org/gcl.git
    -cd gcl
    -git checkout master
    -cd gcl
    -

    You can download a MS Windows executable (".exe") and get other information for using GCL with Windows here.

    The -official home page has release notes and describes more of GCL's -features (X, MPI, flexible C FFI).

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/GECO.html b/clones/lisp/www.cliki.net/GECO.html deleted file mode 100644 index 1dffc575..00000000 --- a/clones/lisp/www.cliki.net/GECO.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: GECO - - - - - - - -
    GECO
    GECO is a CLOS-based library for writing Genetic Algorithms. It is a fairly flexible framework that can be used for experimentation and for the solution of a variety of problems. Documentation is available, and it includes two simple examples. It was written by George P.W. Williams, Jr., and it is distributed under the GPL.

    Version 2.0 is part of the archives of the CMU AI repository. An updated version is hosted here.


    -Topics: AI
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/GENHASH.html b/clones/lisp/www.cliki.net/GENHASH.html deleted file mode 100644 index 9f4fae0c..00000000 --- a/clones/lisp/www.cliki.net/GENHASH.html +++ /dev/null @@ -1,70 +0,0 @@ - - - - - CLiki: genhash - - - - - - - -
    genhash
    NET HEXAPODIA HASHTABLES is a data structure library for generic hash tables.

    The interface is specified in CDR 2: https://common-lisp.net/project/cdr/document/2/index.html

    This is currently in version 1.4, with MAP-GENERIC-HASH and WITH-GENERIC-HASH-TABLE-ITERATOR added. Still no LOOP path, though. There is, however, a pair of functions for hash tables using vectors of strings as keys.

    Generic hash table implementation. This implementation is in the -public domain.

    This package defines four generic functions and two normal functions. -The non-generic function MAKE-GENERIC-HASH-TABLE is used for -hash table creation.

    -(make-generic-hash-table (:test 'eql) (:size 17))
    -

    If this function is fed the symbols EQ, EQL, EQUAL or EQUALP as test it will create a generic hash table with that as an equality test -and SXHASH as the hash function.

    If this function is fed the functions EQ, EQL, EQUAL or EQUALP -it will create a normal (built-in) hash table with that as a test -function.

    -(register-test-designator nickname hash-fn equal-fn)
    -

    Register a new generic hash function with nickname as the relevant :test parameter.

    The generic functions are:

    -(hashref key table &optional (default nil))
    -

    This function does essentially the same thing as GETHASH.

    -((setf hashref) value key table &optional ignore)
    -

    For (setf (hashref ...) ...)

    -(map-generic-hash fn table)
    -

    As MAPHASH

    -(hashrem key table)
    -

    As REMHASH

    These functions dispatch somewhat differently depending on if they're -fed a generic hash table or a built-in hash table.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/GENSYMLET.html b/clones/lisp/www.cliki.net/GENSYMLET.html deleted file mode 100644 index f8419325..00000000 --- a/clones/lisp/www.cliki.net/GENSYMLET.html +++ /dev/null @@ -1,58 +0,0 @@ - - - - - CLiki: GENSYMLET - - - - - - - -
    GENSYMLET
    (defmacro gensymlet ((&rest bindings) &body body) - (let ((keys (loop for n in bindings collect (first n))) - (vals (loop for n in bindings collect (second n)))) - `(with-gensyms (,@keys) - `(let (,,@(loop for j in keys - for k in vals collect ``(,,j ,,k))) - ,,@body)))) -

    macro example

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/GLOS.html b/clones/lisp/www.cliki.net/GLOS.html deleted file mode 100644 index 722f25a3..00000000 --- a/clones/lisp/www.cliki.net/GLOS.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: GLOS - - - - - - - -
    GLOS
    GLOS (Graphic Library in Open Source) is a from-scratch software implementation of OpenGL. It currently works with CMUCL, and has not been (and will probably not be) tested on other systems. Textures are not supported.

    GLOS was developed by Jonathan Bailleul, Fabrice Bazzaro, Benoit Degand, Renaud-Rolland Hubert and Michael Pujos for a Masters Thesis, and is distributed under the terms of the GPL. The project site is hosted at SourceForge. This site is being reconstructed right now, so please refer to this one during transition.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/GMane.html b/clones/lisp/www.cliki.net/GMane.html deleted file mode 100644 index 05572e83..00000000 --- a/clones/lisp/www.cliki.net/GMane.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: GMane - - - - - - - -
    GMane
    GMane is a bidirectional Mail to News gateway. -It hosts a lot of mailing lists, including many lisp-related ones (take a look at the gmane.lisp.* hierarchy)
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/GNOME.html b/clones/lisp/www.cliki.net/GNOME.html deleted file mode 100644 index 7d22a773..00000000 --- a/clones/lisp/www.cliki.net/GNOME.html +++ /dev/null @@ -1,57 +0,0 @@ - - - - - CLiki: GNOME - - - - - - - -
    GNOME
    GNOME is the GNU Object Model Environment, intended to provide a user-friendly "desktop environment" for UNIX operating systems.

    Components of GNOME are largely licensed under the LGPL, and many -of them are libraries written in C. GNOME uses CORBA to -access some GNOME components, and uses a CORBA implementation -called ORBit.

    GNOME has a bunch of language bindings -to allow developing applications and components in other languages -than C. Although ORBit does not yet support Common Lisp, any IIOP-compatible ORB (eg CLORB) will talk to it. Note also that clg will allow Common Lisp -binding for Glade, the GUI construction tool used with GNOME.

    GNOME apps use Gtk for widgets and general graphical stuff

    There is a "competing" environment called KDE.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/GNU emacs.html b/clones/lisp/www.cliki.net/GNU emacs.html deleted file mode 100644 index 9ecd3497..00000000 --- a/clones/lisp/www.cliki.net/GNU emacs.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: GNU emacs - - - - - - - -
    GNU emacs
    GNU emacs is a popular emacs implementation.

    When using GNU Emacs, it is advisable to put -(setq lisp-indent-function 'common-lisp-indent-function) -in your emacs init.el to enable common lisp style indentation. This depends on the cl-indent emacs lisp package which typically ships with emacs.

    The project page is on http://www.gnu.org/software/emacs/emacs.html.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/GNU.html b/clones/lisp/www.cliki.net/GNU.html deleted file mode 100644 index 2334b0af..00000000 --- a/clones/lisp/www.cliki.net/GNU.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: GNU - - - - - - - -
    GNU
    GNU is a project to create a GPL-licensed UNIX that was started by Richard Stallman, the creator of EMACS. The GNU project is now overseen by the Free Software Foundation, which Richard Stallman founded.

    GNU is a recursive acronym, and it stands for GNU's Not Unix. This, no doubt, is because of Richard Stallman's grounding in Lisp.

    The GNU Project has created a great many software packages, including gcc, gdb, sed, glibc, make, awk, find, and a good deal more besides. These packages make up a major portion of every Linux distribution.

    The development of the GNU operating system, the Hurd, continues.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/GPGME.html b/clones/lisp/www.cliki.net/GPGME.html deleted file mode 100644 index e2373ac5..00000000 --- a/clones/lisp/www.cliki.net/GPGME.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: GPGME - - - - - - - -
    GPGME
    GPGME (GnuPG Made Easy) is a C language library that provides a high-level cryptography API for encryption, decryption, signing, signature verification and key management.

    GPGME includes a complete Common Lisp CFFI binding with an ASDF. It depends on libgpg-error.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/GPL.html b/clones/lisp/www.cliki.net/GPL.html deleted file mode 100644 index 35e7d564..00000000 --- a/clones/lisp/www.cliki.net/GPL.html +++ /dev/null @@ -1,288 +0,0 @@ - - - - - CLiki: GPL - - - - - - - -
    GPL
    The GNU General Public License is the "copyleft" license used by most of the applications developed by the Free Software Foundation (FSF). Software released using this license is free according to the DFSG

    Although it is well-understood for traditional C/Unix programs, fewer people agree on exactly what its implications are when used in a typical CL environment. At least, I don't. Debate welcome

    For more details see its page on the GNU project web site

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/GPL3.html b/clones/lisp/www.cliki.net/GPL3.html deleted file mode 100644 index 8ba2db33..00000000 --- a/clones/lisp/www.cliki.net/GPL3.html +++ /dev/null @@ -1,156 +0,0 @@ - - - - - CLiki: GPL3 - - - - - - - -
    GPL3
    GPL3 is a modification of the GPL2 license (not to be confused with the LGPL).

    The main difference between GPL2 and 3 is that GPL3 explicitly addresses software patents, DMCA (and similar legislation that makes it illegal to break DRM) and "Tivoisation" (according to the FSF page, this pertains to hardware limitations placed on specific types of otherwise general purpose computers).

    GPL3 projects

      -
    • -agnostic-lizard - - An almost correct portable code walker for Common Lisp -
    • -
    • -AmOS - - AmOS (Ambient Object System) is an object-based computation model aimed at supporting highly dynamic behaviour adaptation to changing contexts -
    • -
    • -Antik - - A library for computational mathematics, science, and engineering -
    • -
    • -Antiweb - - Antiweb is an event-based HTTP server that can support a high number of persistent connections in very small memory footprints -
    • -
    • -asd-generator - - Automatic directory scanner/generator for .asd project files -
    • -
    • -BST - - BST is a Common Lisp library for working with binary search trees that can contain any kind of values -
    • -
    • -cl-cron - - cl-cron is a simple cron like library that allows you to set up cron-like jobs and run them at predetermined times -
    • -
    • -cl-icalendar - - An implementation of the iCalendar (RFC 5545) file format -
    • -
    • -cl-keycloak - - A basic Common Lisp library to connect with Keycloak OIDC and request user info -
    • -
    • -cl-z85 - - ZeroMQ base-85 encoding and decoding -
    • -
    • -CLDB - - A fast, atomic, consistent, isolated memory based database in Common Lisp -
    • -
    • -CLEWS - - Common Lisp Educational Web Server (CLEWS) is a platform for developing educational web applications, providing systems for peer-review assessments, discussion assessments, adaptive tutorials and course management -
    • -
    • -Common Lisp Persistency Manager - - A software package for serialization of Common Lisp data structures, much like Python's pickle facility -
    • -
    • -Consfigurator - - A system for declarative configuration management using Common Lisp -
    • -
    • -defstar - - Defstar is a collection of Common Lisp macros that can be used in place of defun, defmethod, defgeneric, defvar, defparameter, flet, labels, let* and lambda -
    • -
    • -Fileworthy - - A simple website to manage your local notes and files across many devices -
    • -
    • -hyde - - Hyde 1 is a static web site generator written in ECL (Embedded Common Lisp), with no dependencies on external systems, except CL-PPCRE -
    • -
    • -ICanCAD - - ICanCAD is a CAD application for analog and mixed-signal (analog and digital signals on the same chip) electronics circuit design -
    • -
    • -iescrypt - - A tool to encrypt and/or sign files -
    • -
    • -JSCL - - jscl is the Common Lisp to JavaScript Compiler, a subset of Common Lisp implementation -
    • -
    • -LENS - - Lisp Educational Network Simulator (LENS) provides a Common Lisp environment for network simulations -
    • -
    • -Lisp as a shell - - See CLISP-Shell locally or the -
    • -
    • -replay-streams - - Replay streams let the programmer rewind to points in a stream that have already been read -
    • -
    • -shtookovina - - Шτookωвiнα is designed to be useful for learners of foreign languages -
    • -
    • -The Feebs War - - The Game The Feebs War is a new project based on Planet of the Feebs, with the intent to improve it, giving better support for lisp newbies and enhancing the features provided -
    • -
    • -zen - - zen is a hackable X server written in Common Lisp -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/GRT Raytracer.html b/clones/lisp/www.cliki.net/GRT Raytracer.html deleted file mode 100644 index f6548359..00000000 --- a/clones/lisp/www.cliki.net/GRT Raytracer.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: GRT Raytracer - - - - - - - -
    GRT Raytracer
    GRT Raytracer is a Common Lisp ray-tracing system.

    Project homepage: http://www.nongnu.org/grt/

    License: GPL

    Repository: http://cvs.savannah.gnu.org/viewvc/grt/grt-lisp/

    GRT falls somewhere between an application and a graphics library.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/GSLL.html b/clones/lisp/www.cliki.net/GSLL.html deleted file mode 100644 index 74d9c20c..00000000 --- a/clones/lisp/www.cliki.net/GSLL.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: GSLL - - - - - - - -
    GSLL
    GNU Scientific Library for Lisp allows you to use the GNU Scientific Library (GSL) from Common Lisp.

    This library provides a full range of common mathematics operations useful to scientific and engineering applications. The design of the GSLL interface is such that access to most of the GSL library is possible in a Lisp-natural way; the intent is that the user not be hampered by the restrictions of the C language in which GSL has been written. GSLL thus provides interactive use of GSL for getting quick answers, even for someone not intending to program in Lisp.

    Topics include: roots of polynomials, special functions, vector and matrix operations, permutations, sorting, BLAS support, linear algebra, eigensystems, fast Fourier transforms, quadrature, random numbers, quasi-random sequences, random distributions, statistics, histograms, N-tuples, Monte Carlo integration, simulated annealing, differential equations, interpolation, numerical differentiation, chebyshev approximation, series acceleration, discrete Hankel transforms, root-finding, minimization least-squares fitting, IEEE floating-point, discrete wavelet transforms.

    Available with Quicklisp.

    Homepage: at common-lisp.net.

    License: GPLv3

    Repository: GitLab

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/GSoC 2011 Parenscript project page.html b/clones/lisp/www.cliki.net/GSoC 2011 Parenscript project page.html deleted file mode 100644 index f93a50dd..00000000 --- a/clones/lisp/www.cliki.net/GSoC 2011 Parenscript project page.html +++ /dev/null @@ -1,66 +0,0 @@ - - - - - CLiki: GSoC 2011 Parenscript project page - - - - - - - -
    GSoC 2011 Parenscript project page
    Project ideas for the Parenscript GSoC 2011 mentoring organization. Please sign your idea with a link to your Person page, and indicate which projects you'd like to mentor.

    • -fare-matcher for Parenscript. (mentors: Vladimir Sedach)

    • -
    • Put together an official "SLIME for Parenscript" IDE from swank-js, slime-proxy, and Emacs Lisp code adapted from SLIME itself. (mentors: Vladimir Sedach)

    • -
    • Port GCL Common Lisp unit test suite to Parenscript by using CL-JavaScript as a backend. (mentors: Vladimir Sedach)

    • -
    • -RFC 2898 library for hashing passwords in web applications (mentors: Vladimir Sedach)

    • -
    • Integrate CL-JavaScript into the Closure web browser.

    • -
    • Once Closure has JavaScript support, adapt rxvt-js (a JavaScript/DHTML port of urxvt) to run as a stand-alone native application (using Closure as a library), to serve as a replacement for xterm/rxvt.

    • -
    • Add HTML5 support to the Closure web browser.

    • -
    • Something like SERIES for Parenscript and a server-side DOM that would provide a better stream processing library for the web (better than jQuery, anyway) and use compiler macros for doing optimizations like map fusion. (mentors: Vladimir Sedach)

    • -
    • Something like Clojure's Enlive for doing HTML templating based on CSS selectors. This would enable a much faster workflow for doing websites where the HTML is driven by designers - instead of having to re-do the templates when the designer changes an HTML page, no changes would need to be made if the CSS selectors stay the same (they essentially act as an API between the markup and the code). Closure-html is a good starting point for this. It would be nice if this was also integrated on the client side with Parenscript (perhaps with the above mentioned "SERIES for Parenscript" library).

    • -
    • The above library will probably need something like jQuery's Sizzle CSS selector search for DOM. Again, look at Closure.

    • -
    • Library specifying a protocol for web application user authentication and session management, exposing orthogonal implementation interfaces for web servers and storage backends (so you can use web server X with database Y without having to write an implementation for every cross-product of web servers and databases), with implementations for currently popular web servers and databases.

    • -
    • Portable cross-platform server daemonization library ala RESTAS-daemon (because screen/detachtty don't work well with certain things, such as runit/daemontools supervise) -
    • -

    GSoC

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/GSoC.html b/clones/lisp/www.cliki.net/GSoC.html deleted file mode 100644 index 810bf600..00000000 --- a/clones/lisp/www.cliki.net/GSoC.html +++ /dev/null @@ -1,80 +0,0 @@ - - - - - CLiki: Gsoc - - - - - - - -
    Gsoc
    Google Summer of Code

    List of projects:

      2009 -

      2008 -
    • ErlangInLisp -
    • -
    • SBCL Windows Threading -
    • -
    • cl-openid: OpenID Provider and Relying Party implementation -
    • -

      2007 -
    • IOLib -
    • -
    • CL-ObjC. A bridge between Common Lisp and Objective-C -
    • -
    • Music interchange format support for Gsharp -
    • -
    • -NXTLisp - a Common Lisp library for the NXT Mindstorms platform -
    • -

    List of related CLiki pages:

    -


    -document
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/GTFL.html b/clones/lisp/www.cliki.net/GTFL.html deleted file mode 100644 index 74954026..00000000 --- a/clones/lisp/www.cliki.net/GTFL.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: gtfl - - - - - - - -
    gtfl
    GTFL is a graphical terminal for Common Lisp. The client is a html page running in a web browser and GTFL provides mechanisms for sending content to the client page from within Lisp (using HUNCHENTOOT and HT-SIMPLE-AJAX).

    It is meant for Lisp programmers who want to debug or visualize their own algorithms. Instead of printing tracing information to the Lisp listener (which everybody normally does to understand what's going on), more readable graphical representations of the algorithm's internals are sent to the GTFL client page.

    GTFL also comes with mechanisms for visualizing complex (hierarchical) data or control structures. It provides functions for drawing trees and for hiding complexity in elements that expand when the user clicks on them.

    It's written by Martin Loetzsch and can be found at http://martin-loetzsch.de/gtfl


    -gui debugging development
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/GTK binding.html b/clones/lisp/www.cliki.net/GTK binding.html deleted file mode 100644 index 1232576f..00000000 --- a/clones/lisp/www.cliki.net/GTK binding.html +++ /dev/null @@ -1,100 +0,0 @@ - - - - - CLiki: GTK binding - - - - - - - -
    GTK binding
    This page lists Common Lisp bindings for the GTK GUI toolkit.

    A few comments by JCh: -

      -
    • cl-gtk2 seems to be latest and active as of Sept 2009. -
    • -
    • clg is possibly the nicest of the lot. It's complete (autogenerated) and very lisp-ish (GTK classes are represented as instances of a subclass of standard-class, you just make-instance them); unfortunately, it currently only works with recent versions of CMUCL and SBCL; -
    • -
    • lambda-gtk is complete (autogenerated), but not very lispish; GTK objects are just untyped alien pointers (the Lisp incarnation of C's void*); -
    • -
    • lgtk is lispish enough, but incomplete (it's hand-written); -
    • -
    • I haven't looked at cl-gtk. -
    • -

    Another note: Clozure CL ships with gtk2 support in the form of a simple autogenerated binding (through the same ffi interface used for all native Clozure bindings). It's not lispy at all, but it works (you might want/have to re-run the binding generation script though). It should also bring in support for cairo, pango, etc.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/GTK-CFFI.html b/clones/lisp/www.cliki.net/GTK-CFFI.html deleted file mode 100644 index 028b945f..00000000 --- a/clones/lisp/www.cliki.net/GTK-CFFI.html +++ /dev/null @@ -1,72 +0,0 @@ - - - - - CLiki: gtk-cffi - - - - - - - -
    gtk-cffi
    GTK-CFFI is a Common Lisp GUI library, that provides concise and idiomatic syntax to use GTK+ library (for now GTK+ 3.0).

    It should work in any lisp that supports CFFI.

    It can be downloaded from https://gitlab.common-lisp.net/gtk-cffi/gtk-cffi

    Requirements

    -

    Design

    The main goal of development is maximum freedom for a user of the library.

    For example, you may use as a signal handler: a lisp function; a symbol, corresponding to a lisp-function; a foreign-pointer to a C function; a string that is the name of a C function; a keyword, corresponding to the name of C function. Simply write (setf (gsignal widget :destroy) handler :data data). Data placeholder can contain any lisp object, you want to pass to the handler.

    GTK interface is mapped like this (similar to CLOS slots):

    - - - - - - - - - - - - -
    GTKLisp
    gtk_widget_set_parent(setf (parent widget) new-parent)
    gtk_widget_get_parent(parent widget)

    Properties are accessed through (property widget :property-name) or, if you need several at once, -(property widget :property-name1 :property-name2). Of course, they are setfable.


    -GTK binding
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/GTK.html b/clones/lisp/www.cliki.net/GTK.html deleted file mode 100644 index 092c9530..00000000 --- a/clones/lisp/www.cliki.net/GTK.html +++ /dev/null @@ -1,75 +0,0 @@ - - - - - CLiki: Gtk - - - - - - - -
    Gtk
    Gtk (GTK+) is a Graphics Toolkit written in C, primarily developed for use with the X Window System. GTK+ is licensed under the GNU LGPL license and has bindings for many languages including Ada95, C++, Common Lisp - (see GTK bindings), Dylan, Eiffel, Guile, Haskell, JavaScript, Objective C, Objective Caml, Objective Label, Pascal, Perl, Pike, Python, and TOM. It's a major component of the GNOME project.

    More information can be found at http://www.gtk.org/.

    Common Lisp GTK bindings, etc. on Cliki: -

      -
    • -cl-gtk2 - - CL-GTK2 is a Common Lisp GUI library that provides access to the Gtk+ cross-platform GUI library in idiomatic Lisp style -
    • -
    • -cl-webkit - - cl-webkit is a binding to WebKitGtk+ for Common Lisp -
    • -
    • -GNOME - - GNOME is the GNU Object Model Environment, intended to provide a user-friendly "desktop environment" for UNIX operating systems -
    • -
    • -GTK binding - - This page lists Common Lisp bindings for the GTK GUI toolkit -
    • -
    • -gtk-cffi - - GTK-CFFI is a Common Lisp GUI library, that provides concise and idiomatic syntax to use GTK+ library (for now GTK+ 3.0) -
    • -

    GTK can also be used with Lisp through -GTK-server.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/GUD.html b/clones/lisp/www.cliki.net/GUD.html deleted file mode 100644 index fec23f64..00000000 --- a/clones/lisp/www.cliki.net/GUD.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: GUD - - - - - - - -
    GUD
    Grand Unified Debugger mode for gdb and other debuggers under Emacs. -Supported debuggers include gdb, sdb, dbx, xdb, perldb, pdb (Python), and jdb. — from gud.el

    GUD is a standard part of GNU Emacs and XEmacs.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/GUI.html b/clones/lisp/www.cliki.net/GUI.html deleted file mode 100644 index 4a8b791e..00000000 --- a/clones/lisp/www.cliki.net/GUI.html +++ /dev/null @@ -1,276 +0,0 @@ - - - - - CLiki: GUI - - - - - - - -
    GUI
    Graphical User Interface (GUI) toolkits, bindings, and tools. See also graphics library for low-level drawing and 3d libraries, and console for console/terminal (curses/readline) libraries. For X Windows/X11 protocol specific software, see x11.

    See the Common Lisp Cookbook#gui for a presentation of Ltk, Qtools, cl-cffi-gtk (Gtk3), IUP and Nuklear.

      -
    • -abcl-jazz - - Code examples on to call the Java Swing API under ABCL to program GUIs -
    • -
    • -ACUTE-TERMINAL-CONTROL - - Permit fast control of a terminal device -
    • -
    • -cells-gtk - - cells-gtk is a GTK+ based toolkit that enables a declarative-style description of a GUI -
    • -
    • -Celtk - - Cetlk is a Common Lisp wrapper of Tcl/Tk GUI toolkit, with Cells Inside(tm) -
    • -
    • -cffi-clutter - - cffi-clutter is a set of bindings to the Clutter GUI toolkit -
    • -
    • -cl-cffi-gtk - - cl-cffi-gtk is a Lisp binding to GTK+ 3 which is a library for creating graphical user interfaces -
    • -
    • -cl-dormouse - - Dormouse ('Doryen' + 'Mouse', groan) is a windowing `graphical' user interface built on top of libtcod -
    • -
    • -CL-ECMA-48 - - Implement the ECMA-48 standard -
    • -
    • -cl-fltk - - cl-fltk is a set of CFFI bindings to the FLTK GUI toolkit -
    • -
    • -cl-gtk2 - - CL-GTK2 is a Common Lisp GUI library that provides access to the Gtk+ cross-platform GUI library in idiomatic Lisp style -
    • -
    • -cl-gui - - Browser-based Common Lisp Gui Library GUI -
    • -
    • -cl-icebox - - cl-icebox is a Cross-Platform GUI framework written in Common Lisp, with help from ltk -
    • -
    • -cl-iup - - cl-iup is a binding for the IUP GUI library -
    • -
    • -cl-liballegro-nuklear - - CFFI wrapper for the Nuklear IM GUI library with liballegro backend, to be used with cl-liballegro -
    • -
    • -cl-smoke - - cl-smoke is a SMOKE-based wrapper for the Qt and KDE GUI frameworks -
    • -
    • -cl-tk - - CL-TK provides a simple bridge to Tcl/Tk -
    • -
    • -cl-xul - - Mozilla XUL bindings for Common Lisp -
    • -
    • -CLIM - - The Common Lisp Interface Manager (CLIM) is a Lisp-based programming interface specification that provides a layered set of portable facilities for constructing GUIs -
    • -
    • -CLIO - - Common Lisp Interactive Objects (CLIO) is a set of CLOS classes that represent the standard components of an object-oriented user interface --- such as text, menus, buttons, scroller, and dialogs -
    • -
    • -CLM - - CLM is an interface to the Motif GUI toolkit -
    • -
    • -CLOG - - CLOG is a GUI that uses web technology and also a web framework -
    • -
    • -clTcl - - clTcl provides an interface to Tcl/Tk via Tcl scripts embedded in Common Lisp -
    • -
    • -CLUE - - The Common Lisp User Interface Environment (CLUE) is a GUI library based on the X Window System and modeled on Xt -
    • -
    • -CLX-CURSOR - - A library for rendering antialiased cursors using CLX and XRender -
    • -
    • -CLX-TRUETYPE - - CLX-TRUETYPE is pure Common Lisp library for antialiased font rendering using CLX, XRender, ZPB-TTF, CL-VECTORS -
    • -
    • -Cocoa - - Libraries to interface with the Mac OS X Cocoa GUI API: -
    • -
    • -Common Lisp GTK-Server Wrapper - - Common Lisp Gtk-Server Wrapper is a new way to write platform-independent gui applications in Common Lisp -
    • -
    • -CommonQt - - CommonQt is a SMOKE-based binding to the Qt GUI library -
    • -
    • -croatoan - - croatoan is a set of bindings to the ncurses terminal / console library for Common Lisp -
    • -
    • -dialogue - - Dialogue is a Common Lisp tool to easy write GUI dialogs using the Java Standard Widget Toolkit (SWT) and Foil -
    • -
    • -EQL - - EQL is Embedded Qt Lisp, a Qt4/Qt5 GUI library binding embedded in ECL -
    • -
    • -FTW - - FTW is a Common Lisp Win32 GUI library -
    • -
    • -Garnet - - Garnet is a user interface development environment and GUI toolkit for Common Lisp and -
    • -
    • -Glade - - Glade is the GNOME Project's GUI interface builder -
    • -
    • -Graphic-Forms - - Graphic Forms is a Windows GUI library using the Win32 API -
    • -
    • -gtfl - - GTFL is a graphical terminal for Common Lisp -
    • -
    • -GTK binding - - This page lists Common Lisp bindings for the GTK GUI toolkit -
    • -
    • -gtk-cffi - - GTK-CFFI is a Common Lisp GUI library, that provides concise and idiomatic syntax to use GTK+ library (for now GTK+ 3.0) -
    • -
    • -halftone - - Halftone is a simple image viewer written with Qtools -
    • -
    • -IMCL - - ECL + IMGUI = IMCL -
    • -
    • -lambda-gtk - - Lambda-GTK is an apparently complete set of GTK+2 bindings, autogenerated by FFIGEN -
    • -
    • -ltk - - LTK is a set of CL bindings for the Tk GUI library, which provides a complete CLOS binding to the Tk widget set -
    • -
    • -McCLIM - - McCLIM is Mike McDonald's Free and portable implementation of CLIM, the Common Lisp ueber-GUI toolkit -
    • -
    • -MorphiCL - - MorphiCL is a (possibly misguided) attempt at creating a GUI for CL loosely based on Squeak/Self Morphic -
    • -
    • -nodgui - - Common Lisp bindings for the Tk GUI toolkit -
    • -
    • -pgl - - Portable Graphics Library is a simple GUI toolkit, for students and beginners, part of the Stanford Portable Library -
    • -
    • -qt-libs - - Working with CommonQt/Qtools currently requires working with SmokeQt -
    • -
    • -qtools - - Qtools aims to be a toolkit to support development with CommonQt -
    • -
    • -qtools-ui - - This is a collection of useful widgets and pre-made components for use in your Qt applications -
    • -
    • -simple-gui - - simple-gui is a CommonQt wrapper that provides a declarative way for fast creating simple GUI on Common Lisp with the Qt GUI library -
    • -
    • -SLIK - - SLIK (Simple Lisp Interface Kit) is a CLOS-based GUI toolkit that provides a thin abstraction layer over CLX -
    • -
    • -snow - - Snow is a GUI description language for Java and Common Lisp, currently supporting the Swing UI library -
    • -
    • -SymbolicWeb - - SymbolicWeb is a GUI toolkit and web framework that uses the browser to render UI elements -
    • -
    • -wxCL - - wxCL is a set of CFFI bindings for the wxWidgets GUI library -
    • -
    • -YstokGrid - - YstokGrid is a tabular data GUI widget based on the CAPI library for LispWorks -
    • -

    Tools:

      -
    • - wxGlade, a GUI builder for Wxwidgets applications, can generate Common Lisp code.
    • -

    References:

    A list of papers and reference manuals about UI: -http://lispm.de/docs/Publications/UI/.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Gabor Melis.html b/clones/lisp/www.cliki.net/Gabor Melis.html deleted file mode 100644 index 1e9d7e9e..00000000 --- a/clones/lisp/www.cliki.net/Gabor Melis.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Gabor Melis - - - - - - - -
    Gabor Melis
    I, Gabor Melis, am a Person and my homepage is at http://quotenil.com. My RtL answers can be found below.

    My PGP key (for asdf-install) is at http://quotenil.com/mega.gpg.asc.

    Road to Lisp

    I, Gabor Melis, do solemnly offer these my responses to The Road to Lisp Survey:

    When did you first try Lisp (meaning here and throughout the survey "any member of the Lisp family") seriously, and which Lisp family member was it?

    It was during my most recent yearly learn-something-new phase (Switch Date 2002) that I went after the "profound enlightenment" promise. Shortly after, I began using it for hobby projects and after a few months at work, too. It was Common Lisp.

    What led you to try Lisp?

    Many small things. Becoming less enchanted with statically typed languages, reading RtL Douglas Hofstadter, having decided it is worth it to learn Emacs and RtL Emacs Elisp, loving RtL AI, knowing about RtL Greenspun's Tenth, a colleague of mine sending me links to CLOS texts and RtL Paul Graham articles, my habit of saying "Lisp Interpreter" instead of "Turing Machine" when emphasizing the practical side of things, Eric Raymond's How to Become a Hacker, learning about Python, implementing CLOS-like generic functions in a language that didn't have it. It all came together, finally.

    If you were trying Lisp out of unhappiness with another language, what was that other language and what did you not like about it, or what were you hoping to find different in Lisp?

    Yes, partly. It was Java. Its rigidity, the lack of templates, its resistance to elegant solutions and generally the boredom it causes.

    How far have you gotten in your study of Lisp?

    I get the concepts and try to put them into use. But old habits die hard and Common Lisp is not easy to master.

    What do you think of Lisp so far?

    I like its elegance and power, the functional touch, macros, the various times (read, compile, ...), CLOS. But the best thing is the confidence it gives in that it can absorb a large amount of change.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Gambol.html b/clones/lisp/www.cliki.net/Gambol.html deleted file mode 100644 index 13aa0451..00000000 --- a/clones/lisp/www.cliki.net/Gambol.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Gambol - - - - - - - -
    Gambol
    Gambol provides basic prolog-like functionality for Common Lisp.

    Gambol is a modification of the Frolic system available at the CMU AI Repository, wrapped up in ASDF. A full list of the modifications can be found at the library web site.

    A mantained GitHub source is here.

    BSD/MIT license

    prolog

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Game.html b/clones/lisp/www.cliki.net/Game.html deleted file mode 100644 index 1aef2c58..00000000 --- a/clones/lisp/www.cliki.net/Game.html +++ /dev/null @@ -1,176 +0,0 @@ - - - - - CLiki: Game - - - - - - - -
    Game
    Games in Common Lisp. There is also a Lisp Games Wiki with a lot more stuff on it.

      -
    • -abuse - - Abuse is a 1995 Game, 2D shooter, written C++, including a lisp interpreter close to a subset of Common Lisp, in which the game logic is written -
    • -
    • -Asteroid Wars - - Asteroid Wars is a remake of the classic space shooter game "asteroids", that originally came out in the arcades in 1979 -
    • -
    • -bratwurst - - Bratwurst is a clone of the old amiga Game by 3 Little Elks (3LE) -
    • -
    • -Buclet - - Buclet provides CFFI bindings to the Bullet physics library -
    • -
    • -cl-horde3d - - CL-HORDE3D provides CFFI bindings to the Horde3D graphics engine -
    • -
    • -cl-liballegro - - CFFI interface and bindings to the Allegro 5 game programming library -
    • -
    • -cl-namegen - - cl-namegen reads wordlists and produces similar words, i.e -
    • -
    • -cl-ode - - CL-ODE is a CFFI interface to the Open Dynamics Engine -
    • -
    • -cl-reversi - - cl-reversi is a Common Lisp application of the classic -
    • -
    • -cl-sdl2 - - cl-sdl2 is a wrapper for SDL 2.0 -
    • -
    • -CL-Sokoban - - CL-Sokoban implements the classic game Sokoban -
    • -
    • -cl-tcod - - Common lisp bindings for the Doryen Library, a "free, fast, portable API for roguelike developers providing an advanced true color console, input, and lots of other utilities frequently used in roguelikes" -
    • -
    • -Cletris - - Cletris is a Tetris-like Game -
    • -
    • -cleven - - Cleven is an experimental game engine with volume graphics written in Common Lisp -
    • -
    • -clim-chess - - clim-chess is a CLIM chess playing game -
    • -
    • -Climon - - Climon is a Simon game (using pal) -
    • -
    • -clois-lane - - clois-lane provides bindings to the Object-Oriented Input System (OIS) for such things as game controllers -
    • -
    • -clones - - Clones is a game inspired by "same game" for GNOME -
    • -
    • -com.informatimago.hangman - - This is the classic Hangman game -
    • -
    • -IGS Client - - Basic IGS client back-end -
    • -
    • -Langband - - Langband is a rewrite of the popular roguelike role-playing Game Angband -
    • -
    • -LispGameDevelopers - - About -
    • -
    • -LMud - - LMud is a MUD (Multi-User Dungeon) Game implementation written in Common Lisp with heavy use of CLOS and multiple inheritance -
    • -
    • -Planet of the Feebs - - Planet of the Feebs is a simulation Game loosely based on the "Maze War" game developed by Steve Colley and Greg Thompson at the NASA Ames Research Center in California 1974 -
    • -
    • -Pretzil - - Pretzil is a Z-Machine (interactive fiction) emulator for McCLIM, which makes it a Game -
    • -
    • -RLX - - RLX is a game engine for roguelike games written in Common Lisp -
    • -
    • -skitter - - A repl friendly event system for games -
    • -
    • -Star Trek - - Star Trek is a classic 1970s console game that originated on mainframes -
    • -
    • -texatl - - texatl is a tiny system for creating font and sprite atlases -
    • -
    • -The Feebs War - - The Game The Feebs War is a new project based on Planet of the Feebs, with the intent to improve it, giving better support for lisp newbies and enhancing the features provided -
    • -
    • -The Invaders - - The Invaders is a remake of the classic game Space Invaders -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Garnet.html b/clones/lisp/www.cliki.net/Garnet.html deleted file mode 100644 index 9e521798..00000000 --- a/clones/lisp/www.cliki.net/Garnet.html +++ /dev/null @@ -1,93 +0,0 @@ - - - - - CLiki: Garnet - - - - - - - -
    Garnet
    Garnet is a user interface development environment and GUI toolkit for Common Lisp and -X11 or Macintosh developed by the User Interface Software Group in the -Human-Computer Interaction Institute at Carnegie Mellon University. -Garnet helps you create graphical, interactive user interfaces for -your software. It is a large scale system containing many -features and parts.

    From the FAQ:

    -* Toolkit intrinsics:
    -   - A custom object-oriented programming system which uses a
    -           prototype-instance model. 
    -   - A graphics layer that hides the differences between X/11 and Macintosh.
    -   - Automatic constraint maintenance: so properties of objects can depend on
    -           properties of other objects, and be automatically re-evaluated
    -           when the other objects change.  The constraints can be
    -           arbitrary lisp expressions.
    -   - Built-in, high-level input event handling.
    -   - Support for gesture recognition
    -   - Widgets for multi-font, multi-line, mouse-driven text editing.
    -   - Optional automatic layout of application data into lists, tables, trees,
    -           or graphs.
    -   - Automatic generation of PostScript for printing.
    -   - Support for large-scale applications and data visualization.
    -* Two complete widget sets:
    -   - One with a Motif look and feel implemented in Lisp, and one with
    -           a custom look and feel.
    -* Interactive design tools for creating parts of the interface without
    -           writing code:
    -   - Gilt interface builder for creating dialog boxes
    -   - Lapidary interactive tool for creating new widgets and for
    -           drawing application-specific objects.
    -   - C32 spreadsheet system for specifying complex constraints.
    -  (The next parts are not being released.)
    -   - Jade automatic dialog box creation system.
    -   - Marquise interactive tool for specifying behaviors.
    -

    Garnet was originally developed at CMU (see the project home page), but they don't support it any more. It claims to run on any Common Lisp implementation "that we have come across which has CLX (interface to X11), which currently includes Allegro, Lucid, CMUCL, Harlequin Lispworks, AKCL, CLISP and TI Explorer Lisps". Garnet was also ported to Macintosh Common Lisp (MCL) and runs under MacOS 9.2 and earlier (MacOS X version of MCL is not available for testing).

    The source code of Garnet has been moved to a SourceForge project for further maintenance and development.

    Those who like Garnet may find Constraint Sequencing Infrastructure (COSI) interesting.

    Getting Help

    Garnet comes with very good and extensive documentation, which includes both tutorial and reference material: 16 manuals, for a total of almost 600 pages. Dozens of research papers are also available. These papers provide overviews of the system and summarize its features.

    If you have problems with installing or using Garnet, be sure to check the documentation first (particularly Overview of the Garnet System and Debugging Tools for Garnet; Reference Manual). If you still need help or information you may post a message to the following forums, in the specified order:

      -
    1. the garnet users mailing list (to subscribe or unsubscribe, send mail to garnet-users-request@cs.cmu.edu) -
    2. -
    3. the comp.windows.garnet newsgroup, which has a bidirectional gateway with the garnet-users mailing list -
    4. -
    5. the general help mailing list of your Common Lisp implementation (e.g. cmucl-help for CMUCL or clisp-list for CLISP) -
    6. -
    7. the comp.lang.lisp newsgroup -
    8. -

    Note that comp.windows.garnet is a low traffic forum, not an abandoned one. (Still true in 2020?)


    I believe that the garnet-users mailing list is no longer gatewayed to USENET, due to spamming. -- Eric Marsden


    Current garnet development

    See the GarnetLisp project at Sourceforge. There's also cl-garnet on GitHub.

    When I tried to build it, the README was of no help. However reading the garnet-prepare-compile, etc... files was of use, but remember to change Your-Garnet-Pathname in garnet-loader.lisp. Also you might want to change Your-Garnet-Src-Pathname and Your-Garnet-Bin-Pathname to be the same as Your-Garnet-Pathname, due to the way the CVS source tree is laid out (I guess it's different from the original). It built and I was able to run the demos but they would display and then stop responding. Don't know what's wrong. -- Matthew Danish (as of 12 May 2002).

    I've been working on maintenance and bug fixes. I'd be interested in anyone's experiences using the pixmap support under Allegro CL to help me debug a problem there. If you've used it and it's worked or not worked for you, please let me know. Robert Goldman

    I have already packaged a new garnet release (under a new major version number 4.0) that is asdf-installable. I am currently testing it with various Lisp implementations as new things like freetype and cairo support have been merged from other projects and many bugs have been fixed. A common-lisp.net hosting of the project is still pending. Stelios Kokkalis

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Gary King.html b/clones/lisp/www.cliki.net/Gary King.html deleted file mode 100644 index e99b5dfa..00000000 --- a/clones/lisp/www.cliki.net/Gary King.html +++ /dev/null @@ -1,101 +0,0 @@ - - - - - CLiki: Gary King - - - - - - - -
    Gary King
    My word; things change. Gary King is a Person who works at Franz, Inc, loves Lisp and has one quite moribund blog. He is/was responsible for quite a few libraries but isn't really maintaining them.

    Gary also has a PGP key that might prove handy if you're ASDF installing any of the Lisp code above.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Geiriadur.html b/clones/lisp/www.cliki.net/Geiriadur.html deleted file mode 100644 index 2da974a7..00000000 --- a/clones/lisp/www.cliki.net/Geiriadur.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Geiriadur - - - - - - - -
    Geiriadur
    Geiriadur is an application for natural language dictionary creation, management and use. For now it supports Item and Arrangement and Word and Paradigm morphological models; Item and Process model remains to be implemented. Created as a tool for Welsh-Russian dictionary, Geiriadur supports initial consonant mutations. Geiriadur consists of corba server made with CLORB and web interface for it making use of Araneida. The web component is partly RESTful and partly built on self-made continuations (couldn't master UCW after three tries). Spell-checking is implemented with metric trees (Burkhard-Keller's and vantage-point). Somewhat fuller description is available at http://www.cymraeg.ru/geiriadur/disgrifiad-2.html. Darcs repository is here. Tested with CLISP, SBCL and OpenMCL. See also Daoulagad.


    -Topics: Natural Language Processing, GPL
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Gelisp.html b/clones/lisp/www.cliki.net/Gelisp.html deleted file mode 100644 index efaa40b1..00000000 --- a/clones/lisp/www.cliki.net/Gelisp.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: Gelisp - - - - - - - -
    Gelisp
    Gelisp is an opensource, efficient, high-level API wrapping the Generic Constraints Development Environment (GECODE) for Common Lisp. This wrapper was initially developed by -professor Camilo Rueda and currently it is mantained by Mauricio Toro.

    More information: -https://sourceforge.net/projects/gelisp/


    -ffi c
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Gene Michael Stover.html b/clones/lisp/www.cliki.net/Gene Michael Stover.html deleted file mode 100644 index e65a6d0b..00000000 --- a/clones/lisp/www.cliki.net/Gene Michael Stover.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - CLiki: Gene Michael Stover - - - - - - - -
    Gene Michael Stover
    Biped descendant of hairless apes. -Programmer & short-order cook. -Not a Person. - Responsible for most of the Lisp-related content at -www.lisp-p.org.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/General accumulator.html b/clones/lisp/www.cliki.net/General accumulator.html deleted file mode 100644 index c0a4eada..00000000 --- a/clones/lisp/www.cliki.net/General accumulator.html +++ /dev/null @@ -1,94 +0,0 @@ - - - - - CLiki: General accumulator - - - - - - - -
    General accumulator
    General accumulator is a general-purpose, extensible value accumulator library. Its main interface is with-accumulator macro which sets an environment for easy accumulation. The library provides several built-in accumulators which should cover the most common use-cases but any kind of accumulators can be added because the accumulator back-end is implemented through generic functions.

    (with-accumulator (NAME OBJECT &key KEYWORD-ARGUMENTS ...) - BODY ...)

    Some examples

    GENACC> (with-accumulator (collect :list) - (collect 1) (collect 2) (collect 3) - (collect)) -(1 2 3) - -GENACC> (with-accumulator (collect (list 1 2 3)) - (collect 4) (collect 5) - (collect)) -(1 2 3 4 5) - -GENACC> (with-accumulator (collect :vector) - (collect "first") (collect "second") - (collect)) -#("first" "second") - -GENACC> (with-accumulator (collect :string) - (collect #\a) - (collect "bcd") - (collect #(#\e #\f)) - (collect '(#\g #\h #\i)) - (collect)) -"abcdefghi" - -GENACC> (with-accumulator (summing #'+) - (summing 5) (summing 7) (summing 11) - (summing)) -23 - -GENACC> (with-accumulator (nc #'nconc) - (nc (list 1 2 3)) - (nc (list 4 5 6)) - (nc (list 7 8 9)) - (nc)) -(1 2 3 4 5 6 7 8 9) - -GENACC> (with-accumulator (early-char (lambda (a b) - (if (char< a b) a b))) - (early-char #\o) - (early-char #\b) - (early-char #\s) - (early-char)) -#\b

    For more information and examples read the project's README file.


    -language extension, Public Domain, accumulators
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Gentoo.html b/clones/lisp/www.cliki.net/Gentoo.html deleted file mode 100644 index 1e5fae07..00000000 --- a/clones/lisp/www.cliki.net/Gentoo.html +++ /dev/null @@ -1,96 +0,0 @@ - - - - - CLiki: gentoo - - - - - - - -
    gentoo
    Similar to Debian, the Gentoo Linux distribution also offers a lot of -Common Lisp software ports ready to use.

    Supported Common Lisp Implementations

    -

    * support for Common Lisp Controller

    ** support for compiling site-wide Common Lisp source from /usr/share/common-lisp/source/ (clc-lite.lisp -- see README.Gentoo)

    + live CVS port

    Helping out with Common Lisp in Gentoo

    The Gentoo Common Lisp Project was established 10/2006. It includes a mailing list for -the development and discussion of Gentoo support for Common Lisp.

    The Common Lisp Portage Overlay is now the primary vehicle for development, even for official Gentoo maintainers. The overlay is a git repository. Use the following commands to get started:

    - - - - -
    Initial download
    git clone git://gitweb.gentoo.org/proj/lisp -

    - - - - -
    Periodic update
    git pull -

    -This overlay is accessible through layman and is called ``lisp'' (This guide includes information on how to install layman and add package overlays). Use ``layman -a lisp'' to add it.

    Feel free to develop existing ebuilds and contribute new ones.

    An obsolete overlay is also available; it's a Darcs repository.

    We hope users will create their own repositories based on the Common Lisp Portage Overlay and push and pull changes between themselves in true distributed fashion. Alternatively you can send patches to the Common Lisp Portage Overlay in a more centralized approach. Send mail to the Gentoo Common Lisp Mailing List to post your Darcs patches announce your repositories.

    Reporting Bugs and Feature Requests

    The best way to make suggestions, feature requests or requests for new ports is to file a bug with the Gentoo Bugzilla system.

    Platform Availability of Common Lisp Ports

    Almost all of the Common Lisp implementations and Common Lisp libraries in Portage are available for the following architecture keywords as of 24 May 2005: -~ppc, ~amd64, ~sparc and x86. This means if you're using the STABLE x86 keyword or the UNSTABLE amd64, ppc or sparc keywords, then you do not need to do -anything special to have the latest ports available.

    If you're using STABLE keywords with amd64, ppc or sparc, then most of the Common Lisp implementations and libraries will not be available to you by default. Luckily there is a mechanism in Portage where you can use specific UNSTABLE keyworded ports while you continue to use STABLE keywords in general. -The following section describes how to do this.

    Using Ports With Unstable Keywords

    If you are using one of the platforms for which the Common Lisp ports have unstable keywords (eg. ppc, amd64 or sparc) and you are using STABLE keywords -for your Gentoo system but would like to make available certain ports with UNSTABLE keywords, then this section applies to you.

    Refer to the Gentoo System Documentation, Working with Portage, Mixing Software Branches.

    Suppose for example you are using the stable ppc keyword (ie. "ppc" is the only keyword listed in your ACCEPT_KEYWORDS in /etc/make.conf). You want to be -able to use OpenMCL (dev-lisp/openmcl), SLIME (app-emacs/slime) and Araneida (dev-lisp/cl-araneida) but both are keyworded with "~ppc", ie. the -unstable ppc keyword. To make these ports available you must edit /etc/portage/package.keywords and include the following:

    -app-emacs/slime ~ppc
    -dev-lisp/openmcl ~ppc
    -dev-lisp/openmcl-build-tools ~ppc 
    -dev-lisp/cl-araneida ~ppc
    -dev-lisp/cl-net-telent-date ~ppc
    -dev-lisp/cl-split-sequence ~ppc 
    -

    This tells Portage to consider those ports as if you had "~ppc" in your ACCEPT_KEYWORDS.

    Alternatively, if you like getting all the newest stuff from the overlay, you can unmask all the categories at once. You can do this by adding the following to /etc/portage/package.keywords:

    -dev-lisp/* ~ppc
    -dev-scheme/* ~ppc
    -

    Working Without the Common Lisp Controller

    In the Gentoo Common Lisp Portage Overlay, support for the Common Lisp Controller has been removed. People (#lisp, mailing lists) frequently complain about the Common Lisp Controller, so now it's gone. Now SBCL, CMUCL and CLISP are delivered as their upstreams truly intended.

    Common Lisp libraries are still installed under /usr/share/common-lisp/source/ though, so a mechanism for compiling that source to a user read-writable path must be provided. This is something the user must do for themselves, however the Gentoo Common Lisp Project intends to provide a guide showing how to use ASDF-BINARY-LOCATIONS to achieve just that. A work in progress version of the guide is available. Gentoo Common Lisp User Guide

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Geoff Cant.html b/clones/lisp/www.cliki.net/Geoff Cant.html deleted file mode 100644 index 7ea22dd8..00000000 --- a/clones/lisp/www.cliki.net/Geoff Cant.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Geoff Cant - - - - - - - -
    Geoff Cant
    Geoff Cant is a Person, also known as archaelus on #lisp.

    Graduated from a Software Engineering degree at Massey University in New Zealand. Worked for a bank in the capital - without lisp, alas. Currently working for Catalyst IT in Wellington.

    Gentoo SBCL user and sometime package contributor/lisp maintainer (though possibly the laziest/most useless maintainer in history). Also uses OpenMCL and ECL on Mac OS X.

    (Ir)responsible for http://clug.lisp.geek.nz and a few common lisp meetups in New Zealand.

    Has submitted a road-to-lisp answer in the form of GeoffCant.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Geospatial.html b/clones/lisp/www.cliki.net/Geospatial.html deleted file mode 100644 index 69dbf459..00000000 --- a/clones/lisp/www.cliki.net/Geospatial.html +++ /dev/null @@ -1,77 +0,0 @@ - - - - - CLiki: geospatial - - - - - - - -
    geospatial
    Geospatial (e.g. GIS) software is (loosely) that which deals with geographic data. (c.f. Geographic information system at Wikipedia)

      -
    • -cl-ewkb - - cl-ewkb is a geospatial library based on cl-wkb, supports PostGIS EWKB format (3d, 4d, embedded SRID extensions) -
    • -
    • -cl-gpx - - cl-gpx is a library to work with the GPX (the GPS Exchange Format) GPS XML file format -
    • -
    • -cl-proj - - cl-proj is a geospatial library that provides CFFI-based Common Lisp bindings for the Proj.4 geographic projections library -
    • -
    • -geocoder - - Convert place names to geodesic coordinates and vice versa through OpenStreetMap -
    • -
    • -geohash - - Geohash is a Common Lisp implementation of the latitude/longitude geocoding system invented by -
    • -
    • -utm - - utm is a geospatial library for converting latitude and longitude into UTM coordinates and vice-versa -
    • -
    -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Getting Started.html b/clones/lisp/www.cliki.net/Getting Started.html deleted file mode 100644 index 47ec4d87..00000000 --- a/clones/lisp/www.cliki.net/Getting Started.html +++ /dev/null @@ -1,131 +0,0 @@ - - - - - CLiki: Getting Started - - - - - - - -
    Getting Started
    Guidelines, hints and resources for those who are starting out with Lisp.

    Getting Going with Common Lisp

    Take a look at Portacle, a portable and multiplatform development environment: SBCL, Quicklisp, Emacs, Slime and Git all pre-configured. Download and use, no installation needed.

    and add paredit.el, Parinfer and/or another plugin to edit parentheses even more easily.

    DIY Development Setup

    Take a look at Emacs4CL if you want to set up Emacs and configure it to use SLIME and Paredit yourself. This is useful if you do not want to use a quick starter pack like Portacle but instead want to learn how to set Emacs up yourself with SLIME and Paredit. This project provides a small starter ~/.emacs file to get you started quickly. It also comes with a detailed line-by-line explanation of every line of code in the ~/.emacs file so that you can understand every step of how you are turning a vanilla Emacs into a Common Lisp development environment.

    Getting a Lisp

    Alternative ways to download and install a Common Lisp implementation.

    Some resources for bootstrapping a useful Lisp environment on various platforms: -

    Books and tutorials

    Experienced programmers

    Read Peter Seibel's excellent book Practical Common Lisp, available for free online, or in dead-tree form. This is especially a good book for anyone familiar with programming in other languages and wants to learn Lisp for real-world use.

    Novice programmers

    If you are new to programming in general, these books may be better choices to begin with:

    Other Online Tutorials.

    IRC channels

    There are numerous IRC channels on the Libera Chat server to help people with Common Lisp.

      -
    • - #clschool - A channel devoted specifically for helping Common Lisp newbies get started.
    • -
    • - #lispcafe - A more laid-back version of #lisp, used for socialization and banter.
    • -
    • - #lispgames - Conversation about writing games in various lisps, mostly Common Lisp.
    • -
    • - #lispweb - Conversation about writing web applications in Common Lisp.
    • -
    • - #lisp - For on-topic technical discussion of lisp programs, issues, and implementations.
    • -

    There are other channels for discussing other languages such as

    #clojure for clojure, or - #scheme for scheme, or - #emacs for emacs lisp.

    Others

    Check out other Lisp books and online tutorials

    References

      -
    • the Common Lisp Hyperspec (CLHS) is a hypertext version of the standard with extensive indexing. Quick symbol lookup in the Hyperspec is available in SLIME. -
    • -
    • The Common Lisp Quick Reference is a condensed Common Lisp pocket reference available for free and suitable for printing. -
    • -
    • -CLtL2 is outdated, but contains more useful descriptions of format and loop than the Hyperspec. -
    • -

    Libraries

    Other hints

    Learn about Common Lisp coding conventions and naming conventions.

    Cosman246's guide for Setting Up CL

    -This is for setting up CL, not learning how to use it -
      -
    1. Get a working implementation. Preferably SBCL
    2. -
    3. Get Emacs
    4. -
    5. Get Quicklisp -
    6. -
    7. Load SBCL from bash
    8. -
    9. (load "/path/to/quicklisp.lisp")
    10. -
    11. (quicklisp-quickstart:install)
    12. -
    13. (ql:add-to-init-file)
    14. -
    15. (ql:quickload "quicklisp-slime-helper")
    16. -
    17. If necessary, edit your ~/.emacs and insert the following line:
      -(setq inferior-lisp-program "sbcl")
      -where you can substitute the name of the program that invokes your implementation of choice for sbcl -
    18. -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/GettingStartedWithHemlock.html b/clones/lisp/www.cliki.net/GettingStartedWithHemlock.html deleted file mode 100644 index 698a3dc5..00000000 --- a/clones/lisp/www.cliki.net/GettingStartedWithHemlock.html +++ /dev/null @@ -1,83 +0,0 @@ - - - - - CLiki: GettingStartedWithHemlock - - - - - - - -
    GettingStartedWithHemlock
    There was some interest at ILC2003 in getting started using Hemlock. So, here are quick-start instructions: -
      -
    • Install CMUCL from the tarballs on cons.org, including the extras tarball. -
    • -
    • Start CMUCL, and (require :hemlock) -
    • -
    • If you are using an oldish CMUCL (from before summer 2002), load the patch needed to Make Old CMUCL CLX Work With Magic Cookies. -
    • -
    • Save a core with Hemlock loaded, (save-lisp "hemlock.core") -
    • -
    • Copy the lisp.core file that came with the distribution, and replace the original with your new hemlock.core. -
    • -
    • Start CMUCL again, type (ed), and you should see Hemlock! -
    • -
    -Important: get a copy of the Hemlock Users Manual. Glance through the beginning, then read the chapters "Editing Lisp", and "Interacting With Lisp".

    If instead of dumping a core with Hemlock loaded, you just (require :hemlock), then (ed), you may notice a problem when using Hemlock as an IDE. The editor works fine, but when you try evaluating a Lisp form, you get an error message telling you that the eval server died. This is because Hemlock uses one CMUCL image to run itself, and one (or more) CMUCL images that it runs as slave eval servers. This has the advantage that if you try to eval (loop), your editor didn't just lock up. However, it also means that Hemlock needs to know how to run a copy of CMUCL with itself already loaded. If you want to run CMUCL with a command other than lisp (like, say, cmucl), and/or if you do not want to use hemlock.core as your default core file, you'll need to customize the Hemlock variables Slave Utility and Slave Utility Switches. For example, if I run CMUCL with the cmucl command, and I have my hemlock core in /home/tfb/hemlock.core, I would do the following:

    At the shell prompt:

    -$ cmucl -core /home/tfb/hemlock.core
    -CMU Common Lisp 18d, running on firestorm.OCF.Berkeley.EDU
    -Send questions to cmucl dash help at cons dot org. and bug reports to
    -cmucl dash imp at cons dot org.
    -Loaded subsystems:
    -    Python 1.0, target SPARCstation/Solaris 2
    -    CLOS based on PCL version:  September 16 92 PCL (f)
    -    CLX X Library MIT R5.02
    -    Hemlock 3.5
    -* (ed)
    -

    In Hemlock:
    -M-x Set Variable (return) Slave Utility (return) "cmucl" (return)
    -M-x Set Variable (return) Slave Utility Switches (return) (list "-core" "/home/tfb/hemlock.core") (return)

    Another way to do solve the problem with loading hemlock for the slaves is -to put the following in your .cmucl-init.lisp (or site-init):

    (flet ((in-cmdline (word) - (member word *command-line-strings* :test #'string=))) - (when (or (in-cmdline "-edit") (in-cmdline "-slave")) - (require :hemlock)))

    Still having problems?

    I created this page to help people try Hemlock out, without having to be experienced CMUCL'ers. If you tried following the directions here but you're still having problems, either post your questions here, or email Thomas F. Burdick (tfb at OCF dot Berkeley dot EDU).

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Giovanni Gigante.html b/clones/lisp/www.cliki.net/Giovanni Gigante.html deleted file mode 100644 index 9a4bc12f..00000000 --- a/clones/lisp/www.cliki.net/Giovanni Gigante.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Giovanni Gigante - - - - - - - -
    Giovanni Gigante
    Giovanni Gigante is a Person which has recently discovered Common Lisp, and now is worshipping it as a mean to attain illumination.

    In the little remaining time, he also tries to be an architect, a journalist, a developer, and a teacher of computer graphics.

    He can be contacted at giov at cidoc dot iuav dot unuseful dot it after dropping the unuseful parts.

    -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Glade.html b/clones/lisp/www.cliki.net/Glade.html deleted file mode 100644 index f8dfe5c7..00000000 --- a/clones/lisp/www.cliki.net/Glade.html +++ /dev/null @@ -1,62 +0,0 @@ - - - - - CLiki: Glade - - - - - - - -
    Glade
    Glade is the GNOME Project's GUI interface builder. It has a -web site of its own

    -

    Related stuff

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Gmane.html b/clones/lisp/www.cliki.net/Gmane.html deleted file mode 100644 index 05572e83..00000000 --- a/clones/lisp/www.cliki.net/Gmane.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: GMane - - - - - - - -
    GMane
    GMane is a bidirectional Mail to News gateway. -It hosts a lot of mailing lists, including many lisp-related ones (take a look at the gmane.lisp.* hierarchy)
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Gnome.html b/clones/lisp/www.cliki.net/Gnome.html deleted file mode 100644 index 7d22a773..00000000 --- a/clones/lisp/www.cliki.net/Gnome.html +++ /dev/null @@ -1,57 +0,0 @@ - - - - - CLiki: GNOME - - - - - - - -
    GNOME
    GNOME is the GNU Object Model Environment, intended to provide a user-friendly "desktop environment" for UNIX operating systems.

    Components of GNOME are largely licensed under the LGPL, and many -of them are libraries written in C. GNOME uses CORBA to -access some GNOME components, and uses a CORBA implementation -called ORBit.

    GNOME has a bunch of language bindings -to allow developing applications and components in other languages -than C. Although ORBit does not yet support Common Lisp, any IIOP-compatible ORB (eg CLORB) will talk to it. Note also that clg will allow Common Lisp -binding for Glade, the GUI construction tool used with GNOME.

    GNOME apps use Gtk for widgets and general graphical stuff

    There is a "competing" environment called KDE.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Goatee.html b/clones/lisp/www.cliki.net/Goatee.html deleted file mode 100644 index 7f4c51d3..00000000 --- a/clones/lisp/www.cliki.net/Goatee.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Goatee - - - - - - - -
    Goatee
    Goatee is the editing substrate portion of McCLIM. It is not a CL-Emacs, but one could be built on top of it and McCLIM in general. This would be quite a bit of work, however.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Goheeca.html b/clones/lisp/www.cliki.net/Goheeca.html deleted file mode 100644 index abea396f..00000000 --- a/clones/lisp/www.cliki.net/Goheeca.html +++ /dev/null @@ -1,59 +0,0 @@ - - - - - CLiki: Goheeca - - - - - - - -
    Goheeca
    Goheeca is a Person. -His projects are: - -His homepage is http://hyperprostor.g6.cz/.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Gordon.html b/clones/lisp/www.cliki.net/Gordon.html deleted file mode 100644 index 5395b343..00000000 --- a/clones/lisp/www.cliki.net/Gordon.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Gordon - - - - - - - -
    Gordon
    Gordon is a Common Lisp library that can be used to generate Adobe Flash files and thus useful in web applications. Torta is an application using this library.

    Repository: https://github.com/sgarciac/gordon

    License: LGPL


    -file format
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Graduate Student.html b/clones/lisp/www.cliki.net/Graduate Student.html deleted file mode 100644 index 0f41f250..00000000 --- a/clones/lisp/www.cliki.net/Graduate Student.html +++ /dev/null @@ -1,60 +0,0 @@ - - - - - CLiki: Graduate Student - - - - - - - -
    Graduate Student
    Lisp using Graduate Students include Cyrus Harmon.

    I'm sure there are more of you, please identify yourselves. :)

    (This time I'll try to spell it right)

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Graph.html b/clones/lisp/www.cliki.net/Graph.html deleted file mode 100644 index 539cf24d..00000000 --- a/clones/lisp/www.cliki.net/Graph.html +++ /dev/null @@ -1,72 +0,0 @@ - - - - - CLiki: graph - - - - - - - -
    graph
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Grapher-Server.html b/clones/lisp/www.cliki.net/Grapher-Server.html deleted file mode 100644 index 2d901285..00000000 --- a/clones/lisp/www.cliki.net/Grapher-Server.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Grapher-Server - - - - - - - -
    Grapher-Server
    Grapher-Server is an AJAX application combining AllegroServe, CL-Graph and GraphViz by Gary King.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Graphic-Forms.html b/clones/lisp/www.cliki.net/Graphic-Forms.html deleted file mode 100644 index dc2de5cd..00000000 --- a/clones/lisp/www.cliki.net/Graphic-Forms.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Graphic-Forms - - - - - - - -
    Graphic-Forms
    Graphic Forms is a Windows GUI library using the Win32 API. It provides several Lisp widgets which are done using generic functions to provide an uniform interface.

    GitHub


    GUI Windows

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Graphics Library.html b/clones/lisp/www.cliki.net/Graphics Library.html deleted file mode 100644 index f9763448..00000000 --- a/clones/lisp/www.cliki.net/Graphics Library.html +++ /dev/null @@ -1,394 +0,0 @@ - - - - - CLiki: Graphics library - - - - - - - -
    Graphics library
    Low-level graphics libraries. There is a separate GUI page for things like widget toolkits. See also plotting/graphing libraries.

    Image (bitmap and vector) libraries: (main topic: image file)

    OpenGL libraries: (main topic: OpenGL)

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Graphics Toolkit.html b/clones/lisp/www.cliki.net/Graphics Toolkit.html deleted file mode 100644 index 437f0f7b..00000000 --- a/clones/lisp/www.cliki.net/Graphics Toolkit.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Graphics Toolkit - - - - - - - -
    Graphics Toolkit
    See GUI
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Graphics library.html b/clones/lisp/www.cliki.net/Graphics library.html deleted file mode 100644 index f9763448..00000000 --- a/clones/lisp/www.cliki.net/Graphics library.html +++ /dev/null @@ -1,394 +0,0 @@ - - - - - CLiki: Graphics library - - - - - - - -
    Graphics library
    Low-level graphics libraries. There is a separate GUI page for things like widget toolkits. See also plotting/graphing libraries.

    Image (bitmap and vector) libraries: (main topic: image file)

    OpenGL libraries: (main topic: OpenGL)

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Gray Streams.html b/clones/lisp/www.cliki.net/Gray Streams.html deleted file mode 100644 index 0034b6bc..00000000 --- a/clones/lisp/www.cliki.net/Gray Streams.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Gray streams - - - - - - - -
    Gray streams
    "Gray Streams" are a generic function wrapping of the COMMON-LISP streams in the standard library, allowing for further specialization by end users.

    This interface was proposed for inclusion with ANSI CL by David N. Gray in Issue STREAM-DEFINITION-BY-USER. The proposal did not make it into ANSI CL, but most popular CL implementations implement this facility anyway.

    NEED: status of working implementation. See also trivial-gray-streams

    proposed extensions to ANSI

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Gray streams.html b/clones/lisp/www.cliki.net/Gray streams.html deleted file mode 100644 index 0034b6bc..00000000 --- a/clones/lisp/www.cliki.net/Gray streams.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Gray streams - - - - - - - -
    Gray streams
    "Gray Streams" are a generic function wrapping of the COMMON-LISP streams in the standard library, allowing for further specialization by end users.

    This interface was proposed for inclusion with ANSI CL by David N. Gray in Issue STREAM-DEFINITION-BY-USER. The proposal did not make it into ANSI CL, but most popular CL implementations implement this facility anyway.

    NEED: status of working implementation. See also trivial-gray-streams

    proposed extensions to ANSI

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Greg Pfeil.html b/clones/lisp/www.cliki.net/Greg Pfeil.html deleted file mode 100644 index db9b9fc6..00000000 --- a/clones/lisp/www.cliki.net/Greg Pfeil.html +++ /dev/null @@ -1,57 +0,0 @@ - - - - - CLiki: Greg Pfeil - - - - - - - -
    Greg Pfeil
    http://blog.technomadic.org/

    I'm a Person, currently employed by Clozure Associates. Previously I worked at Amazon.com, and managed to spend about 18 months working on Lisp there.

    Here are some of the projects I'm working on: -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Gregory Bird.html b/clones/lisp/www.cliki.net/Gregory Bird.html deleted file mode 100644 index 93678bb9..00000000 --- a/clones/lisp/www.cliki.net/Gregory Bird.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Gregory Bird - - - - - - - -
    Gregory Bird
    Gregory Bird is a Person
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Gsharp.html b/clones/lisp/www.cliki.net/Gsharp.html deleted file mode 100644 index 7e1d678d..00000000 --- a/clones/lisp/www.cliki.net/Gsharp.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Gsharp - - - - - - - -
    Gsharp
    Gsharp is a graphical, interactive score editing application for standard Music notation. It can be customized by dynamically loading new Lisp code. The Gsharp user interface is based on CLIM. Source code, documentation and sample output are available at the project site.

    You will need to perform additional steps documented in the INSTALL file before running gsharp for the first time, to make the font files needed by the application.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Gsoc.html b/clones/lisp/www.cliki.net/Gsoc.html deleted file mode 100644 index 810bf600..00000000 --- a/clones/lisp/www.cliki.net/Gsoc.html +++ /dev/null @@ -1,80 +0,0 @@ - - - - - CLiki: Gsoc - - - - - - - -
    Gsoc
    Google Summer of Code

    List of projects:

      2009 -

      2008 -
    • ErlangInLisp -
    • -
    • SBCL Windows Threading -
    • -
    • cl-openid: OpenID Provider and Relying Party implementation -
    • -

      2007 -
    • IOLib -
    • -
    • CL-ObjC. A bridge between Common Lisp and Objective-C -
    • -
    • Music interchange format support for Gsharp -
    • -
    • -NXTLisp - a Common Lisp library for the NXT Mindstorms platform -
    • -

    List of related CLiki pages:

    -


    -document
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Gtk.html b/clones/lisp/www.cliki.net/Gtk.html deleted file mode 100644 index 092c9530..00000000 --- a/clones/lisp/www.cliki.net/Gtk.html +++ /dev/null @@ -1,75 +0,0 @@ - - - - - CLiki: Gtk - - - - - - - -
    Gtk
    Gtk (GTK+) is a Graphics Toolkit written in C, primarily developed for use with the X Window System. GTK+ is licensed under the GNU LGPL license and has bindings for many languages including Ada95, C++, Common Lisp - (see GTK bindings), Dylan, Eiffel, Guile, Haskell, JavaScript, Objective C, Objective Caml, Objective Label, Pascal, Perl, Pike, Python, and TOM. It's a major component of the GNOME project.

    More information can be found at http://www.gtk.org/.

    Common Lisp GTK bindings, etc. on Cliki: -

      -
    • -cl-gtk2 - - CL-GTK2 is a Common Lisp GUI library that provides access to the Gtk+ cross-platform GUI library in idiomatic Lisp style -
    • -
    • -cl-webkit - - cl-webkit is a binding to WebKitGtk+ for Common Lisp -
    • -
    • -GNOME - - GNOME is the GNU Object Model Environment, intended to provide a user-friendly "desktop environment" for UNIX operating systems -
    • -
    • -GTK binding - - This page lists Common Lisp bindings for the GTK GUI toolkit -
    • -
    • -gtk-cffi - - GTK-CFFI is a Common Lisp GUI library, that provides concise and idiomatic syntax to use GTK+ library (for now GTK+ 3.0) -
    • -

    GTK can also be used with Lisp through -GTK-server.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Gustavo Lacerda.html b/clones/lisp/www.cliki.net/Gustavo Lacerda.html deleted file mode 100644 index 167425e9..00000000 --- a/clones/lisp/www.cliki.net/Gustavo Lacerda.html +++ /dev/null @@ -1,56 +0,0 @@ - - - - - CLiki: Gustavo Lacerda - - - - - - - -
    Gustavo Lacerda
    == The following was written in early 2005. I've changed a lot since then. :-) ==

    I, Gustavo Lacerda, am an AI Person (but not an AI-Person), and a beginner at Lisp. I have a website and a blog.

    My main interest is applying formal logic to helping people reason. I'm into formalization of arguments, intelligence analysis and general cognitive aids (e.g. memory aids); but I'm also into structuring text, representing arguments diagrammatically, "theory engineering": the dynamic non-monotonic process of formalizing knowledge; argumentation-based tutoring (where the system teaches subject X by actually having knowledge of X in the form of formal theories) and cognitive tutors (i.e. systems that have a model of the learner). I am also interested in Computational Philosophy of Science.

    -== How Lisp is good for me ==

    By feature:

    * functions as 1st class objects saves me from writing for-loops, by using mapcar.

    * data is executable: I use eval in my backward-chaining theorem-provers, in order to check that the steps actually follow. The function calls are inference rules of the logic.

    * no types to get in the way

    -== Projects ==

    SOLVER - Equational Solver (in alpha) -For my EBE project, I have written an equation solver in Lisp. It's currently hackish, and I want to make it neater by defining the set of "valid moves" -and extend it to incorporate proof-planning.

    ARGAME - Argumentation Games (in passive development) -is an implementation of the standard Lorenzen argumentation game (the existence of a winning strategy corresponds to intuitionistic validity). A variation on the rules will implement classical FOL.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/HEΛP.html b/clones/lisp/www.cliki.net/HEΛP.html deleted file mode 100644 index a6287fd0..00000000 --- a/clones/lisp/www.cliki.net/HEΛP.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: HEΛP - - - - - - - -
    HEΛP
    The HEΛP library is a document preparation tool that produces documentation for CL libraries.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/HEΛP.html b/clones/lisp/www.cliki.net/HEΛP.html deleted file mode 100644 index d8546ce4..00000000 --- a/clones/lisp/www.cliki.net/HEΛP.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: HEΛP - - - - - - - -
    HEΛP
    The HEΛP library is a document preparation tool that produces documentation for CL libraries.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/HH-AWS.html b/clones/lisp/www.cliki.net/HH-AWS.html deleted file mode 100644 index bbda2cd6..00000000 --- a/clones/lisp/www.cliki.net/HH-AWS.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: HH-AWS - - - - - - - -
    HH-AWS
    HH-AWS is library for accessing the Simple Storage Service (S3), SimpleDB (SDB), Elastic Compute Cloud (EC2), and Simple Queue Service (SQS) Amazon Web Services.

    Homepage: http://haphazardhouse.net/projects/hh-aws

    Source: https://github.com/hargettp/hh-aws

    License: MIT


    -Topics: web API
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/HT-AJAX.html b/clones/lisp/www.cliki.net/HT-AJAX.html deleted file mode 100644 index cc68d0dc..00000000 --- a/clones/lisp/www.cliki.net/HT-AJAX.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: HT-AJAX - - - - - - - -
    HT-AJAX
    HT-AJAX is a small AJAX web framework for Hunchentoot web server that allows transparent calls from Javascript in web pages to the server side Lisp code. It is compatible with Hunchentoot versions prior to 1.0.0.

    Note that you might consider using HT-SIMPLE-AJAX, which is is a heavily simplified version of HT-AJAX that lacks some features but works with current versions (> 1.1) of Hunchentoot.

    Basically it allows 'exporting' of your lisp functions so that they can be easily called from the Javascript code on your web page. The details of the data transfer can be handled by different backends, or as we'll call them 'AJAX processors'. At the moment three such processors are supported: one simple, built-in, that generates code inside the web page and does not require external libraries. The others are using a javascript library, such as Lokris or Prototype.

    The documentation for HT-AJAX library including a small tutorial can be found here.

    HT-AJAX is written in Common Lisp and aims to be portable across implementations as well as web browsers. Patches, bug reports, requests and comments are welcome.

    The package has found a new home at common-lisp.net, as the author could not be reached anymore. If you are the author, please send email to rt at common dash lisp dot net so that we can get in touch.

    Version 0.0.6 (2007-02-20) added support for Yahoo UI library, Dojo Toolkit, "virtual .js file" feature, option to compress the generated Javascript, error and success callbacks, returning complex objects to Javascript with JSON.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/HT-SIMPLE-AJAX.html b/clones/lisp/www.cliki.net/HT-SIMPLE-AJAX.html deleted file mode 100644 index 2d0b884f..00000000 --- a/clones/lisp/www.cliki.net/HT-SIMPLE-AJAX.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: ht-simple-ajax - - - - - - - -
    ht-simple-ajax
    HT-SIMPLE-AJAX is an Ajax library for the HUNCHENTOOT web server. It allows to call ordinary Lisp functions from within an html page using javascript and asynchronous client/server communication.

    It is a heavily simplified (150 lines of code) version of HT-AJAX that is compatible with newer versions (>1.1) of HUNCHENTOOT. It was initially developed for GTFL and therefore provides only one type of Ajax processor (which resembles the 'simple' processor of HT-AJAX).

    It's provided by Martin Loetzsch and can be found at http://martin-loetzsch.de/ht-simple-ajax


    -web framework
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/HTML Generator.html b/clones/lisp/www.cliki.net/HTML Generator.html deleted file mode 100644 index 5cabeac2..00000000 --- a/clones/lisp/www.cliki.net/HTML Generator.html +++ /dev/null @@ -1,113 +0,0 @@ - - - - - CLiki: HTML generator - - - - - - - -
    HTML generator
    HTML generators are libraries that let you generate HTML from within your Lisp code, as opposed to HTML template libraries.

    -See also a comparison of HTML generators .

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/HTML Parser.html b/clones/lisp/www.cliki.net/HTML Parser.html deleted file mode 100644 index f682e26d..00000000 --- a/clones/lisp/www.cliki.net/HTML Parser.html +++ /dev/null @@ -1,92 +0,0 @@ - - - - - CLiki: HTML parser - - - - - - - -
    HTML parser
    HTML parsers

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/HTML Template.html b/clones/lisp/www.cliki.net/HTML Template.html deleted file mode 100644 index 82954580..00000000 --- a/clones/lisp/www.cliki.net/HTML Template.html +++ /dev/null @@ -1,124 +0,0 @@ - - - - - CLiki: HTML template - - - - - - - -
    HTML template
    HTML templating libraries:

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/HTML generator.html b/clones/lisp/www.cliki.net/HTML generator.html deleted file mode 100644 index 5cabeac2..00000000 --- a/clones/lisp/www.cliki.net/HTML generator.html +++ /dev/null @@ -1,113 +0,0 @@ - - - - - CLiki: HTML generator - - - - - - - -
    HTML generator
    HTML generators are libraries that let you generate HTML from within your Lisp code, as opposed to HTML template libraries.

    -See also a comparison of HTML generators .

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/HTML parser.html b/clones/lisp/www.cliki.net/HTML parser.html deleted file mode 100644 index f682e26d..00000000 --- a/clones/lisp/www.cliki.net/HTML parser.html +++ /dev/null @@ -1,92 +0,0 @@ - - - - - CLiki: HTML parser - - - - - - - -
    HTML parser
    HTML parsers

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/HTML template.html b/clones/lisp/www.cliki.net/HTML template.html deleted file mode 100644 index 82954580..00000000 --- a/clones/lisp/www.cliki.net/HTML template.html +++ /dev/null @@ -1,124 +0,0 @@ - - - - - CLiki: HTML template - - - - - - - -
    HTML template
    HTML templating libraries:

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/HTML-TEMPLATE.html b/clones/lisp/www.cliki.net/HTML-TEMPLATE.html deleted file mode 100644 index 5a32c52a..00000000 --- a/clones/lisp/www.cliki.net/HTML-TEMPLATE.html +++ /dev/null @@ -1,166 +0,0 @@ - - - - - CLiki: html-template - - - - - - - -
    html-template
    HTML-TEMPLATE is an HTML template library to use templates much like Perl's HTML::Template. Despite its name, HTML-TEMPLATE is HTML-agnostic and could be used for templating other documents.

    It was written by Edi Weitz and can be found at https://edicl.github.io/html-template/.

    Jörg Höhle also liked the idea of a clear and complete -separation between HTML (written by designers) and code. He -came up with a variant of Edi's approach to HTML template. It uses -Edi's parsing code (thanks!), no more, but the programmer view on it -feels very different.

    Consider Edi's 7x7 chess board example on his documentation page and -how my code would look like:

    (setq my-template - ;; load and check against specification - (tmpl-load "file.html" '((LOOP rows (LOOP cols colorful-style content))))) - -(let ((counter 0)) - (tmpl-print - my-template - (lambda (rowprinter) - (loop repeat 7 do - (funcall rowprinter - (lambda (cellprinter) - (loop repeat 7 do - (funcall cellprinter (oddp counter) (format nil "~R" counter)) - (incf counter)))))))) -

    Jörg Höhle's design goals: -

    • Separate HTML design from code as much as possible, the key - idea in the template approach.

    • -
    • Verifiable specification of the interface between - both, never see "$foo" in a user's browser as an indication that - some variable was not substituted.

    • -
    • Designer and programmer work concurrently early - on. The programmer may use a default template automatically derived - from the specification, the web-designer a random-content template - delivering web-server based on this specification.

    • -
    • Efficiently deliver data, which should be no - slower than frameworks based on direct embedding of code in HTML or - vice-versa. That's why I rejected intermediate structures (Edi's template - structure) and produce compilable code. A parsed template - becomes Lisp code, which can be either compiled and loaded as such - from the file system, or compiled on the fly at load-time.

    • -
    • Incrementally deliver results as produced (useful - for huge data or HTTP 1.1 chunked encoding) which is incompatible - with non-lazy intermediate structures.

    • -
    • Provide for lexical scoping in templates, - unlike Perl's HTML::Template. That is, a TMPL_VAR occurring - inside TMPL_LOOP may reference variables defined in an - outer (e.g. global) level. There's no need to repeat definitions at - inner levels.

    • -
    • Deliver data in pieces as large as possible: i.e. no individual - calls to PRINC or FORMAT for each HTML tag, coalesce these - instead.

    • -
    • Early HTML validation of the templates -
    • -
    • some more I forgot...

    • -

    [This next section confuses me a bit. I think a list entry refers to Edi's version, but I can't really tell.] -Some differences between Edi and Jörg's work include: -

      -
    • No TMPL_INCLUDE -
    • -
    • No facility for caching or automated reloading, which I feel - orthogonal to templates, interferes with - TMPL_INCLUDE and is left to the application. -
    • -
    • An attempt to load templates validates them, so the running - web-server application will choose to reject template updates (and - log the error) until they are corrected instead of displaying - garbage to the user. -
    • -
    • TMPL_VAR may have content, which is valuable for - the web designer's GUI: s/he sees this content up to a closing - /TMPL_VAR. -
    • -
    • Variable substitution on the code side is based on ordering - in the specification, not on names or symbols, so there are no - surprises with packages and symbol-names across files. -
    • -
    • The template substituting code is trivially small and was - ported to Scheme. In fact, there's almost no such code since it's - in part in the programmer calling sequence (witness the above - example) and part in the Lisp code representing the template. -
    • -
    • Edi's got a package ready to go for you. [So is there code somewhere interested people could hack on, or something?] -
    • -

    My experience: -

      -
    • The above specification is not all about the interface between - programmer and designer. URL structure, form names etc. need also - be agreed upon. -
    • -
    • The template approach is very useable for - applications with small or medium demand for variable - appearance. Or you'd need too many templates. -
    • -
    • I generated pages using templates featuring highly - dynamic content (e.g. variable numbers of both rows and - colums of a table, selectable and variable order) which some people - initially thought not usable with a strict templates approach. It - was, in fact, clean and easy. -
    • -
    • TMPL_LOOP and TMPL_VAR are really - general and could even emulate TMPL_IF. -
    • -
    • I generated my templates from Lisp code via SXML, instead of - having a designer. This aids consistency among templates. For a - all-by-one-person job, the separation is clear overhead, even if - there's potential for code reuse. You'd probably prefer a - HTML-from-sexpr approach in such a case and bypass templates. -
    • -
    • HTML validation of the templates is hindered by - TMPL_IF with an ELSE part, substitutions - inside attributes and obviously only possible when the - substitutions done by TMPL_VAR affect the HTML - structure. The most dynamic template is TMPL_VAR - make-it-all!

    • -
    • As an enhancement, there could be a mechanism for global - substitutions which would remain outside of the specification. - E.g. some pages like to display calendars, the current date or use - a mapping from month names to numbers etc. Such substitutions could - always be present, across all pages of the application. -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/HTML-template.html b/clones/lisp/www.cliki.net/HTML-template.html deleted file mode 100644 index 5a32c52a..00000000 --- a/clones/lisp/www.cliki.net/HTML-template.html +++ /dev/null @@ -1,166 +0,0 @@ - - - - - CLiki: html-template - - - - - - - -
    html-template
    HTML-TEMPLATE is an HTML template library to use templates much like Perl's HTML::Template. Despite its name, HTML-TEMPLATE is HTML-agnostic and could be used for templating other documents.

    It was written by Edi Weitz and can be found at https://edicl.github.io/html-template/.

    Jörg Höhle also liked the idea of a clear and complete -separation between HTML (written by designers) and code. He -came up with a variant of Edi's approach to HTML template. It uses -Edi's parsing code (thanks!), no more, but the programmer view on it -feels very different.

    Consider Edi's 7x7 chess board example on his documentation page and -how my code would look like:

    (setq my-template - ;; load and check against specification - (tmpl-load "file.html" '((LOOP rows (LOOP cols colorful-style content))))) - -(let ((counter 0)) - (tmpl-print - my-template - (lambda (rowprinter) - (loop repeat 7 do - (funcall rowprinter - (lambda (cellprinter) - (loop repeat 7 do - (funcall cellprinter (oddp counter) (format nil "~R" counter)) - (incf counter)))))))) -

    Jörg Höhle's design goals: -

    • Separate HTML design from code as much as possible, the key - idea in the template approach.

    • -
    • Verifiable specification of the interface between - both, never see "$foo" in a user's browser as an indication that - some variable was not substituted.

    • -
    • Designer and programmer work concurrently early - on. The programmer may use a default template automatically derived - from the specification, the web-designer a random-content template - delivering web-server based on this specification.

    • -
    • Efficiently deliver data, which should be no - slower than frameworks based on direct embedding of code in HTML or - vice-versa. That's why I rejected intermediate structures (Edi's template - structure) and produce compilable code. A parsed template - becomes Lisp code, which can be either compiled and loaded as such - from the file system, or compiled on the fly at load-time.

    • -
    • Incrementally deliver results as produced (useful - for huge data or HTTP 1.1 chunked encoding) which is incompatible - with non-lazy intermediate structures.

    • -
    • Provide for lexical scoping in templates, - unlike Perl's HTML::Template. That is, a TMPL_VAR occurring - inside TMPL_LOOP may reference variables defined in an - outer (e.g. global) level. There's no need to repeat definitions at - inner levels.

    • -
    • Deliver data in pieces as large as possible: i.e. no individual - calls to PRINC or FORMAT for each HTML tag, coalesce these - instead.

    • -
    • Early HTML validation of the templates -
    • -
    • some more I forgot...

    • -

    [This next section confuses me a bit. I think a list entry refers to Edi's version, but I can't really tell.] -Some differences between Edi and Jörg's work include: -

      -
    • No TMPL_INCLUDE -
    • -
    • No facility for caching or automated reloading, which I feel - orthogonal to templates, interferes with - TMPL_INCLUDE and is left to the application. -
    • -
    • An attempt to load templates validates them, so the running - web-server application will choose to reject template updates (and - log the error) until they are corrected instead of displaying - garbage to the user. -
    • -
    • TMPL_VAR may have content, which is valuable for - the web designer's GUI: s/he sees this content up to a closing - /TMPL_VAR. -
    • -
    • Variable substitution on the code side is based on ordering - in the specification, not on names or symbols, so there are no - surprises with packages and symbol-names across files. -
    • -
    • The template substituting code is trivially small and was - ported to Scheme. In fact, there's almost no such code since it's - in part in the programmer calling sequence (witness the above - example) and part in the Lisp code representing the template. -
    • -
    • Edi's got a package ready to go for you. [So is there code somewhere interested people could hack on, or something?] -
    • -

    My experience: -

      -
    • The above specification is not all about the interface between - programmer and designer. URL structure, form names etc. need also - be agreed upon. -
    • -
    • The template approach is very useable for - applications with small or medium demand for variable - appearance. Or you'd need too many templates. -
    • -
    • I generated pages using templates featuring highly - dynamic content (e.g. variable numbers of both rows and - colums of a table, selectable and variable order) which some people - initially thought not usable with a strict templates approach. It - was, in fact, clean and easy. -
    • -
    • TMPL_LOOP and TMPL_VAR are really - general and could even emulate TMPL_IF. -
    • -
    • I generated my templates from Lisp code via SXML, instead of - having a designer. This aids consistency among templates. For a - all-by-one-person job, the separation is clear overhead, even if - there's potential for code reuse. You'd probably prefer a - HTML-from-sexpr approach in such a case and bypass templates. -
    • -
    • HTML validation of the templates is hindered by - TMPL_IF with an ELSE part, substitutions - inside attributes and obviously only possible when the - substitutions done by TMPL_VAR affect the HTML - structure. The most dynamic template is TMPL_VAR - make-it-all!

    • -
    • As an enhancement, there could be a mechanism for global - substitutions which would remain outside of the specification. - E.g. some pages like to display calendars, the current date or use - a mapping from month names to numbers etc. Such substitutions could - always be present, across all pages of the application. -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/HTML.html b/clones/lisp/www.cliki.net/HTML.html deleted file mode 100644 index 68ea90f7..00000000 --- a/clones/lisp/www.cliki.net/HTML.html +++ /dev/null @@ -1,104 +0,0 @@ - - - - - CLiki: HTML - - - - - - - -
    HTML
      -
    • -3bmd - - 3bmd is a Markdown to HTML converter -
    • -
    • -CL-HTML-DIFF - - CL-HTML-DIFF is a library for generating a human-readable diff of two HTML documents, using HTML -
    • -
    • -cl-libxml2 - - cl-libxml2 is high-level wrapper around libxml2 and libxslt libraries -
    • -
    • -closure-html - - Closure HTML is a portable HTML parsing library that understands malformed HTML -
    • -
    • -CLSS - - CLSS is a DOM traversal/search engine using CSS selectors -
    • -
    • -Exscribe - - Exscribe is a CL-based document authoring tool in the spirit of Manuel Serrano's Scribe -
    • -
    • -gy.mr.html - - Max rottenkolber's HTML generator -
    • -
    • -html-encode - - html-encode is a small library for encoding text in various web-savvy formats -
    • -
    • -htout - - htout is an HTML generator written by Tim Bradshaw -
    • -
    • -lQuery - - lQuery is a DOM manipulation library inspired by and based on the jQuery syntax and functions -
    • -
    • -macro-html - - MACRO-HTML is Max Rottenkolber's HTML generator -
    • -
    • -Plump - - Practically Lenient and Unimpressive Markup Parser -
    • -
    • -Stencl - - Stencl is a simple templating library loosely based on BRL (the Beautiful Report Language) -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/HTTP Client.html b/clones/lisp/www.cliki.net/HTTP Client.html deleted file mode 100644 index aee2a697..00000000 --- a/clones/lisp/www.cliki.net/HTTP Client.html +++ /dev/null @@ -1,116 +0,0 @@ - - - - - CLiki: HTTP Client - - - - - - - -
    HTTP Client
    Client applications for working with the web (HTTP client libraries, web browsers, crawlers, screen scrapers, etc.)

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/HTTP Server.html b/clones/lisp/www.cliki.net/HTTP Server.html deleted file mode 100644 index a04db7ba..00000000 --- a/clones/lisp/www.cliki.net/HTTP Server.html +++ /dev/null @@ -1,120 +0,0 @@ - - - - - CLiki: HTTP server - - - - - - - -
    HTTP server
    Native Common Lisp HTTP servers, as opposed to something like mod_lisp

    See also Web for other things to go with your HTTP server.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/HTTP client.html b/clones/lisp/www.cliki.net/HTTP client.html deleted file mode 100644 index aee2a697..00000000 --- a/clones/lisp/www.cliki.net/HTTP client.html +++ /dev/null @@ -1,116 +0,0 @@ - - - - - CLiki: HTTP Client - - - - - - - -
    HTTP Client
    Client applications for working with the web (HTTP client libraries, web browsers, crawlers, screen scrapers, etc.)

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/HTTP server.html b/clones/lisp/www.cliki.net/HTTP server.html deleted file mode 100644 index a04db7ba..00000000 --- a/clones/lisp/www.cliki.net/HTTP server.html +++ /dev/null @@ -1,120 +0,0 @@ - - - - - CLiki: HTTP server - - - - - - - -
    HTTP server
    Native Common Lisp HTTP servers, as opposed to something like mod_lisp

    See also Web for other things to go with your HTTP server.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/HTTPD0.html b/clones/lisp/www.cliki.net/HTTPD0.html deleted file mode 100644 index 28ac69a6..00000000 --- a/clones/lisp/www.cliki.net/HTTPD0.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: HTTPD0 - - - - - - - -
    HTTPD0
    HTTPD0 is a simple programmable HTTP/1.0 server with support for GET and HEAD requests following the KISS principle. Written by Max Rottenkolber.

    Depends on: q-thread-pool, trivial-utf-8, cl-date-time-parser, maxpc, percent-encoding, cl-fad, file-types, uiop

    Repository: https://github.com/eugeneia/httpd0

    License: AGPL


    -HTTP server
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/HUNCHENTOOT.html b/clones/lisp/www.cliki.net/HUNCHENTOOT.html deleted file mode 100644 index 6af1b1a8..00000000 --- a/clones/lisp/www.cliki.net/HUNCHENTOOT.html +++ /dev/null @@ -1,76 +0,0 @@ - - - - - CLiki: Hunchentoot - - - - - - - -
    Hunchentoot
    Hunchentoot is a robust and easy to use HTTP server. As a stand-alone web server, Hunchentoot is capable of HTTP/1.1 chunking (both directions), persistent connections (keep-alive), and SSL.

    Hunchentoot currently works with LispWorks (which is the main development and testing platform), CMUCL (with MP support), SBCL (with Unicode and thread support), OpenMCL, and ACL.

    It's written by Edi Weitz and can be found at https://github.com/edicl/hunchentoot.

    Cyrus Harmon has contributed support for virtual hosts, CGI, and authentication in Hunchentoot.

    A basic tutorial on using Hunchentoot for Lisp web apps is available here.

    Hunchentoot-related pages

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Harald Hanche-Olsen.html b/clones/lisp/www.cliki.net/Harald Hanche-Olsen.html deleted file mode 100644 index 67eb2e45..00000000 --- a/clones/lisp/www.cliki.net/Harald Hanche-Olsen.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Harald Hanche-Olsen - - - - - - - -
    Harald Hanche-Olsen
    Harald Hanche-Olsen is not only a Person, but also a mathematician and occasional lisp hacker.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Harley Gorrell.html b/clones/lisp/www.cliki.net/Harley Gorrell.html deleted file mode 100644 index 27db1a5c..00000000 --- a/clones/lisp/www.cliki.net/Harley Gorrell.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - CLiki: Harley Gorrell - - - - - - - -
    Harley Gorrell
    a Person who likes parenthesis. I have lurked for a while and -have decided to become more involved with the community.

    I have written a couple of modes for Emacs but have started to -want more than elisp can provide.

    Author of the "pg-psql" package.

    Info: -harley at panix.com -Home Page

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/HaroldoStenger.html b/clones/lisp/www.cliki.net/HaroldoStenger.html deleted file mode 100644 index 364731d6..00000000 --- a/clones/lisp/www.cliki.net/HaroldoStenger.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: HaroldoStenger - - - - - - - -
    HaroldoStenger
    I live in Montevideo, Uruguay, and am 32.

    Since I was born, I've always been looking for the next holy grail. As ye old alchemy masters believed, the research is instructive by itself. Zen masters teach it too. Nonetheless, Prevayler technology discovery, deserves my deepest acknowledgement.

    Right now, I'm learning Common Lisp. I plan to use it by itself as a development platform, and also to write CL programs that write programs that compile under other language environments, in order to cope with different needs.

    Write to me hstenger at adinet dot com dot uy

    I've found interesting reading here:

    Lisp - Next Generation
    -fare-matcher


    -person
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Hemlock.html b/clones/lisp/www.cliki.net/Hemlock.html deleted file mode 100644 index 94e2ec8a..00000000 --- a/clones/lisp/www.cliki.net/Hemlock.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: Hemlock - - - - - - - -
    Hemlock
    Hemlock is an Emacs-like editor that comes with CMUCL (Debian users need to get the cmucl-source package). Why not take a CloserLookAtHemlock?

    Looking for quick instructions on GettingStartedWithHemlock?

    If you want to use Hemlock with an X11 server that uses magic cookies (eg, connections forwarded via ssh), and if you're using a CMUCL distribution from before summer 2002 (or so), you'll need to load the following patch: Make Old CMUCL CLX Work With Magic Cookies.

    See also cl-emacs, I guess.

    Portable hemlock. There is an attempt to free Hemlock from its CMUCL prison and port it to -ANSI CL plus CLX -called the Portable Hemlock. It has already been persuaded to run on OpenMCL and SBCL, and possibly others.

    A recent version of hemlock is available through git (based on the portable hemlock codebase):

    git clone https://github.com/bluelisp/hemlock.git

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Henry Baker.html b/clones/lisp/www.cliki.net/Henry Baker.html deleted file mode 100644 index 06262da7..00000000 --- a/clones/lisp/www.cliki.net/Henry Baker.html +++ /dev/null @@ -1,58 +0,0 @@ - - - - - CLiki: Henry Baker - - - - - - - -
    Henry Baker
    Henry G. Baker is a person who wrote great insightful papers about Lisp in the early 1990's.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Heresy.html b/clones/lisp/www.cliki.net/Heresy.html deleted file mode 100644 index 9713f924..00000000 --- a/clones/lisp/www.cliki.net/Heresy.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: Heresy - - - - - - - -
    Heresy
    Heresy is an implementation of the lazy list data structure.

    Homepage: http://cl-heresy.sourceforge.net/Heresy.htm

    License: BSD

    -


    -Topics: functional programming
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Hiper.html b/clones/lisp/www.cliki.net/Hiper.html deleted file mode 100644 index b2fee78a..00000000 --- a/clones/lisp/www.cliki.net/Hiper.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Hiper - - - - - - - -
    Hiper
    High performance term rewriting E-completion system.

    Hiper is available here from the CMU AI Repository.

    Hiper is distributed free of charge and with absolutely no warranty.


    -Application, Theorem Provers
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Hoan Ton-That.html b/clones/lisp/www.cliki.net/Hoan Ton-That.html deleted file mode 100644 index ede3a06a..00000000 --- a/clones/lisp/www.cliki.net/Hoan Ton-That.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Hoan Ton-That - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Humbler.html b/clones/lisp/www.cliki.net/Humbler.html deleted file mode 100644 index 6affdfeb..00000000 --- a/clones/lisp/www.cliki.net/Humbler.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: Humbler - - - - - - - -
    Humbler
    Humbler is a Tumblr API interface that attempts to make it as little of a pain to use as possible. oAuth login and signing is handled by South.

    The project can be found on github including a fully documented symbol index and a getting started tutorial.
    -As of September 2014, Humbler is on Quicklisp and implements all tumblr API calls.

    Humbler is licensed under the Artistic License 2.0.


    -web API
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Humor.html b/clones/lisp/www.cliki.net/Humor.html deleted file mode 100644 index 855739aa..00000000 --- a/clones/lisp/www.cliki.net/Humor.html +++ /dev/null @@ -1,152 +0,0 @@ - - - - - CLiki: Humor - - - - - - - -
    Humor
    Lispers like to laugh too: -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Hunchensocket.html b/clones/lisp/www.cliki.net/Hunchensocket.html deleted file mode 100644 index 9a115a79..00000000 --- a/clones/lisp/www.cliki.net/Hunchensocket.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Hunchensocket - - - - - - - -
    Hunchensocket
    Hunchensocket is a Common Lisp implementation of WebSockets realized as an extension to Edi Weitz' excellent Hunchentoot web server.

    As WebSockets are still in draft state and security concerns have been raised against older (but supported) draft versions of the protocol implemented in a number of browsers, it should not be used productively (yet), unless of course you know what you're doing.

    Categories: Web, IPC, WebSocket server

    Author: Alexander Kahl

    Source repository: https://github.com/capitaomorte/hunchensocket.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Hunchentoot LSP.html b/clones/lisp/www.cliki.net/Hunchentoot LSP.html deleted file mode 100644 index 36e737e3..00000000 --- a/clones/lisp/www.cliki.net/Hunchentoot LSP.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: Hunchentoot LSP - - - - - - - -
    Hunchentoot LSP
    port of John Wiseman's LSP HTML template library for use with Hunchentoot: https://common-lisp.net/viewvc/tbnl/contrib/lsp/

    There's no mailing list setup for such a micro project, but you can contact me at -emailmac <at> gmail dot com -for support and bug report, etc.

    Some misconceptions about CL-EMB corrected: https://common-lisp.net/pipermail/tbnl-devel/2007-May/001355.html

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Hunchentoot.html b/clones/lisp/www.cliki.net/Hunchentoot.html deleted file mode 100644 index 6af1b1a8..00000000 --- a/clones/lisp/www.cliki.net/Hunchentoot.html +++ /dev/null @@ -1,76 +0,0 @@ - - - - - CLiki: Hunchentoot - - - - - - - -
    Hunchentoot
    Hunchentoot is a robust and easy to use HTTP server. As a stand-alone web server, Hunchentoot is capable of HTTP/1.1 chunking (both directions), persistent connections (keep-alive), and SSL.

    Hunchentoot currently works with LispWorks (which is the main development and testing platform), CMUCL (with MP support), SBCL (with Unicode and thread support), OpenMCL, and ACL.

    It's written by Edi Weitz and can be found at https://github.com/edicl/hunchentoot.

    Cyrus Harmon has contributed support for virtual hosts, CGI, and authentication in Hunchentoot.

    A basic tutorial on using Hunchentoot for Lisp web apps is available here.

    Hunchentoot-related pages

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/HyperSpec.html b/clones/lisp/www.cliki.net/HyperSpec.html deleted file mode 100644 index b8654e2a..00000000 --- a/clones/lisp/www.cliki.net/HyperSpec.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Hyperspec - - - - - - - -
    Hyperspec
    The Common Lisp Hyperspec is an HTML version of the ANSI Common Lisp Standard. See CLHS for more info.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Hyperspec-Info.html b/clones/lisp/www.cliki.net/Hyperspec-Info.html deleted file mode 100644 index 8125795f..00000000 --- a/clones/lisp/www.cliki.net/Hyperspec-Info.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Hyperspec-Info - - - - - - - -
    Hyperspec-Info
    Simple util to view draft of Hyperspec in fast, easy Info format.

    [download]

    (Perhaps it's hackish; what happens when you don't feel like figuring out how Info files work, or emailing anyone. But works fast for me. ;)

    Inspired by Bill Clementson's excellent article. And update.

    Criticisms/bugreports welcome, as I'm no Emacs hacker.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Hyperspec.html b/clones/lisp/www.cliki.net/Hyperspec.html deleted file mode 100644 index b8654e2a..00000000 --- a/clones/lisp/www.cliki.net/Hyperspec.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Hyperspec - - - - - - - -
    Hyperspec
    The Common Lisp Hyperspec is an HTML version of the ANSI Common Lisp Standard. See CLHS for more info.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/IAmRasputin.html b/clones/lisp/www.cliki.net/IAmRasputin.html deleted file mode 100644 index 0bfae35d..00000000 --- a/clones/lisp/www.cliki.net/IAmRasputin.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: IAmRasputin - - - - - - - -
    IAmRasputin
    aka Ryan Gannon, a human Person and hobbyist Lisp hacker.

    I'm Rasputin. Or, I Am Rasputin. I am IAmRasputin?

    Author of the forthcoming Common Lisp, The Language 3: The Musical*

    Why the name?

    -Long ago, as a teenager with a Steam account, I was lucky enough to become friendly with someone who was also into video games. They asked what my account handle was, and I was presented with a conundrum: share my decidedly uncool 1337-sp34k handle, or come up with something on the spot. I plumbed my fascination with Russian history, and the rest is, well, history.

    Here's a webpage with no useful information.

    * This is a joke, but if you're rich, willing to part with your money, and really want this to exist, please let me know

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ICanCAD.html b/clones/lisp/www.cliki.net/ICanCAD.html deleted file mode 100644 index 093efb82..00000000 --- a/clones/lisp/www.cliki.net/ICanCAD.html +++ /dev/null @@ -1,58 +0,0 @@ - - - - - CLiki: ICanCAD - - - - - - - -
    ICanCAD
    ICanCAD is a CAD application for analog and mixed-signal (analog and digital signals on the same chip) electronics circuit design. Version 0.2.1 (May 2002) has fairly complete schematic editing functionality (think of a "draw" program with wires), but no support as of yet for netlisting or EDIF I/O. Requires CLIM.

    Version 0.2.1 is now distributed with a public-domain "generic" library, though so far it only has MOS devices.

    Homepage: https://sourceforge.net/projects/icancad/

    Screenshots: http://icancad.sourceforge.net/screen-shots.htm

    License: GPL3

    Quick assessment (2021-08-28)

      -
    • SourceForge flags the installer (PreviewRelease.exe) as malware. (Windows 10 also complains.) -
    • -
    • But the installer does evidently work. Creating, saving, and loading schematic files appears to work. -
    • -
    • The installation doesn't include the source code. -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/IDE.html b/clones/lisp/www.cliki.net/IDE.html deleted file mode 100644 index 2cdd2c63..00000000 --- a/clones/lisp/www.cliki.net/IDE.html +++ /dev/null @@ -1,134 +0,0 @@ - - - - - CLiki: IDE - - - - - - - -
    IDE
    Integrated Development Environments: the usual free Lisp IDE nowadays is GNU Emacs with SLIME.

      -
    • -Able - - Able is a basic lisp editor for Windows/Mac/Linux -
    • -
    • -Alive - - An attempt to create a Common Lisp extension for VSCode -
    • -
    • -Cusp - - Cusp is an Eclipse IDE plugin that was available from http://bitfauna.com/projects/cusp/index.html and runs on top of SBCL -
    • -
    • -Dandelion - - Dandelion is a plugin for Eclipse that supports Lisp programming in the Eclipse platform -
    • -
    • -Emacs customizations - - Here I hope we can collect a bunch of .emacs files that display the power and versatility of Emacs used to program Lisp -
    • -
    • -Lem - - Lem is a stand-alone, Emacs-like editor built in Common Lisp, with built-in support for Common Lisp and other languages (Go, Rust, Python,…) as well as a directory mode, an html mode, and more -
    • -
    • -Limp - - Limp, a Lisp IDE for vim -
    • -
    • -LispEdit - - LispEdit is a Geany plugin that provides shortcuts for sending s-expressions (symbolic expressions) to a Lisp process running in Geany's embedded terminal -
    • -
    • -LispIDE - - LispIDE is a basic graphical shell for several Lisp implementations available for Windows -
    • -
    • -MCLIDE - - MCLIDE is a free open source Macintosh IDE for Lisp implementations on any platform -
    • -
    • -SLIMA - - SLIMA is an Atom plugin for interactive Common Lisp development -
    • -
    -See also: https://lispcookbook.github.io/cl-cookbook/editor-support.html

    and (perhaps, one day, eventually) CL-Emacs, and on MS-Windows: VisualCLisp and LispIDE

    And dead editors: Cusp (an Eclipse plugin), Jabberwocky (a stand-alone editor), Hemlock (an Emacs-like editor embedded in CMUCL).

    Find ".emacs" files used by famous lispers! Wow! Emacs customizations


    OpenMCL comes with an idea (primitive listener, inspector and editor) of a development environment based on the Cocoa libs of MacOS X.


    The big hope is that McCLIM will be the base for a (portable) development environment for Common Lisp (listener, editor, debugger, ...).


    Tools provided by a Common Lisp IDE:

      -
    • Editor -
    • -
    • Listener -
    • -
    • Inspector -
    • -
    • Apropos Dialog -
    • -
    • Stepper -
    • -
    • Trace Dialog -
    • -
    • Backtrace Dialog -
    • -
    • Restarts Dialog -
    • -
    • Save Application Dialog -
    • -
    • Preferences Dialog -
    • -
    • Online Help -
    • -
    • User Interface Builder -
    • -
    • Class Browser -
    • -
    • Generic Function Browser -
    • -
    • System Browser -
    • -
    • Package Browser -
    • -
    • Process Browser -
    • -
    • Mail Client (!!) -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/IE3FP.html b/clones/lisp/www.cliki.net/IE3FP.html deleted file mode 100644 index ca854427..00000000 --- a/clones/lisp/www.cliki.net/IE3FP.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: IE3FP - - - - - - - -
    IE3FP
    IE3FP is a library to code and decode floating point numbers in IEEE 754 binary format.

    Homepage: http://wcp.sdf-eu.org/software/#ie3fp

    Download: http://wcp.sdf-eu.org/software/ie3fp-20090827T160858.tbz

    License: LGPL

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/IGS Client.html b/clones/lisp/www.cliki.net/IGS Client.html deleted file mode 100644 index 8b13048c..00000000 --- a/clones/lisp/www.cliki.net/IGS Client.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: IGS Client - - - - - - - -
    IGS Client
    Basic IGS client back-end. It can connect -to the IGS server and play Go games. Currently the sample client plays manego with whoever challenges it. -I will eventually prepare better documentation, frontend, etc.

    Redistributable under BSD-like terms.

    Minimal homepage

    Author: Matthew Danish

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ILC 2003 Sightseeing.html b/clones/lisp/www.cliki.net/ILC 2003 Sightseeing.html deleted file mode 100644 index ba5a7021..00000000 --- a/clones/lisp/www.cliki.net/ILC 2003 Sightseeing.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: ILC 2003 sightseeing - - - - - - - -
    ILC 2003 sightseeing
    This page is a resource for those attending the International Lisp Conference 2003, if your spouse or significant other is coming to New York, please let us know.

    My name is Doug Tolton, Neither my wife nor I have been to New York before, so we are both going. My wife's name is Lisa, and she will be sightseeing during conference time. If your wife / significant other will be coming with you, please post here so we can organize some group trips etc.

    Hi there - I am Frank Goenninger and will be bringing with me my wife Heike. She will stay the whole conference and would appreciate having someone to join. So, see you there!

    -Presumably we'll have to arrange some kind of Lisp Widows meeting- My wife is also coming along, but we've not made our reservations yet. -Gregm

    I'm coming to ILC2003 as well and my wife will be coming too. Any sightseeing plans been made yet? - Bill Clementson (bill_clementson@yahoo.com)

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ILC 2003 sightseeing.html b/clones/lisp/www.cliki.net/ILC 2003 sightseeing.html deleted file mode 100644 index ba5a7021..00000000 --- a/clones/lisp/www.cliki.net/ILC 2003 sightseeing.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: ILC 2003 sightseeing - - - - - - - -
    ILC 2003 sightseeing
    This page is a resource for those attending the International Lisp Conference 2003, if your spouse or significant other is coming to New York, please let us know.

    My name is Doug Tolton, Neither my wife nor I have been to New York before, so we are both going. My wife's name is Lisa, and she will be sightseeing during conference time. If your wife / significant other will be coming with you, please post here so we can organize some group trips etc.

    Hi there - I am Frank Goenninger and will be bringing with me my wife Heike. She will stay the whole conference and would appreciate having someone to join. So, see you there!

    -Presumably we'll have to arrange some kind of Lisp Widows meeting- My wife is also coming along, but we've not made our reservations yet. -Gregm

    I'm coming to ILC2003 as well and my wife will be coming too. Any sightseeing plans been made yet? - Bill Clementson (bill_clementson@yahoo.com)

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ILISP.html b/clones/lisp/www.cliki.net/ILISP.html deleted file mode 100644 index d3548947..00000000 --- a/clones/lisp/www.cliki.net/ILISP.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: ILISP - - - - - - - -
    ILISP
    ILISP is an Emacs based interface to various lisp-like systems - a pretty essential development aid. It's available at SourceForge, and packaged for Debian.

    Instructions for making ILISP work with Emacs are found at the Common Lisp Cookbook on Windows or on Mac OS, and on github.

    ILISP has been completely superseded by SLIME.


    -obsolete
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/IMAGO.html b/clones/lisp/www.cliki.net/IMAGO.html deleted file mode 100644 index 24d4b5dd..00000000 --- a/clones/lisp/www.cliki.net/IMAGO.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: IMAGO - - - - - - - -
    IMAGO
    IMAGO is an image manipulation and image file input/output library written by Matthieu Villeneuve. It is licensed under the LLGPL.

    Project homepage: http://common-lisp.net/project/imago/

    Usage examples (lots of big images!): http://matthieu.villeneuve.free.fr/dev/imago/examples.html

    Category: graphics library

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/IMAP.html b/clones/lisp/www.cliki.net/IMAP.html deleted file mode 100644 index acf666f5..00000000 --- a/clones/lisp/www.cliki.net/IMAP.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: imap - - - - - - - -
    imap
    imap is a client library for Allegro CL for sending and receiving email with support for POP, IMAP and SMTP.

    Homepage: https://github.com/franzinc/imap

    License: LLGPL

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/IMCL.html b/clones/lisp/www.cliki.net/IMCL.html deleted file mode 100644 index 4f9650d6..00000000 --- a/clones/lisp/www.cliki.net/IMCL.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: IMCL - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/IMHO.html b/clones/lisp/www.cliki.net/IMHO.html deleted file mode 100644 index 0444909b..00000000 --- a/clones/lisp/www.cliki.net/IMHO.html +++ /dev/null @@ -1,86 +0,0 @@ - - - - - CLiki: IMHO - - - - - - - -
    IMHO
    IMHO is dead, as far as anyone knows. The upstream sources and Debian packages are no more; this page is kept around for archival purposes and in case the feature description inspires anyone to take over development or to replicate the functionality. See https://sources.debian.org/src/cl-imho/1.2.1-1/ for a (probably obsolete) release of sources.


    IMHO from onShore Development is a toolkit that provides facilities for building highly interactive Web applications. - Some of the features that are in a useful state at this point are: session management, componentized document - construction, template-based HTML rendering, and Java/JavaScript integration. It is a loose functional - equivalent of Apple's WebObjects framework.

    IMHO is Apache-only. It uses either mod_lisp or a homegrown mod_webapp to -establish a connection between Apache and the Lisp server. The included -mod_webapp package is derived from the one in the Apache project.

    When it was active, you could find it at http://alpha.onshored.com/lisp-software/. Eugene Zaikonnikov posted a message to the Lispweb mailing list providing installation and usage tips.

    I'd really hate for imho to go lost. In the hopes that someone may eventually find it usefull, or just interesting, I've grabbed from debian what I believe are the latest release of imho (and its supporting library odcl) and put them up on ucw's ftp directory. -- Marco Baringer


    I'm not sure I've ever seen a summary of IMHO's features, so here's my -stab at one:

      -
    • Built in session management. Sessions are set-like objects used to -keep track of one current instance of any lisp class. These "session -instances" are used to maintain the current snapshot of a user's -interaction with the application. -
    • -
    • HTML element class hierarchy. Each HTML tag (and therefore each HTML -document) is represented by a CLOS class descended from -imho:html-element. -
    • -
    • Webmethods. Imho keeps track of a bunch of programmer-specified -generic functions called webmethods; a browser request causes imho to -lookup the appropriate webmethod, target element and arguments and -select and invoke the proper webmethod based on parsing the method -name and typed arguments out of the submitted URL. -
    • -
    • Element tree structure. An element is an n-ary tree of child elements -and a parent element. This allows cleanly abstracted widgets to be -created with minimal code, since, say, a submit button placed at the -bottom of a tree of elements can simply ascend the parent tree looking -for a target object to call its method on. -
    • -
    • Template-based presentation layer (HTML plus a single tag with a -single parameter). Designers can code mostly-HTML page templates and -refer to live, session-particular lisp objects by name. -
    • -
    • Plenty of other stuff but just that much is pretty cool, huh? -
    • -
    -The real fun comes when you combine IMHO with UncommonSQL.

    Damn, lisp rocks!

    —Lyn Headley


    Is IMHO the Lisp analog of Python's Zope, then?

    Kinda, yeah. Only Zope tries to solve many problems (it comes with its own object-database) IMHO doesn't even address (a good thing, if you ask me). They have quite different approaches and from my experience with the two of them, I would prefer IMHO over Zope because of the way IMHO is interegrated with CL. It feels quite natural to work with it. Erik Enge

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/IMPS.html b/clones/lisp/www.cliki.net/IMPS.html deleted file mode 100644 index 2acbe6dc..00000000 --- a/clones/lisp/www.cliki.net/IMPS.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: IMPS - - - - - - - -
    IMPS
    IMPS is an Interactive Mathematical Proof System developed by W. M. Farmer, J. D. Guttman, and F. J. Thayer at The MITRE Corporation during 1990-1993. It is intended to provide mechanical support for traditional mathematical techniques and styles of practice. The system consists of a library of mathematics plus facilities for developing axiomatic theories, proving conjectures, and performing rigorous symbolic computations. It is available under a BSD-like free license.

    Home page: http://imps.mcmaster.ca/

    Overview: http://web.cs.wpi.edu/~guttman/pubs/imps-overview.pdf

    Repository: https://github.com/theoremprover-museum/imps


    -Theorem Provers
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/IOLib.html b/clones/lisp/www.cliki.net/IOLib.html deleted file mode 100644 index 10edbd61..00000000 --- a/clones/lisp/www.cliki.net/IOLib.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: IOlib - - - - - - - -
    IOlib
    I/O(mainly networking) library containing: a BSD sockets library, a DNS resolver and an I/O multiplexer that supports select(2), epoll(4) and kqueue(2).

    Licence: MIT-LICENSE

    Dependencies: trivial-garbage, CFFI, Osicat and bordeaux-threads

    CL implementations on which IOlib has been tested: SBCL, CMUCL, CLISP and Clozure(ex OpenMCL). Probably it works on any implementation supported by CFFI that has native :long-long.

    Homepage: http://common-lisp.net/project/iolib/. Download instructions can be found here.

    Here is a recent tutorial: http://pages.cs.wisc.edu/~psilord/blog/data/iolib-tutorial/tutorial.html


    -system programming
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/IOlib-POSIX.html b/clones/lisp/www.cliki.net/IOlib-POSIX.html deleted file mode 100644 index 08a4d243..00000000 --- a/clones/lisp/www.cliki.net/IOlib-POSIX.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: IOlib-POSIX - - - - - - - -
    IOlib-POSIX

    This library is obsolete and should not be used. The page is left only as historical reference

    A POSIX FFI and groveler mostly geared towards Unix. It is built on top of CFFI.

    Its purpose is to be as faithful to POSIX as possible i.e. a one-to-one mapping between the foreign functions and the Lisp ones; if that's not possible or undesirable wrapper functions are provided instead, for example ioctl(), fcntl() and *stat() are wrapped.

    It also contains a foreign function groveler: IOlib-Grovel (formerly CFFI-Grovel).

    Licence: MIT

    Dependencies: asdf-additions and CFFI

    CL implementations on which IOlib-POSIX has been tested: SBCL, CMUCL and CLISP. Probably it works on any implementation supported by CFFI that has :long-long.

    Homepage: https://common-lisp.net/project/iolib/

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/IOlib.html b/clones/lisp/www.cliki.net/IOlib.html deleted file mode 100644 index 10edbd61..00000000 --- a/clones/lisp/www.cliki.net/IOlib.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: IOlib - - - - - - - -
    IOlib
    I/O(mainly networking) library containing: a BSD sockets library, a DNS resolver and an I/O multiplexer that supports select(2), epoll(4) and kqueue(2).

    Licence: MIT-LICENSE

    Dependencies: trivial-garbage, CFFI, Osicat and bordeaux-threads

    CL implementations on which IOlib has been tested: SBCL, CMUCL, CLISP and Clozure(ex OpenMCL). Probably it works on any implementation supported by CFFI that has native :long-long.

    Homepage: http://common-lisp.net/project/iolib/. Download instructions can be found here.

    Here is a recent tutorial: http://pages.cs.wisc.edu/~psilord/blog/data/iolib-tutorial/tutorial.html


    -system programming
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/IPC.html b/clones/lisp/www.cliki.net/IPC.html deleted file mode 100644 index dca680ff..00000000 --- a/clones/lisp/www.cliki.net/IPC.html +++ /dev/null @@ -1,88 +0,0 @@ - - - - - CLiki: IPC - - - - - - - -
    IPC
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/IPMI.html b/clones/lisp/www.cliki.net/IPMI.html deleted file mode 100644 index f6491a17..00000000 --- a/clones/lisp/www.cliki.net/IPMI.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: IPMI - - - - - - - -
    IPMI
    Intelligent Platform Management Interface

    Chun Tian binghe's working on implement this protocol in Common Lisp.


    -This page is for a networking protocol. -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/IRC Quotes.html b/clones/lisp/www.cliki.net/IRC Quotes.html deleted file mode 100644 index f209be43..00000000 --- a/clones/lisp/www.cliki.net/IRC Quotes.html +++ /dev/null @@ -1,312 +0,0 @@ - - - - - CLiki: IRC Quotes - - - - - - - -
    IRC Quotes
    Some moments from IRC, preserved for posterity, some humorous.

    2002-07-04 -

    -* Krystof just gets _why_ dan_b has been obsessing with "entomotomy"
    -[wnewman] because dan_b likes "you say entomatomy" jokes?
    -[dan-b]	wnewman: look, if you _want_ a bug database called "off"
    -[dan-b] ...
    -
    -
    -2003-08-22 -
    -[dan`b] where do symbols come from?  well, when a reader and a package love 
    -        each other very much ...
    -
    -
    -2004-03-13 -(referring to https://tnx.nl/php.html) -
    -[antifuchs] Mean   PHP  core function name length: 13.67
    -[antifuchs] "yeah, but what's the standard error?" (-:
    -[dan-b] the standard error is to use PHP, I think
    -

    2004-03-25 -

    -[noss] what is the terminology to separate lisp code as its textual 
    -       representation and the data is code language? i.e. what you pass to 
    -       READ and what you pass to EVAL?
    -[segv] you pass strings to read and forms to eval.
    -[segv] strings or streams.
    -[antifuchs] you pass streams to READ (;
    -[segv] what antifuchs said.
    -[antifuchs] unless your read is read-from-string, right (:
    -[eval] I hate my IRC client, it pops up everytime my name is said
    -


    -2004-05-28 -
    -[kmr] xophe: is cmucl amd64 working?
    -[Xophe] probably not to the extent of "working", no
    -[emarsden] I don't think that binaries are available
    -
    -
    -2004-06-18 -
    -[Xophe] minion, reply to alemmens' survey!
    -[minion] does torturing a poor bot with things beyond its
    -         comprehension please you?
    -
    -
    -2004-07-26 -
    -[nyef] Hrm... a 50-line file, and I suspect that 13 lines of it
    -       say that I'm completely insane.
    -[antifuchs] nyef: so what? 37 say that you're the exact opposite (-:
    -[wnewman] Maybe 37 say he's a pleasant kind of insane, and 13 say
    -          that he's a SBCL/x86 calling convention kind.
    -
    -
    -2004-08-04 -
    -[Luke] I have a small program that has been looking "basically right"
    -       for about two days, but has never worked,
    -       and I find fundamental problems with it every few hours :)
    -
    -
    -2004-08-30 -
    -[slothrop] it's tough to build apparently
    -[slothrop] cmucl, I mean
    -[wnewman] I did finally figure out how to do it, in my own way.
    -


    -2004-09-10 -
    -[Krystof] ah, to be young again
    -[emu] Krystof: don't think you missed much
    -


    2004-09-16 -

    -[dan-b] premature standardization is the root of all Java
    -


    -2004-11-01 -
    -[dan-b] it would be nice if more people knew the difference
    -        between i.e. and e.g.
    -[wnewman] If you write the canonical web browser to displace
    -          Internet Explorer, and name it Evil Genius, then for at
    -          least fifteen minutes afterwards you should have a good
    -          conversational excuse to remind people of the
    -          difference.
    -


    -2004-11-25 -
    -[Xophe]	LESS BROKEN MD5
    -[Xach]	FEWER BROKEN MD5
    -[Xophe]	BROKEN MD4
    -

    2005-02-23 -

    -[ingvar] Modelling forest damage by storms with egular expressions is... a curious idea.
    -[Xach] before: |||  after: //_
    -[Xach] seems easy enough to me
    -

    2004-08-18 -

    -[frodef] wow, someone wrote ext2fs reading for movitz.. so now movitz can
    -         be confused about logical pathnames too..
    -

    2005-03-31 -

    -[Xof] I just delivered my first Lisp application
    -[Xof] thank you, clx hackers, mcclim hackers, climacs hackers.
    -[Xof] sbcl hackers
    -[Xof] hmm, all of those are me :-)
    -

    2005-04-20

    -[gusl] btw, do you know which symbol returns the result of the last evaluation?
    -[Xof]  *
    -[gusl] great
    -[gusl] and what was the other one which returns the function it's in?
    -[Xof]  -ENOSENSE
    -[gusl] thanks, Xof. This will help me a lot in debugging.
    -[gusl] what does the ENOSENSE part mean, btw?
    -[jdz]  gusl: it means that the question does not compute
    -[gusl] jdz: but his answer was right
    -[gusl] - is what I was looking for
    -

    2005-05-19

    -[Clemens] Xophe: what's a cluebat?
    -

    2005-07-08

    -[sdschulze] In the Hurd, you'll be able to write filesystems in Lisp.
    -[sdschulze] You can already write /dev/zero in Scheme.
    -[sdschulze] IIRC
    -[ayrnieu] how useful!
    -[sdschulze] and Ruby and Python
    -[Xof] I'm not going to be sarcastic at this point.  I am simply going to hold
    -      my head in my hands and say a short, silent prayer for humanity
    -[sdschulze] More complex filesystems are being discussed.
    -


    2005-10-05

    * slyrus (gives-up-trying-to-understand-ir1-transforms)

    -2005-10-31

    [Xof] heh.  I was about to recommend the dragon book, but my brain said 
    -"no, his name can't be Sethi, that's a sparc opcode"
    -


    2005-12-26

    20:33 [mgr] gilberth: Merry Christmas!    (A bit late, but not too late. :)
    -20:34 [gilberth] mgr: Well we celebrated Newton's birthday; but thanks
    -                 anyway :)
    -20:36 [lichtblau] so what are going to tell your children (once you've
    -                  got some) about who brings the presents?  "oh just look
    -                  under the newtontree what old newton brought this night?" ;-)
    -20:36 [hefner] gravity?
    -20:36 [gilberth] Well, I'll tell them Netwon found out about gravity, not
    -                 because an apple fell from the tree, but a present.
    -20:37 [lichtblau] oh, of course!
    -20:37 [gilberth] And the present is from <a href="http://en.wikipedia.org/wiki/Flying_spaghetti_monster">the spaghetti monster</a> of
    -                 course.
    -20:37 [lichtblau] gravity, the basic recipe for a romantic childhood story!
    -20:38 [mgr] gilberth: :)  That seems to be a better occasion! Though
    -            you are probably <a href="http://en.wikipedia.org/wiki/Isaac_Newton">a bit early</a> for our Gregorian calendar. ;)


    2006-03-29

    17:11 [slyrus] did anyone see the eclipse?
    -17:14 [dan`b] no, it was too dark


    2006-03-30

    -13:41 [lemonodor_] chandler: what's the status of unmutual.info?  (i'm
    -      specifically wondering about a 404 when trying to asdf-install colorize)      
    -13:41 [chandler`] lemonodor_: not all of my asdf-installable software is
    -      actually asdf-installable. When in doubt, svn co svn://unmutual.info/whatever
    -
    -

    2006-07-12

    [Xof] speaking of painful things
    -[Xof] does anyone here use <a href="http://www.lisp.org/mop/dictionary.html#finalize-inheritance">FINALIZE-INHERITANCE</a>?
    -...
    -[Xof] it was very subtly broken
    -[Xof] but to unbreak it its behaviour has to be changed rather grossly
    -...
    -[rudi] does <a href="http://common-lisp.net/project/mcclim/">mcclim</a> still work?
    -[Xof] no idea
    -[rudi] mcclim, the (_H(*) 2 3) of clos
    -

    2007-03-11

    -[nyef] And when you have a specific question (not "please write it for me" 
    -       or "why doesn't this work?"), we may be more inclined to answer.
    -[logic_grrl] nyef, i never askd anyone to write it
    -[PseudoCapitana] nyef: jesus ure such a cruel persona
    -
    -

    2007-08-14 -

    -[antifuchs] agh... I want to disagree with so many things in c.l.l that I get
    -            rsi even thinking about them.
    -
    -

    2007-10-30 -

    -[rahul] a sufficiently intrusive compiler is indistinguishable from God.
    -
    -

    2007-11-02 -

    -[pjb] The walls inside the lisp house are paperthin like in Japanese houses. 
    -          They're purely symbolic.  Some other language may have reinforced
    -          concrete interior walls.  Choose where you want to live!  ;-)
    -[nyef] pjb: Surely that has acoustic as well as thermal implications....
    -[pjb] Yes, you need to be more civilized in a Japanese house :-)
    -[Xach] chilly during the AI winter
    -
    -

    2007-11-06 -

    -[mogunus] How do I deal with a HEAP EXHAUSTED ERROR?
    -[AshyIsMe] let it rest
    -
    -

    2007-12-22 -

    -[starseeker] We should do an annual "lisp quote contest" or something
    -[schme] I'd like to enter ' into this contest.
    -[schme] It was FUNNY!
    -
    -

    2008-01-26 -

    -*** nikodemus attacks gencgc
    -*** gengc fights back!
    -*** nikodemus dies
    -nikodemus left the room ("RIP").
    -gengc left the room ("SIGKILL").
    -
    -

    2008-09-06 -

    -[dan_b] good design taste is easier to identify in its absence
    -
    -

    2009-06-24 (in a discussion of efficiency) -

    -[tcr] shorter code conses less in Lisp... in the reader!
    -
    -

    2009-08-29 -

    -[weareyourfriends] (how-do-i-get-laid)
    -[mathrick] that's implementation specific
    -[weareyourfriends] heh
    -[metawilm] weareyourfriends: get Closer and use define-layered-function
    -
    -

    2009-10-16 -

    -[Fare] francogrex, you read the EVAL-WHEN documentation and you lose 1d6 SAN
    -
    -

    2009-11-28 -

    -[schme] tic: Pffft! Don't listen to beach. Start a new project each day. 
    -        Flip a dice every day to see which one to hack on. Get very confused every day :D
    -[beach] schme: I am trying to tell tic "do as I say" rather than "do as I do".
    -* tic does whatever spiderpig do
    -
    -

    2010-01-09 -

    -[Krystof] some day I would like to move to a server which has a ban list, rather than a non-adjustable ban vector
    -

    2010-04-06 -

    -[Azuvix] Bigger channel than I expected.
    -[Xach] Most are bots.
    -[tcr] Lisp and AI, you know
    -[nyef] This is where all the AI systems come to hang out and chat about making AI systems... Thus, it's a weird form of cybersex.
    -[tcr] they mostly don't talk because they're so slow though because it's interpreted, but hey
    -

    2010-10-27 -

    -[stassats`] i think earmuffs were invented during AI Winter, to keep it warm
    -

    2011-06-04 -

    -[billyr] hi how do you declare a "byref" parameter in emacs lisp? thx
    -[|3b|] #emacs knows more about emacs lisp
    -[billyr] thank you
    -[joshe] Yes they do, the poor bastards
    -[joshe] oops, did I say that out loud?
    -

    2012-05-04 -

    -** discussion about how some Lisp functions are named after assembly instructions **
    -[Quadrescence] there's also DPB
    -[Quadrescence] Historically, the name ``dpb'' comes from a DEC PDP-10 assembly language instruction meaning ``deposit byte.''
    -[qu1j0t3] yes.
    -[qu1j0t3] on the other hand, TERPRI is named for the highest scoring word in a drunken scrabble game played between Gosper and Greenblatt on 14th March, 1977.
    -


    2015-05-25 -

    -[Fare] the advantage of cl is that it's so easy to reinvent the wheel
    -[Fare] the disadvantage is that everyone invents their own wheel
    -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/IRC.html b/clones/lisp/www.cliki.net/IRC.html deleted file mode 100644 index 7c422b21..00000000 --- a/clones/lisp/www.cliki.net/IRC.html +++ /dev/null @@ -1,138 +0,0 @@ - - - - - CLiki: IRC - - - - - - - -
    IRC
    Information about Lisp IRC channels.

    A Note on IRC Etiquette

    -The main error newbies commit on irc, is to ask a question and then leave. If you want to get an answer to your question, keep your window open; it doesn't cost anything. The second newbie error is to ask to ask. You're here to ask questions, so just ask them and then warmly wait for an answer.

    Freenode

    Freenode (formerly the Open Projects Network) has been taken over. -See: The Freenode resignation FAQ, or: "what the fuck is going on?"

    Libera.chat

    Therefore staff and people have moved over to the libera.chat irc server. -This is now the main IRC network for Lisp related channels.

    This page is a non-exhaustive listing of most of the Common Lisp-related channels that exist on Libera.chat.

    General Channels

    #commonlisp

    -This is the main Common Lisp channel, where the most people hang out. (It was #lisp in freenode). The topic is relatively strictly enforced, and derailing from it is frowned upon. Please keep things related to Common Lisp! If you'd just like to chat, try #lispcafe (see below). The channel is logged [1] [2] [3] and now [4] and inhabits two notable bots: minion (part of cl-irc), responsible for note delivery and frequent questions, and specbot, which helps with Hyperspec references.

    #lisp

    -If you want to discuss general lisp dialects of all shapes and forms, then this is the channel for you. (It was ##lisp in freenode).

    #clschool

    -Common Lisp questions are gladly accepted and answered here. Everyone here is a student and/or a teacher.

    #clprojects

    -Common Lisp community project discussions. Discuss the design or anything about your current active project that might be too focused for #commonlisp.

    #lispcafe

    -A less formal channel for lisp-oriented discussion, socialization, community support at all levels of experience. Gurus and newbie lispers are welcome alike, as is any lisp dialect and probably other languages as well (whereas #lisp is a place for high-level discussion by experienced Lisp programmers). We just ask that you be cool to each other.

    Note: #cl-gardeners on freenode, which belonged to the Common Lisp Gardeners Project, is now defunct and has merged with #lispcafe.

    #lispweb

    -Focused on Web Applications developed in lisp.

    #lispgames

    -A friendly channel for LispGameDevelopers using various lisp dialects, including Common Lisp. Among other things, the International Lisp Games Expo is coordinated there.

    #lisp-lab

    -It's like Math Lab or Spanish Lab, but for Lisp (any Lisp) --- connecting lispers of various experience levels for questions-and-answers, tutoring, and general discussion.

    #clim

    -Common Lisp Interface Manager discussion (be it McCLIM, clim2 or other).

    #slime

    -Discussion about SLIME, the Superior Lisp Interaction Mode for Emacs, a popular Lisp programming environment.

    Implementation Channels

    #abcl

    -ABCL developer hangout - Combining CL and Java.

    #clasp

    -Clasp developer hangout - Combining CL and C++ for science.

    #ccl

    -CCL developer hangout, more dev than help.

    #ecl

    -ECL channel for questions and answers here! Come on join now!

    #sbcl

    -SBCL developer hangout, more dev than help -- but if #commonlisp can't solve it and it's SBCL specific, we'll try.

    #sicl

    -SICL developer hangout, more dev than help.

    -

    Non-English Channels

    #lisp.fi

    -A channel for Finnish Lisp users in IRCNet network. We welcome all Lisp newbies and gurus alike from every dialect of Lisp family to join us and have nice discussions.

    #lisp-fr

    -Un canal pour les utilisateurs de Lisp francophones, sur le réseau IRCNet. Tous les utilisateurs de tous les dialectes de Lisp, aussi bien débutants qu'experts, sont invité se joindre à nos discussions. S'il n'y a personne sur #lisp-fr, vous pouvez appeler quelques francophones sur #lisp ;-)

    #lisp-it

    -A low-traffic channel in italian language on the FreeNode network (irc.freenode.net) either for lisp newbie either for more expert ones. Join and meet us to explain how and why you use any lisp dialect or to ask a technical question.

    #lisp-nz

    -For anyone interested in lisp programming in New Zealand.

    #lisp-pt

    -An even lower-traffic channel for portuguese speakers on the freenode network.

    #lisp-pl

    -A channel dedicated to lisp and generally functional programming discussions in polish language.

    #lisp-es

    -A channel for spanish speaker Lisp users. Join us to chat about every Lisp family dialect. You will be welcome.

    Un canal para usuarios de Lisp hispanohablantes (si nadie responde en #lisp-es, puedes llamar a un hispanohablante en #lisp)

    #lisp-ja

    -A low-traffic channel in Japanese.

    #lisp-br

    -A low-traffic channel in pt-br (Brazilian Portuguese).

    -

    CLiki pages about IRC

      -
    • -beirc - - beirc is a CLIM IRC client application using the cl-irc library as a backend, initially written by Gilbert Baumann, now maintained by Dave Murray and others -
    • -
    • -Birch - - Birch is a simple IRC client library -
    • -
    • -cl-irc - - cl-irc is an IRC library written in Common Lisp -
    • -
    • -Colleen - - Colleen is yet another IRC chat bot framework -
    • -
    • -IRC Quotes - - Some moments from IRC, preserved for posterity, some humorous -
    • -
    • -irc-logger - - irc-logger is a networking library written by Kevin Rosenberg which uses the cl-irc library to provide multichannel Internet Relay Chat (IRC) logging -
    • -
    • -Lisp IRC Bots - - There are several IRC bots written in Lisp -
    • -
    • -lispcafe - - #lispcafe on www.libera.chat -
    • -
    • -lisppaste - - lisppaste sits on a webserver and users can paste text into it -
    • -
    • -Maiden - - Maiden is a collection of systems to help you build applications and libraries that interact with chat servers -
    • -
    • -minion - - minion is an IRC robot (who prefers the term "electronically composed.") For online help, try /msg minion help -
    • -
    • -trivial-irc - - trivial-irc is a small IRC library that provides only very basic facilities for communicating with IRC servers, and has no facilities for extensions like DCC, CTCP etc -
    • -
    • -WeirdIRC - - WeirdIRC is a simple IRC client using CLIM -
    • -
    • -X-Chat Common Lisp Plugin - - The X-Chat Common Lisp plugin is a plugin for X-Chat version 2 and up (the famous IRC client) that allows you to use Common Lisp scripts to control X-Chat behaviour -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/IRONCLAD.html b/clones/lisp/www.cliki.net/IRONCLAD.html deleted file mode 100644 index 46941fa5..00000000 --- a/clones/lisp/www.cliki.net/IRONCLAD.html +++ /dev/null @@ -1,111 +0,0 @@ - - - - - CLiki: Ironclad - - - - - - - -
    Ironclad
    Ironclad is a Common Lisp Cryptography package; several block encryption algorithms and hash functions are included with the initial release. Its initial impetus was to unify several of the cryptographic packages for Common Lisp (such as the MD5 and SHA1 implementations floating around), but it aims at providing a cryptographic toolkit similar in scope to something like OpenSSL or Crypto++.

      -
    • Supported ciphers: AES, DES, 3DES, Blowfish, Twofish, RC5, RC6, Arcfour (RC4) -
    • -
    • Supported hash functions: MD4, MD5, SHA1, SHA256, Tiger, Adler32, CRC32 (also supports tree hashes) -
    • -
    • -RFC 2104 HMACs and RFC 4493 CMACs -
    • -
    • Public key schemes: DSA signing and verification -
    • -
    • Key derivation functions: PBKDF1, PBKDF2 (RFC 2898) -
    • -
    -The Ironclad homepage and package documentation can be found at: https://github.com/sharplispers/ironclad

    (Originally located at http://method-combination.net/lisp/ironclad/ and now maintained by sharplispers.)

    The SHA-1 and SHA-256 hash functions do not work under CLISP versions earlier than 2.34. Please upgrade your CLISP installation. (The failures are related to CLISP's handling of (LOOP ... FINALLY ...).)

    Ironclad is distributed under a liberal X11/MIT-like license.

    Debian package

    Ironclad has been packaged for Debian. You can just apt-get install it.

    Using Ironclad

    RSA With Ironclad—The Missing Manual is an article about using the RSA functionality that is currently implemented in Ironclad.

    Tell us how you are using Ironclad:

      -
    • To encrypt passwords for a web site, for that I created the following function:

      (defun hash-password (password)
      -  (ironclad:byte-array-to-hex-string 
      -   (ironclad:digest-sequence 
      -    :sha256
      -    (ironclad:ascii-string-to-byte-array password))))
      -
    • Very simple example of encrypting and decrypting a message using the blowfish algorithm:

      (push "/home/mcarter/ironclad_0.20.1/" asdf:*central-registry*) ; or something similar
      -(asdf:oos 'asdf:load-op 'ironclad)

      (defun cipher-example (message password) - (let* ((iv (ironclad:ascii-string-to-byte-array password)) - (cipher (ironclad:make-cipher :blowfish :mode :ecb :key iv))) - (setf message (ironclad:ascii-string-to-byte-array message)) - (format t "original message as bytes:~A~%" message) - (ironclad:encrypt-in-place cipher message) - (format t "encrypted message as bytes:~A~%" message) - (ironclad:decrypt-in-place cipher message) - ;; convert the message back to a string - (setf message (coerce message 'list)) - (setf message (mapcar #'code-char message)) - (setf message (coerce message 'string)) - (format t "your original message was:*~A*~%" message)))

      * (cipher-example "ironclad is a way of encrypting and decrypting messages" "my password")

      original message as bytes:#(105 114 111 110 99 108 97 100 32 105 115 32 97 32 - 119 97 121 32 111 102 32 101 110 99 114 121 112 - 116 105 110 103 32 97 110 100 32 100 101 99 114 - 121 112 116 105 110 103 32 109 101 115 115 97 103 - 101 115) -encrypted message as bytes:#(206 106 66 158 68 233 4 198 157 196 72 39 13 110 - 140 102 0 27 7 177 80 46 144 203 187 69 89 95 208 - 51 206 149 172 158 127 210 90 210 19 240 224 252 - 137 13 19 206 188 20 101 115 115 97 103 101 115) -your original message was:*ironclad is a way of encrypting and decrypting messages* -NIL

    • -
    • A more functional (hopefully simpler) example

      (ql:quickload :ironclad)
      -(defun get-cipher (key)
      -  (ironclad:make-cipher :blowfish
      -    :mode :ecb
      -    :key (ironclad:ascii-string-to-byte-array key)))

      (defun encrypt (plaintext key) - (let ((cipher (get-cipher key)) - (msg (ironclad:ascii-string-to-byte-array plaintext))) - (ironclad:encrypt-in-place cipher msg) - (ironclad:octets-to-integer msg)))

      (defun decrypt (ciphertext-int key) - (let ((cipher (get-cipher key)) - (msg (ironclad:integer-to-octets ciphertext-int))) - (ironclad:decrypt-in-place cipher msg) - (coerce (mapcar #'code-char (coerce msg 'list)) 'string)))

      * (defvar test (encrypt "A simple test message" "pass")) -TEST

      * test -369463901797626567104213850270827601164336028018533

      * (decrypt test "pass") -"A simple test message"

      -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/IRS.html b/clones/lisp/www.cliki.net/IRS.html deleted file mode 100644 index ec1b1209..00000000 --- a/clones/lisp/www.cliki.net/IRS.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: IRS - - - - - - - -
    IRS
    The Internet Reasoning Service (IRS) is a semantic web services broker, developed in the Knowledge Media Institute of the Open University.

    Depends on: cl-who, cxml, drakma, hunchentoot, ironclad, cl-json, ocml

    Repository: https://github.com/kmi/irs

    License: BSD-like


    -Semantic Web
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ISC.html b/clones/lisp/www.cliki.net/ISC.html deleted file mode 100644 index d702d7ab..00000000 --- a/clones/lisp/www.cliki.net/ISC.html +++ /dev/null @@ -1,84 +0,0 @@ - - - - - CLiki: ISC - - - - - - - -
    ISC
    The ISC license is a permissive free software license written by Internet Software Consortium (ISC). It is functionally equivalent to the simplified BSD and MIT licenses, with language that was deemed unnecessary by the Berne convention removed.

    It is the preferred license of the OpenBSD project.

    ISC Licensed Software

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ITERATE.html b/clones/lisp/www.cliki.net/ITERATE.html deleted file mode 100644 index fe9edc06..00000000 --- a/clones/lisp/www.cliki.net/ITERATE.html +++ /dev/null @@ -1,75 +0,0 @@ - - - - - CLiki: iterate - - - - - - - -
    iterate
    iterate is a lispy and extensible replacement for the LOOP macro.

    It was written by Jonathan Amsterdam at MIT and recently ported to Common Lisp.

    The canonical site for information about iterate is at https://common-lisp.net/project/iterate/.

    Some examples:

    (iterate (for (key . item) in alist) - (collect key into keys) - (collect item into items) - (finally (return (values keys items))))

    collects keys and items of an alist into two values

    It also supports generators:

    (iterate (generate i from 0 to 6) - (for (key . value) in '((a . 2) (zero . 10) (one . 20) (d . 5))) - (when (>= value 10) - (collect (cons key (next i))))) - -=> ((ZERO . 0) (ONE . 1))

    and allows easy finding of extrema:

    (iterate (for elt in list-of-lists) - (finding elt maximizing (length elt)))

    finds the longest list in a list of lists and generates pretty fast -code, too. (-:

    Related


    -language extension
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ITS.html b/clones/lisp/www.cliki.net/ITS.html deleted file mode 100644 index 3a09df81..00000000 --- a/clones/lisp/www.cliki.net/ITS.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: ITS - - - - - - - -
    ITS
    ITS was the Incompatible Timesharing System developed at MIT to run on DEC PDP-6 and PDP-10 systems. It is notable for being the primary host of MACLISP, which has nothing to do with Macintoshes but instead was named after MIT's Project MAC. ITS was not only the host for MACLISP but both of the two were used to build the first Lisp Machines, the CONS and CADR.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Ian Eslick.html b/clones/lisp/www.cliki.net/Ian Eslick.html deleted file mode 100644 index fa80fd9f..00000000 --- a/clones/lisp/www.cliki.net/Ian Eslick.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Ian Eslick - - - - - - - -
    Ian Eslick
    A Person. A devoted Common Lisp fan, his first lisp projects were a natural language processing library called langutils and a lisp version of ConceptNet. He since stepped in as the lead co-developer of Elephant, wrote a number of small libraries including the recently released Weblocks and a major project that is about to be open-sourced (LAMsight).

    Ian is currently finishing a PhD at the MIT Media Lab where he has a home page that describes some of his other past and current activities.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Ignas Mikalajunas.html b/clones/lisp/www.cliki.net/Ignas Mikalajunas.html deleted file mode 100644 index f7b6522f..00000000 --- a/clones/lisp/www.cliki.net/Ignas Mikalajunas.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Ignas Mikalajunas - - - - - - - -
    Ignas Mikalajunas
    Ignas Mikalajunas is a Person born in 1983 in Birzai, ignas at pow . lt
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Inaimathi.html b/clones/lisp/www.cliki.net/Inaimathi.html deleted file mode 100644 index 69c900da..00000000 --- a/clones/lisp/www.cliki.net/Inaimathi.html +++ /dev/null @@ -1,67 +0,0 @@ - - - - - CLiki: Inaimathi - - - - - - - -
    Inaimathi
    Inaimathi is a serif typeface bundled with OS X. It is sometimes spelled "Inai Mathi".

    Leo Zovic is a young Lisp programmer from southern Ontario who uses the nom-de-plume "Inaimathi" on various online communities including Reddit, GitHub, deviantArt and CLiki. He maintains:

      -
    • -fact-base triple store
    • -
    • -house event-driven web server
    • -
    • -cl-css minimal CSS generator
    • -
    • -session-token secure, random session token generator
    • -
    • -cl-mop for cross-implementation CLOS instance mapping
    • -
    • -Formlets which you shouldn't use
    • -

    and packages (but doesn't maintain and didn't write):


    -Person Inaimathi
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Incongruent Methods.html b/clones/lisp/www.cliki.net/Incongruent Methods.html deleted file mode 100644 index 1f3261fe..00000000 --- a/clones/lisp/www.cliki.net/Incongruent Methods.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Incongruent Methods - - - - - - - -
    Incongruent Methods
    A library that provides methods with incongruent lambda lists.

    Homepage

    language extension

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Incudine.html b/clones/lisp/www.cliki.net/Incudine.html deleted file mode 100644 index 9e00a827..00000000 --- a/clones/lisp/www.cliki.net/Incudine.html +++ /dev/null @@ -1,100 +0,0 @@ - - - - - CLiki: Incudine - - - - - - - -
    Incudine
    Incudine is a music/DSP programming environment for Common Lisp. It's released under the GNU General Public License (GPL) version 2 or later.

    Incudine is useful to design software synthesizers or sound plugins from scratch, exploiting the expressive power of Common Lisp, without the constraint to use pre-built unit generators. It is also a compositional tool that allows to produce high quality sounds controllable at the sample level, defining and redefining the digital signal processors and the musical structures on-the-fly.

    Incudine introduces the Virtual UGen (VUG), a new mechanism for defining primitive unit generators by writing concise and reusable code. The definition of a VUG contains lisp code and/or other nested VUGs, and it is re-arranged and compiled efficiently during the creation of a DSP.

    Requirements

    Incudine works with SBCL, an implementation of ANSI Common Lisp with a high-performance native compiler.

    -For installation and configuration information please consult the INSTALL file.


    -audio signal processing
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Infix.html b/clones/lisp/www.cliki.net/Infix.html deleted file mode 100644 index e6cf018c..00000000 --- a/clones/lisp/www.cliki.net/Infix.html +++ /dev/null @@ -1,401 +0,0 @@ - - - - - CLiki: Infix - - - - - - - -
    Infix
    The infix notation for arithmetic in Common Lisp.

      -
    • -polisher - - Infix notation to S-expression (Polish notation) translator for Common Lisp -
    • -
    • -ugly-tiny-infix-macro - - This is a powerful lisp macro for the purpose of writing your expressions in infix notation while not losing out on lisp's power -
    • -

    Infix reader-macro by Mark Kantrowitz.

    Available from the CMU AI Repository: infix.cl.

    The Changelog from the cclan version reads

    -2005-06-06:
    -        * infix.cl: bind *read-suppress* in infix-reader to support the
    -        use of infix notation when *read-suppress* is true.
    -
    -        Christophe Rhodes <csr21@cam.ac.uk>
    -
    -2002-03-04:
    -        * infix.cl: moved definition of infix-error macro to before its
    -        first use.
    -
    -        Christophe Rhodes <csr21@cam.ac.uk>.
    -

    This is not the most volatile piece of software.

    Incidentally, it's probably non-free — there's a non-commercial clause in the license.

    There is also a Debian package.

    Note: Users may want to consider readable instead, which is MIT-licensed and has support for an infix notation.

    Another package by Alan Manuel Gloria can be found here, but it's buggy on expressions like

    (nfx 55 - 3 * 4 + 2000000)

    (giving -1999957 instead of the correct result 2000043. There seems to be a problem with different operators of the same precedence.

    Here's a corrected version of the macro implementation:

    ;; infix.lisp -;; by AmkG - -;; Title : Infix notation macro -;; Filename : infix.lisp -;; Written by : Alan Manuel K. Gloria <almkglor@gmail.com> -;; Corrected by : Bruno Daniel <bruno.daniel@gmx.net> - -;; Copyright status: -;; Err. I don't care? Okay, I do care. To be honest, I'll just -;; be plain happy if somebody ELSE uses this. Drop me a line, -;; or something. Or don't. I built this for my own amusement, -;; so if anyone else is amused too, well, drop me a line! - -;; tested on: -;; clisp -;; gcl -;; sbcl -;; ecl - -;; infix notation: -;; Lisp has traditionally used prefix notation for all formulae: in this -;; notation, the operation to be performed is specified before the -;; operands it is to be performed on. This simple notation gives a -;; consistent, regular syntax which greatly facilitates -;; metaprogramming. - -;; However, one weakness of prefix notation is that some simple -;; algebraic/arithmetic operations do not and cannot follow the -;; traditional syntax taught to us during elementary - that is, the -;; notation we are used to in arithmetic is not prefix, but infix -;; notation: -;; 1 + 2 - 4 * 5 -;; In Lisp this would be: -;; (- (+ 1 2) (* 4 5))) -;; Despite the inherent advantages of prefix notation, sometimes -;; it's just much easier to write mathematical formulae a little more -;; like the way we actually write them on paper. - -;; This file contains a macro, 'nfx, which allows for such an infix -;; notation. There are limitations: you need to put a LOT of spaces -;; in the formula: -;; (nfx 1+2-3) ;would confuse the Lisp parser -;; (nfx 1 + 2 - 3) ;would be understood - -;; You can't use certain symbols as variable names: -;; (setf + 42) -;; (nfx (max + 3)) ; would look awfully like +(max,3), not max(+,3) - -;; ...but you can embed prefix notation in it! -;; (nfx 1 + (- x 100)) ;it's valid! -;; (nfx 1 + (- x (3 * 3))) ;it's ALSO valid! -;; (nfx 1 + (- x 3 * 3)) ;err... this can give you unexpected behavior - -;; ...also, you can define your own infix symbols using definfix: -;; (definfix my-infix-symbol -;; :precedence 40 -;; :function-name +) -;; (nfx 1 my-infix-symbol 2) -;; => 3 - -;; send any feedback, bugreports, bugfixes, and cute girls to: -;; almkglor@gmail.com - -;; This file defines a macro of the form (nfx ...) whose -;; parameters are a stream of LISP "tokens" (either symbols, -;; constants, or lists). The stream of tokens is interpreted -;; in infix notation. The macro then expands to the prefix -;; form equivalent to the infix form -;; Ex. -;; (macroexpand-1 '(nfx foo = 32)) -;; => (setf foo 32) -;; (macroexpand-1 '(nfx bar == (3 + foo) * quux )) -;; => (equal bar (* (+ 3 foo) quux)) - -;; NOTE: detection of function calls -;; function call forms should be supported: -;; (macroexpand-1 '(nfx foo = (max (bar + 32) quux niaw) )) -;; => (setf foo (max (+ bar 32) quux niaw)) -;; (macroexpand-1 '(nfx (cdr foo) = (cons (qux + 1) nil))) -;; => (setf (cdr foo) (cons (+ qux 1) nil)) - -;; If any infix notation is in a function call within an -;; nfx form, it should be within a parentheses: -;; (macroexpand-1 '(nfx (max (bar + foo) (quux + quuux)) )) -;; => (max (+ bar foo) (+ quux quuux)) -;; (macroexpand-1 '(nfx (max bar + foo quux + quuux) )) -;; => (max bar + foo quux + quuux) - -;; function calls are detected in the following manner: -;; if nfx detects a list in the input stream, -;; if the second item is not a registered infix, -;; function call, for each element recurse and replace the element -;; not a function call, recurse on the list as a new stream - -;; this allows us to use prefix operators (such as -) as-is: -;; (macroexpand-1 '(nfx (- bar) == (/ (foo + 1)) )) -;; => (equal (- bar) (/ (+ foo 1))) - - -;; (nfx-operator-base <action> ...) -;; Handles the operator database - -(let ((nfx-data (make-hash-table :test 'eq))) - (defun nfx-operator-base (action &rest params) - (labels - ((getval (sym) - (gethash sym nfx-data) ) - (add (params) - (setf (gethash (car params) nfx-data) - (apply #'vector params)))) - (case action - (:get (getval (car params))) - (:add (add params)))))) - - -;;; the nfx macro - -(defun nfx-impl (s) - (let (opstack - curop tmp - (bldg (cons nil nil))) - (labels - ( ;; tconc = a cons with pointers to the head and the last element of - ;; a list. This function appends an element to such a tconc. - (tconc-append (l v) - (if (car l) - (setf (cdr l) (setf (cddr l) (cons v nil))) - (setf (car l) (setf (cdr l) (cons v nil))) )) - ;; top-of-stack query - (top-opstack () - (caaar opstack)) - ;; handles any sub-lists - (enlist (l) - (when l - (cond ((getop (cadr l)) - (cons 'nfx l)) - (t (mapcar #'(lambda (o) (if (listp o) (enlist o) o)) - l))))) - ;; pushes an operation onto the stack - used when the currently - ;; being built operation is of lower precedence than the - ;; operation being considered - (push-oper () - (push bldg opstack) - (setf bldg (cons nil nil))) - ;; pops off an operation from the stack, - ;; - used before collapsing the call - (pop-oper () - (let ((top (pop opstack)) ) - (tconc-append top (car bldg)) - (setf bldg top))) - ;; sub-expression handling code - (expr (o) - (if (listp o) - (enlist o) - o)) - ;; determine if the specified operation has precedence over the - ;; operation currently being built - (precedes? (op1 op2 associativity) - (or (< (precedence op1) (precedence op2)) - (and (= (precedence op1) (precedence op2)) - (eq (associativity op1) associativity)))) - ;; funges bldg: collapses fungible operations into one form - (fungebldg (bldg) - (mapcan - #'(lambda (o) - (cond ((listp o) - (setf o (fungebldg o)) - (cond ((and (fungible (car bldg)) - (eq (car o) (car bldg))) - (cdr o)) - (t (cons o nil)))) - (t (cons o nil)))) - bldg)) - ;; fixes bldg: changes operation objects to their functions - (fixbldg (bldg) - (when (vectorp (car bldg)) - (setf (car bldg) (function-name (car bldg))) ) - (mapc - #'(lambda (o) - (when (listp o) - (fixbldg o) )) - bldg )) - ;; error-handling function - (err (l) - (error "improper nfx expression:~%~s" l)) - (print-expr-list (l) - (format t "(") - (loop :for x in l - :for i from 0 :do - (when (plusp i) - (format t " ")) - (cond ((vectorp x) - (format t "~s" (aref x 0))) - ((listp x) - (print-expr-list x)) - (t - (format t "~s" x)))) - (format t ")")) - ;; (print-tconc (tc) - ;; (print-expr-list (car tc)) - ;; (format t "~%")) - ;; accessor functions - (precedence (op) (if op (aref op 1) 99999)) - (associativity (op) (aref op 2)) - (function-name (op) (aref op 3)) - (fungible (op) (when (vectorp op) (aref op 4))) - ;; get the data for a (presumed) infix operator - (getop (op) - (nfx-operator-base :get op))) - (case (length s) - (1 (expr (car s))) - (2 (err s)) - (t - (do ( ;; variable and step list - (oL s (cddr oL)) ) - ( ;; termination condition - (null (cddr oL)) - (tconc-append bldg (expr (car oL))) - (when (cdr oL) - (err oL) ) - (loop :while opstack :do - (pop-oper)) - (fixbldg (fungebldg (caar bldg)))) - (setf curop (getop (cadr oL))) - (cond (curop - (cond ((precedes? curop (caar bldg) :right) - (push-oper) - (tconc-append bldg curop) - (tconc-append bldg (expr (car oL))) ) - (t - (tconc-append bldg (expr (car oL))) - ;; collapse while the stacktop is precedent over the - ;; current op - (loop :while (precedes? (top-opstack) curop :left) :do - (pop-oper)) - (setf tmp (car bldg)) - (setf bldg (cons nil nil)) - (tconc-append bldg curop) - (tconc-append bldg tmp) ))) - (t - (err oL))))))))) - - -(defmacro nfx (&rest s) - (nfx-impl s)) - - - - -;; (definfix <operator> -;; :precedence <integer> -;; [:associativity <:left | :right>] -;; [:function-name <actual function>] -;; [:fungible <t | nil>]) -;; - defines an infix operator with the symbol <operator>, -;; with a precedence of <integer>. The smaller the precedence -;; number, the more precedence it has: * and / have smaller -;; precedence number than + and -. -;; - associativity defaults to :left, which means that if two -;; operators of the same precedence are encountered, the first -;; one resolves first: 1 x 2 x 3 becomes ((1 x 2) x 3). This -;; is appropriate for most maths. :right associativity means -;; that 1 x 2 x 3 becomes (1 x (2 x 3)). This is appropriate -;; for assignment. IMPORTANT: operators with the same -;; precedence must have the same associativities! -;; - function-name defaults to the same symbol as the operator. -;; For example, the function-name of = is setf. -;; - fungible means that if the same operator is encountered -;; several times, then all inputs are funged into one function -;; call. For example, 1 + 2 + 3 becomes (+ 1 2 3), 1 < 2 < 3 -;; becomes (< 1 2 3). This is not true for assignment: -;; x = y = z should become (setf x (setf y z)), not (setf x y z) -;; - fungible defaults to t because I noticed that nearly every -;; single darned operator was fungible. Except assignment. -;; Saved some dozen lines of code too. - -(defmacro definfix (operator - &key precedence (associativity :left) - function-name (fungible t)) - `(nfx-operator-base :add ',operator - ,precedence ,associativity - ',(if function-name function-name operator ) - ,fungible)) - -;; Predefined operators -;; Note: precedences are divisibles of 10, in case you -;; want to insert precedence levels between levels. - -;; since we expect infix notation only (not infix-postfix), -;; our array accessor is a single infix @ - -(definfix @ :precedence 10 :function-name aref) -(definfix ** :precedence 20 :function-name expt) -(definfix * :precedence 30) -(definfix / :precedence 29) -(definfix % :precedence 28 :function-name mod) -(definfix + :precedence 40) -(definfix - :precedence 40) -(definfix <= :precedence 60) -(definfix < :precedence 60) -(definfix >= :precedence 60) -(definfix > :precedence 60) - -(definfix = :precedence 70 :fungible nil) -(definfix /= :precedence 70) - -;; 80-100 should be for the bitwise operators (&, |, ^), -;; once I figure out how CL handles bitops. - -(definfix && :precedence 110 :function-name and) -(definfix || :precedence 120 :function-name or) - - -(set-dispatch-macro-character - #\# #\n - #'(lambda (stream c1 c2) - (declare (ignorable c1 c2)) - (let ((rd (read stream t nil t))) - (if (listp rd) - `(nfx ,@rd) - (progn - (print 'invalid-#n-usage) - (print rd) - (error 'error) ))))) - - -;; (nfx 55 - 3 * 4 + 2000000) used to give -1999957 -;; instead of the correct result 2000043. This is now corrected. -- Bruno Daniel

    The program is in the public domain.


    -macro example
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Infrequently Asked Questions.html b/clones/lisp/www.cliki.net/Infrequently Asked Questions.html deleted file mode 100644 index ba34bab4..00000000 --- a/clones/lisp/www.cliki.net/Infrequently Asked Questions.html +++ /dev/null @@ -1,113 +0,0 @@ - - - - - CLiki: Infrequently Asked Questions - - - - - - - -
    Infrequently Asked Questions
    Infrequently Asked Questions about CL

    This page is humor, and should not be mistaken for a real source of information. See Annotations for Infrequently Asked Questions if you want to spoil the jokes for yourself, some of which are actually funny.

    -Can we write something like Infrequently Asked Questions in comp.lang.c [warning: this document requires very good C knowledge to catch all jokes in it] for CL? Maybe it is not possible to write it for CL due to nature of language but it might be interesting to try and identify parts that can to make things better and to have fun of it. - -

    Document conventions

    -Source code is written in monospaced font. Prompts look like [1] (or [2], etc.) and results are written after => .

    Section 1, symbols and numbers

    Q: What is difference between nil and () ? -
    A: The first is composed of three characters, the second isn't.

    Q: Seriously, can nil and () be unequal? -
    -A: Ok, seriously. () will always make nil (with exception of abusing the read macros). Nil can be equal to 30477 unlike ().

    Q: How can be that NIL and nil is same symbol? -
    -A: nil is special constant that always evaluate to same symbol.

    Q: How can I enter numbers in hexadecimal? -
    -A: You can enter numbers in hexadecimal after this trick: (setq *read-base* 16) -Example: -

    [1] (setq *read-base* 16) -=> 16 -[2] ffff -=> 65535 -

    Q: What's wrong with changing read base back to decimal in this way: (|setq| |*read-base*| 10) -
    -A: You need to write it in upper-case.

    Q: What's a 'special variable'? -
    -A: Some variables have values that must be accessed very quickly. They are stored in memory that is connected to the CPU by a high speed datapath called 'the short bus'. Special variables ride the short bus.

    Section 2, Evaluation and functions

    Q: Why does (READ-FROM-STRING "foobar" :START 3) return FOOBAR instead of BAR? -
    -A: Real reason is that there are actually two starts. The first is ignored. Write it this way: (READ-FROM-STRING "foobar" :START 3 :START 3)

    Q: Why I can't APPLY #'AND and #'OR. -
    -A: Contrary to what your mathematicians say, AND and OR are not functions.

    Q: What does it mean that AND, OR, and some others are short-circuiting? -
    -A: This is jargon taken from electronics. i.e. When you have two AND gates that have outputs connected, they may short circuit depending on inputs.

    Q: Why does (sort my-variable) not update the variable? -
    -A: Default calling convention in Common Lisp is call by value, it cannot modify arguments passed in. Try to find a compiler switch to make it call by reference.

    Q: What is faster, length or list-length? -
    -A: Surely list-length. Just compare the speed of the following expressions: -

    (list-length '#1=(1 . #1#))
    -and -
    (length '#1=(1 . #1#))

    Section 3, Historical facts

    Q: Why are some basic functions named in such a weird way (I mean CAR, CDR, MAPCAR, and so on)? -
    -A: There is a reason for it. The designers of lisp were actually very much in a hurry when they designed it. They needed to release version 1.5 to the market very soon. Due to lack of imagination they had problems thinking out the names so they just looked at things around them, and used their names or abbreviations as identifiers (hint: CDR is a relatively unknown car manufacturer, that also explains the old joke "My other CAR is CDR"). Rumors that CAR and CDR have something to do with registers are complete nonsense.

    Q: What is CDR coding? -
    -A: CDR coding is a programming style where programs looks like this (incomplete) example: -

    (CDR (CDR (CDR (CDR (CDR (CDR (CDR (CDR (CDR (CDR (CDR (CDR -

    Q: Is CDR coding useful? -
    -A: Programs written in CDR coding style may be faster, especially on hardware with CDR coding support.

    Section 4, ANSI standardization

    Q: People keep saying the behavior is undefined, but I just tried it on an ANSI-conforming compiler, and got the results I expected. -
    -A: They were probably wrong. Flame them mercilessly. Be sure before you do that your compiler is really ANSI conforming, though. If it turns out you were wrong, they get a legal claim on your first-born. -
    Note the similarity of the question and the answer to one found in C language Infrequently Asked Questions. This one is really common to all standardized languages.

    Section 5, Performance

    Q: I have heard that Java is slower than Common Lisp -
    -A: Languages don't have speed. Their implementations, however, do. We have found most Common Lisp implementations to be slower than Java. See the following Java code: -

    class MyClass { - static void myloop() { - myloop(); - } - public static void main(String[] args) { - myloop(); - } -} -
    -Compare that with following Common Lisp code (Note: the myloop function must be compiled): -
    (defun myloop () (myloop)) -(myloop) -
    -Sun Java 1.4.1_01 finished execution after about a second. Each of CMUCL 18d, CLISP 2.30, and SBCL 1.4.5 did not finish the program even after 30 minutes. It is evident that Java is much faster. The only advantage of Common Lisp is that the code is shorter.


    -Add more if you know. -jtra
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Integrate.html b/clones/lisp/www.cliki.net/Integrate.html deleted file mode 100644 index 9ec59f42..00000000 --- a/clones/lisp/www.cliki.net/Integrate.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - CLiki: Integrate - - - - - - - -
    Integrate
    Integrate is a package to aid in solving differential equations, currently slightly limited in scope.

    It was developed specifically to solve geodesic equations in 5 dimensions, but is completely general in application, as long as the system is of the form¹

    -x1(n) -= -f(x1, ẋ1, …, xn, …, t), -…

    Advantages over other Mathematics packages include customizability of the integrator and of stopping conditions, and the natural introspective nature of lisp. It is available from (the older version of) cCLan and the code is placed in the public domain.

    ¹ While this has to be some generalisation of geodesics equations, it's not clear which generalisation it is exactly. (ed.)

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/International Lisp Conference 2002.html b/clones/lisp/www.cliki.net/International Lisp Conference 2002.html deleted file mode 100644 index 82be7b25..00000000 --- a/clones/lisp/www.cliki.net/International Lisp Conference 2002.html +++ /dev/null @@ -1,81 +0,0 @@ - - - - - CLiki: International Lisp Conference 2002 - - - - - - - -
    International Lisp Conference 2002
    The International Lisp Conference 2002 was in San Francisco, October 27th- October 31st.

    ILC 2003 has been announced. It will take place in New York from October 12 to October 15, 2003. Add a link to this Community page from your person page if you're going ...

    More information from the conference website. Some attendees have written personal accounts: -

    Bill Clementson took some pictures. More pictures by John Foderaro.

    Online Conference Resources

    Here's a collection of materials presented at the conference:

    It should be noted that the ALU plan to release a formal Proceedings of the conference in early 2003

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/International Lisp Conference 2003.html b/clones/lisp/www.cliki.net/International Lisp Conference 2003.html deleted file mode 100644 index 45ad03ed..00000000 --- a/clones/lisp/www.cliki.net/International Lisp Conference 2003.html +++ /dev/null @@ -1,105 +0,0 @@ - - - - - CLiki: International Lisp Conference 2003 - - - - - - - -
    International Lisp Conference 2003
    The International Lisp Conference 2003 -was announced in the spring of 2003. It took place in New York from October 12 to October 15, 2003. More information from the conference website. Additional material:

    Talks

    Workshops


    Users added a link to this Community page from their person page if they were -going ... If they considered bringing their spouse or significant other along, they checked out the ILC 2003 Sightseeing page.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/International Lisp Conference 2005.html b/clones/lisp/www.cliki.net/International Lisp Conference 2005.html deleted file mode 100644 index 7d6cb19d..00000000 --- a/clones/lisp/www.cliki.net/International Lisp Conference 2005.html +++ /dev/null @@ -1,129 +0,0 @@ - - - - - CLiki: International Lisp Conference 2005 - - - - - - - -
    International Lisp Conference 2005
    The International Lisp Conference 2005 took place at Stanford University June 19-22, 2005. More information from the conference website.

    See also International Lisp Conference 2003.

    Papers and slides

    Links to papers, slides and audio of the talks at the official conference site.

    Reports, photos and comments

    comp.lang.lisp thread) -
  • -ILC 2005: Microsoft Demands Surrender, CL Says It Has Not Yet Begun to Fight (
  • comp.lang.lisp thread) -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/International Lisp Conference 2007.html b/clones/lisp/www.cliki.net/International Lisp Conference 2007.html deleted file mode 100644 index 35811d4b..00000000 --- a/clones/lisp/www.cliki.net/International Lisp Conference 2007.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: International Lisp Conference 2007 - - - - - - - -
    International Lisp Conference 2007
    ILC 2007 took place April 1-4 2007 in Clare College, Cambridge, UK.

    https://www.international-lisp-conference.org/2007/

    Links to papers, slides and audio of the talks at the official conference site.


    -Conference
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/International Lisp Conference 2009.html b/clones/lisp/www.cliki.net/International Lisp Conference 2009.html deleted file mode 100644 index d3123903..00000000 --- a/clones/lisp/www.cliki.net/International Lisp Conference 2009.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: International Lisp Conference 2009 - - - - - - - -
    International Lisp Conference 2009
    ILC 2009 took place Mach 23-25 at the Massachusetts Institute of Technology, Cambridge, MA, USA.

    http://www.international-lisp-conference.org/2009/index

    conference

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/International Lisp Conference 2010.html b/clones/lisp/www.cliki.net/International Lisp Conference 2010.html deleted file mode 100644 index 32b0cda5..00000000 --- a/clones/lisp/www.cliki.net/International Lisp Conference 2010.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: International Lisp Conference 2010 - - - - - - - -
    International Lisp Conference 2010
    ICL 2010 took place October 19-21 in Reno/Sparks, Nevada, USA. It was colocated with SPLASH (the conference formerly known as OOPSLA).

    https://www.international-lisp-conference.org/2010/

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Internationalization.html b/clones/lisp/www.cliki.net/Internationalization.html deleted file mode 100644 index 1cd460ef..00000000 --- a/clones/lisp/www.cliki.net/Internationalization.html +++ /dev/null @@ -1,126 +0,0 @@ - - - - - CLiki: internationalization - - - - - - - -
    internationalization
    All things related to internationalization (i18n) and localization (l10n): - -See also: -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Irc.html b/clones/lisp/www.cliki.net/Irc.html deleted file mode 100644 index 7c422b21..00000000 --- a/clones/lisp/www.cliki.net/Irc.html +++ /dev/null @@ -1,138 +0,0 @@ - - - - - CLiki: IRC - - - - - - - -
    IRC
    Information about Lisp IRC channels.

    A Note on IRC Etiquette

    -The main error newbies commit on irc, is to ask a question and then leave. If you want to get an answer to your question, keep your window open; it doesn't cost anything. The second newbie error is to ask to ask. You're here to ask questions, so just ask them and then warmly wait for an answer.

    Freenode

    Freenode (formerly the Open Projects Network) has been taken over. -See: The Freenode resignation FAQ, or: "what the fuck is going on?"

    Libera.chat

    Therefore staff and people have moved over to the libera.chat irc server. -This is now the main IRC network for Lisp related channels.

    This page is a non-exhaustive listing of most of the Common Lisp-related channels that exist on Libera.chat.

    General Channels

    #commonlisp

    -This is the main Common Lisp channel, where the most people hang out. (It was #lisp in freenode). The topic is relatively strictly enforced, and derailing from it is frowned upon. Please keep things related to Common Lisp! If you'd just like to chat, try #lispcafe (see below). The channel is logged [1] [2] [3] and now [4] and inhabits two notable bots: minion (part of cl-irc), responsible for note delivery and frequent questions, and specbot, which helps with Hyperspec references.

    #lisp

    -If you want to discuss general lisp dialects of all shapes and forms, then this is the channel for you. (It was ##lisp in freenode).

    #clschool

    -Common Lisp questions are gladly accepted and answered here. Everyone here is a student and/or a teacher.

    #clprojects

    -Common Lisp community project discussions. Discuss the design or anything about your current active project that might be too focused for #commonlisp.

    #lispcafe

    -A less formal channel for lisp-oriented discussion, socialization, community support at all levels of experience. Gurus and newbie lispers are welcome alike, as is any lisp dialect and probably other languages as well (whereas #lisp is a place for high-level discussion by experienced Lisp programmers). We just ask that you be cool to each other.

    Note: #cl-gardeners on freenode, which belonged to the Common Lisp Gardeners Project, is now defunct and has merged with #lispcafe.

    #lispweb

    -Focused on Web Applications developed in lisp.

    #lispgames

    -A friendly channel for LispGameDevelopers using various lisp dialects, including Common Lisp. Among other things, the International Lisp Games Expo is coordinated there.

    #lisp-lab

    -It's like Math Lab or Spanish Lab, but for Lisp (any Lisp) --- connecting lispers of various experience levels for questions-and-answers, tutoring, and general discussion.

    #clim

    -Common Lisp Interface Manager discussion (be it McCLIM, clim2 or other).

    #slime

    -Discussion about SLIME, the Superior Lisp Interaction Mode for Emacs, a popular Lisp programming environment.

    Implementation Channels

    #abcl

    -ABCL developer hangout - Combining CL and Java.

    #clasp

    -Clasp developer hangout - Combining CL and C++ for science.

    #ccl

    -CCL developer hangout, more dev than help.

    #ecl

    -ECL channel for questions and answers here! Come on join now!

    #sbcl

    -SBCL developer hangout, more dev than help -- but if #commonlisp can't solve it and it's SBCL specific, we'll try.

    #sicl

    -SICL developer hangout, more dev than help.

    -

    Non-English Channels

    #lisp.fi

    -A channel for Finnish Lisp users in IRCNet network. We welcome all Lisp newbies and gurus alike from every dialect of Lisp family to join us and have nice discussions.

    #lisp-fr

    -Un canal pour les utilisateurs de Lisp francophones, sur le réseau IRCNet. Tous les utilisateurs de tous les dialectes de Lisp, aussi bien débutants qu'experts, sont invité se joindre à nos discussions. S'il n'y a personne sur #lisp-fr, vous pouvez appeler quelques francophones sur #lisp ;-)

    #lisp-it

    -A low-traffic channel in italian language on the FreeNode network (irc.freenode.net) either for lisp newbie either for more expert ones. Join and meet us to explain how and why you use any lisp dialect or to ask a technical question.

    #lisp-nz

    -For anyone interested in lisp programming in New Zealand.

    #lisp-pt

    -An even lower-traffic channel for portuguese speakers on the freenode network.

    #lisp-pl

    -A channel dedicated to lisp and generally functional programming discussions in polish language.

    #lisp-es

    -A channel for spanish speaker Lisp users. Join us to chat about every Lisp family dialect. You will be welcome.

    Un canal para usuarios de Lisp hispanohablantes (si nadie responde en #lisp-es, puedes llamar a un hispanohablante en #lisp)

    #lisp-ja

    -A low-traffic channel in Japanese.

    #lisp-br

    -A low-traffic channel in pt-br (Brazilian Portuguese).

    -

    CLiki pages about IRC

      -
    • -beirc - - beirc is a CLIM IRC client application using the cl-irc library as a backend, initially written by Gilbert Baumann, now maintained by Dave Murray and others -
    • -
    • -Birch - - Birch is a simple IRC client library -
    • -
    • -cl-irc - - cl-irc is an IRC library written in Common Lisp -
    • -
    • -Colleen - - Colleen is yet another IRC chat bot framework -
    • -
    • -IRC Quotes - - Some moments from IRC, preserved for posterity, some humorous -
    • -
    • -irc-logger - - irc-logger is a networking library written by Kevin Rosenberg which uses the cl-irc library to provide multichannel Internet Relay Chat (IRC) logging -
    • -
    • -Lisp IRC Bots - - There are several IRC bots written in Lisp -
    • -
    • -lispcafe - - #lispcafe on www.libera.chat -
    • -
    • -lisppaste - - lisppaste sits on a webserver and users can paste text into it -
    • -
    • -Maiden - - Maiden is a collection of systems to help you build applications and libraries that interact with chat servers -
    • -
    • -minion - - minion is an IRC robot (who prefers the term "electronically composed.") For online help, try /msg minion help -
    • -
    • -trivial-irc - - trivial-irc is a small IRC library that provides only very basic facilities for communicating with IRC servers, and has no facilities for extensions like DCC, CTCP etc -
    • -
    • -WeirdIRC - - WeirdIRC is a simple IRC client using CLIM -
    • -
    • -X-Chat Common Lisp Plugin - - The X-Chat Common Lisp plugin is a plugin for X-Chat version 2 and up (the famous IRC client) that allows you to use Common Lisp scripts to control X-Chat behaviour -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Ironclad.html b/clones/lisp/www.cliki.net/Ironclad.html deleted file mode 100644 index 46941fa5..00000000 --- a/clones/lisp/www.cliki.net/Ironclad.html +++ /dev/null @@ -1,111 +0,0 @@ - - - - - CLiki: Ironclad - - - - - - - -
    Ironclad
    Ironclad is a Common Lisp Cryptography package; several block encryption algorithms and hash functions are included with the initial release. Its initial impetus was to unify several of the cryptographic packages for Common Lisp (such as the MD5 and SHA1 implementations floating around), but it aims at providing a cryptographic toolkit similar in scope to something like OpenSSL or Crypto++.

      -
    • Supported ciphers: AES, DES, 3DES, Blowfish, Twofish, RC5, RC6, Arcfour (RC4) -
    • -
    • Supported hash functions: MD4, MD5, SHA1, SHA256, Tiger, Adler32, CRC32 (also supports tree hashes) -
    • -
    • -RFC 2104 HMACs and RFC 4493 CMACs -
    • -
    • Public key schemes: DSA signing and verification -
    • -
    • Key derivation functions: PBKDF1, PBKDF2 (RFC 2898) -
    • -
    -The Ironclad homepage and package documentation can be found at: https://github.com/sharplispers/ironclad

    (Originally located at http://method-combination.net/lisp/ironclad/ and now maintained by sharplispers.)

    The SHA-1 and SHA-256 hash functions do not work under CLISP versions earlier than 2.34. Please upgrade your CLISP installation. (The failures are related to CLISP's handling of (LOOP ... FINALLY ...).)

    Ironclad is distributed under a liberal X11/MIT-like license.

    Debian package

    Ironclad has been packaged for Debian. You can just apt-get install it.

    Using Ironclad

    RSA With Ironclad—The Missing Manual is an article about using the RSA functionality that is currently implemented in Ironclad.

    Tell us how you are using Ironclad:

      -
    • To encrypt passwords for a web site, for that I created the following function:

      (defun hash-password (password)
      -  (ironclad:byte-array-to-hex-string 
      -   (ironclad:digest-sequence 
      -    :sha256
      -    (ironclad:ascii-string-to-byte-array password))))
      -
    • Very simple example of encrypting and decrypting a message using the blowfish algorithm:

      (push "/home/mcarter/ironclad_0.20.1/" asdf:*central-registry*) ; or something similar
      -(asdf:oos 'asdf:load-op 'ironclad)

      (defun cipher-example (message password) - (let* ((iv (ironclad:ascii-string-to-byte-array password)) - (cipher (ironclad:make-cipher :blowfish :mode :ecb :key iv))) - (setf message (ironclad:ascii-string-to-byte-array message)) - (format t "original message as bytes:~A~%" message) - (ironclad:encrypt-in-place cipher message) - (format t "encrypted message as bytes:~A~%" message) - (ironclad:decrypt-in-place cipher message) - ;; convert the message back to a string - (setf message (coerce message 'list)) - (setf message (mapcar #'code-char message)) - (setf message (coerce message 'string)) - (format t "your original message was:*~A*~%" message)))

      * (cipher-example "ironclad is a way of encrypting and decrypting messages" "my password")

      original message as bytes:#(105 114 111 110 99 108 97 100 32 105 115 32 97 32 - 119 97 121 32 111 102 32 101 110 99 114 121 112 - 116 105 110 103 32 97 110 100 32 100 101 99 114 - 121 112 116 105 110 103 32 109 101 115 115 97 103 - 101 115) -encrypted message as bytes:#(206 106 66 158 68 233 4 198 157 196 72 39 13 110 - 140 102 0 27 7 177 80 46 144 203 187 69 89 95 208 - 51 206 149 172 158 127 210 90 210 19 240 224 252 - 137 13 19 206 188 20 101 115 115 97 103 101 115) -your original message was:*ironclad is a way of encrypting and decrypting messages* -NIL

    • -
    • A more functional (hopefully simpler) example

      (ql:quickload :ironclad)
      -(defun get-cipher (key)
      -  (ironclad:make-cipher :blowfish
      -    :mode :ecb
      -    :key (ironclad:ascii-string-to-byte-array key)))

      (defun encrypt (plaintext key) - (let ((cipher (get-cipher key)) - (msg (ironclad:ascii-string-to-byte-array plaintext))) - (ironclad:encrypt-in-place cipher msg) - (ironclad:octets-to-integer msg)))

      (defun decrypt (ciphertext-int key) - (let ((cipher (get-cipher key)) - (msg (ironclad:integer-to-octets ciphertext-int))) - (ironclad:decrypt-in-place cipher msg) - (coerce (mapcar #'code-char (coerce msg 'list)) 'string)))

      * (defvar test (encrypt "A simple test message" "pass")) -TEST

      * test -369463901797626567104213850270827601164336028018533

      * (decrypt test "pass") -"A simple test message"

      -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Issue ADJOIN-SPECIFICATION.html b/clones/lisp/www.cliki.net/Issue ADJOIN-SPECIFICATION.html deleted file mode 100644 index 1bb3ae0c..00000000 --- a/clones/lisp/www.cliki.net/Issue ADJOIN-SPECIFICATION.html +++ /dev/null @@ -1,81 +0,0 @@ - - - - - CLiki: Issue ADJOIN-SPECIFICATION - - - - - - - -
    Issue ADJOIN-SPECIFICATION
    Issue: ADJOIN-SPECIFICATION

    Forum: Editorial

    References: adjoin

    Category: CLARIFICATION/CHANGE

    Edit history: 2012-06-08, Version 1 by Pascal J. Bourguignon

    Status: For CLiki consideration

    -
    Problem Description:

    -
    CLHS specifies ADJOIN behavior in presence of a :KEY argument by reference to - -Section 17.2.1 Satisfying a Two-Argument Test. This is incorrect, -since section 17.2.1 specifies that the key function is NOT called on -the ITEM parameter, but ADJOIN does, as is specified in pushnew.

    -

    -
    Proposal (ADJOIN:CLARIFICATION):

    -
    Replace:

    - The test, test-not, and key affect how it is determined whether item is the same as an element of list. For details, see Section 17.2.1 (Satisfying a Two-Argument Test). -

    by:

    - Whether or not item is already a member of the list is determined by comparisons using :test or :test-not. The first argument to the :test or :test-not function is the result returned by the :key function (if supplied), applied to the item; the second argument is an element of the list as returned by the :key function (if supplied). - If :key is supplied, it is used to extract the part to be tested from both item and the list element. -

    -

    -
    Rationale:

    -
    Clarification of the specification of ADJOIN.

    -
    Current practice:

    -
    All implementations implement ADJOIN as specified on pushnew, and not as specified on adjoin.

    -
    Cost to Implementors:

    -
    None.

    -
    Cost to Users:

    -
    None.

    -
    Cost of Non-Adoption:

    -
    User confusion.

    -
    Benefits:

    Aesthetics:

    Discussion:

    Discussion on cll

    - - -
    -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Issue APPLY-EXAMPLE-WRONG.html b/clones/lisp/www.cliki.net/Issue APPLY-EXAMPLE-WRONG.html deleted file mode 100644 index 74003e4b..00000000 --- a/clones/lisp/www.cliki.net/Issue APPLY-EXAMPLE-WRONG.html +++ /dev/null @@ -1,63 +0,0 @@ - - - - - CLiki: Issue APPLY-EXAMPLE-WRONG - - - - - - - -
    Issue APPLY-EXAMPLE-WRONG
    This example for APPLY is wrong, because it assumes particular behavior of TYPE-OF: -
    -(defun foo (size &rest keys &key double &allow-other-keys)
    -   (let ((v (apply #'make-array size :allow-other-keys t keys)))
    -     (if double (concatenate (type-of v) v v) v)))
    -(foo 4 :initial-contents '(a b c d) :double t)
    -   =>  #(A B C D A B C D)
    -
    -The call to FOO will signal an error if TYPE-OF returns a type containing the length (4). This causes a type conflict in CONCATENATE, because the new sequence length should be 8. If TYPE-OF returns a type without the length, then FOO will behave as shown above.

    To get the intended effect, it could do something like one of these:

    -(concatenate `(vector ,(array-element-type v) *) v v)
    -(concatenate `(vector ,(array-element-type v) ,(* 2 size)) v v)
    -


    -Issue
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Issue ARRAY-ELEMENT-TYPE-NIL.html b/clones/lisp/www.cliki.net/Issue ARRAY-ELEMENT-TYPE-NIL.html deleted file mode 100644 index 17e9b428..00000000 --- a/clones/lisp/www.cliki.net/Issue ARRAY-ELEMENT-TYPE-NIL.html +++ /dev/null @@ -1,74 +0,0 @@ - - - - - CLiki: Issue ARRAY-ELEMENT-TYPE-NIL - - - - - - - -
    Issue ARRAY-ELEMENT-TYPE-NIL
    Issue: ARRAY-ELEMENT-TYPE-NIL

    Forum: Editorial

    References: UPGRADED-ARRAY-ELEMENT-TYPE, MAKE-ARRAY

    Category: CLARIFICATION/CHANGE

    Edit history: 2004-07-20, Version 1 by Bruno Haible

    Status: For CLiki consideration

    -
    Problem Description:

    -
    CLHS 15.1.2.1 and UPGRADED-ARRAY-ELEMENT-TYPE imply that all implementations must support arrays of element type NIL. These are strange beasts: On one hand they are (if one dimensional) STRINGs. On the other hand any AREF access to an element must give an error, because there is no object of type nil. Thus they don't behave like normal arrays or sequences.

    -
    Proposal (ARRAY-ELEMENT-TYPE-NIL:EXCLUDE):

    -
    Modify the semantics of UPGRADED-ARRAY-ELEMENT-TYPE so that its behavior on the type NIL (or any equivalent type) is unspecified. In particular, it need not be the case that (UPGRADED-ARRAY-ELEMENT-TYPE NIL) must be a subtype of (UPGRADED-ARRAY-ELEMENT-TYPE foo) for any type foo.

    -
    Test case:

    Rationale:

    - -
    These arrays are useless, and requiring them prevents an implementation from having certain efficient representations of strings.

    -
    Current practice:

    -
    -CLISP and SBCL now implement arrays of element type NIL, but with small differences in the details, such as printing such arrays.

    -
    Cost to Implementors:

    -
    None.

    -
    Cost to Users:

    -
    None.

    -
    Cost of Non-Adoption:

    -
    NIL arrays imply that STRING and BASE-STRING are different types, which prevents an implementation from making the assumption that all strings have the same element type.

    -
    Benefits:

    -
    Eliminates silliness, and allows implementations to have more efficient strings.

    -
    Aesthetics:

    Discussion:

    - -
    The "Cost to Implementors" cannot be "None" as there are implementations that do not support arrays with element type NIL.

    "Cost to implementors" usually means the cost of adopting the proposed change. Since this proposal would make the definition of such arrays have undefined behavior, how would this cause work for developers of a (non-conforming!) implementation that does not currently support them? -

    -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Issue ARRAY-UPGRADING-UNDECIDABLE.html b/clones/lisp/www.cliki.net/Issue ARRAY-UPGRADING-UNDECIDABLE.html deleted file mode 100644 index eab9fc0d..00000000 --- a/clones/lisp/www.cliki.net/Issue ARRAY-UPGRADING-UNDECIDABLE.html +++ /dev/null @@ -1,75 +0,0 @@ - - - - - CLiki: Issue ARRAY-UPGRADING-UNDECIDABLE - - - - - - - -
    Issue ARRAY-UPGRADING-UNDECIDABLE
    Issue: ARRAY-UPGRADING-UNDECIDABLE

    Forum: Editorial

    References: UPGRADED-ARRAY-ELEMENT-TYPE, MAKE-ARRAY

    Category: CLARIFICATION/CHANGE

    Edit history: 2005-08-04, Version 1 by Paul F. Dietz

    Status: For CLiki consideration

    -
    Problem Description:

    -
    -UPGRADED-ARRAY-ELEMENT-TYPE and the definition of 'subtype' in the glossary imply that UPGRADED-ARRAY-ELEMENT-TYPE must be computable on all types, and that it can be used to distinguish between SATISFIES types that are type-equivalent to BIT and CHARACTER, respectively. This can easily be shown to be undecidable.

    -
    Proposal (ARRAY-UPGRADING-UNDECIDABLE:RESTRICT):

    Modify the semantics of :(CLHS UPGRADED-ARRAY-ELEMENT-TYPE) so that its behavior on types for which SUBTYPEP is permitted to fail is unspecified. In particular, it is allowed to violate the subtype constraints in section 15.1.2.1 if the type being upgraded contains or can be expanded to a type that contains OR, AND, NOT, compound FUNCTION types, or SATISFIES. -

    -

    -
    Test case:

    -

    -
    Rationale:

    As currently specified, the function cannot be correctly implemented.

    -

    -
    Current practice:

    -
    Ignore the problem and do not implement properly on complex compound types.

    -
    Cost to Implementors:

    -
    None.

    -
    Cost to Users:

    -
    None.

    -
    Cost of Non-Adoption:

    -
    Inconsistency between implementations and the standard.

    -
    Benefits:

    -
    Eliminates an impossible requirement.

    -
    Aesthetics:

    Discussion:

    It may be desirable to require UPGRADED-ARRAY-ELEMENT-TYPE to respect ordering constraints on two types T1 and T2 if (SUBTYPEP T1 T2) is true, even if T1 and T2 contain any of the compound type specifiers listed above.

    - -
    -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Issue BUTLAST-DOTTED-LIST.html b/clones/lisp/www.cliki.net/Issue BUTLAST-DOTTED-LIST.html deleted file mode 100644 index 8d23c9ec..00000000 --- a/clones/lisp/www.cliki.net/Issue BUTLAST-DOTTED-LIST.html +++ /dev/null @@ -1,80 +0,0 @@ - - - - - CLiki: Issue BUTLAST-DOTTED-LIST - - - - - - - -
    Issue BUTLAST-DOTTED-LIST
    Issue: BUTLAST-DOTTED-LIST

    Forum: Editorial

    References: BUTLAST, NBUTLAST

    Category: CLARIFICATION/CHANGE

    Edit history: 2004-06-10, Version 1 by Lars Brinkhoff

    Status: For CLiki consideration

    -
    Problem Description:

    -
    The description of BUTLAST and NBUTLAST isn't self-consistent when applied to dotted list.

    -
    Proposal (BUTLAST-DOTTED-LIST:OMIT-CONSES):

    -
    The specified number of cons cells at the end of the list should be removed.

    -
    Test case:

    -
    (butlast '(a b . c) 0) => (a b . c)

    -
    Proposal (BUTLAST-DOTTED-LIST:RPLACD-TO-NIL):

    -
    Set the cdr of the cons n+1 from the end of the list to nil.

    -
    Test case:

    -
    (butlast '(a b . c) 0) => (a b)

    -
    Rationale:

    -
    Mostly this precludes implementations from arbitraily adopting one of the two possible interpretations.

    -
    Current practice:

    -
    (butlast '(a b . c) 0) returns (a b) in CLISP 2.32 and CMUCL release-18e-branch but (a b . c) in SBCL 0.8.9.46.

    -

    -
    Cost to Implementors:

    -
    Small.

    -
    Cost to Users:

    -
    None. Portable programs cannot currently rely on any particular behavior.

    -
    Cost of Non-Adoption:

    -
    Users would be confused about what to expect because implementations might implement either of the two behaviours.

    -
    Benefits:

    -
    Tighter spec.

    -
    Aesthetics:

    Discussion:

      -
    • Bruno Haible says: I vote for RPLACD-TO-NIL because this is most consistent with the behaviour for n > 0. -
    • -

    - -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Issue CHECK-TYPE-EXAMPLE.html b/clones/lisp/www.cliki.net/Issue CHECK-TYPE-EXAMPLE.html deleted file mode 100644 index 730220a1..00000000 --- a/clones/lisp/www.cliki.net/Issue CHECK-TYPE-EXAMPLE.html +++ /dev/null @@ -1,79 +0,0 @@ - - - - - CLiki: Issue CHECK-TYPE-EXAMPLE - - - - - - - -
    Issue CHECK-TYPE-EXAMPLE
    Issue: CHECK-TYPE-EXAMPLE

    Forum: Editorial

    References: CHECK-TYPE

    Category: CLARIFICATION/CHANGE

    Edit history: 2005-04-20, Version 1 by Max-Gerd Retzlaff

    Status: For CLiki consideration

    -
    Problem Description:

    -
    The example: -
    (check-type aardvark-count (integer 0 *) "A positive integer")
    ->>  Error: The value of AARDVARK-COUNT, FOO, is not a positive integer.
    -suggests that a case conversion of the first letter of the optional string might take place.

    -
    Proposal (CHECK-TYPE-EXAMPLE:CASE-CONVERT-A):

    -
    Replace "A positive integer" by "a positive integer" in the call to CHECK-TYPE.

    -
    Test case:

    Rationale:

    - -
    Correct example.

    -
    Current practice:

    -
    N/A

    -
    Cost to Implementors:

    -
    None.

    -
    Cost to Users:

    -
    None.

    -
    Cost of Non-Adoption:

    -
    Buggy example.

    -
    Benefits:

    Aesthetics:

    Discussion: - -
    - - -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Issue CLOSE-FILE-OPENED-WITH-SUPERSEDE.html b/clones/lisp/www.cliki.net/Issue CLOSE-FILE-OPENED-WITH-SUPERSEDE.html deleted file mode 100644 index 9cd20586..00000000 --- a/clones/lisp/www.cliki.net/Issue CLOSE-FILE-OPENED-WITH-SUPERSEDE.html +++ /dev/null @@ -1,82 +0,0 @@ - - - - - CLiki: Issue CLOSE-FILE-OPENED-WITH-SUPERSEDE - - - - - - - -
    Issue CLOSE-FILE-OPENED-WITH-SUPERSEDE
    Issue: CLOSE-FILE-OPENED-WITH-SUPERSEDE

    Forum: Editorial

    References: CLOSE, OPEN

    Category: CLARIFICATION/CHANGE

    Edit history: 2004-07-20, Version 1 by Bruno Haible

    Status: For CLiki consideration

    -
    Problem Description:

    -
    Clarify the behaviour of CLOSE when :abort is T and an old file is being superseded: OPEN implies that an implementation is allowed to have already deleted the old file, whereas CLOSE does not allow this.

    -
    Proposal (CLOSE-FILE-OPENED-WITH-SUPERSEDE:ALLOW):

    -
    In the description of CLOSE, add "if possible" before "the file is deleted and any previously existing file is not superseded."

    -
    Test case:

    -

    -
    Rationale:

    -
    The description of the IF-EXISTS modes was written with a more complex filesystem than Unix in mind (1. versions and 2. the distinction between delete and expunge). So any mapping to Unix filesystems must necessarily do some simplifications. It is good that ANSI CL leaves the precise mapping up to the implementation. The description of OPEN's :SUPERSEDE already says "If possible".

    -
    Current practice:

    -
    -CLISP implements :SUPERSEDE in a way that doesn't make a backup, therefore (close stream :abort t) cannot recover the data. SBCL works -similarly.

    -
    Cost to Implementors:

    -
    None.

    -
    Cost to Users:

    -
    None. Programs who want a backup strategy need to use :IF-EXISTS :RENAME, not :SUPERSEDE anyway.

    -
    Cost of Non-Adoption:

    -
    Some implementations might implement a backup strategy for :SUPERSEDE, thus slowing down disk I/O in an unnecessary way.

    -
    Benefits:

    -
    Clarity. Avoiding unnecessary inefficiency.

    -
    Aesthetics:

    Discussion: -
      -
    • Bruno Haible supports ALLOW. -
    • -
    • Nikodemus Siivola supports ALLOW, and notes that :RENAME-AND-DELETE -seems to provide for the :ABORT T recovery perfectly. :RENAME is of dubious -utility, however, as there is not portable way to find out the new name. -
    • -

    - -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Issue COMPILER-MACRO-IMPLICIT-BLOCK.html b/clones/lisp/www.cliki.net/Issue COMPILER-MACRO-IMPLICIT-BLOCK.html deleted file mode 100644 index d463d337..00000000 --- a/clones/lisp/www.cliki.net/Issue COMPILER-MACRO-IMPLICIT-BLOCK.html +++ /dev/null @@ -1,94 +0,0 @@ - - - - - CLiki: Issue COMPILER-MACRO-IMPLICIT-BLOCK - - - - - - - -
    Issue COMPILER-MACRO-IMPLICIT-BLOCK
    Issue: COMPILER-MACRO-IMPLICIT-BLOCK

    Forum: Editorial

    References: DEFINE-COMPILER-MACRO, -Issue FLET-IMPLICIT-BLOCK

    Category: CHANGE

    Edit history: 2004-06-10, Version 1 by Nikodemus Siivola

    Status: For CLiki consideration

    -
    Problem Description: -
    -
    Current definition of DEFINE-COMPILER-MACRO violates the rule of thumb observed by other named entities that take code bodies, that is mentioned in the -Issue FLET-IMPLICIT-BLOCK writeup: "any named entity that takes a code body establishes an implicit block with the obvious name."

    -
    Proposal COMPILER-MACRO-IMPLICIT-BLOCK:YES -
    -
    Specify that DEFINE-COMPILER-MACRO establishes an implicit block -with the name of the compiler-macro as the block name.

    -
    Test case:

    Rationale: -
    - -
    The current behaviour violates expectations and complicates writing compiler-macros in some cases.

    -
    Current practice: -
    -
    As defined in the standard, DEFINE-COMPILER-MACRO does not establish -an implicit block.

    -
    Cost to Implementors: -
    -
    Small.

    -
    Cost to Users: -
    -
    None. The altered definition would not affect behaviour of conforming code.

    -
    Cost of Non-Adoption: -
    -
    The unintuitive behaviour violating expectations catered for -by the rest of the language remains. Users writing complex compiler -macros that would benefit from having a non-local exit via RETURN-FROM -must explicitly establish the block.

    -
    Benefits: -
    -
    More uniform specification and easier to write compiler-macros in some cases.

    -
    Aesthetics: -
    -
    Improved. Cleaner specification due to increased uniformity. Cleaner user -code due to lack of explicit blocks in compiler-macros (though rare).

    -
    Discussion: -
      -
    • Bruno Haible says: Agreed, with a minor change: DEFINE-COMPILER-MACRO should establish an implicit block, like DEFUN does (using the notion of "function block name"). -
    • -
    -
    -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Issue DEFCLASS-READER-FUNCTION-NAME.html b/clones/lisp/www.cliki.net/Issue DEFCLASS-READER-FUNCTION-NAME.html deleted file mode 100644 index 71c34452..00000000 --- a/clones/lisp/www.cliki.net/Issue DEFCLASS-READER-FUNCTION-NAME.html +++ /dev/null @@ -1,76 +0,0 @@ - - - - - CLiki: Issue DEFCLASS-READER-FUNCTION-NAME - - - - - - - -
    Issue DEFCLASS-READER-FUNCTION-NAME
    Issue: DEFCLASS-READER-FUNCTION-NAME

    Forum: Editorial

    References: DEFCLASS

    Category: CLARIFICATION/CHANGE

    Edit history: 2004-07-20, Version 1 by Bruno Haible

    Status: For CLiki consideration

    -
    Problem Description:

    -
    The specification for DEFCLASS is a bit strange - in particular the use of reader-function-name for both :reader and :accessor, with two different descriptions given.

    -
    Proposal (DEFCLASS-READER-FUNCTION-NAME:USE-ACCESSOR):

    -
    In DEFCLASS, use accessor-function-name in place of reader-function-name.

    -
    Test case:

    -

    -
    Rationale:

    -

    -
    Current practice:

    -

    -
    Cost to Implementors:

    -

    -
    Cost to Users:

    -

    -
    Cost of Non-Adoption:

    -

    -
    Benefits:

    -
    Clarity.

    -
    Aesthetics:

    Discussion: -
      -
    • Bruno Haible supports USE-ACCESSOR. -
    • -

    - -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Issue DEFCONSTANT-PREVIOUS-VALUE.html b/clones/lisp/www.cliki.net/Issue DEFCONSTANT-PREVIOUS-VALUE.html deleted file mode 100644 index bf49b994..00000000 --- a/clones/lisp/www.cliki.net/Issue DEFCONSTANT-PREVIOUS-VALUE.html +++ /dev/null @@ -1,78 +0,0 @@ - - - - - CLiki: Issue DEFCONSTANT-PREVIOUS-VALUE - - - - - - - -
    Issue DEFCONSTANT-PREVIOUS-VALUE
    Issue: DEFCONSTANT-PREVIOUS-VALUE

    Forum: Editorial

    References: DEFCONSTANT

    Category: CLARIFICATION/CHANGE

    Edit history: 2004-07-20, Version 1 by Bruno Haible

    Status: For CLiki consideration

    -
    Problem Description:

    -
    -DEFCONSTANT says "The consequences are undefined if there are any bindings of the variable named by name at the time defconstant is executed or if the value is not eql to the value of initial-value." It is not clear what "the value" is.

    -
    Proposal (DEFCONSTANT-PREVIOUS-VALUE:CLARIFY):

    -
    Clarify "...or the symbol-value of name...", or equivalent.

    -
    Test case:

    -

    -
    Rationale:

    -

    -
    Current practice:

    -

    -
    Cost to Implementors:

    -
    None.

    -
    Cost to Users:

    -
    None.

    -
    Cost of Non-Adoption: -
    -

    -
    Benefits:

    -
    Clarity.

    -
    Aesthetics:

    Discussion: -
      -
    • Bruno Haible supports proposal CLARIFY. -
    • -

    - -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Issue DEFGENERIC-METHOD-COMBINATION-NAME.html b/clones/lisp/www.cliki.net/Issue DEFGENERIC-METHOD-COMBINATION-NAME.html deleted file mode 100644 index 6b5178d0..00000000 --- a/clones/lisp/www.cliki.net/Issue DEFGENERIC-METHOD-COMBINATION-NAME.html +++ /dev/null @@ -1,76 +0,0 @@ - - - - - CLiki: Issue DEFGENERIC-METHOD-COMBINATION-NAME - - - - - - - -
    Issue DEFGENERIC-METHOD-COMBINATION-NAME
    Issue: DEFGENERIC-METHOD-COMBINATION-NAME

    Forum: Editorial

    References: DEFGENERIC

    Category: CLARIFICATION/CHANGE

    Edit history: 2004-07-20, Version 1 by Bruno Haible

    Status: For CLiki consideration

    -
    Problem Description:

    -
    The BNF syntax of DEFGENERIC refers to "method-combination"; however, the "Arguments and Values:" section defines a nonterminal "method-combination-name" but no nonterminal "method-combination". Thus it is not clear whether a method-combination object could be used here, or only a symbol.

    -
    Proposal (DEFGENERIC-METHOD-COMBINATION-NAME:ONLY-SYMBOL):

    -
    Change the BNF syntax to refer to "method-combination-name" instead of "method-combination".

    -
    Test case:

    -

    -
    Rationale:

    -
    There is no need to put method-combination objects in DEFGENERIC forms.

    -
    Current practice:

    -
    All implementations allow a symbol name here. SB-PCL gives an error when the argument is not a symbol.

    -
    Cost to Implementors:

    -
    None.

    -
    Cost to Users:

    -
    None.

    -
    Cost of Non-Adoption:

    -

    -
    Benefits:

    -
    Clarification.

    -
    Aesthetics:

    Discussion: -
      -
    • Bruno Haible supports proposal ONLY-SYMBOL. -
    • -

    - -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Issue DEFGENERIC-MULTIPLE-DECLARE.html b/clones/lisp/www.cliki.net/Issue DEFGENERIC-MULTIPLE-DECLARE.html deleted file mode 100644 index 9167b231..00000000 --- a/clones/lisp/www.cliki.net/Issue DEFGENERIC-MULTIPLE-DECLARE.html +++ /dev/null @@ -1,71 +0,0 @@ - - - - - CLiki: Issue DEFGENERIC-MULTIPLE-DECLARE - - - - - - - -
    Issue DEFGENERIC-MULTIPLE-DECLARE
    Issue: DEFGENERIC-MULTIPLE-DECLARE

    Forum: Editorial

    References: DEFGENERIC

    Category: CLARIFICATION/CHANGE

    Edit history: 2004-07-20, Version 1 by Bruno Haible

    Status: For CLiki consideration

    -
    Problem Description:

    -
    The BNF syntax of DEFGENERIC does not allow multiple DECLARE options. However, the DEFGENERIC description says what to do in this case: "The declare option may be specified more than once. The effect is the same as if the lists of declaration specifiers had been appended together into a single list and specified as a single declare option."

    -
    Proposal (DEFGENERIC-MULTIPLE-DECLARE:ALLOW):

    -
    Allow multiple DECLARE options in the same DEFGENERIC form. Change the BNF syntax from -
    -
    -   [[option | {method-description}*]]
    -
    to
    -   [[option | {declare-option}* | {method-description}*]]
    -
    -and define -
    -   declare-option ::= (_H(DECLARE) gf-declaration+)
    -
    -and remove the declare clause from option.

    Test case:

    Rationale:

    This is what was probably intended.

    Current practice:

    Paul Dietz's DEFGENERIC.26 test assumes ALLOW.

    Cost to Implementors:

    Small: Remove an error checking in the DEFGENERIC macro expander.

    Cost to Users:

    None.

    Cost of Non-Adoption:

    Benefits:

    Avoid an inconsistency.

    Aesthetics:

    Discussion: -
      -
    • Bruno Haible supports proposal ALLOW. -
    • -

    -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Issue DEFINE-COMPILER-MACRO-DECLINE.html b/clones/lisp/www.cliki.net/Issue DEFINE-COMPILER-MACRO-DECLINE.html deleted file mode 100644 index 9bbb00d7..00000000 --- a/clones/lisp/www.cliki.net/Issue DEFINE-COMPILER-MACRO-DECLINE.html +++ /dev/null @@ -1,94 +0,0 @@ - - - - - CLiki: Issue DEFINE-COMPILER-MACRO-DECLINE - - - - - - - -
    Issue DEFINE-COMPILER-MACRO-DECLINE
    Issue: DEFINE-COMPILER-MACRO-DECLINE

    Forum: Editorial

    References: DEFINE-COMPILER-MACRO

    Category: CLARIFICATION/CHANGE

    Edit history: 2004-06-16, Version 1 by Christophe Rhodes

    Status: For CLiki consideration

    -
    Problem Description: -
    -
    -The glossary entry for compiler macro function is inconsistent with the entries in the main body of the standard: the glossary states that returning nil from the compiler macro function indicates that the original form should not be expanded, whereas define-compiler-macro states that this is achieved by returning the original form (from the &whole argument).

    -
    Proposal (DEFINE-COMPILER-MACRO-DECLINE:ORIGINAL-FORM-ONLY): -
    -
    -Specify that the glossary entry was in error, and that to decline expansion the original form should be returned from the compiler macro function. Specify that a return value of nil indicates that the form should be expanded by the compiler, if it expands the compiler macro at all, to nil.

    -
    Test case: -
    -

    -
    Rationale: -
    -
    -The glossary entry was clearly in error, and could potentially cause confusion.

    -
    Current practice: -
    -
    -SBCL 0.8.11 (and earlier versions), CMUCL 18e and CLISP 2.33 behave as in proposal DEFINE-COMPILER-MACRO-DECLINE:ORIGINAL-FORM-ONLY.

    -
    Cost to Implementors: -
    -
    -Minimal.

    -
    Cost to Users: -
    -
    -None.

    -
    Cost of Non-Adoption: -
    -
    -Continued confusion over the required semantics of a compiler macro function.

    -
    Benefits: -
    -
    -Enhanced ability to write compiler macros portably.

    -
    Aesthetics: -
    -
    -Returning the original form to decline is clearly superior to returning nil, as it avoids any possible confusion over nil as expansion.

    -
    Discussion: -
    -

    -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Issue DEFINE-CONDITION-DOCUMENTATION.html b/clones/lisp/www.cliki.net/Issue DEFINE-CONDITION-DOCUMENTATION.html deleted file mode 100644 index d9f74807..00000000 --- a/clones/lisp/www.cliki.net/Issue DEFINE-CONDITION-DOCUMENTATION.html +++ /dev/null @@ -1,77 +0,0 @@ - - - - - CLiki: Issue DEFINE-CONDITION-DOCUMENTATION - - - - - - - -
    Issue DEFINE-CONDITION-DOCUMENTATION
    Issue: DEFINE-CONDITION-DOCUMENTATION

    Forum: Editorial

    References: DEFINE-CONDITION

    Category: CLARIFICATION/CHANGE

    Edit history: 2004-07-20, Version 1 by Bruno Haible

    Status: For CLiki consideration

    -
    Problem Description:

    -
    The :documentation option applies to the whole type in "Syntax" but not to individual slots in "Arguments and Values" and "Description". DEFCLASS allows it in both places.

    -
    Proposal (DEFINE-CONDITION-DOCUMENTATION:LIKE-DEFCLASS):

    -
    In DEFINE-CONDITION, add a :documentation slot option.

    -
    Test case:

    -
    (define-condition my-error (error) ((slot :documentation "my slot")))

    -
    Rationale:

    -
    Consistency with DEFCLASS.

    -
    Current practice:

    -
    -SBCL and CLISP accept (define-condition my-error (error) ((slot :documentation "my slot"))) without error.

    -
    Cost to Implementors:

    -
    Small.

    -
    Cost to Users:

    -
    None.

    -
    Cost of Non-Adoption:

    -
    Inconsistency of DEFINE-CONDITION and DEFCLASS.

    -
    Benefits:

    -
    Consistency of DEFINE-CONDITION and DEFCLASS. Ability to set docstrings on condition slots.

    -
    Aesthetics:

    Discussion: -
      -
    • Bruno Haible supports proposal LIKE-DEFCLASS. -
    • -

    - -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Issue DEFINE-CONDITION-SLOT-NAME.html b/clones/lisp/www.cliki.net/Issue DEFINE-CONDITION-SLOT-NAME.html deleted file mode 100644 index f54756fc..00000000 --- a/clones/lisp/www.cliki.net/Issue DEFINE-CONDITION-SLOT-NAME.html +++ /dev/null @@ -1,79 +0,0 @@ - - - - - CLiki: Issue DEFINE-CONDITION-SLOT-NAME - - - - - - - -
    Issue DEFINE-CONDITION-SLOT-NAME
    Issue: DEFINE-CONDITION-SLOT-NAME

    Forum: Editorial

    References: DEFINE-CONDITION

    Category: CLARIFICATION/CHANGE

    Edit history: 2004-07-20, Version 1 by Bruno Haible

    Status: For CLiki consideration

    -
    Problem Description:

    -
    In DEFINE-CONDITION, the syntax where slot-name is "the list of a slot-name" or "the list of slot name/slot form pairs" seem redundant, given :initform. Was it left in by accident?

    -
    Proposal (DEFINE-CONDITION-SLOT-NAME:RESTRICT):

    -
    Change the description of Slot-name to "a slot name (a symbol)."

    -
    Test case:

    -
    (define-condition my-error (error) (((slot) :reader my-error-slot))) -
    (define-condition foo () ((((slot-name-symbol . "slot form"))))) -
    (define-condition my-error (error) (((slot 77) :reader my-error-slot)))

    -
    Rationale:

    -
    The two other forms are redundant and not consistent with DEFCLASS.

    -
    Current practice:

    -
    -CMUCL 18e, SBCL 0.8.9.46, and CLISP 2.33 reject such constructs.

    -
    Cost to Implementors:

    -
    Tiny.

    -
    Cost to Users:

    -
    None: The redundant forms were not accepted by the implementations anyway,

    -
    Cost of Non-Adoption:

    -
    Redundant spec.

    -
    Benefits:

    -
    Consistency between DEFINE-CONDITION and DEFCLASS.

    -
    Aesthetics:

    Discussion: -
      -
    • Bruno Haible supports proposal RESTRICT. -
    • -

    - -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Issue DEFINE-CONDITION-WRITERS.html b/clones/lisp/www.cliki.net/Issue DEFINE-CONDITION-WRITERS.html deleted file mode 100644 index a76e96fc..00000000 --- a/clones/lisp/www.cliki.net/Issue DEFINE-CONDITION-WRITERS.html +++ /dev/null @@ -1,77 +0,0 @@ - - - - - CLiki: Issue DEFINE-CONDITION-WRITERS - - - - - - - -
    Issue DEFINE-CONDITION-WRITERS
    Issue: DEFINE-CONDITION-WRITERS

    Forum: Editorial

    References: DEFINE-CONDITION

    Category: CLARIFICATION/CHANGE

    Edit history: 2004-07-20, Version 1 by Bruno Haible

    Status: For CLiki consideration

    -
    Problem Description:

    -
    The writeability or otherwise of condition slots is a little unclear. DEFINE-CONDITION's Syntax allows :writer and :accessor, though the Description does not specify them, and the issues seem to imply that conditions were meant to be read-only objects.

    -
    Proposal (DEFINE-CONDITION-WRITERS:ALLOW):

    -
    Document the :writer and :accessor slot options.

    -
    Test case:

    -
    (define-condition my-error (error) ((slot :accessor my-error-slot)))

    -
    Rationale:

    -
    Consistency with DEFCLASS.

    -
    Current practice:

    -
    -SBCL and CLISP support writable condition slots.

    -
    Cost to Implementors:

    -
    Implement :writer and :accessor option if they haven't already done so.

    -
    Cost to Users:

    -
    None.

    -
    Cost of Non-Adoption:

    -
    Unclear spec.

    -
    Benefits:

    -
    Clarity, and consistency of define-condition and defclass.

    -
    Aesthetics:

    Discussion: -
      -
    • Bruno Haible supports proposal ALLOW. -
    • -

    - -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Issue DEFINE-SETF-METHOD.html b/clones/lisp/www.cliki.net/Issue DEFINE-SETF-METHOD.html deleted file mode 100644 index 8830f74b..00000000 --- a/clones/lisp/www.cliki.net/Issue DEFINE-SETF-METHOD.html +++ /dev/null @@ -1,78 +0,0 @@ - - - - - CLiki: Issue DEFINE-SETF-METHOD - - - - - - - -
    Issue DEFINE-SETF-METHOD
    Issue: DEFINE-SETF-METHOD

    Forum: Editorial

    References: CLHS 11.1.2.1.2

    Category: CLARIFICATION/CHANGE

    Edit history: 2004-07-20, Version 1 by Bruno Haible

    Status: For CLiki consideration

    -
    Problem Description:

    -
    -CLHS 11.1.2.1.2 paragraph 13 speaks of DEFINE-SETF-METHOD, should be DEFINE-SETF-EXPANDER.

    -
    Proposal (DEFINE-SETF-METHOD:FIX):

    -
    Use DEFINE-SETF-EXPANDER instead.

    -
    Test case:

    -

    -
    Rationale:

    -

    -
    Current practice: -
    -

    -
    Cost to Implementors:

    -
    None.

    -
    Cost to Users:

    -
    None.

    -
    Cost of Non-Adoption:

    -
    Wrong spec.

    -
    Benefits:

    -

    -
    Aesthetics:

    Discussion: -
      -
    • Bruno Haible supports proposal FIX. -
    • -

    - -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Issue DEFMACRO-VALUES.html b/clones/lisp/www.cliki.net/Issue DEFMACRO-VALUES.html deleted file mode 100644 index 1be929fd..00000000 --- a/clones/lisp/www.cliki.net/Issue DEFMACRO-VALUES.html +++ /dev/null @@ -1,179 +0,0 @@ - - - - - CLiki: Issue DEFMACRO-VALUES - - - - - - - -
    Issue DEFMACRO-VALUES
    Issue: DEFMACRO-VALUES

    Forum:

    References: DEFMACRO, MACROLET, *MACROEXPAND-HOOK*, - MACROEXPAND-1, MACRO-FUNCTION, the Glossary definition for - value.

    Category:

    Edit history: - 2005-09-11, Version 1 by Kalle Olavi Niemitalo

    Status: For CLiki consideration

    -
    Problem Description: -
    -
    According to the description of DEFMACRO, - "the value of the last form executed is returned as the - expansion of the macro." The glossary definition of - value - (1. b.) indicates that this means the primary value; any further - values are ignored. But does this truncation occur as part of the - expansion function defined by DEFMACRO, or as part of the - macroexpansion process? This matters if the user calls the expansion - function directly, or if the user's *MACROEXPAND-HOOK* cares.

    This also concerns MACROLET, which uses "the same format used - by defmacro."

    -
    Proposal (DEFMACRO-VALUES:PRIMARY): -
    -
    The expansion functions defined by DEFMACRO or MACROLET always return - exactly one value, even if the body attempts to return multiple values - (as the values of the last form, or by using RETURN-FROM). - With SETF MACRO-FUNCTION, the user can specify a - macro function that returns multiple values; but only the primary value - matters when the macro function is being called by MACROEXPAND, - MACROEXPAND-1, or whatever the implementation uses to expand - macros.

    The function that is the value of *MACROEXPAND-HOOK* is not - required to preserve multiple values returned by the macro function, - and it might not even see all the values if another hook has - interposed itself.

    -
    Rationale (DEFMACRO-VALUES:PRIMARY): -
    -
    According to the description of DEFMACRO, - "the expansion function returns a - form." - Make it behave that way.

    -
    Proposal (DEFMACRO-VALUES:ALL): -
    -
    The expansion functions defined by DEFMACRO or MACROLET return all the - values of the body, but only the primary value matters when the expansion - function is being called by MACROEXPAND, MACROEXPAND-1, - or whatever the implementation uses to expand macros.

    The function that is the value of *MACROEXPAND-HOOK* is not - required to preserve multiple values returned by the macro function, - and it might not even see all the values if another hook has - interposed itself.

    -
    Rationale (DEFMACRO-VALUES:ALL): -
    -
    This seems to be what the implementations do now, and is helpful if - users want to use MACROLET as a general way to add information to the - lexical environment.

    -
    Proposal (DEFMACRO-VALUES:EXPLICITLY-VAGUE): -
    -
    It is unspecified whether the expansion functions defined by - DEFMACRO or MACROLET return all the values of the body, or just the - primary value. With SETF MACRO-FUNCTION, the user can - specify a macro function that returns multiple values. In any case, - only the primary value matters when the expansion function is being - called by MACROEXPAND, MACROEXPAND-1, or whatever - the implementation uses to expand macros.

    The function that is the value of *MACROEXPAND-HOOK* is not - required to preserve multiple values returned by the macro function, - and it might not even see all the values if another hook has - interposed itself.

    -
    Rationale (DEFMACRO-VALUES:EXPLICITLY-VAGUE): -
    -
    Clarify the spec without requiring implementations to change.

    -
    Proposal (DEFMACRO-VALUES:THROUGHOUT): -
    -
    The expansion functions defined by DEFMACRO and MACROLET return all the - values of the body, but only the primary value matters when the expansion - function is being called by MACROEXPAND, MACROEXPAND-1, - or whatever the implementation uses to expand macros.

    The function that is the value of *MACROEXPAND-HOOK* will see - all the values returned by the macro function, and must preserve - them. Because it cannot normally know how the extra values will be - used, it should pass them through unchanged.

    -
    Rationale (DEFMACRO-VALUES:THROUGHOUT): -
    -
    If users define macros that return multiple values, then the - implementation and user-defined hooks should propagate them as far as - possible, in case some hook somewhere knows what to do with them. - Admittedly, this is rather far-fetched: because MACROEXPAND-1 - will discard the extra values anyway, users are unlikely to call it - on such macros, and then the value of *MACROEXPAND-HOOK* won't - get called either.

    -
    Test case: -
    -
    -
    -(defmacro foo ()
    -  (values 1 2 3))
    -(multiple-value-list (funcall (macro-function 'foo) '(foo) nil))
    -;; returns (1) for DEFMACRO-VALUES:PRIMARY,
    -;; returns (1 2 3) for DEFMACRO-VALUES:ALL or DEFMACRO-VALUES:THROUGHOUT,
    -;; returns either for DEFMACRO-VALUES:EXPLICITLY-VAGUE.
    -
    -(let ((*macroexpand-hook*
    -       #'(lambda (function form env)
    -           (let ((values (multiple-value-list (funcall function form env))))
    -             (format *trace-output* "~&Values:~{ ~S~}~%" values)
    -             (values-list values)))))
    -  (macroexpand-1 '(foo)))
    -;; outputs "Values: 1" for DEFMACRO-VALUES:PRIMARY,
    -;; outputs "Values: 1 2 3" for DEFMACRO-VALUES:THROUGHOUT,
    -;; outputs either for DEFMACRO-VALUES:ALL or DEFMACRO-VALUES:EXPLICITLY-VAGUE,
    -;; always returns 1 and T.
    -

    Rationale: -

    Current practice: -
    -SBCL 0.9.3.51, CLISP 2.34, and Allegro CL 6.2 seem to - implement DEFMACRO-VALUES:ALL.

    Cost to Implementors: -
    DEFMACRO-VALUES:EXPLICITLY-VAGUE is intended not to require any - changes in implementations.

    It seems possible that all current implementations support - DEFMACRO-VALUES:ALL, in which case that would not require changes - either. Some implementations may currently support - DEFMACRO-VALUES:PRIMARY instead. Switching from either one to the - other would require some effort, and might make macros expand a - little slower.

    DEFMACRO-VALUES:THROUGHOUT would additionally require implementors to - examine and correct all of the functions they place in - *MACROEXPAND-HOOK*.

    Cost to Users:

    DEFMACRO-VALUES:EXPLICITLY-VAGUE might make users' programs less - portable, if all current implementations support DEFMACRO-VALUES:ALL - and the programs have come to rely on that and some future implementation - chooses to behave like DEFMACRO-VALUES:PRIMARY instead.

    If all current implementations support DEFMACRO-VALUES:ALL, then making - this official would not hurt users, but we don't know that yet.

    Requiring DEFMACRO-VALUES:PRIMARY would break programs that haven't been - careful about portability.

    DEFMACRO-VALUES:THROUGHOUT would additionally require users to - examine and correct all of the functions they place in - *MACROEXPAND-HOOK*.

    Cost of Non-Adoption: -
    Unclear spec. Users don't know what they can rely on, and may -assume too much in programs intended to be portable.

    Benefits: -

    Aesthetics: -

    Discussion: -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Issue DESTRUCTURING-NIL.html b/clones/lisp/www.cliki.net/Issue DESTRUCTURING-NIL.html deleted file mode 100644 index 87f3134d..00000000 --- a/clones/lisp/www.cliki.net/Issue DESTRUCTURING-NIL.html +++ /dev/null @@ -1,87 +0,0 @@ - - - - - CLiki: Issue DESTRUCTURING-NIL - - - - - - - -
    Issue DESTRUCTURING-NIL
    Issue: DESTRUCTURING-NIL

    Forum: Editorial

    References: CLHS 3.4.4, CLHS 3.4.5, DESTRUCTURING-BIND, CLHS term tree-structure

    Category: CLARIFICATION/CHANGE

    Edit history: 2004-07-20, Version 1 by Bruno Haible

    Status: For CLiki consideration

    -
    Problem Description:

    -
    There is confusion about the meaning of a NIL element in a macro lambda list and destructuring lambda list. One should confirm or disconfirm that NIL in a destructuring lambda list (or a macro lambda list) acts as a "don't care" symbol, matching any object without causing a binding.

    -
    Proposal (DESTRUCTURING-NIL:DISALLOW):

    -
    Make it explicit that NIL as element of a macro lambda list or destructuring lambda list that has no lambda list keywords denotes the variable NIL, which is not useful since NIL being a constant, it cannot be bound or assigned.

    -
    Proposal (DESTRUCTURING-NIL:ATOMIC):

    -
    Make it explicit that NIL as element of a macro lambda list or destructuring lambda list that has no lambda list keywords is allowed and matches only the NIL object, but produces no variable bindings.

    -
    Proposal (DESTRUCTURING-NIL:WILDCARD):

    -
    Make it explicit that NIL as element of a macro lambda list or destructuring lambda list that has no lambda list keywords matches any object, but produces no variable bindings.

    -
    Test case:

    -
    (macrolet ((%m (nil) :good)) (%m nil)) -
    (macrolet ((%m (nil) :good)) (%m t))

    -
    Rationale:

    -
    -CLHS 3.4.4 points to ATOMIC, since "tree structure" distinguish between cons and atom, and NIL is an atom.

    -
    Current practice:

    -
    -CLISP has been implementing DISALLOW for years and has now switched to ATOMIC.

    -
    Cost to Implementors:

    -
    Change the handling of macro- and destructuring lambda lists.

    -
    Cost to Users:

    -
    None, since relying on any of these behaviours has already been obscure.

    -
    Cost of Non-Adoption:

    -
    Continued confusion.

    -
    Benefits:

    -
    Clarity.

    -
    Aesthetics:

    Discussion: -
      -
    • Bruno Haible votes for ATOMIC, since it preserves the symmetry between the destructuring lambda lists (X . NIL) and (NIL . X), while the other proposals don't. -
    • -
    • -Kalle Olavi Niemitalo says about WILDCARD: Why would it do that, other than in LOOP destructuring? -
    • -
    -
    - -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Issue DIGIT-CHAR-P-NOT-AN-ACTUAL-PREDICATE.html b/clones/lisp/www.cliki.net/Issue DIGIT-CHAR-P-NOT-AN-ACTUAL-PREDICATE.html deleted file mode 100644 index 420d9725..00000000 --- a/clones/lisp/www.cliki.net/Issue DIGIT-CHAR-P-NOT-AN-ACTUAL-PREDICATE.html +++ /dev/null @@ -1,86 +0,0 @@ - - - - - CLiki: Issue DIGIT-CHAR-P-NOT-AN-ACTUAL-PREDICATE - - - - - - - -
    Issue DIGIT-CHAR-P-NOT-AN-ACTUAL-PREDICATE
    Issue: DIGIT-CHAR-P-NOT-AN-ACTUAL-PREDICATE

    Forum: Editorial

    References: DIGIT-CHAR-P

    Category: CLARIFICATION/CHANGE

    Edit history: 2017-01-28, Version 1 by Michal Herda

    Status: For CLiki consideration

    -
    Problem Description: -
    -
    The output of DIGIT-CHAR-P might be confusing, as this function's return value also serves a different purpose. DIGIT-CHAR-P, aside from being a predicate, is also a converting function: it converts a digit in a given radix to its corresponding integer value.

    -
    Proposal (DIGIT-CHAR-P-NOT-AN-ACTUAL-PREDICATE:SPLIT): -
    -
    Rename DIGIT-CHAR-P to CHAR-DIGIT and possibly make it signal an error instead of returning NIL. Create a DIGIT-CHAR-P which returns either true or false.

    -
    Test case: -
    -
    (digit-char-p #\E 16) ;=> 14

    -
    Rationale: -
    -
    A predicate function should be a predicate and not additionally serve as a converting function.

    -
    Current practice: -
    -
    -DIGIT-CHAR-P is used as a converting function

    -
    Cost to Implementors: -
    -
    Tiny.

    -
    Cost to Users: -
    -
    Incompatibility with previous uses of DIGIT-CHAR-P.

    -
    Cost of Non-Adoption: -
    -
    Confusion coming from the fact that DIGIT-CHAR-P may be used in non-boolean contexts.

    -
    Benefits: -
    -
    Abiding to the single responsibility principle.

    -
    Aesthetics:

    Discussion: -
      -
    • Michał Herda supports DIGIT-CHAR-P-NOT-AN-ACTUAL-PREDICATE:SPLIT. -
    • -

    - -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Issue DO-SEMANTICS.html b/clones/lisp/www.cliki.net/Issue DO-SEMANTICS.html deleted file mode 100644 index 18e691ae..00000000 --- a/clones/lisp/www.cliki.net/Issue DO-SEMANTICS.html +++ /dev/null @@ -1,80 +0,0 @@ - - - - - CLiki: Issue DO-SEMANTICS - - - - - - - -
    Issue DO-SEMANTICS
    Issue: DO-SEMANTICS

    Forum: Editorial

    References: DO

    Category: CLARIFICATION/CHANGE

    Edit history: 2004-07-20, Version 1 by Bruno Haible

    Status: For CLiki consideration

    -
    Problem Description:

    -
    According to the entry for DO, "do iterates over a group of statements while a test condition holds." But the iteration really continues until the test form returns true, which is more or less the opposite of what that sentence seems to suggest.

    -
    Proposal (DO-SEMANTICS:CLARIFY):

    -
    Change that sentence to read "do iterates over a group of statements until a test form returns true".

    -
    Test case:

    -

    -
    Rationale:

    -

    -
    Current practice:

    -

    -
    Cost to Implementors:

    -

    -
    Cost to Users:

    -

    -
    Cost of Non-Adoption:

    -

    -
    Benefits:

    -

    -
    Aesthetics:

    Discussion: -
      -
    • Bruno Haible says: I don't agree there is a problem. The text is clear enough. -
    • -
    -
      -
    • DanMuller supports CLARIFY: As a novice that went to the CLHS for a quick refresher while coding a DO form, the referenced phrase was the first thing I saw while quickly skimming the text, and it definitely led me down the wrong path.
    • -
    -
    - -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Issue EQUAL-CIRCULAR-LIST.html b/clones/lisp/www.cliki.net/Issue EQUAL-CIRCULAR-LIST.html deleted file mode 100644 index c30ecf30..00000000 --- a/clones/lisp/www.cliki.net/Issue EQUAL-CIRCULAR-LIST.html +++ /dev/null @@ -1,78 +0,0 @@ - - - - - CLiki: Issue EQUAL-CIRCULAR-LIST - - - - - - - -
    Issue EQUAL-CIRCULAR-LIST
    Issue: EQUAL-CIRCULAR-LIST

    Forum: Editorial

    References: EQUAL

    Category: CLARIFICATION/CHANGE

    Edit history: 2004-07-20, Version 1 by Bruno Haible

    Status: For CLiki consideration

    -
    Problem Description:

    -
    Under CLHS rules, (EQUAL proper-list circular-list) may fail to terminate, but in all known implementation it will terminate

    -
    Proposal (EQUAL-CIRCULAR-LIST:ALLOW):

    -
    Change "EQUAL may fail to terminate if x or y is circular" to "if x and y are circular", so that (equal t '#1=(nil #1#)) is required to terminate.

    -
    Test case:

    -
    (equal '(a b c) '#1=(a b . #1#))

    -
    Rationale:

    -
    All reasonable implementations of EQUAL behave this way.

    -
    Current practice:

    -
    -SBCL and CLISP implement ALLOW.

    -
    Cost to Implementors:

    -
    None.

    -
    Cost to Users:

    -
    None.

    -
    Cost of Non-Adoption:

    -
    Users who assume a normal recursive implementation of EQUAL are trapped into pitfalls.

    -
    Benefits:

    -
    Legalize existing practice.

    -
    Aesthetics:

    Discussion: -
      -
    • Bruno Haible says: I agree with proposal ALLOW. It is common practice to use (equal proper-list circular-list). The standard should allow it. -
    • -
    -
    - -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Issue ERROR-EXAMPLE.html b/clones/lisp/www.cliki.net/Issue ERROR-EXAMPLE.html deleted file mode 100644 index 4d5cee6b..00000000 --- a/clones/lisp/www.cliki.net/Issue ERROR-EXAMPLE.html +++ /dev/null @@ -1,75 +0,0 @@ - - - - - CLiki: Issue ERROR-EXAMPLE - - - - - - - -
    Issue ERROR-EXAMPLE
    Issue: ERROR-EXAMPLE

    Forum: Editorial

    References: ERROR

    Category: CLARIFICATION/CHANGE

    Edit history: 2004-07-20, Version 1 by Bruno Haible

    Status: For CLiki consideration

    -
    Problem Description:

    -
    The IF form in the (informational) wargames:no-win-scenario example is invalid.

    -
    Proposal (ERROR-EXAMPLE:OMIT-IF):

    -
    Remove the (if ...) wrapper from the example.

    -
    Test case:

    Rationale:

    - -
    Correct example.

    -
    Current practice:

    -
    N/A

    -
    Cost to Implementors:

    -
    None.

    -
    Cost to Users:

    -
    None.

    -
    Cost of Non-Adoption:

    -
    Buggy example.

    -
    Benefits:

    Aesthetics:

    Discussion: -
      -
    • Bruno Haible votes for proposal OMIT-IF. -
    • -
    -
    - - -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Issue FORMAT-RADIX-COMMACHAR.html b/clones/lisp/www.cliki.net/Issue FORMAT-RADIX-COMMACHAR.html deleted file mode 100644 index c844c213..00000000 --- a/clones/lisp/www.cliki.net/Issue FORMAT-RADIX-COMMACHAR.html +++ /dev/null @@ -1,88 +0,0 @@ - - - - - CLiki: Issue FORMAT-RADIX-COMMACHAR - - - - - - - -
    Issue FORMAT-RADIX-COMMACHAR
    Issue: FORMAT-RADIX-COMMACHAR

    Forum: Editorial

    References: FORMAT, CLHS 22.3.2.1

    Category: CLARIFICATION/CHANGE

    Edit history: 2004-07-20, Version 1 by Bruno Haible

    Status: For CLiki consideration

    -
    Problem Description:

    -
    The interaction between padchar and commachar in FORMAT (CLHS 22.3.2.1) is unclear.

    -
    Proposal (FORMAT-RADIX-COMMACHAR:???):

    -

    -
    Test case:

    -

    -
    Rationale:

    -

    -
    Current practice:

    -

    -
    Cost to Implementors:

    -

    -
    Cost to Users:

    -

    -
    Cost of Non-Adoption:

    -

    -
    Benefits:

    -

    -
    Aesthetics:

    Discussion:

      -
    • -Bruno Haible says: The explanations of mincol, padchar, commachar, comma-interval need to be copied from 22.3.2.2 to 22.3.2.1. The only thing that is not clear about 22.3.2.1 is what happens if some prefix parameters are given but the radix is not given (e.g. "~,5R"). Also, the (format nil "~19,0,' ,4:B" 3333) example is wrong (argument 0 is not a character). Other than that, everything is clear.
    • -
    • -Harald Hanche-Olsen says: Not everything is clear to him. The ~D writeup in 22.3.2.2 says "When the : modifier is given to any of these directives, the commachar is printed between groups of comma-interval digits." This becomes clear if, and only if, it is clear whether or not the padchar is considered a digit. Maybe it should depend on whether it is, in actual fact, a digit (according to the given radix)? For example,
      -(format nil "~10,'*:D" 12345) => "****12,345" but
      -(format nil "~10,'0:D" 12345) => "00,012,345".
      -(Anyone who uses a digit other than 0 as the padchar deserves what he gets, of course.) -Oh, but I see one problem with this: If you print a negative number, if you were to follow this thinking to its inevitable conclusion, the minus sign would need to be moved in front of all the padding zeros. Maybe the right answer, after all, is to never consider the padchar as a digit, even if it happens to be one.
      -Added later in the day: It has been brought to my attention that this has been discussed several times on comp.lang.lisp. See the thread on comp.lang.lisp in 2001.
    • -
    • -James A. Crippen says: I think it's pretty certain that most users expect the padchar 0 to be treated as a digit, and hence be filled with commachars, even though it is specified as padding. This is conventional with representations of binary values, as in the broken Hyperspec example mentioned by Bruno Haible. In this case I think the spec should be amended to cover the special case of 0 as a padchar which requires commachars to be inserted appropriately. No other character however should receive this special consideration. This amendment would be in keeping with the Principle of Least Astonishment.
    • -
    • -Bruno Haible says: If the integer 0 would be allowed as pad-char, requiring commachar to apply to the leading zeroes, then the minus sign should be handled the same way: it should be positioned before the leading zeroes, not after. This would solve the issue that Aubrey Jaffer has with FORMAT (see here): (format nil "~8,'0,X~%" -3) returns "000000-3", whereas he wants "-0000003".
    • -
    • -Harald Hanche-Olsen agrees with James A. Crippen and Bruno Haible (for what it's worh).
    • -

    - -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Issue FORMAT-RADIX-MISSING-RADIX.html b/clones/lisp/www.cliki.net/Issue FORMAT-RADIX-MISSING-RADIX.html deleted file mode 100644 index 9c6e9468..00000000 --- a/clones/lisp/www.cliki.net/Issue FORMAT-RADIX-MISSING-RADIX.html +++ /dev/null @@ -1,89 +0,0 @@ - - - - - CLiki: Issue FORMAT-RADIX-MISSING-RADIX - - - - - - - -
    Issue FORMAT-RADIX-MISSING-RADIX
    Issue: FORMAT-RADIX-MISSING-RADIX

    Forum: Editorial

    References: Tilde R: Radix

    Category: CLARIFICATION/CHANGE

    Edit history: 2004-08-27, Version 1 by Paul Dietz; -2004-08-31, version 2 by Bruno Haible, renamed CLARIFY to DEFAULT-IS-PRINT-BASE, added proposal DEFAULT-IS-ENGLISH-OR-ROMAN

    Status: For CLiki consideration

    -
    Problem Description:

    -
    CLHS does not specify what happens to the ~R directive when the first format parameter (the radix) is missing, but other format parameters are not missing. Also, a strict reading of the standard implies that ~VR means the same as ~R when the V parameter is NIL, which may not be what was intended.

    -
    Proposal (FORMAT-RADIX-MISSING-RADIX:DEFAULT-IS-PRINT-BASE):

    -
    Change the behavior of Tilde R: Radix so that (1) if any parameter characters (including #\V, #\v, #\#, #\, and digit or comma format parameters) are present before the r (or R), then the special cases for ordinal/cardinal/roman/old roman modes do not occur), and (2) if, in these cases, the first parameter is missing, then the radix defaults to the value of *PRINT-BASE*.

    -
    Test cases:

    -
    (format nil "~vr" nil 5) ==> "5" -
    (format nil "~,r" 4) ==> "4" -
    (let ((*print-base* 8)) (format nil "~,r" 8)) ==> "10"

    - - -
    Rationale:

    -
    The special case behavior is an odd overloading of the R directive. The behavior when the radix is not included is currently unspecified; using the printer control variable seems a logical extension.

    -
    Proposal (FORMAT-RADIX-MISSING-RADIX:DEFAULT-IS-ENGLISH-OR-ROMAN):

    -
    Change the behavior of Tilde R: Radix so that if the first parameter is missing or nil, the cardinal/ordinal/roman/old roman mode is used.

    -
    Test cases:

    -
    (format nil "~vr" nil 5) ==> "five" -
    (format nil "~,r" 4) ==> "four" -
    (let ((*print-base* 8)) (format nil "~,r" 8)) ==> "eight"

    - - -
    Rationale:

    -
    The interpretation of a nil parameter as equivalent to a missing parameter is consistent with 22.3 Formatted Output, which states "If the arg used by a V parameter is nil, the effect is as if the parameter had been omitted." Also, proposal DEFAULT-IS-PRINT-BASE has the flaw that it makes it impossible to use FORMAT to print a number in cardinal/ordinal/roman/old roman mode with padding; but padding is otherwise universally available to most FORMAT directives.

    -
    Current practice:

    -
    CLISP implements proposal DEFAULT-IS-ENGLISH-OR-ROMAN.

    -
    Cost to Implementors:

    -
    Some avoid having to reimplement ~vr.

    -
    Cost to Users:

    -
    None.

    -
    Cost of Non-Adoption:

    -
    More complicated and nonintuitive behavior.

    -
    Benefits:

    Aesthetics:

    Discussion:

      -
    • Bruno Haible supports DEFAULT-IS-ENGLISH-OR-ROMAN. -
    • -

    - - -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Issue FORMAT-RADIX-NONINTEGER.html b/clones/lisp/www.cliki.net/Issue FORMAT-RADIX-NONINTEGER.html deleted file mode 100644 index 34396c4c..00000000 --- a/clones/lisp/www.cliki.net/Issue FORMAT-RADIX-NONINTEGER.html +++ /dev/null @@ -1,76 +0,0 @@ - - - - - CLiki: Issue FORMAT-RADIX-NONINTEGER - - - - - - - -
    Issue FORMAT-RADIX-NONINTEGER
    Issue: FORMAT-RADIX-NONINTEGER

    Forum: Editorial

    References: Section 22.3.1 of the ANSI CL specification

    Category: CLARIFICATION/CHANGE

    Edit History: 2004-08-01, version 1 created by Paul Dietz

    Status: For CLiki consideration

    -
    Problem Description:

    -
    The ~D format directive is indicated to act like ~A with decimal printing when the argument is not an integer. The ~R, ~B, ~O, and ~X are described as acting like ~D, but it is not stated specifically that they do the same. Also, it is not clear if the common format parameters between ~D and ~A are passed along to ~A (but see the page for ~F, which implies that the width parameter does get passed along from ~D to ~A.)

    -
    Proposal (FORMAT-RADIX-NONINTEGER:UNIFY)

    -
    Make ~R, ~B, ~O, and ~X be consistent with ~D on non-integer arguments. In this situation, ~B, ~O, and ~X should bind *PRINT-BASE* to 2, 8, or 16 (respectively) then invoke ~A on the argument. ~R should bind *PRINT-BASE* to the radix parameter (if present) and invoke ~A. All of these (and ~D) should invoke ~A with the specified mincol and padchar parameters, if they are present, and ignore commachar and comma-interval.

    -
    Test case:

    -

    -
    Rationale:

    -
    This seems to be the consistent thing to do.

    -
    Current practice:

    -

    -
    Cost to Implementors:

    -

    -
    Cost to Users:

    -
    None.

    -
    Cost of Non-Adoption:

    -

    -
    Benefits:

    -
    Increased consistency.

    -
    Aesthetics:

    Discussion: -
      -
    • Bruno Haible supports UNIFY. -
    • -

    - -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Issue FORMAT-TABULATE.html b/clones/lisp/www.cliki.net/Issue FORMAT-TABULATE.html deleted file mode 100644 index 4cfb811f..00000000 --- a/clones/lisp/www.cliki.net/Issue FORMAT-TABULATE.html +++ /dev/null @@ -1,78 +0,0 @@ - - - - - CLiki: Issue FORMAT-TABULATE - - - - - - - -
    Issue FORMAT-TABULATE
    Issue: FORMAT-TABULATE

    Forum: Editorial

    References: FORMAT, CLHS 22.3.6.1

    Category: CLARIFICATION/CHANGE

    Edit history: 2004-07-20, Version 1 by Bruno Haible

    Status: For CLiki consideration

    -
    Problem Description:

    -
    -CLHS 22.3.6.1, paragraph 1 describes what the ~T format directive does. If colnum is less than the current column, colinc is positive, and (mod (- curcol colnum) colinc) is 0, then it is unclear if this directive causes any spaces to be printed (and similarly for the case in PPRINT-TAB). Existing implementations do print at least one space in this case.

    -
    Proposal (FORMAT-TABULATE:AT-LEAST-ONE-SPACE):

    -
    Rewrite the sentence as "If the cursor is already at or beyond column colnum, and colinc is positive, it will output spaces to move it to column colnum+k*colinc for the smallest positive integer k possible; at least one space is output in this case. If the cursor is already at or beyond column colnum, and colinc is zero, no spaces are output."

    -
    Test case:

    -
    (format t "~%abcdef~3,3T|xyz") or (format t "~%abcdef~6,3T|xyz")

    -
    Rationale:

    -
    colinc = 0 is used when it is ok to output no spaces; therefore when colinc > 0, at least one space should be printed.

    -
    Current practice:

    -
    -CLISP already implements proposal AT-LEAST-ONE-SPACE.

    -
    Cost to Implementors:

    -
    Small.

    -
    Cost to Users:

    -
    None.

    -
    Cost of Non-Adoption:

    -
    Some output may be lacking a space when this was not intended by the programmer.

    -
    Benefits:

    -

    -
    Aesthetics:

    Discussion: -
      -
    • Bruno Haible supports proposal AT-LEAST-ONE-SPACE. -
    • -

    - -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Issue INCOMPLETE-CLASS.html b/clones/lisp/www.cliki.net/Issue INCOMPLETE-CLASS.html deleted file mode 100644 index bce56388..00000000 --- a/clones/lisp/www.cliki.net/Issue INCOMPLETE-CLASS.html +++ /dev/null @@ -1,59 +0,0 @@ - - - - - CLiki: Issue INCOMPLETE-CLASS - - - - - - - -
    Issue INCOMPLETE-CLASS
    Issue: INCOMPLETE-CLASS

    References: DEFCLASS, 4.3.1

    Problem Description:

    -DEFCLASS states that for standard classes, "It is not required that the superclasses of a class be defined before the defclass form for that class is evaluated." Let's call such a class with a not-yet-defined superclass an "incomplete class". One can now argue whether an incomplete class is a class or not, i.e. if FIND-CLASS is required to return it, given its name.

      -
    • Since DEFCLASS says "defclass defines a new named class", an incomplete class should be considered as a class.
    • -
    • CLHS 4.3.1 says that a class determines the structure of a set of objects. This is not true for incomplete classes, as they cannot be instantiated.
    • -
    • CLHS 4.3.1 says that each class has a class precedence list. Incomplete classes don't, since the complete list of superclasses is unknown.
    • -
    • CLHS 4.3.1 says that the class t is a superclass of every class except itself. So there should be a chain of direct-superclass relations from an incomplete class to t. But for incomplete classes for which all direct superclasses don't exist yet there is no such chain.
    • -
    -
    -

    You'll want to look into the MOP's FORWARD-REFERENCED-CLASS. Notably, Section 5.3 Inheritance structure of metaobject classes and Section 5.5.2 Class finalization protocol of AMOP talk about it a bit.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Issue LOOP-FINALLY-VARIABLES.html b/clones/lisp/www.cliki.net/Issue LOOP-FINALLY-VARIABLES.html deleted file mode 100644 index df8041ee..00000000 --- a/clones/lisp/www.cliki.net/Issue LOOP-FINALLY-VARIABLES.html +++ /dev/null @@ -1,76 +0,0 @@ - - - - - CLiki: Issue LOOP-FINALLY-VARIABLES - - - - - - - -
    Issue LOOP-FINALLY-VARIABLES
    Issue: LOOP-FINALLY-VARIABLES

    Forum: Editorial

    References: LOOP

    Category: CLARIFICATION/CHANGE

    Edit history: 2004-07-20, Version 1 by Bruno Haible

    Status: For CLiki consideration

    -
    Problem Description:

    -
    It is not clear whether iteration variables are visible in FINALLY clauses, and if so, what their values are. CLHS 6.1.1.4 requires FINALLY clauses to end up in the same tagbody where the loop body is. The forms that bind iteration variables cannot be inside the tagbody as part of the loop body, because the loop prologue wouldn't then be able to access the variables. Thus, the binding forms must be around the tagbody, so the variables must be visible in FINALLY clauses. CLHS 6.1.1.6 may help deduce the values of the variables.

    -
    Proposal (LOOP-FINALLY-VARIABLES:RESTRICT):

    -
    Add to 6.1.7.2 a note saying: FINALLY clauses are processed inside the scope of the bindings of the LOOP variables. However, accessing the FOR-AS variables from a FINALLY clause leads to undefined consequences.

    -
    Test case:

    -
    (loop for i below 10 for j below 10 finally (return (list i j)))

    -
    Rationale:

    -
    This will allow to use COLLECTed lists inside FINALLY, but not variables which are stepped. Implementations vary regarding the values of variables when a termination test succeeds. The suggested wording will allow the compiler to signal a warning when a FOR-AS variable is used inside a FINALLY clause.

    -
    Current practice:

    -
    (loop for i below 10 for j below 10 finally (return (list i j))) => (10 9) in SBCL, => (10 10) in CLISP.

    -
    Cost to Implementors:

    -
    Small. A good implementation will add a warning when a FOR-AS variable is used in FINALLY.

    -
    Cost to Users:

    -
    Fix some code that was not portable anyway.

    -
    Cost of Non-Adoption:

    -
    Unclear specification, leading to bug reports about invalid user code.

    -
    Benefits:

    -
    Clarity.

    -
    Aesthetics:

    Discussion: -
      -
    • Bruno Haible supports RESTRICT. -
    • -

    - -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Issue LOOP-WITH-NIL.html b/clones/lisp/www.cliki.net/Issue LOOP-WITH-NIL.html deleted file mode 100644 index e23545a3..00000000 --- a/clones/lisp/www.cliki.net/Issue LOOP-WITH-NIL.html +++ /dev/null @@ -1,79 +0,0 @@ - - - - - CLiki: Issue LOOP-WITH-NIL - - - - - - - -
    Issue LOOP-WITH-NIL
    Issue: LOOP-WITH-NIL

    Forum: Editorial

    References: LOOP

    Category: CLARIFICATION/CHANGE

    Edit history: 2004-07-20, Version 1 by Bruno Haible

    Status: For CLiki consideration

    -
    Problem Description:

    -
    Is (loop with x of-type nil do (return x)) required to construct and return an "appropriate default value" for type NIL?

    -
    Proposal (LOOP-WITH-NIL:???):

    -

    -
    Test case:

    -

    -
    Rationale:

    -

    -
    Current practice:

    -

    -
    Cost to Implementors:

    -

    -
    Cost to Users:

    -

    -
    Cost of Non-Adoption:

    -

    -
    Benefits:

    -

    -
    Aesthetics:

    Discussion: -
      -
    • Bruno Haible says: In (LOOP WITH var OF-TYPE typespec ...) the typespec can be an arbitrary type specifier, even one that is a non-recognizable empty type, e.g. (AND (SATISFIES NULL) (SATISFIES INTEGERP)). Therefore the macro expander has to be prepared to choose an arbitrary initialization value and to extend the variable's type: -
    • -
    -
    - -
    (LOOP WITH var OF-TYPE (OR typespec (EQL default)) = default ...)
    -I'm not sure this needs to be written explicitly.

    -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Issue MAKE-INSTANCES-OBSOLETE-SYMBOL.html b/clones/lisp/www.cliki.net/Issue MAKE-INSTANCES-OBSOLETE-SYMBOL.html deleted file mode 100644 index b9cbacd1..00000000 --- a/clones/lisp/www.cliki.net/Issue MAKE-INSTANCES-OBSOLETE-SYMBOL.html +++ /dev/null @@ -1,76 +0,0 @@ - - - - - CLiki: Issue MAKE-INSTANCES-OBSOLETE-SYMBOL - - - - - - - -
    Issue MAKE-INSTANCES-OBSOLETE-SYMBOL
    Issue: MAKE-INSTANCES-OBSOLETE-SYMBOL

    Forum: Editorial

    References: MAKE-INSTANCES-OBSOLETE

    Category: CLARIFICATION/CHANGE

    Edit history: 2004-07-20, Version 1 by Bruno Haible

    Status: For CLiki consideration

    -
    Problem Description:

    -
    It is not clear whether the value of MAKE-INSTANCES-OBSOLETE, when called on the name of a class, shall be the name or the class.

    -
    Proposal (MAKE-INSTANCES-OBSOLETE-SYMBOL:RETURN-ARGUMENT):

    -
    Clarify that all methods on MAKE-INSTANCES-OBSOLETE, including user-defined methods, must return the first argument.

    -
    Test case:

    -
    (make-instances-obsolete 'standard-object)

    -
    Rationale:

    -

    -
    Current practice:

    -

    -
    Cost to Implementors:

    -
    Tiny,

    -
    Cost to Users:

    -
    Small: Few people write methods for MAKE-INSTANCES-OBSOLETE.

    -
    Cost of Non-Adoption:

    -
    Unclear spec.

    -
    Benefits:

    -

    -
    Aesthetics:

    Discussion: -
      -
    • Bruno Haible supports proposal RETURN-ARGUMENT. -
    • -

    - -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Issue MERGE-PREDICATE-CALL.html b/clones/lisp/www.cliki.net/Issue MERGE-PREDICATE-CALL.html deleted file mode 100644 index 7cdeee3b..00000000 --- a/clones/lisp/www.cliki.net/Issue MERGE-PREDICATE-CALL.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - CLiki: Issue MERGE-PREDICATE-CALL - - - - - - - -
    Issue MERGE-PREDICATE-CALL
    Issue: MERGE-PREDICATE-CALL

    References: MERGE

    Problem Description:

    -The page for MERGE says

    -The first argument to the predicate function is an element of sequence-1 as returned by the key (if supplied); the second argument is an element of sequence-2 as returned by the key (if supplied). Predicate should return true if and only if its first argument is strictly less than the second (in some appropriate sense). If the first argument is greater than or equal to the second (in the appropriate sense), then predicate should return false. merge considers two elements x and y to be equal if (funcall predicate x y) and (funcall predicate y x) both yield false.

    If this were true for every call to the predicate, this requirement, also given on that page, could not be satisfied (because test for equality requires the argument order to be reversed):

    The merging operation is guaranteed stable; if two or more elements are considered equal by the predicate, then the elements from sequence-1 will precede those from sequence-2 in the result.

    In fact, the optimal algorithm for MERGE (optimal in the sense of minimizing the number of calls to the predicate) will always call the predicate with the arguments in the reverse order (one from sequence-2 followed by one from sequence-1). -

    -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Issue PRINT-LENGTH-AND-STRUCTURES.html b/clones/lisp/www.cliki.net/Issue PRINT-LENGTH-AND-STRUCTURES.html deleted file mode 100644 index 54cb4533..00000000 --- a/clones/lisp/www.cliki.net/Issue PRINT-LENGTH-AND-STRUCTURES.html +++ /dev/null @@ -1,82 +0,0 @@ - - - - - CLiki: Issue PRINT-LENGTH-AND-STRUCTURES - - - - - - - -
    Issue PRINT-LENGTH-AND-STRUCTURES
    Issue: PRINT-LENGTH-AND-STRUCTURES -Forum: Editorial

    References: *PRINT-LENGTH*

    Category: CLARIFICATION/CHANGE

    Edit history: 2004-09-10, initial version by Paul Dietz

    Status: For CLiki consideration

    -
    Problem Description:

    -
    The printer control variable *PRINT-LENGTH* is defined to work on "any object printed with a list-like syntax".

    Clarify if this applies to structure objects printed with the default structure printing method, and, if so, clarify if (1) the structure name counts as an element for the purposes of printing, and (2) how the slot names and slot values count as elements.

    - -
    Current practice:

    -
    Assume the form (defstruct foo a b c) has been evaluated, and (defvar *x* (make-foo)). The form

    (loop for i from 0 to 3 collect (let ((*print-length* i)) (write-to-string *x*)))

    evaluates as follows:

    In Lispworks 4.3.6:

    ("#S(FOO A NIL B NIL C NIL)" "#S(FOO ...)" "#S(FOO A NIL ...)" "#S(FOO A NIL B NIL ...)")

    In ACL 6.2:

    ("#S(...)" "#S(FOO ...)" "#S(FOO :A NIL :B NIL :C NIL)" "#S(FOO :A NIL :B NIL :C NIL)")

    In CLISP:

    ("#S(FOO ...)" "#S(FOO :A NIL :B NIL :C NIL)" "#S(FOO :A NIL :B NIL :C NIL)" "#S(FOO :A NIL :B NIL :C NIL)")

    In CMUCL and SBCL:

    ("#S(FOO ...)" "#S(FOO :A NIL ...)" "#S(FOO :A NIL :B NIL ...)" "#S(FOO :A NIL :B NIL :C NIL)")

    In GCL (2.7.0 branch, cvs head 8/2004):

    ("#S(FOO A NIL B NIL C NIL)" "#S(FOO A NIL B NIL C NIL)" "#S(FOO A NIL B NIL C NIL)" "#S(FOO A NIL B NIL C NIL)")

    -

    - - - - - - - - - - - - -
    Cost to Implementors:

    -
    Small.

    -
    Cost to Users:

    -
    May make structures print more verbosely depending on the interpretation.

    -
    Cost of Non-Adoption:

    -
    Inconsistency.

    -
    Benefits:

    -
    Avoid an inconsistency.

    -
    Aesthetics:

    Discussion:

      -

    - -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Issue PRINTING-ARRAYS-READABLY.html b/clones/lisp/www.cliki.net/Issue PRINTING-ARRAYS-READABLY.html deleted file mode 100644 index 9a23fdeb..00000000 --- a/clones/lisp/www.cliki.net/Issue PRINTING-ARRAYS-READABLY.html +++ /dev/null @@ -1,81 +0,0 @@ - - - - - CLiki: Issue PRINTING-ARRAYS-READABLY - - - - - - - -
    Issue PRINTING-ARRAYS-READABLY
    Issue: PRINTING-ARRAYS-READABLY

    Forum: Editorial

    References: *PRINT-READABLY*, CLHS 22.1.3.7, CLHS 22.1.3.8

    Category: CLARIFICATION/CHANGE

    Edit history: 2004-07-20, Version 1 by Bruno Haible

    Status: For CLiki consideration

    -
    Problem Description:

    -
    The description of *PRINT-READABLY* says that throwing a PRINT-NOT-READABLE error is allowed for certain arrays. CLHS 22.1.3.7 seems to imply that no error is allowed. This should probably be clarified one way or the other.

    -
    Proposal (PRINTING-ARRAYS-READABLY:NO-ERROR):

    -
    Add a sentence to 22.1.3.7: "If *print-readably* is true ... Any vector can be printed readably without signaling an error of type PRINT-NOT-READABLE if all its elements can be printed readably without signaling an error of type PRINT-NOT-READABLE." -And similarly to 22.1.3.8: "If *print-readably* is true ... Any array can be printed readably without signaling an error of type PRINT-NOT-READABLE if all its elements can be printed readably without signaling an error of type PRINT-NOT-READABLE."

    -
    Test case:

    -
    (write (make-array '(3 0 5) :element-type '(unsigned-byte 8)) :readably t)

    -
    Rationale:

    -
    The implementation should ensure that it can print arrays readably.

    -
    Current practice:

    -
    -CLISP supports proposal NO-ERROR. SBCL doesn't.

    -
    Cost to Implementors:

    -
    Define a way to print arrays readably, including when the element-type is not t, or when one of the dimensions is 0.

    -
    Cost to Users:

    -
    None.

    -
    Cost of Non-Adoption:

    -
    -*PRINT-READABLY* is less useful.

    -
    Benefits:

    -
    Makes *PRINT-READABLY* more useful.

    -
    Aesthetics:

    Discussion: -
    - -
    -
      -
    • Bruno Haible supports proposal NO-ERROR. -
    • -

    -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Issue PRINTING-SPACE.html b/clones/lisp/www.cliki.net/Issue PRINTING-SPACE.html deleted file mode 100644 index 15247feb..00000000 --- a/clones/lisp/www.cliki.net/Issue PRINTING-SPACE.html +++ /dev/null @@ -1,86 +0,0 @@ - - - - - CLiki: Issue PRINTING-SPACE - - - - - - - -
    Issue PRINTING-SPACE
    Issue: PRINTING-SPACE

    Forum: Editorial

    References: character printing

    Category: CLARIFICATION/CHANGE

    Edit history: 2004-07-20, Version 1 by Bruno Haible

    Status: For CLiki consideration

    -
    Problem Description:

    -
    -CLHS specifies that when the space character is printed, it prints as "#\ ". This is not what most CL implementations have traditionally done, and brings problems because spaces at the end of line are considered redundant and removed by some text editors.

    -
    Proposal (PRINTING-SPACE:TRADITIONAL):

    -
    Change the behavior of character printing such that invisible graphic characters such as space can be printed by name.

    -
    Test case:

    -
    (prin1-to-string #\space) => "#\\Space"

    -
    Rationale:

    -
    Traditional CL behaviour.

    -
    Current practice:

    -
    (write #\Space :escape t :pretty nil) writes "#\Space" in CLISP 2.32 and CMUCL release-18e-branch. SBCL 0.8.8.20 and CLISP CVS were changed to write "#\ " instead.

    -
    Cost to Implementors:

    -
    None.

    -
    Cost to Users:

    -
    None.

    -
    Cost of Non-Adoption:

    -
    User confusion. Malformed Lisp code when an editor has removed a space at end of line.

    -
    Benefits:

    Aesthetics:

    Discussion:

      -
    • -Bruno Haible says: ANSI CL 2.1.3 and the Glossary define Space to be a graphic character. -(This is unlike ISO C 99, where space is non-graphic but printable.) -I'm against introducing an additional category "printable character", -because that complicates the standard. -I agree that 22.1.3.2 should treat the space character differently.

    • -
    • -Kalle Olavi Niemitalo says: There already is a category of -"printing" -characters, according to the Glossary.

    • -
    • pinterface says: CL does define the concept of standardized character names, of which #\Space is the only graphic character present. Rather than defining a new class of character or treating #\Space specially, would it not be enough to prefer the standardized name for any graphic character which has one? (That said, #\Space is often mentioned specially in the spec's discussions of characters, what's once more?) -
    • -
    -
    - - -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Issue PROG2-RETURN-VALUE.html b/clones/lisp/www.cliki.net/Issue PROG2-RETURN-VALUE.html deleted file mode 100644 index 48a34bca..00000000 --- a/clones/lisp/www.cliki.net/Issue PROG2-RETURN-VALUE.html +++ /dev/null @@ -1,94 +0,0 @@ - - - - - CLiki: Issue PROG2-RETURN-VALUE - - - - - - - -
    Issue PROG2-RETURN-VALUE
    Issue: PROG2-RETURN-VALUE

    Forum: Editorial

    References: PROG2

    Category: CLARIFICATION/CHANGE

    Edit history: 2004-06-16, Version 1 by Christophe Rhodes

    Status: For CLiki consideration

    -
    Problem Description: -
    -
    -The Description section in the specification for prog2 states that it returns the primary value of the first form in the body. This is in contradiction with the Syntax description as well as with common sense.

    -
    Proposal (PROG2-RETURN-VALUE:SECOND-FORM): -
    -
    -Alter the Description section for prog2 to specify that the return value is the primary value of the second form in the body.

    -
    Test case: -
    -
    -(prog2 1 2)

    -
    Rationale: -
    -
    -Bugfix.

    -
    Current practice: -
    -
    -No known implementation is incompatible with proposal PROG2-RETURN-VALUE:SECOND-FORM.

    -
    Cost to Implementors: -
    -
    -None.

    -
    Cost to Users: -
    -
    -None.

    -
    Cost of Non-Adoption: -
    -
    -Continued need to explain the infelicities of the specification editing process.

    -
    Benefits: -
    -
    -Specification will match reality more closely.

    -
    Aesthetics: -
    -

    -
    Discussion: -
    -

    -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Issue READER-MACRO-VALUES.html b/clones/lisp/www.cliki.net/Issue READER-MACRO-VALUES.html deleted file mode 100644 index edabab60..00000000 --- a/clones/lisp/www.cliki.net/Issue READER-MACRO-VALUES.html +++ /dev/null @@ -1,88 +0,0 @@ - - - - - CLiki: Issue READER-MACRO-VALUES - - - - - - - -
    Issue READER-MACRO-VALUES
    Issue: READER-MACRO-VALUES

    Forum: Editorial

    References: CLHS 2.2

    Category: CLARIFICATION/CHANGE

    Edit history: 2004-06-10, Version 1 by Lars Brinkhoff

    Status: For CLiki consideration

    -
    Problem Description: -
    -
    2.2 step 4, says "The reader macro function may return zero values or one value". Is this a strict constraint on the number of values, or does the usual "primary value" rule apply?

    -
    Proposal (READER-MACRO-VALUES:STRICT): -
    -
    Specify that the number of values returned must be 0 or 1.

    -
    Proposal (READER-MACRO-VALUES:LOOSE): -
    -
    Specify that any number of values may be returned; excess values are ignored.

    -
    Test case:

    Rationale: -
    - -
    Mostly this precludes implementations from arbitraily adopting one of the two possible interpretations.

    -
    Current practice: -
    -
    -CLISP implements STRICT: it throws an error if a reader macro returns more than one value.

    -
    Cost to Implementors: -
    -
    Small.

    -
    Cost to Users: -
    -
    None. Portable programs cannot currently rely on any particular behavior.

    -
    Cost of Non-Adoption: -
    -
    Users would be confused about what to expect because implementations might implement either of the two behaviours.

    -
    Benefits: -
    -
    Tighter spec.

    -
    Aesthetics:

    Discussion: -
      -
    • Bruno Haible votes for STRICT. Rationale: The number of return values of a reader macro is part of a protocol. This protocol does not currently support more than one value (but it may in the future, as an extension). Therefore STRICT increases program robustness and keeps the door open for future evolution of the protocol. -
    • -
    -
    - -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Issue RESTART-CASE-EXAMPLE.html b/clones/lisp/www.cliki.net/Issue RESTART-CASE-EXAMPLE.html deleted file mode 100644 index a0746084..00000000 --- a/clones/lisp/www.cliki.net/Issue RESTART-CASE-EXAMPLE.html +++ /dev/null @@ -1,67 +0,0 @@ - - - - - CLiki: Issue RESTART-CASE-EXAMPLE - - - - - - - -
    Issue RESTART-CASE-EXAMPLE
    Issue: RESTART-CASE-EXAMPLE

    Forum: Editorial

    References: RESTART-CASE

    Category: CLARIFICATION/CHANGE

    Edit history: 2004-07-20, Version 1 by Bruno Haible

    Status: For CLiki consideration

    -
    Problem Description:

    -
    -RESTART-CASE examples: read-new-value should use *QUERY-IO* as specified above in the description of :INTERACTIVE option.

    -
    Proposal (RESTART-CASE-EXAMPLE:USE-QUERY-IO):

    -
    Change the example to read -
    -
    -(defun read-new-value ()
    -  (format *query-io* "Enter a new value: ")
    -  (multiple-value-list (eval (read *query-io*))))
    -

    Test case:

    Rationale:

    Current practice:

    N/A

    Cost to Implementors:

    None.

    Cost to Users:

    None.

    Cost of Non-Adoption:

    Buggy example.

    Benefits:

    Consistency.

    Aesthetics:

    Discussion: -
      -
    • Bruno Haible supports proposal USE-QUERY-IO. -
    • -

    -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Issue SOME.html b/clones/lisp/www.cliki.net/Issue SOME.html deleted file mode 100644 index e3db8501..00000000 --- a/clones/lisp/www.cliki.net/Issue SOME.html +++ /dev/null @@ -1,84 +0,0 @@ - - - - - CLiki: Issue SOME - - - - - - - -
    Issue SOME
    Issue: SOME

    On this page is only an aligned comparison of both descriptions for the functions EVERY, SOME, NOTEVERY, and NOTANY, the one in the CLHS and the CLtL2 version, for your convenience. The issue itself is only included on the page Proposed ANSI Revisions and Clarifications to avoid a mere copy that is to be maintained separately.

    clhs:  every, some, notevery, and notany test elements of sequences for satisfaction of a given predicate.
    -clhs:  The first argument to predicate is an element of the first sequence; each succeeding argument is an element of a succeeding sequence.
    -
    -cltl2: These are all predicates. The predicate must take as many arguments as there are sequences provided.
    -
    -clhs:      Predicate is first applied to the elements with index 0 in each of the sequences, and possibly then to the elements with index 1,
    -cltl2: The predicate is first applied to the elements with index 0 in each of the sequences, and possibly then to the elements with index 1,
    -clhs:  and so on, until a termination criterion is met or the end of the shortest of the sequences is reached.
    -cltl2: and so on, until a termination criterion is met or the end of the shortest of the sequences is reached.
    -
    -cltl2: If the predicate has side effects, it can count on being called first on all the elements numbered 0, then on all those numbered 1, and so on.
    -
    -clhs:  every returns false as soon as any invocation of predicate returns false. If the end of a sequence is reached, every returns true.
    -cltl2: every returns nil   as soon as any invocation of predicate returns nil.   If the end of a sequence is reached, every returns a non-nil value.
    -clhs:  Thus,                            every returns true if and only if every invocation of predicate returns true.
    -cltl2: Thus, considered as a predicate, it    is      true             if every invocation of predicate is      true.
    -
    -clhs:  some returns the first non-nil value which is returned by an invocation of predicate.
    -cltl2: some returns as soon as any invocation of predicate returns a non-nil value; some returns that value.
    -clhs:  If the end of a sequence is reached without any invocation of the predicate returning true, some returns false.
    -cltl2: If the end of a sequence is reached,                                                        some returns nil.
    -clhs:  Thus,                            some returns true if and only if some invocation of predicate returns true.
    -cltl2: Thus, considered as a predicate, it   is      true if             some invocation of predicate is      true.
    -
    -clhs:  notany returns false as soon as any invocation of predicate returns true.            If the end of a sequence is reached, notany returns true.
    -cltl2: notany returns nil   as soon as any invocation of predicate returns a non-nil value. If the end of a sequence is reached, notany returns a non-nil value.
    -clhs:  Thus,                            notany returns true if and only if it is not the case that any invocation of predicate returns true.
    -cltl2: Thus, considered as a predicate, it     is      true if                   no                    invocation of predicate is      true.
    -
    -clhs:  notevery returns true            as soon as any invocation of predicate returns false. If the end of a sequence is reached, notevery returns false.
    -cltl2: notevery returns a non-nil value as soon as any invocation of predicate returns nil.   If the end of a sequence is reached, notevery returns nil.
    -clhs:  Thus,                            notevery returns true if and only if it is not the case that every invocation of predicate returns true.
    -cltl2: Thus, considered as a predicate, it       is      true if                   not               every invocation of predicate is      true.
    -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Issue STANDARD-PACKAGE-NICKNAMES.html b/clones/lisp/www.cliki.net/Issue STANDARD-PACKAGE-NICKNAMES.html deleted file mode 100644 index 114e9e9c..00000000 --- a/clones/lisp/www.cliki.net/Issue STANDARD-PACKAGE-NICKNAMES.html +++ /dev/null @@ -1,88 +0,0 @@ - - - - - CLiki: Issue STANDARD-PACKAGE-NICKNAMES - - - - - - - -
    Issue STANDARD-PACKAGE-NICKNAMES
    Issue: STANDARD-PACKAGE-NICKNAMES

    Forum: Editorial

    References: CLHS 11.1.2

    Category: CLARIFICATION/CHANGE

    Edit history: 2004-07-20, Version 1 by Bruno Haible

    Status: For CLiki consideration

    -
    Problem Description:

    -
    -CLHS 11.1.2 gives 'a summary of the names and nicknames of those standardized packages'. Clarify whether this list is exhaustive, or if an implementation may provide other nicknames.

    -
    Proposal (STANDARD-PACKAGE-NICKNAMES:EXHAUSTIVE):

    -
    Specify in CLHS 11.1.2 that "Standardized packages don't have other nicknames than -the ones listed here."

    -
    Rationale:

    -
    This appears to be what the text meant.

    -
    Proposal (STANDARD-PACKAGE-NICKNAMES:ALLOW-MORE):

    -
    Specify in CLHS 11.1.2 that "Implementation can add additional nicknames."

    -
    Rationale:

    -
    This allows for CLtL1 backward compatibility: (in-package "USER") doing the same thing as (in-package "CL-USER").

    -
    Test case:

    -
    (package-nicknames "COMMON-LISP") -
    (package-nicknames "COMMON-LISP-USER") -
    (package-nicknames "KEYWORD")

    -
    Current practice:

    -
    -SBCL implements EXHAUSTIVE, CLISP doesn't.

    -
    Cost to Implementors:

    -
    EXHAUSTIVE can be expensive for implementors: they may need to change hundreds of package references that use their private nicknames. ALLOW-MORE has no cost.

    -
    Cost to Users:

    -
    EXHAUSTIVE can be expensive for users in CLtL1 backward compatibility mode. ALLOW-MORE can cause confusion if different implementations use the same nicknames for different packages.

    -
    Cost of Non-Adoption:

    -
    Unclear spec.

    -
    Benefits:

    -
    EXHAUSTIVE: Less differences between implementations. ALLOW-MORE: Backward compatibility.

    -
    Aesthetics:

    Discussion: -
      -
    • Bruno Haible supports proposal ALLOW-MORE. -
    • -
    • Christophe Rhodes supports EXHAUSTIVE. The CLtL1 compatibility afforded by making "USER" a nickname for "COMMON-LISP-USER" is no more than a chimera: since the semantics of some of the operators is different, the compatibility provided is poor. Far better CLtL1 compatibility will be available by having a separate "USER" package, importing most, but not all, of the "COMMON-LISP-USER" symbols, and providing separate implementations of those which were deleted or had their semantics changed. -
    • -
    -
    - -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Issue STANDARDIZED-RESTART-NAMES.html b/clones/lisp/www.cliki.net/Issue STANDARDIZED-RESTART-NAMES.html deleted file mode 100644 index f7e65e6b..00000000 --- a/clones/lisp/www.cliki.net/Issue STANDARDIZED-RESTART-NAMES.html +++ /dev/null @@ -1,85 +0,0 @@ - - - - - CLiki: Issue STANDARDIZED-RESTART-NAMES - - - - - - - -
    Issue STANDARDIZED-RESTART-NAMES
    Issue: STANDARDIZED-RESTART-NAMES

    Forum: Editorial

    References: RESTART-BIND, RESTART-CASE, WITH-SIMPLE-RESTART

    Category: CLARIFICATION/CHANGE

    Edit history: 2004-06-16, Version 1 by Christophe Rhodes

    Status: For CLiki consideration

    -
    Problem Description: -
    -
    -In the restrictions on conforming programs, section 11.1.2.1.2, point 18, it is specified that except where specifically allowed, the consequences are undefined if any symbols in the Common Lisp package are bound as a restart name. However, no such permission is given anywhere, even for the standardized restart names; strictly, this means that the user is unable to participate in the protocols defined by those restarts portably, by binding those names where it makes semantic sense.

    -
    Proposal (STANDARDIZED-RESTART-NAMES:ALLOW-BINDING): -
    -
    -Explicitly allow binding the standardized restart names (abort, continue, muffle-warning, store-value and use-value) as restarts names by conforming code.

    -
    Test case: -
    -
    -
    -
    -(defun read-eval-print-loop (level)
    -   (with-simple-restart (abort "Exit command level ~D." level)
    -     (loop
    -       (with-simple-restart (abort "Return to command level ~D." level)
    -         (let ((form (prog2 (fresh-line) (read) (fresh-line))))
    -           (prin1 (eval form)))))))
    -

    Rationale: -
    -read-eval-print-loop, above, is an example from the ANSI standard; it was clearly intended that this should work.

    Current practice: -
    -The author knows of no implementation which is incompatible with proposal STANDARDIZED-RESTART-NAMES:ALLOW-BINDING.

    Cost to Implementors: -
    -Minimal.

    Cost to Users: -
    -None.

    Cost of Non-Adoption: -
    -Continued inability to participate in the protocols defined by the ANSI standard.

    Benefits: -
    -Enhanced portability of code, and enhanced ability of disparate programs to cooperate in protocols.

    Aesthetics: -

    Discussion: -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Issue THE-VALUES.html b/clones/lisp/www.cliki.net/Issue THE-VALUES.html deleted file mode 100644 index abe86f8e..00000000 --- a/clones/lisp/www.cliki.net/Issue THE-VALUES.html +++ /dev/null @@ -1,92 +0,0 @@ - - - - - CLiki: Issue THE-VALUES - - - - - - - -
    Issue THE-VALUES
    Issue: THE-VALUES

    Forum: Editorial

    References: THE, VALUES

    Category: CLARIFICATION/CHANGE

    -Edit history: 2004-07-20, Version 1 by Bruno Haible
    -              2004-07-19, Version 2 by Christophe Rhodes (add LAMBDA-LIST-KEYWORDS-MULTIPLE-VALUE-CALL)
    -

    Status: For CLiki consideration

    -
    Problem Description:

    -
    The entry for THE seems to imply that the number of values is not important. However, the entry for VALUES says that using &optional or &rest constrains the number of values.

    -
    Proposal (THE-VALUES:MINIMAL-CLARIFY):

    -
    Add a note to the VALUES description, reminding that THE does not complain about a wrong number of values.

    -
    Test case:

    -

    -
    Rationale:

    -
    The previous issue THE-VALUES:RETURN-NUMBER-RECEIVED is clear.

    -
    Proposal (THE-VALUES:LAMBDA-LIST-KEYWORDS-MULTIPLE-VALUE-CALL):

    -
    Add a note to the THE description, reminding that adding lambda list keywords to a THE VALUES type specifier implies a stronger contract on the return types: those that can be passed to MULTIPLE-VALUE-CALL without error

    -
    Test case:

    -
    (the (values integer &optional) (values 3 3))

    -
    Rationale:

    -
    The previous issue THE-VALUES:RETURN-NUMBER-RECEIVED refers only to VALUES types without lambda list keywords; it is not clear at all that the extended values types were considered by the issue writers. Without this proposal, there is no way of using THE for constraining the number of values received.

    -
    Current practice:

    -

    -
    Cost to Implementors:

    -

    -
    Cost to Users:

    -

    -
    Cost of Non-Adoption:

    -

    -
    Benefits:

    -

    -
    Aesthetics:

    Discussion: -
      -
    • Bruno Haible supports proposal MINIMAL-CLARIFY. -
    • -
    • Bruno Haible says: Proposal LAMBDA-LIST-KEYWORDS-MULTIPLE-VALUE-CALL appears to introduce a voluntary divergence between lambda lists with lambda list keywords and those without. For example, under this proposal, the type (values integer &optional) is different from the type (values integer). I'm opposed to this change, because
        -
      1. in all other situations &optional at the end of a lambda list is a nop,
      2. -
      3. it disagrees with values -
      4. -
      . Also this proposal reverts part of the THE-VALUES:RETURN-NUMBER-RECEIVED vote, which says that the number of values is not checked by THE. -
    • -
    -
    - -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Issue TIME-ALWAYS-PRINTS.html b/clones/lisp/www.cliki.net/Issue TIME-ALWAYS-PRINTS.html deleted file mode 100644 index cde0c183..00000000 --- a/clones/lisp/www.cliki.net/Issue TIME-ALWAYS-PRINTS.html +++ /dev/null @@ -1,70 +0,0 @@ - - - - - CLiki: Issue TIME-ALWAYS-PRINTS - - - - - - - -
    Issue TIME-ALWAYS-PRINTS
    Issue: TIME-ALWAYS-PRINTS

    Forum: Editorial

    Category: CLARIFICATION/CHANGE

    Edit history: 2004-12-14, Version 1 by Paul Dietz

    Status: For CLiki consideration

    -
    Problem Description:

    -
    The description of the TIME macro makes it unclear if the macro is expected to print when execution of the form is over, or only if the form terminates normally returning zero or more values. Also, it is unclear if the same kind of information must be provided by the macro in all executions.

    -
    Proposal (TIME-ALWAYS-PRINTS:ALWAYS):

    -
    Specify that the information printed by TIME has the same format and content regardless of how the enclosed form terminates, and that the printing occurs when control is transfered from the form by normal return or non-local transfer of control (which does not include conditions until the stack is unwound.)

    -
    Test case:

    -
    -
    -
    -(let ((s (with-output-to-string
    -	     (*trace-output*)
    -	     (block done
    -	       (time (return-from done nil))))))
    -    (= (length s) 0))
    -==> NIL
    -

    Rationale:

    There is otherwise no good way to time forms that performance nonlocal transfers of control.

    Current practice:

    Some lisps (Lispworks, CLISP) satisfy the new proposal. Others (CMUCL, SBCL, Allegro CL, GCL) do not print in this situation.

    Cost to Implementors:

    Duane Rettig argues that the change will cause an unacceptable performance perturbation due to the effects of the required UNWIND-PROTECT on the compilation of the enclosed form, or the effects of enclosing the form in a lambda expression to be passed to an internal function implementing the timing.

    Cost to Users:

    Possible loss of accuracy when timing compiled TIME forms due to perturbation of the code generated by the compiler.

    Cost of Non-Adoption:

    Inconsistency of implementations.

    Benefits:

    Improved consistency and ability to time forms that perform arbitrary nonlocal transfers of control.

    Aesthetics:

    Discussion:

      -
    • Duane Rettig has objected strongly to a test reflecting the proposed behavior.

    • -
    -
    -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Issue VALUES-&ALLOW-OTHER-KEYS.html b/clones/lisp/www.cliki.net/Issue VALUES-&ALLOW-OTHER-KEYS.html deleted file mode 100644 index e8ad3cee..00000000 --- a/clones/lisp/www.cliki.net/Issue VALUES-&ALLOW-OTHER-KEYS.html +++ /dev/null @@ -1,77 +0,0 @@ - - - - - CLiki: Issue VALUES-&ALLOW-OTHER-KEYS - - - - - - - -
    Issue VALUES-&ALLOW-OTHER-KEYS
    Issue: VALUES-&ALLOW-OTHER-KEYS

    Forum: Editorial

    References: VALUES

    Category: CLARIFICATION/CHANGE

    Edit history: 2004-07-20, Version 1 by Bruno Haible

    Status: For CLiki consideration

    -
    Problem Description:

    -
    (values &allow-other-keys) matches the syntax for the VALUES type specifier, but the description doesn't say what it means. Because the syntax does not allow &key, &allow-other-keys was probably a mistake.

    -
    Proposal (VALUES-&ALLOW-OTHER-KEYS:DISALLOW):

    -
    Don't mention &ALLOW-OTHER-KEYS as being allowed in the VALUES type specifier.

    -
    Test case:

    -

    -
    Rationale:

    -

    -
    Current practice:

    -
    -CLISP supports &KEY and &ALLOW-OTHER-KEYS.

    -
    Cost to Implementors:

    -
    None.

    -
    Cost to Users:

    -
    None.

    -
    Cost of Non-Adoption:

    -
    Unclear spec.

    -
    Benefits:

    -

    -
    Aesthetics:

    Discussion: -
      -
    • Bruno Haible supports proposal DISALLOW. -
    • -

    - -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Issue WITH-HASH-TABLE-ITERATOR-BINDING-TYPE.html b/clones/lisp/www.cliki.net/Issue WITH-HASH-TABLE-ITERATOR-BINDING-TYPE.html deleted file mode 100644 index a0374519..00000000 --- a/clones/lisp/www.cliki.net/Issue WITH-HASH-TABLE-ITERATOR-BINDING-TYPE.html +++ /dev/null @@ -1,76 +0,0 @@ - - - - - CLiki: Issue WITH-HASH-TABLE-ITERATOR-BINDING-TYPE - - - - - - - -
    Issue WITH-HASH-TABLE-ITERATOR-BINDING-TYPE
    Issue: WITH-HASH-TABLE-ITERATOR-BINDING-TYPE

    Forum: Editorial

    References: WITH-HASH-TABLE-ITERATOR

    Category: CLARIFICATION/CHANGE

    Edit history: 2004-07-20, Version 1 by Bruno Haible

    Status: For CLiki consideration

    -
    Problem Description:

    -
    The Exceptional Situations for WITH-HASH-TABLE-ITERATOR claim it establishes a local function. Should be a local macro.

    -
    Proposal (WITH-HASH-TABLE-ITERATOR-BINDING-TYPE:???):

    -

    -
    Test case:

    -

    -
    Rationale:

    -

    -
    Current practice:

    -

    -
    Cost to Implementors:

    -

    -
    Cost to Users:

    -

    -
    Cost of Non-Adoption:

    -

    -
    Benefits:

    -

    -
    Aesthetics:

    Discussion: -
      -
    • Bruno Haible says: I agree, should be local macro. But since macros cannot be called, it needs reformulation. -
    • -

    - -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Issue template.html b/clones/lisp/www.cliki.net/Issue template.html deleted file mode 100644 index 03a16a18..00000000 --- a/clones/lisp/www.cliki.net/Issue template.html +++ /dev/null @@ -1,85 +0,0 @@ - - - - - CLiki: Issue template - - - - - - - -
    Issue template
    Issue: This is a template for new issues. Replace this with a name.

    Forum:

    References:

    Category:

    Edit history:

    Status: For CLiki consideration

    -
    Problem Description: -
    -

    -
    Proposal: -
    -

    -
    Test case: -
    -

    -
    Rationale: -
    -

    -
    Current practice: -
    -

    -
    Cost to Implementors: -
    -

    -
    Cost to Users: -
    -

    -
    Cost of Non-Adoption: -
    -

    -
    Benefits: -
    -

    -
    Aesthetics: -
    -

    -
    Discussion: -
    -

    -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Issue.html b/clones/lisp/www.cliki.net/Issue.html deleted file mode 100644 index e819e1f8..00000000 --- a/clones/lisp/www.cliki.net/Issue.html +++ /dev/null @@ -1,241 +0,0 @@ - - - - - CLiki: Issue - - - - - - - -
    Issue
    Proposed issues, perhaps for a future revision of the Common Lisp standard:

    -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Issue: FASL-DISTRIBUTION-BY-DEFAULT.html b/clones/lisp/www.cliki.net/Issue: FASL-DISTRIBUTION-BY-DEFAULT.html deleted file mode 100644 index 5fca7f68..00000000 --- a/clones/lisp/www.cliki.net/Issue: FASL-DISTRIBUTION-BY-DEFAULT.html +++ /dev/null @@ -1,60 +0,0 @@ - - - - - CLiki: Issue: FASL-DISTRIBUTION-BY-DEFAULT - - - - - - - -
    Issue: FASL-DISTRIBUTION-BY-DEFAULT
    Rahul Jain has a proposal to make the distributions carry SBCL .fasl files, -along with the sources, so as to facilitate a hassle reduction for the end -users.

    Obviously, this will require Debian and such to bump package versions and -force users to update all of their CL packages with every SBCL release.

    This is what people have to say about it, so far:

    -<_deepfire> What people think about rahul's idea to distribute programs as fasls? Of course that will mean new package versions of everything, eevery time SBCL is updated in debian.
    -<Krystof> that's no fun. Distribute heapdumps instead!
    -<cmm> it's not a bad idea.
    -<lichtblau> loading McCLIM from fasls is slow enough that you might as well compile the sources and be on the safe side -


    -issue
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Iterate.html b/clones/lisp/www.cliki.net/Iterate.html deleted file mode 100644 index fe9edc06..00000000 --- a/clones/lisp/www.cliki.net/Iterate.html +++ /dev/null @@ -1,75 +0,0 @@ - - - - - CLiki: iterate - - - - - - - -
    iterate
    iterate is a lispy and extensible replacement for the LOOP macro.

    It was written by Jonathan Amsterdam at MIT and recently ported to Common Lisp.

    The canonical site for information about iterate is at https://common-lisp.net/project/iterate/.

    Some examples:

    (iterate (for (key . item) in alist) - (collect key into keys) - (collect item into items) - (finally (return (values keys items))))

    collects keys and items of an alist into two values

    It also supports generators:

    (iterate (generate i from 0 to 6) - (for (key . value) in '((a . 2) (zero . 10) (one . 20) (d . 5))) - (when (>= value 10) - (collect (cons key (next i))))) - -=> ((ZERO . 0) (ONE . 1))

    and allows easy finding of extrema:

    (iterate (for elt in list-of-lists) - (finding elt maximizing (length elt)))

    finds the longest list in a list of lists and generates pretty fast -code, too. (-:

    Related


    -language extension
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Ivan A. Kudryavtsev.html b/clones/lisp/www.cliki.net/Ivan A. Kudryavtsev.html deleted file mode 100644 index 805330dd..00000000 --- a/clones/lisp/www.cliki.net/Ivan A. Kudryavtsev.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: Ivan A. Kudryavtsev - - - - - - - -
    Ivan A. Kudryavtsev
    === Ivan A. Kudryavtsev === -Software developer from Russia. Born in 1983. -Study common lisp to make it applicable in my work.

    person

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Ivan Toshkov.html b/clones/lisp/www.cliki.net/Ivan Toshkov.html deleted file mode 100644 index 33701ba5..00000000 --- a/clones/lisp/www.cliki.net/Ivan Toshkov.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Ivan Toshkov - - - - - - - -
    Ivan Toshkov
    Ivan Toshkov is said to be a person. His personal blog contains some mentions of Lisp, so it may be relevant here. :)
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/JACOL.html b/clones/lisp/www.cliki.net/JACOL.html deleted file mode 100644 index 5e3609e3..00000000 --- a/clones/lisp/www.cliki.net/JACOL.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - CLiki: JACOL - - - - - - - -
    JACOL
    The JACOL system can be used to link Java and Common Lisp applications. -From its webpage: -"JACOL is a framework for allowing Java and Common Lisp to interoperate. It's -intended use is to enable Common Lisp to function as an extension language for Java. But, it can also be used to expose Java APIs (such as Swing and DOM) to Lisp application."

    It's available at: -http://jacol.sourceforge.net/

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/JARW.html b/clones/lisp/www.cliki.net/JARW.html deleted file mode 100644 index 61f9864f..00000000 --- a/clones/lisp/www.cliki.net/JARW.html +++ /dev/null @@ -1,80 +0,0 @@ - - - - - CLiki: JARW - - - - - - - -
    JARW
    Dr John AR Williams' utilities.

    Includes the following packages: -

      -
    • :jarw.lib -provides idoms such as while and when-bind as well as functions to convert between different ways of implementing mappings in common lisp. -
    • -
    • :jarw.io -provides io functions including printing readably CLOS classes and other LISP structures, for managing temporary files, logging operations, and io operations for reading and writing standard internet style headers on streams. -
    • -
    • :jarw.string -provides operations for splitting and joining lists from strings, word wrapping, string concatenation, folding strings on line breaks, the Boyer-Moore-Horspool search algorithm, algorithms for creating prefix tables and doing efficient prefix matches against that table, and conversion to and from Roman numerals -
    • -
    • :jarw.parse -main extensible library for converting strings (from external sources such as users or internet protocols) into internal data types (parse-input) according to type conversion specifications and, to convert internal types into strings (format-output) with the same conversion specification -
    • -
    • :jarw.properties -utilities for hierarchical property sets. -
    • -
    • :jarw.search -Search indexing API and keyword searching -
    • -
    • :jarw.math -some mathematical functions -
    • -
    • :crypt -Implementation of the unix crypt function in COmmon Lisp -
    • -
    • :jarw.mop -exports the MOP API -
    • -

    Homepage: http://www.jarw.org.uk/lisp/jarw.html

    Source repository: http://www.jarw.org.uk/lisp/cl-jarw.git

    License: ???

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/JCh.html b/clones/lisp/www.cliki.net/JCh.html deleted file mode 100644 index bfc5ab5e..00000000 --- a/clones/lisp/www.cliki.net/JCh.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: JCh - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/JPL-QUEUES.html b/clones/lisp/www.cliki.net/JPL-QUEUES.html deleted file mode 100644 index 725feb6a..00000000 --- a/clones/lisp/www.cliki.net/JPL-QUEUES.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - CLiki: jpl-queues - - - - - - - -
    jpl-queues
    jpl-queues is a library implementing a few different kinds of queue data structures.

    These kinds of queues are provided:

      -
    • Bounded and unbounded FIFO queues.
    • -
    • Lossy bounded FIFO queues that drop elements when full.
    • -
    • Unbounded random-order queues that use less memory than unbounded FIFO queues.
    • -

    Additionally, a synchronization wrapper is provided to make any queue conforming to the jpl-queues API thread-safe for lightweight multithreading applications. (See Calispel for a more sophisticated CL multithreaded message-passing library with timeouts and alternation among several blockable channels.)

    jpl-queues is used by Calispel.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/JSCL.html b/clones/lisp/www.cliki.net/JSCL.html deleted file mode 100644 index 44dafbe5..00000000 --- a/clones/lisp/www.cliki.net/JSCL.html +++ /dev/null @@ -1,63 +0,0 @@ - - - - - CLiki: JSCL - - - - - - - -
    JSCL
    jscl is the Common Lisp to JavaScript Compiler, a subset of Common Lisp implementation.

    JSCL is a Common Lisp to Javascript compiler, which is bootstrapped from Common Lisp and executed from the browser.

    JSCL is and will be a subset of Common Lisp. Of course it is far from complete, but it supports partially most common special operators, functions and macros. In particular:

    - Multiple values -- Explicit control transfers tagbody and go -- Static and dynamic non local exit catch, throw; block, return-from. -- Lexical and special variables. However, declare expressions are missing, but you can proclaim special variables. -- Optional and keyword arguments -- SETF places -- Packages -- The LOOP macro -- CLOS -- Others

    The compiler is very verbose, some simple optimizations or minification could help to deal with it.

    Most of the above features are incomplete. The major features that are still missing are:

    - The format function

    Feel free to hack it yourself

    -License: GPL3 -
    -Project GitHub

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/JSON.html b/clones/lisp/www.cliki.net/JSON.html deleted file mode 100644 index ecfe77d5..00000000 --- a/clones/lisp/www.cliki.net/JSON.html +++ /dev/null @@ -1,98 +0,0 @@ - - - - - CLiki: JSON - - - - - - - -
    JSON
    JSON (JavaScript Object Notation) relatively easy-to-read and easy-to-parse format for encapsulating data. The official standard can be read here.

    Related article: -Comparing cl-json, st-json, yason, jsown, jonathan and com.gigamonkeys.json -- a survey of JSON libraries for Common Lisp

    JSON related pages on CLiki: -

      -
    • -cl-grip - - cl-grip is a high-level logging system for Common Lisp, focusing on a clear user interface, support for flexible structured logging, and easy extensibility for different backends to support direct logging to various inputs -
    • -
    • -cl-json - - cl-json is a JSON parser and generator -
    • -
    • -CLJWT - - A library for issuing and validating JSON Web Tokens -
    • -
    • -HT-AJAX - - HT-AJAX is a small AJAX web framework for Hunchentoot web server that allows transparent calls from Javascript in web pages to the server side Lisp code -
    • -
    • -Jonathan - - Jonathan is a fast JSON encoder/decoder -
    • -
    • -json-streams - - json-streams is a Common Lisp library for reading and writing JSON text -
    • -
    • -json-template - - An implementation of JSON Template in Common Lisp -
    • -
    • -jsown - - A fast JSON parser and generator -
    • -
    • -monkeylib-json - - monkeylib-json is a library for reading and writing JSON -
    • -
    • -st-json - - ST-JSON is a JSON encoding and decoding library -
    • -
    • -YASON - - YASON is a Common Lisp library for encoding and decoding data in the JSON interchange format -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/JSS.html b/clones/lisp/www.cliki.net/JSS.html deleted file mode 100644 index 34c4affc..00000000 --- a/clones/lisp/www.cliki.net/JSS.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: jss - - - - - - - -
    jss
    jss is an extension for ABCL that makes it easier for me(AlanRuttenberg) to write lisp code that calls java libraries. jss stands for java syntax solution if I'm using it to write, and java syntax sucks when I have been reading java in it's usual form.

    It can be downloaded from my subversion repository.

    Be a pal: Make jss work in other common lisps that can call Java. :)

    This tool depends on jscheme, a tiny 600k library which you should grab from http://jscheme.sourceforge.net/jscheme/main.html and put in your class path. JSS makes ABCL fun. -- fusss


    -Java
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Jabberwocky.html b/clones/lisp/www.cliki.net/Jabberwocky.html deleted file mode 100644 index b87e948a..00000000 --- a/clones/lisp/www.cliki.net/Jabberwocky.html +++ /dev/null @@ -1,88 +0,0 @@ - - - - - CLiki: Jabberwocky - - - - - - - -
    Jabberwocky
    Important: I have decided to not develop Jabberwocky any further, if minor bugs are discovered, I'm prepared to solve them however. If anyone feels the need to take over the project, feel free to send me a message (I've corrected my e-mail address) and I will happely handle over the project. - -
    -
    -
    -Jabberwocky was an IDE for LISP, which contains the following components: -
      -
    • A Lisp-aware editor (syntax coloring, parentheses matching, indentation, source analyzer, ...).
    • -
    • A source level debugger (based on lispdebug) which works by instrumentation.
    • -
    • A project explorer to manage your sources.
    • -
    • A interaction buffer to interact with the Lisp system
    • -
    -The following Lisp implementations are supported: - -The releases of Jabberwocky have branched into a stable branch (releases 1.0.x) and a development (or unstable) branch (releases 2.0.x). The current development release contains support for Allegro CL and SBCL. Support for GCL will be added in the near future (when I manage to get it compiled on my machine). There is a list of planned features available at the Jabberwocky Home Page.

    Jabberwocky runs on: -

      -
    • -Linux (CLISP and CMUCL supported)
    • -
    • Windows 9x, ME, NT, 2000, or XP (only CLISP is supported)
    • -
    • Other UNIXes: the Jabberwocky user interface is Java-based; so it should run on every UNIX which has the correct JRE or SDK)
    • -
    -The user interface is written in Java. -
      -
    • J2SE 1.4 JRE or higher is required for the binary version (1.4.1 is preferred)
    • -
    • J2SE 1.4 SDK or higher is required for the source version (1.4.1 is preferred)
    • -
    -Version 1.0 of Jabberwocky has been released, If you find a bug please e-mail a bug report to Marc Mertens.

    You can find Jabberwocky at the Jabberwocky Home Page.

    Marc Mertens

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Jack Unrue.html b/clones/lisp/www.cliki.net/Jack Unrue.html deleted file mode 100644 index c3a6ec0f..00000000 --- a/clones/lisp/www.cliki.net/Jack Unrue.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Jack Unrue - - - - - - - -
    Jack Unrue
    I am a software developer living and working in Colorado, USA. My primary Common Lisp project is Graphic-Forms. I am a Person and I have a blog. -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/James A. Crippen.html b/clones/lisp/www.cliki.net/James A. Crippen.html deleted file mode 100644 index 7ac2a94d..00000000 --- a/clones/lisp/www.cliki.net/James A. Crippen.html +++ /dev/null @@ -1,59 +0,0 @@ - - - - - CLiki: James A. Crippen - - - - - - - -
    James A. Crippen
    James A. Crippen is a Person born in 1979 in Anchorage, Alaska, USA.

    Current projects include: -

      -
    • LMud - A CL-based MUD.
    • -
    • LTELNETD - A CL-based telnet listener. Eventually part of LMud.
    • -
    • FooLisp - A Lisp-oriented virtual-machine in Common Lisp, for experimenting with Lisp implementation.
    • -
    • -Exploder - An emulator for TI Explorer II Lisp Machines hardware.
    • -
    • Assorted hacking on Movitz, including improved RTC and timer support.
    • -

    Most of the above are terminal vaporware, never suitable for the eyes of the public. Maybe one day I'll actually finish something.

    I also maintain LAMBDA.TXT, a file of Lisp-related cookies derived from MIT-AI's LINS 463, BSD fortune(6), comp.lang.lisp, and other miscellaneous sources.

    Someday I'll be bothered enough by Emacs lossage to turn Goatee into a real CL-Emacs, but I'm not bothered enough yet, especially because of SLIME.

    Mail: (@ (. gmail com) jcrippen)

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/James Wright.html b/clones/lisp/www.cliki.net/James Wright.html deleted file mode 100644 index 254cf45e..00000000 --- a/clones/lisp/www.cliki.net/James Wright.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: James Wright - - - - - - - -
    James Wright
    I, James Wright, am a Person living in Vancouver, BC.

    I develop software for a living (although sadly not in Lisp). I'm also the author of the jwacs project.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Jan Hoekstra.html b/clones/lisp/www.cliki.net/Jan Hoekstra.html deleted file mode 100644 index b65ac893..00000000 --- a/clones/lisp/www.cliki.net/Jan Hoekstra.html +++ /dev/null @@ -1,61 +0,0 @@ - - - - - CLiki: Jan Hoekstra - - - - - - - -
    Jan Hoekstra

    Should be fed fun ideas and carbonated drinks only.

    This person is using CL for personal projects since 2020.
    -He is both a (Linux/BSD) system administrator and developer.
    -Still very much a young Lisp noob, please excuse him if he screws something up.

    Projects on the (CL) to do list: -

      -
    • Write a game with cl-sdl2 -
    • -
    • Port wave descent function
    • -
    • Write encryption algorithms for fun
    • -
    • ?
    • -
    • git gud
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Janis Dzerins.html b/clones/lisp/www.cliki.net/Janis Dzerins.html deleted file mode 100644 index ab58d63a..00000000 --- a/clones/lisp/www.cliki.net/Janis Dzerins.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Janis Dzerins - - - - - - - -
    Janis Dzerins
    My email is jonis@latnet.lv.

    Something can be found here.

    person

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Jason Stover.html b/clones/lisp/www.cliki.net/Jason Stover.html deleted file mode 100644 index c02d7d56..00000000 --- a/clones/lisp/www.cliki.net/Jason Stover.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Jason Stover - - - - - - - -
    Jason Stover
    A statistician who likes Lisp, and plays a didgeridoo and a banjo. Jason Stover has claimed that he could too live in space, although he is less certain about the problem of being shot with a Nerf cannon in space. Jason Stover can make an astonishing noise with his nose and should get in touch with his old college roommate, whose email address is pweasels@hotmail.com


    -Category Person
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Jatha.html b/clones/lisp/www.cliki.net/Jatha.html deleted file mode 100644 index 3b93f363..00000000 --- a/clones/lisp/www.cliki.net/Jatha.html +++ /dev/null @@ -1,66 +0,0 @@ - - - - - CLiki: Jatha - - - - - - - -
    Jatha
    Jatha is a Java library that implements a fairly large subset of Common LISP, including most of the datatypes (e.g. packages, bignums) and their associated methods.

    Jatha Overview

      -
    • Contains a large subset of Common LISP. Not a toy implementation. -
    • -
    • Includes the org.jatha.dynatype package that implements a hierarchy of dynamically-typed data types that follows the Common LISP set of data types. -
    • -
    • Has been used to convert Algernon, a medium-sized LISP rule engine, to Java on a line-for-line basis. -
    • -
    • Surprisingly fast. -
    • -
    • Useful as an embedded library, or as a stand-alone application. -
    • -

    The API allows programmatic access to LISP from Java, either using an eval() method or using Java methods, e.g.

    LispValue firstElement = myList.car();

    Additional LISP primitives can be written in Java and registered at runtime to be used in the LISP interpreter. The LISP engine compiles the input forms to an abstract machine code specified in Kogge's book "The Architecture of Symbolic Machines". The engine is pretty fast on today's computers. The following program can calculate 2^128 = 340282366920938463463374607431768211456 in about 4 milliseconds:

    (defun power (a n) - (if (zerop n) - 1 - (* a (power a (1- n)))))

    The Jatha library is covered by the Gnu Lesser General Public License, which allows libraries to be combined with non-free software.

    -GitHub

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Java.html b/clones/lisp/www.cliki.net/Java.html deleted file mode 100644 index f982284a..00000000 --- a/clones/lisp/www.cliki.net/Java.html +++ /dev/null @@ -1,108 +0,0 @@ - - - - - CLiki: Java - - - - - - - -
    Java
    Packages that help with CL/Java integration:

      -
    • -ABCL - - Armed Bear Common Lisp (aka ABCL) is a -
    • -
    • -abcl-jazz - - Code examples on to call the Java Swing API under ABCL to program GUIs -
    • -
    • -cloak - - cloak is an experimental implementation of the JVM for SBCL on Linux/x86 -
    • -
    • -CLplusJ - - CL+J is an exact, safe and complete Common Lisp interface to Java through JNI -
    • -
    • -decaf - - Decaf is an Java debugger GUI written in Lisp using CLIM -
    • -
    • -Foil - - Foil (Foreign Object Interface for Lisp) consists of a protocol and a set of libraries that facilitate access to popular object runtimes, such as the JVM (Java) and the CLI/CLR (.NET), and their libraries, from Lisp -
    • -
    • -JACOL - - The JACOL system can be used to link Java and Common Lisp applications -
    • -
    • -Jatha - - Jatha is a Java library that implements a fairly large subset of Common LISP, including most of the datatypes (e.g -
    • -
    • -jfli - - jfli provides comprehensive, safe, dynamic and Lisp-y access to Java and Java libraries as if they were Lisp libraries, for use in Lisp programs, i.e -
    • -
    • -jss - - jss is an extension for ABCL that makes it easier for me(AlanRuttenberg) to write lisp code that calls java libraries -
    • -
    • -LinJ - - Linj is a Common Lisp-like language that tries to be as similar to -
    • -
    • -Lisplets - - Lisplets are Java Servlets that forward their requests, and gather their response headers, using s-expressions over sockets -
    • -
    • -Mark Davidson - - I have been working with these infernal machines for over 22 years, and have dabbled with Lisp over time.. -
    • -
    • -snow - - Snow is a GUI description language for Java and Common Lisp, currently supporting the Swing UI library -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/JavaScript.html b/clones/lisp/www.cliki.net/JavaScript.html deleted file mode 100644 index 9e4d20e5..00000000 --- a/clones/lisp/www.cliki.net/JavaScript.html +++ /dev/null @@ -1,111 +0,0 @@ - - - - - CLiki: JavaScript - - - - - - - -
    JavaScript
    JavaScript is a popular client-side web scripting language. It has higher-order functions and is by many accounts a jolly nice scripting language.

    Implementations

    -
      -
    • -CL-JavaScript is a JavaScript implementation in Common Lisp.
    • -
    • -js/semantics is a tool to generate LR(1) and LALR(1) grammars and compile and check formal semantics for JavaScript.
    • -

    Generating JavaScript Code

    -
      -
    • -Parenscript is Javascript with Lisp syntax and macros.
      -
    • -
    • -jsgen is a similar package with a more direct mapping to JavaScript.
    • -
    • -parse-js is a simple ECMAScript 3 parser
    • -

    Talking to JavaScript

    -JavaScript is also needed to implement the client-side part -of AJAX (Asynchronous JavaScript And XML)-- a Common-Lisp implementation of which can be found as CL-AJAX for araneida and HT-AJAX for Hunchentoot.

    -If XML seems too heavy-weight one can use cl-json or st-json to directly send JSON (Java Script Object Notation).

    All pages in topic:

    -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Javascript.html b/clones/lisp/www.cliki.net/Javascript.html deleted file mode 100644 index 9e4d20e5..00000000 --- a/clones/lisp/www.cliki.net/Javascript.html +++ /dev/null @@ -1,111 +0,0 @@ - - - - - CLiki: JavaScript - - - - - - - -
    JavaScript
    JavaScript is a popular client-side web scripting language. It has higher-order functions and is by many accounts a jolly nice scripting language.

    Implementations

    -
      -
    • -CL-JavaScript is a JavaScript implementation in Common Lisp.
    • -
    • -js/semantics is a tool to generate LR(1) and LALR(1) grammars and compile and check formal semantics for JavaScript.
    • -

    Generating JavaScript Code

    -
      -
    • -Parenscript is Javascript with Lisp syntax and macros.
      -
    • -
    • -jsgen is a similar package with a more direct mapping to JavaScript.
    • -
    • -parse-js is a simple ECMAScript 3 parser
    • -

    Talking to JavaScript

    -JavaScript is also needed to implement the client-side part -of AJAX (Asynchronous JavaScript And XML)-- a Common-Lisp implementation of which can be found as CL-AJAX for araneida and HT-AJAX for Hunchentoot.

    -If XML seems too heavy-weight one can use cl-json or st-json to directly send JSON (Java Script Object Notation).

    All pages in topic:

    -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Jean-Claude Beaudoin.html b/clones/lisp/www.cliki.net/Jean-Claude Beaudoin.html deleted file mode 100644 index 04b9d63b..00000000 --- a/clones/lisp/www.cliki.net/Jean-Claude Beaudoin.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Jean-Claude Beaudoin - - - - - - - -
    Jean-Claude Beaudoin
    Jean-Claude is the main developer of MKCL and CLplusJ.

    person

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Jean-Philippe Paradis.html b/clones/lisp/www.cliki.net/Jean-Philippe Paradis.html deleted file mode 100644 index a561e8f7..00000000 --- a/clones/lisp/www.cliki.net/Jean-Philippe Paradis.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Jean-Philippe Paradis - - - - - - - -
    Jean-Philippe Paradis
    Hello, I'm Hexstream and I've been doing Common Lisp related work intensively for 15 years, including more than a decade of Common Lisp Open Source.

    I am a top Common Lisp Open Source contributor. See my extensive contributions at HexstreamSoft.


    -Person Public Domain
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Jeff Bowden.html b/clones/lisp/www.cliki.net/Jeff Bowden.html deleted file mode 100644 index 5b21b045..00000000 --- a/clones/lisp/www.cliki.net/Jeff Bowden.html +++ /dev/null @@ -1,123 +0,0 @@ - - - - - CLiki: Jeff Bowden - - - - - - - -
    Jeff Bowden
    -In 1987 I learned Lisp and thought that it was the only language I would ever want to use. Then I spent the next 14 years developing software in C++ and Java.

    Thanks to cClan, CMUCL, Debian and a host of other entities I am now in a position to free myself from the tyranny of the Descendants of Algol -


    -Am I really a Person? -

    Jeff is cute. I like his cat, Buster.



    -Yes, Jeff is cute, but Buster likes to scratch and bite -people. There is nothing wrong with lisp, but it will never have nothin' over -Java [Yeah sure, Jim, except that Java is not particularly expressive]. 21:18wed17aug2005: Um, cute speculation, but this sentence here (yes, this one) is the only text I've put on this page... -
    - What's with his freakin hair, anyway? He looks like a people-juice eater if I ever saw one. - Hey, is this the same Jeff Bowden that competed in the 1994 Robot Wars? If so, I need your help with some historical research. joerger@stones.com - Yep, that's me although I believe it was actually 1995. Here's a picture of my 'bot in action Test Toaster One -
    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Time passes... - -
    Hmmm, what about O'Caml? -
    Python!? -
    Haskell! -
    Sigh. -
    Java+Eclipse. -
    Scala? -


    -See also the other Jeff Bowden page.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Jens Grabarske.html b/clones/lisp/www.cliki.net/Jens Grabarske.html deleted file mode 100644 index bc488611..00000000 --- a/clones/lisp/www.cliki.net/Jens Grabarske.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Jens Grabarske - - - - - - - -
    Jens Grabarske
    You can reach me via email here. Otherwise I'm on the IRC (#lisp) as Jabberwockey

    person

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Jesper Louis Andersen.html b/clones/lisp/www.cliki.net/Jesper Louis Andersen.html deleted file mode 100644 index 97362566..00000000 --- a/clones/lisp/www.cliki.net/Jesper Louis Andersen.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Jesper Louis Andersen - - - - - - - -
    Jesper Louis Andersen
    Jesper Louis Andersen is a Person who after having tried, C, Scheme, SML, Ocaml, Haskell, C++, Java, Erlang, Python, Perl and Ruby finally found Common Lisp.


    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Jin-Cheng Guu.html b/clones/lisp/www.cliki.net/Jin-Cheng Guu.html deleted file mode 100644 index 62057ae3..00000000 --- a/clones/lisp/www.cliki.net/Jin-Cheng Guu.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Jin-Cheng Guu - - - - - - - -
    Jin-Cheng Guu
    A person who started lisping in 2021.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Jochen Schmidt.html b/clones/lisp/www.cliki.net/Jochen Schmidt.html deleted file mode 100644 index 9c629d68..00000000 --- a/clones/lisp/www.cliki.net/Jochen Schmidt.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Jochen Schmidt - - - - - - - -
    Jochen Schmidt
    Jochen Schmidt is a Person, programmer and author. -He was the maintainer of a Lisp page known as "Dataheaven" which now leads to his weblog CODEartist.org

    Jochen founded some open source projects like the portable branch of aserve, the compatibility layer acl-compat, the CLIM IRC Client WeirdIRC (which is the root of the IRC library cl-irc) and an E-Mail Library called mel-base.

    As a freelance journalist he has written several articles about Common Lisp which got published in a German magazine for software developers (Toolbox).

    His IRC Nick on Freenode's #lisp channel is "Neonsquare".

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Joey Smith.html b/clones/lisp/www.cliki.net/Joey Smith.html deleted file mode 100644 index 8d5b1aab..00000000 --- a/clones/lisp/www.cliki.net/Joey Smith.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Joey Smith - - - - - - - -
    Joey Smith
    I'm a member of the PHP Development on QA teams who is looking to expand his -abilities to include Scheme and Lisp.

    person

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Johannes Grødem.html b/clones/lisp/www.cliki.net/Johannes Grødem.html deleted file mode 100644 index 6f9e01db..00000000 --- a/clones/lisp/www.cliki.net/Johannes Grødem.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Johannes Grødem - - - - - - - -
    Johannes Grødem
    Random Norwegian Person. I have a homepage -somewhere, but there isn't really much there at the moment. Known as johs on IRC.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/John Connors.html b/clones/lisp/www.cliki.net/John Connors.html deleted file mode 100644 index a8075c4d..00000000 --- a/clones/lisp/www.cliki.net/John Connors.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: John Connors - - - - - - - -
    John Connors
    John Connors is a Person who used to be a professional games programmer but now is a postgraduate student because he got into this whole Common Lisp thing, among other reasons.

    He first encountered it when he tried Acornsoft Lisp on a BBC Model B computer. It was a bit of a restricted implementation on a 8-bit micro with 32k, but he is grateful he met Lisp before C or BCPL.

    -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/John Fremlin.html b/clones/lisp/www.cliki.net/John Fremlin.html deleted file mode 100644 index 05242adb..00000000 --- a/clones/lisp/www.cliki.net/John Fremlin.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: John Fremlin - - - - - - - -
    John Fremlin
    Describe John Fremlin here

    John Fremlin is a Person. He used to work for MSI.

    His nick is c|mell (formerly ilitirit) on #lisp at FreeNode. His contact details are on his website.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/John Landahl.html b/clones/lisp/www.cliki.net/John Landahl.html deleted file mode 100644 index 835073cd..00000000 --- a/clones/lisp/www.cliki.net/John Landahl.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: John Landahl - - - - - - - -
    John Landahl
    Programming since 1984 (at the ripe old age of 15), I only recently (mid-2004) discovered and became a fan of Common Lisp. Now, like many other recent converts, I wish I could write everything in CL.

    Toward that end I am planning to build a foundation library for CL that provides most of the features found in the standard Perl, Python, and Ruby libraries. By installing one library (which will be consist mostly of the best existing libraries), new or would-be Common Lispers will get that "batteries included" feeling that so many of todays coders are used to.


    -person
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/John Leuner.html b/clones/lisp/www.cliki.net/John Leuner.html deleted file mode 100644 index 9609061c..00000000 --- a/clones/lisp/www.cliki.net/John Leuner.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: John Leuner - - - - - - - -
    John Leuner
    John Leuner is a Person, see blog.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/John Maraist.html b/clones/lisp/www.cliki.net/John Maraist.html deleted file mode 100644 index fbc57d3a..00000000 --- a/clones/lisp/www.cliki.net/John Maraist.html +++ /dev/null @@ -1,56 +0,0 @@ - - - - - CLiki: John Maraist - - - - - - - -
    John Maraist
    John Maraist works at SIFT and is to blame for the NST test framework. -


    -Person
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/John McCarthy.html b/clones/lisp/www.cliki.net/John McCarthy.html deleted file mode 100644 index 59e282ec..00000000 --- a/clones/lisp/www.cliki.net/John McCarthy.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: John McCarthy - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/John Wiseman.html b/clones/lisp/www.cliki.net/John Wiseman.html deleted file mode 100644 index e1128c4b..00000000 --- a/clones/lisp/www.cliki.net/John Wiseman.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: John Wiseman - - - - - - - -
    John Wiseman
    I'm John Wiseman. I used to make a living at Lisp, but lately I've been working on some as-of-yet lispless robots.

    You can read more about my doings at the page I created so I can remember my doings: lemonodor.

    D&D

    Do I really need a magic Person link?

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Jonathan.html b/clones/lisp/www.cliki.net/Jonathan.html deleted file mode 100644 index db7159f2..00000000 --- a/clones/lisp/www.cliki.net/Jonathan.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Jonathan - - - - - - - -
    Jonathan
    Jonathan is a fast JSON encoder/decoder.

    It's faster than jsown - high performance Common Lisp JSON parser.

    Homepage: https://github.com/Rudolph-Miller/jonathan

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Jordan Katz.html b/clones/lisp/www.cliki.net/Jordan Katz.html deleted file mode 100644 index 2f9dfceb..00000000 --- a/clones/lisp/www.cliki.net/Jordan Katz.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Jordan Katz - - - - - - - -
    Jordan Katz
    A wannabe computer scientist/jazz musician. I've been researching the Semantic Web with MINDSWAP at the University of Maryland, where I have been writing some Lisp. You can read about my research at my work page. More info at my other homepage.

    I am the same person as Yarden Katz.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/JosephOswald.html b/clones/lisp/www.cliki.net/JosephOswald.html deleted file mode 100644 index 38252beb..00000000 --- a/clones/lisp/www.cliki.net/JosephOswald.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: JosephOswald - - - - - - - -
    JosephOswald
    Joseph Oswald

    I have a Blogspot blog, and a personal website.

    josephoswald at gmail.com

    on freenode #irc, jaoswald


    -Person
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Joshua Taylor.html b/clones/lisp/www.cliki.net/Joshua Taylor.html deleted file mode 100644 index 3df58204..00000000 --- a/clones/lisp/www.cliki.net/Joshua Taylor.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Joshua Taylor - - - - - - - -
    Joshua Taylor
    I, Joshua Taylor, am a Person and my homepage is http://www.cs.rpi.edu/~tayloj/. I maintain the CL-ACE and CL-RDFXML packages.

    My PGP key (for asdf-install) is at http://www.cs.rpi.edu/~tayloj/DOCS/tayloj.lisp.asc.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/José María Ruiz.html b/clones/lisp/www.cliki.net/José María Ruiz.html deleted file mode 100644 index 1dc202bc..00000000 --- a/clones/lisp/www.cliki.net/José María Ruiz.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: José María Ruiz - - - - - - - -
    José María Ruiz
    Hi, I'm a Person and a CS degree. I'm from Málaga(Spain).

    I'm new to Lisp, but is the most impressive concept that I've see ever.


    -Emacs
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Juan Jose Garcia-Ripoll.html b/clones/lisp/www.cliki.net/Juan Jose Garcia-Ripoll.html deleted file mode 100644 index b78f4798..00000000 --- a/clones/lisp/www.cliki.net/Juan Jose Garcia-Ripoll.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Juan Jose Garcia-Ripoll - - - - - - - -
    Juan Jose Garcia-Ripoll
    Juanjo Garcia-Ripoll thinks he is a Person. In addition to that he is thought to be the maintainer of ECL, works for a University in Madrid. Until he manages to make something better, the homepage of Juanjo Garcia-Ripoll
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Juan M. Bello Rivas.html b/clones/lisp/www.cliki.net/Juan M. Bello Rivas.html deleted file mode 100644 index 23dad5da..00000000 --- a/clones/lisp/www.cliki.net/Juan M. Bello Rivas.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Juan M. Bello Rivas - - - - - - - -
    Juan M. Bello Rivas
    Juan M. Bello Rivas is a person. Further information about him can be found at his home page. -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Juho Snellman.html b/clones/lisp/www.cliki.net/Juho Snellman.html deleted file mode 100644 index 30148b33..00000000 --- a/clones/lisp/www.cliki.net/Juho Snellman.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: Juho Snellman - - - - - - - -
    Juho Snellman
    Juho Snellman is a Person, whose main Lisp activity is hacking SBCL. He has a blog with mostly Lisp content.

    Email: jsnell at iki.fi
    -Irc: jsnell on irc.freenode.net -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Julian Stecklina.html b/clones/lisp/www.cliki.net/Julian Stecklina.html deleted file mode 100644 index 80dfe9bd..00000000 --- a/clones/lisp/www.cliki.net/Julian Stecklina.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Julian Stecklina - - - - - - - -
    Julian Stecklina
    Julian Stecklina is a Person, who can be found as blitz_ in the channels #lisp and #freebsd of the FreeNode IRC network. You might want to check his page or contact him via electronic mail: js at alien8 dot de.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Juri Pakaste.html b/clones/lisp/www.cliki.net/Juri Pakaste.html deleted file mode 100644 index bd85ee91..00000000 --- a/clones/lisp/www.cliki.net/Juri Pakaste.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Juri Pakaste - - - - - - - -
    Juri Pakaste
    Juri Pakaste is a Person living in Helsinki, Finland, at the moment doing his 13 month civil service at UIAH Medialab as a Zope coder, and to earn some money occasionally coding Java.

    In addition to these activities he's working on Straw. And every now and then he manages to find time for Lisp, too. With luck, some Lisp code can be found from his homepage. A lot of griping about various software can be found in his blog. -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Jörg Höhle.html b/clones/lisp/www.cliki.net/Jörg Höhle.html deleted file mode 100644 index 87a71ff9..00000000 --- a/clones/lisp/www.cliki.net/Jörg Höhle.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - CLiki: Jörg Höhle - - - - - - - -
    Jörg Höhle
    I learnt Lisp in pure theory from a few articles in the french edition of Scientific American, while at school, in the beginning of the eighties. It's only several years later that I put hands on a Lisp system, on a Commodore-64 first, later at university on a PDP-10, Symbolics machines, and on Sun and HP/UX with AKCL and Franz.

    I've been using CMUCL and CLISP a lot. Actually, I participated in CLISP development since 1992 (or was it 1993?). Mostly visible are Amiga-CLISP and footprints in various dark corners of CMUCL, CLISP and Oaklisp.

    I like programming language research. As such, I've read a lot on various related topics (GC, varying Scheme implementations, compiler techniques, partial evaluation) and I'm fond of several programming languages -- that I however barely use, but they all provide very interesting food for thought: Oaklisp, Erlang, n Schemes, Gofer and Haskell, OCaml, Icon, Python, Forth, Smalltalk, Ada, SDL, VDM-SL (a functional specification language).

    I also know C quite well, having hacked CLISP internals for years, just in case you wonder :-) But don't come to me with C++ problems. I do software-reviews (professionaly) and will tear a lot of "professional" code down.

    I'm interested in software-design and usability. I like to share ideas about these topics with any other Person. Some Lisp-related areas: -

      -
    • HTML-template is a somewhat unusual way to separate programmer and designer in the area of X|HT|ML document generation with interesting features. -
    • -

    You can reach me via hoehle at users.sourceforge.net

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/KCL Family.html b/clones/lisp/www.cliki.net/KCL Family.html deleted file mode 100644 index d1dc812a..00000000 --- a/clones/lisp/www.cliki.net/KCL Family.html +++ /dev/null @@ -1,66 +0,0 @@ - - - - - CLiki: KCL Family - - - - - - - -
    KCL Family
    The KCL Family is a family of Common Lisp implementations originated from the influential KCL. KCL, developed in 1984 at Kyoto University (Japan), was one of the first widely used Common Lisp systems.

    -
    -Lisp History
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/KDE.html b/clones/lisp/www.cliki.net/KDE.html deleted file mode 100644 index 42fb1aa0..00000000 --- a/clones/lisp/www.cliki.net/KDE.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: KDE - - - - - - - -
    KDE
    KDE is a powerful Open Source graphical desktop environment for Unix workstations. It combines ease of use, contemporary functionality, and outstanding graphical design with the technological superiority of the Unix operating system.

    Components of KDE are largely licensed under the LGPL, and many of them represent libraries written in C++. It uses the popular Qt graphics library. Where the competing GNOME project tries to be fairly language-neutral, with library bindings available in many languages KDE is largely biased towards C++.

    Flamewars between proponents (usually not programmers) of GNOME and KDE have commonly erupted, not dissimilarly to controversies over the relative merits of Common Lisp and Scheme.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/KLMNEA.html b/clones/lisp/www.cliki.net/KLMNEA.html deleted file mode 100644 index 9db2d751..00000000 --- a/clones/lisp/www.cliki.net/KLMNEA.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: KLMNEA - - - - - - - -
    KLMNEA
    KLMNEA is a beginning of Common Lisp NMEA protocol parser. For now predefined are $GPRMC, $GPGGA, $GPGSA and $GPGSV. You may do something useful by (re)defining PROCESS-NMEASSAGE method for a message, and then calling PROCESS-NMEA with a string you got from somewhere. More messages and utils will follow.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/KPAX.html b/clones/lisp/www.cliki.net/KPAX.html deleted file mode 100644 index 701ef75f..00000000 --- a/clones/lisp/www.cliki.net/KPAX.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: KPAX - - - - - - - -
    KPAX
    A Common Lisp web framework by Sven Van Caekenberghe.

    Homepage at http://homepage.mac.com/svc/kpax/
    -Repository at https://github.com/svenvc/KPAX

    Evaluation, 20100901

    A very brief assessment of all web frameworks listed in cliki was carried out in September 2010. This assessment comprised: check websites, download source if available, attempt to compile, review documentation.

    The review found that, to quote the website, 'Altough KPAX is quite mature and has been in production use for years, the documentation is currently not good enough to support use by the general public.' Not encouraging.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/KR.html b/clones/lisp/www.cliki.net/KR.html deleted file mode 100644 index 7f89a98a..00000000 --- a/clones/lisp/www.cliki.net/KR.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: KR - - - - - - - -
    KR
    Knowledge Representation is a highly flexible and dynamic prototype-based object system for Common Lisp. It is -completely independent of CLOS and features among other things multiple inheritance and value propagation using constraints, much -like Cells or COSI do, but in case of the latter there is actual source code around.

    KR contains no implementation-specific code and should run on all major Common Lisp implementations. It is completely unmaintained, though.

    Julian Stecklina has taken this out of the Garnet code, ASDF-ified it and fixed some non-standard code. If you are interested, contact him.

    If you are looking for something to use in new code, you might consider David O'Toole's CLON which was inspired by KR.

    Another ASDF-ized version of KR as it appears in Garnet 3.0 is available for cloning on GitHub.

    KR manual is apparently available in PostScript version.

    See Also: PowerLoom


    -Topics: Public Domain, Knowledge Representation Systems
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Kai Grossjohann.html b/clones/lisp/www.cliki.net/Kai Grossjohann.html deleted file mode 100644 index df52dbfd..00000000 --- a/clones/lisp/www.cliki.net/Kai Grossjohann.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: Kai Grossjohann - - - - - - - -
    Kai Grossjohann
    Kai is a friendly and knowledgeable person posting to the comp.emacs.* newsgroups, as well as author of tramp.el, a replacement for ange-ftp that uses rsh/rcp or ssh/scp instead of ftp. - -He is also a very friendly and very knowledgeable poster when it comes to gnus related stuff. -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Keene.html b/clones/lisp/www.cliki.net/Keene.html deleted file mode 100644 index 97a21975..00000000 --- a/clones/lisp/www.cliki.net/Keene.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Keene - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Keeping up with CLiki.html b/clones/lisp/www.cliki.net/Keeping up with CLiki.html deleted file mode 100644 index 54f545a5..00000000 --- a/clones/lisp/www.cliki.net/Keeping up with CLiki.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Keeping up with CLiki - - - - - - - -
    Keeping up with CLiki
    It's easy to follow changes made to CLiki. The Recent Changes page lists the last 100 edits made to CLiki and provides a link to an ATOM feed of all changes.

    Every CLiki article also has its own ATOM change feed, linked from the alternate meta header on the article page (most browsers will let you "subscribe to this page") and the article's History.

    The ATOM change feed shows each article edit as both a unified format diff (for easy reading in text feed readers), as well as the same CSS-styled two-column visual diff as the web version of CLiki.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Keith Bauer.html b/clones/lisp/www.cliki.net/Keith Bauer.html deleted file mode 100644 index 1e987c16..00000000 --- a/clones/lisp/www.cliki.net/Keith Bauer.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Keith Bauer - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Kelly McDonald.html b/clones/lisp/www.cliki.net/Kelly McDonald.html deleted file mode 100644 index b74754c0..00000000 --- a/clones/lisp/www.cliki.net/Kelly McDonald.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Kelly McDonald - - - - - - - -
    Kelly McDonald
    Python programmer by day, lispwannabe by night.

    You can reach me at (kelly at fammcdonald dot net).

    person

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Kenneth Dickey.html b/clones/lisp/www.cliki.net/Kenneth Dickey.html deleted file mode 100644 index 23c1aca3..00000000 --- a/clones/lisp/www.cliki.net/Kenneth Dickey.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Kenneth Dickey - - - - - - - -
    Kenneth Dickey
    Ken Dickey [Ken(dot)Dickey(at)whidbey(dot)com] has been doing commercial software in Scheme, Lisp, Dylan, Smalltalk, Java, C/C++/C#, et cetera on Linux/Unix, MacOS, Windows, pSOS, VRTX, VKernel, et cetera for some years now. Distributed 24/7, applications, IDEs, language runtimes, multimedia, real-time. Architect/Design, Manage (including CTO). Startups to big companies (e.g. Apple Computer). When I get into too many meetings I go home and write some code to relax. Software animal. If it involves software development I have probably done it. I prefer Agile/eXtreme Programming projects. [More fun, more productive, better results].

    person

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Kenny Tilton.html b/clones/lisp/www.cliki.net/Kenny Tilton.html deleted file mode 100644 index 4b8ff430..00000000 --- a/clones/lisp/www.cliki.net/Kenny Tilton.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Kenny Tilton - - - - - - - -
    Kenny Tilton
    Kenny Tilton is a Person, though he and beautiful women he sees on the street subscribe to the Buddhist notion that he does not exist.

    Kenny, aka Ken, aka (rarely) Kenneth, is trying to learn how Cliki works, including whether he can get to The Road to Lisp Survey he will attempt to create next.

    Having succeeded, and with the survey results growing to an unapproachable volume, he will now attempt to build The RtLS All-Kenny Page on which you can find his own quixotic categorization of the results.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Kevin Raison.html b/clones/lisp/www.cliki.net/Kevin Raison.html deleted file mode 100644 index 3b16e112..00000000 --- a/clones/lisp/www.cliki.net/Kevin Raison.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Kevin Raison - - - - - - - -
    Kevin Raison
    Kevin Raison is a Person who is very fond of all things Lisp.

    He has made a few contributions, including vivace-graph (a fully ACID -compliant graph database), cffi-wordnet (an interface to Wordnet 3.0), cl-skip-list (a lock-free skip list implementation), the cl-neo4j client library, a patch to mel-base, debugging concurrency issues with Ian Eslick in Elephant / BDB and adding (not yet accepted) client certificate support to Drakma. He is also the maintainer of Ian Eslick's langutils NLP library. See my repositories on github for more: https://github.com/kraison.

    His email address is raison@chatsubo.net

    His website is http://chatsubo.net/

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Kevin Reid.html b/clones/lisp/www.cliki.net/Kevin Reid.html deleted file mode 100644 index a7e22cb9..00000000 --- a/clones/lisp/www.cliki.net/Kevin Reid.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Kevin Reid - - - - - - - -
    Kevin Reid
    Kevin Reid is a Person.

    His major public Common Lisp project so far is an implementation of the E programming language, E-on-CL. The source is in a Subversion repository. It is designed to function as both Application and Library, and will eventually be asdf-installable.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Kevin Rosenberg.html b/clones/lisp/www.cliki.net/Kevin Rosenberg.html deleted file mode 100644 index 5224b1b1..00000000 --- a/clones/lisp/www.cliki.net/Kevin Rosenberg.html +++ /dev/null @@ -1,56 +0,0 @@ - - - - - CLiki: Kevin Rosenberg - - - - - - - -
    Kevin Rosenberg
    I'm a person who, after 25 years of programming -in a number of other computer languages, now finds Lisp to be my -favorite language. Being an emergency department physician, I also have great -interest in medical informatics.

    I'm also a Debian developer. Here's a -page describing some of the packages that -I maintain.

    I have a public subversion repository of my open-source projects at http://svn.b9.com/.

    I sign all my software releases with my GPG key.

    As of 2016/03/03, Dr. Rosenberg's domain (b9.com) appears to be for sale.

    His new site appears to be http://kpe.io, with his repository converted to git and available at http://git.kpe.io/

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Kilian Sprotte.html b/clones/lisp/www.cliki.net/Kilian Sprotte.html deleted file mode 100644 index 28a48961..00000000 --- a/clones/lisp/www.cliki.net/Kilian Sprotte.html +++ /dev/null @@ -1,57 +0,0 @@ - - - - - CLiki: Kilian Sprotte - - - - - - - -
    Kilian Sprotte
    Kilian Sprotte is a Person, currently based in Berlin, who started -off using Lisp for Computer-Aided Composition in Music. He likes to do -Constraint Programming with Screamer -- his special favourite, -also GECODE and is generally quite interested in programming languages -research. Other admired languages: Haskell, Ruby and Oz.

    Projects on CLiki: gecol

    You might want to check out his page -or contact him via electronic mail: kilian.sprotte at -gmail dot com.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Knowledge Representation Systems.html b/clones/lisp/www.cliki.net/Knowledge Representation Systems.html deleted file mode 100644 index 036b85d2..00000000 --- a/clones/lisp/www.cliki.net/Knowledge Representation Systems.html +++ /dev/null @@ -1,89 +0,0 @@ - - - - - CLiki: Knowledge Representation Systems - - - - - - - -
    Knowledge Representation Systems
    Knowledge Representation Systems are an important subcategory of AI.

      -
    • -ap5 - - A mature, embedded, in-memory Relational ObjectStore and a high-level/declarative/specification language -
    • -
    • -Epilog System and Episodic Logic - - In contrast to Epilog Inference Package, the original Epilog system was created by Schubert, Hwang and Schaeffer for knowledge representation in Natural Language Processing, and is documented at the University of Rochester's Web -
    • -
    • -GBBopen - - GBBopen is a high-performance open source distributed systems framework based on the concepts that were explored and refined in the UMass Generic Blackboard system (see PDF article on that history) and the commercial GBB product -
    • -
    • -KR - - Knowledge Representation is a highly flexible and dynamic prototype-based object system for Common Lisp -
    • -
    • -LISA - - Lisp Intelligent Software Agents - is a production rule system for Common Lisp -
    • -
    • -PowerLoom - - A (not written in Common Lisp) Knowledge Representation & Reasoning System -
    • -
    • -Scone - - Scone is a high-performance, open-source knowledge-base (KB) system intended for use as a component in many different software applications -
    • -
    • -SNePS - - SNePS (Semantic Network Processing System) is an AI system for building, using and retrieving information from propositional semantic networks -
    • -

    External Links

    -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Knut Arild Erstad.html b/clones/lisp/www.cliki.net/Knut Arild Erstad.html deleted file mode 100644 index 870cc08e..00000000 --- a/clones/lisp/www.cliki.net/Knut Arild Erstad.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Knut Arild Erstad - - - - - - - -
    Knut Arild Erstad
    Is a Person, most of the time.

    Wrote a thesis on Lindenmayer systems (programmed in CL) and ported some OpenGL bindings to CMUCL.

    Get my Lisp software here.

    Sometimes hangs out in #lisp on openprojects.net (irc). Nick: Soulman. -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/L4.html b/clones/lisp/www.cliki.net/L4.html deleted file mode 100644 index 0c48e919..00000000 --- a/clones/lisp/www.cliki.net/L4.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: L4 - - - - - - - -
    L4
    L4 is a Forth interpreter written in Common Lisp. The aim is to implement a useful subset of the ANS Forth programming language, but some work is still needed.

    L4 currently passes all tests in John Hayes' test suite and is able to execute Sokoban and Tetris games.

    Source code: http://www.common-lisp.net/~heller/l4-0.1.tar.gz

    License: ??? -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/LALR.html b/clones/lisp/www.cliki.net/LALR.html deleted file mode 100644 index cc3be9a9..00000000 --- a/clones/lisp/www.cliki.net/LALR.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: LALR - - - - - - - -
    LALR
    LALR is a LALR(1) parser generator available at the CMU AI repository.

    It doesn't seem to include a license, but according to the author, it "may be freely used, but I do request acknowledgement in any application or product (e.g., scientific paper, etc.) produced by a program that incorporates it."

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/LASS.html b/clones/lisp/www.cliki.net/LASS.html deleted file mode 100644 index 88a4252a..00000000 --- a/clones/lisp/www.cliki.net/LASS.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: LASS - - - - - - - -
    LASS
    Writing CSS files comes with a lot of repetition and is generally much too verbose. With lispy syntax, shortcuts, and improvements, LASS aims to help you out in writing CSS quick and easy. LASS was largely inspired by SASS.

    The project can be found on github including a fully documented symbol index and a getting started tutorial.
    -As of September 2014, LASS is on Quicklisp.

    LASS is licensed under the Artistic License 2.0.


    -CSS web
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/LDAP.html b/clones/lisp/www.cliki.net/LDAP.html deleted file mode 100644 index a8c9f2d4..00000000 --- a/clones/lisp/www.cliki.net/LDAP.html +++ /dev/null @@ -1,64 +0,0 @@ - - - - - CLiki: LDAP - - - - - - - -
    LDAP
    Lightweight Directory Access Protocol.

    Originally intended as a gateway protocol to X.500 directory servers, it is often the primary interface to directory servers (e.g., OpenLDAP's slapd, Novell Directory Server, iPlanet Directory Server, Microsoft Active Directory).

    There are several LDAP libraries for Common Lisp:

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/LENS.html b/clones/lisp/www.cliki.net/LENS.html deleted file mode 100644 index d86de6fb..00000000 --- a/clones/lisp/www.cliki.net/LENS.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: LENS - - - - - - - -
    LENS
    Lisp Educational Network Simulator (LENS) provides a Common Lisp environment for network simulations. It includes a set of packages, classes and libraries to represent network elements and protocols. Simulations may be configured and run interactively in the :lens-user package which also includes a number of interfaces to assist in setting up simulations and analysing the results.

    The architecture is based on that of the Georgia Tech Network Simulator (GTNetS) which was written in C++ and NS-2 written in C++ and Tcl, however, where possible, advantage has been taken of the features of Common Lisp to simplify and provide higher level abstractions. Typically the LISP version requires about a fifth or less of the amount of code to achieve the same results. Additionally Common Lisp provides an interactive environment with complete object introspection and access to the programming language itself making it easier to do explorative simulations and simulation development without the need of the complexity of mixing langages (as per NS2). In LENS the simulations are run in a separate thread to the normal Common Lisp read-eval loop so the user can probe or modify the simulation even while it is running.

    It is hoped that LENS will be easier to develop for than other network simulators and will be more suitable as a tool for teaching network principles.

    Homepage: http://willijar.github.io/LENS/

    Source repository: https://github.com/willijar/LENS

    License: GPL3


    -Topics: networking application
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/LEXER.html b/clones/lisp/www.cliki.net/LEXER.html deleted file mode 100644 index aa067366..00000000 --- a/clones/lisp/www.cliki.net/LEXER.html +++ /dev/null @@ -1,77 +0,0 @@ - - - - - CLiki: lexer - - - - - - - -
    lexer
    Lexers (also called tokenizers) can be used to prepare a string or stream of character data into a form suitable as an input for parsers generated by parser generators.

      -
    • -cl-lex - - cl-lex is a set of Common Lisp macros for generating lexical analyzers automatically -
    • -
    • -DEFLEXER - - The LEXER package implements a lexical-analyzer-generator called DEFLEXER, which is built on top of both REGEX and CLAWK -
    • -
    • -dso-lex - - Allows lexers to be defined using regular expressions a la cl-ppcre -
    • -
    • -graylex - - graylex offers a means to do string operations on input streams without slurping all input at once by using Common Lisp Gray Streams, fixed-sized and flexible buffers -
    • -
    • -token-stream - - Lexer class for cl-stream -
    • -
    • -Zebu - - A Tool for Specifying Reversible LALR(1) Parsers -
    • -
    -

    The LEXER Package

    The lexer package is a tokenizer for Common Lisp that makes heavy use of the re package.

    Repository: https://github.com/massung/lexer

    License: Apache 2

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/LGPL.html b/clones/lisp/www.cliki.net/LGPL.html deleted file mode 100644 index 28f9a6b4..00000000 --- a/clones/lisp/www.cliki.net/LGPL.html +++ /dev/null @@ -1,233 +0,0 @@ - - - - - CLiki: LGPL - - - - - - - -
    LGPL
    LGPL refers to GNU Library General Public License, also known as the Lesser General Public License.

    This is a license commonly used with GNU projects such as GNOME on things like libraries. Software using this license is DFSG-free.

    The LGPL permits you to link the libraries to "non-free" software without forcing that software to be released under the GPL or LGPL.

    As is common with most canned licenses, the LGPL uses terminology more appropriate for a program written in C than one written in Lisp. The AllegroServe project have written a -preamble to the LGPL that clarifies the terms for use with Lisp programs - this is often referred to as the LLGPL.

    LGPL-Licensed Packages

      -
    • -Assem - - Assem is an ISA-level code layer for Common Lisp -
    • -
    • -bintype - - BINTYPE is a specification-driven parser generator for binary formats -
    • -
    • -BITMOP - - BITMOP is a DSL for definition and manipulation of register sets, registers, bitfields and bitfield values, all of which are first-class objects -
    • -
    • -CAPTURED-STREAM - - captured-stream is a small Common Lisp library for viewing streams as sequences -
    • -
    • -cl-html5-parser - - cl-html5-parser is a HTML5 parser for Common Lisp -
    • -
    • -CL-IO-MOD - - CL-IO-MOD is a parser for a subset of the MOD music tracker file format -
    • -
    • -CL-PNG - - CL-PNG reads and writes PNG (Portable Network Graphics) image files -
    • -
    • -cl-pubmed - - cl-pubmed is an interface to the PubMed medical literature Database -
    • -
    • -cl-rss-gen - - cl-rss-gen is a tiny Common Lisp library that generates RSS (RDF Site Summary) -
    • -
    • -cl-z - - cl-z is a set of CFFI bindings to the zlib compression library -
    • -
    • -CLCE - - CLCE (Common Lisp Composition Environment) is a complete environment for Musical composition based on the Common Lisp language and on the MidiShare operating system -
    • -
    • -clhp - - CLHP is the Common Lisp Hypertext Preprocessor - a Web programming language -
    • -
    • -Cliconv - - Cliconv is a simple FFI interface to the iconv library that lets Common Lisp programs translate byte sequences from/to different character encodings -
    • -
    • -Clot - - CLOT is a library for plotting data sets in charts of different types -
    • -
    • -clutter - - Annotations/decorators/attributes for CLOS classes and slots -
    • -
    • -Cobstor - - Cobstor is a tool and an API to seamlessly access legacy Cobol application files from Common Lisp -
    • -
    • -common-db - - common-db is a programmable debugging substrate, mostly geared to driving target devices by establishing control via on-chip debugging machinery through a JTAG (IEEE 1149.1) external port -
    • -
    • -currensea - - currensea is a currency conversion library based on AllegroServe -
    • -
    • -de.setf.utility - - de setf utility is a collection of Common Lisp utilities functions and several purpose-specific libraries -
    • -
    • -dso-util - - A small set of utilities, functions and macros, by David Owen -
    • -
    • -FastIndex - - FastIndex is a Web server which manages a small online library -
    • -
    • -flood - - Comfortable, powerful and tiny logging library for common lisp -
    • -
    • -GCL - - GNU Common Lisp is a Common Lisp implementation of the KCL Family that uses gcc to compile Lisp into native binaries -
    • -
    • -Gordon - - Gordon is a Common Lisp library that can be used to generate Adobe Flash files and thus useful in web applications -
    • -
    • -IE3FP - - IE3FP is a library to code and decode floating point numbers in IEEE 754 binary format -
    • -
    • -KDE - - KDE is a powerful Open Source graphical desktop environment for Unix workstations -
    • -
    • -libgpg-error - - libgpg-error is a small library with error codes and descriptions shared by most GnuPG related software -
    • -
    • -LISA - - Lisp Intelligent Software Agents - is a production rule system for Common Lisp -
    • -
    • -lisp-network-server - - lisp-network-server is a simple framework for writing Common Lisp networking applications -
    • -
    • -midi - - A library for parsing MIDI (Musical Instrument Digital Interface) file format files and representing MIDI events, previously distributed as part of the Gsharp project -
    • -
    • -MIME4CL - - MIME4CL allows you to craft MIME compliant messages or to parse and handle them programmatically -
    • -
    • -MPD4CL - - MPD4CL is a library to write Music Player Daemon client programs -
    • -
    • -NET4CL - - NET4CL is a collection of network functions, mostly encapsulation of existing functions to uniform the interface between different Lisp systems -
    • -
    • -NPG - - NPG is a Naïve Parser Generator -
    • -
    • -Objective-CL - - Objective-CL is a Common-Lisp/Objective-C bridge currently supporting a range of Lisp implementations on Mac OS X and GNUstep -
    • -
    • -ODS4CL - - ODS4CL can produce spreadsheets in OpenDocument (OpenOffice) file format -
    • -
    • -Open Agent Engine - - Open Agent Engine is an object oriented graphics framework based on classes representing OpenGL 2.0 windows (opaque and transparent), and OpenGL views with methods to handle rendering, animation, mouse input, keyboard events, gamePad input, texture management, and shader manipulation -
    • -
    • -Pyffi - - Pyffi, inspired by Python-on-Lisp, is a Python programming language FFI for Common Lisp -
    • -
    • -SCLF - - SCLF is Walter C -
    • -
    • -SEMI-PRECIOUS - - SEMI-PRECIOUS is a library of algorithms/data structures -
    • -
    • -SYMTABLE - - SYMTABLE is a simplistic symbol-table abstraction -
    • -
    • -telnetlib - - telnetlib is a networking library for doing Telnet -
    • -
    • -tiff4cl - - TIFF4CL is a library to read TIFF file format metadata -
    • -
    • -Torta - - Torta shows you where your disk space is going -
    • -
    • -xelf - - Xelf is a simple 2-D game engine for Common Lisp -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/LIFT.html b/clones/lisp/www.cliki.net/LIFT.html deleted file mode 100644 index 4f5a5065..00000000 --- a/clones/lisp/www.cliki.net/LIFT.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: LIFT - - - - - - - -
    LIFT
    The LIsp Framework for Testing is another testing framework in the JUnit / SUnit lineage.

    This one is from Gary King. The project home page is at http://common-lisp.net/project/lift and is probably much more up to date.

    It is a Development tool that provides a test framework.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/LIJOS.html b/clones/lisp/www.cliki.net/LIJOS.html deleted file mode 100644 index cd0fd8d4..00000000 --- a/clones/lisp/www.cliki.net/LIJOS.html +++ /dev/null @@ -1,64 +0,0 @@ - - - - - CLiki: LIJOS - - - - - - - -
    LIJOS
    The LIJOS system is a Lisp Implementation of the Java ObjectStream - protocol. That is, it is an implementation, in Lisp, of the Java - serializing ObjectStream protocol that supports the - (de)serialization of Java objects into and from appropriately - mapped Lisp objects.

    Runs in ACL 5.0 but "intended to be very portable".

    Also, while ACL is the "prefered" Lisp dialect, most of the -code is pretty vanilla CommonLisp/CLOS, and the ACL-dependent parts -(dealing primarily with wrappers around ACL's socket-implementation -and the definition of some numeric variables) are neatly packed away -in a couple files in a sub-directory (that is: I've not really had time -to work on ports to other lisp-implementations, but my intent is that -they would be pretty painless.)

    The executable code, documentation and examples for this pre-release (v1) version of the LIJOS system, for use with Allegro CommonLisp (v5.0) can be found at: - -http://www.pointnclick.com/lijos/index.html (Windows and Sparc).

    The license is pretty liberal ("Permission to use, copy, and distribute this software is hereby granted, provided that this copyright notice is retained in all copies.")

    Notice (2020-09-07)

    Link is archived from the original. Source code isn't available. Downloads only have FASL files for ACL.


    -obsolete
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/LISA.html b/clones/lisp/www.cliki.net/LISA.html deleted file mode 100644 index 1d1ae0b6..00000000 --- a/clones/lisp/www.cliki.net/LISA.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: LISA - - - - - - - -
    LISA
    Lisp Intelligent Software Agents - is a production rule system for Common Lisp. Its purpose is to provide extensive support for the development of intelligent applications, including reasoning-capable software agents. LISA employs a CLOS implementation of Rete and is based on CLIPS and JESS.

    This member of Knowledge Representation Systems, developed by David E. Young, is currently in Production stage; version 3.2 was released 17 September 2007. LISA is distributed under the terms of the LGPL. The project resides at lisa.sourceforge.net.

    There's a fork: https://github.com/Ramarren/lisa.


    -Artificial Intelligence
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/LISP-BINARY.html b/clones/lisp/www.cliki.net/LISP-BINARY.html deleted file mode 100644 index e26797af..00000000 --- a/clones/lisp/www.cliki.net/LISP-BINARY.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: LISP-BINARY - - - - - - - -
    LISP-BINARY
    A library to easily read and write complex binary formats.

    Depends on: closer-mop, moptilities, flexi-streams, quasiquote-2.0, CFFI

    Repository: https://github.com/j3pic/lisp-binary

    Documentation: https://github.com/j3pic/lisp-binary/wiki

    License: GPLv3

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/LISP.html b/clones/lisp/www.cliki.net/LISP.html deleted file mode 100644 index f68b3b6e..00000000 --- a/clones/lisp/www.cliki.net/LISP.html +++ /dev/null @@ -1,176 +0,0 @@ - - - - - CLiki: Lisp - - - - - - - -
    Lisp
    Alan Kay called it "the best language ever designed."

    There are many free Common Lisp Implementations - free as defined by the Debian Free Software Guidelines (DFSG).

    Topic Listing

      -
    • -cl-sgdos-csv - - cl-sgdos-csv is a library for mapping CSV files to LISP lists and CLOS objects and viceversa. -
    • -
    • -Coding Convention - - This page describes some common coding convention that you'll see in lisp source code -
    • -
    • -Conference - - Planning on going to a conference? This Cliki page is intended as a starting point for news of conferences with a Lisp theme or at which Lispers are likely to be present in significant numbers -
    • -
    • -copying problem - - Placeholder for the idea that there is no 'copy of this object' in Lisp -
    • -
    • -CRACL - - CRACL, the Campaign for Real Ale and Common Lisp, the Lisp user group for the greater Los Angeles area -
    • -
    • -Debian - - Debian GNU/Linux is a non-commercial Linux-distribution which is very popular with developers, and has CMUCL packages which are frequently updated -
    • -
    • -Donald Fisk - - An instance of the class Person -
    • -
    • -Editing Lisp Code with Emacs - - Keyboard tips -
    • -
    • -Fear of Lisp - - Fear of Lisp, 'parenthephobia' in Greek, is a disease that affects a large percentage of the population involved in the information technologies -
    • -
    • -Features - - Common lisp allows implementations to have extensions, and has an official way of testing for them, via membership of the *features* list -
    • -
    • -ffi - - FFI is short for Foreign Function Interface, which is useful for linking to arbitrary C (and not only) libraries from Lisp code -
    • -
    • -GMane - - GMane is a bidirectional Mail to News gateway -
    • -
    • -GNU - - GNU is a project to create a GPL-licensed UNIX that was started by Richard Stallman, the creator of EMACS -
    • -
    • -Graduate Student - - Lisp using Graduate Students include Cyrus Harmon -
    • -
    • -lambda-reader - - lambda-reader is a language extension that lets you use the Unicode character λ for LAMBDA in the Lisp reader and printer -
    • -
    • -Lisp - Next Generation - - In a time far, far in the future exists a kinder, gentler, friendlier Lisp -
    • -
    • -Lisp Companies - - Companies which uses Lisp, Scheme, .. -
    • -
    • -Lisp Markup Languages - - Lisp Markup Languages are Markup Languages that extend a Lisp system -
    • -
    • -macro example - - Some CLiki pages contain Lisp macros: -
    • -
    • -ObjectStore - - ObjectStore is a commercial object database for C++ and Java -
    • -
    • -Performance - - Performance is either the subject of programmer performance (speed and quality of programming) or program performance (speed and quality of execution (or of compilation when the program under consideration is a compiler)) -
    • -
    • -PowerShell - - An experiment in sending tasks to PowerShell from CL -
    • -
    • -profiler - - The goal of profiling is to find out the bottlenecks of the program, such as which function consumes the most time, which function is called most times etc -
    • -
    • -Proposed ANSI Revisions and Clarifications - - Entries under this page have been moved to one of the following two pages: -
    • -
    • -Quick Arrays - - A re-run benchmark on original code by Ron Parr, with a couple of tweaks by David Mullen to run on CCL, figuring that the contrast between then and now (1996 versus 2020) might be interesting -
    • -
    • -reeder - - A toy table-driven reader for Lisp, written in Common Lisp -
    • -
    • -REPL - - The Read Eval Print Loop of a Lisp listener -
    • -
    • -Self-Generation - - An expression that evaluates to itself -
    • -
    • -Three Comma Programmer - - A Three Comma Programmer is the Lisp version of the Three Star Programmer in C -
    • -
    • -uLisp - - uLisp is an embedded Lisp for microcontrollers, supporting Arduino, Adafruit M0/M4, Micro:bit, ESP8266/32, and RISC-V boards -
    • -
    • -YoungLispers - - Lisp is not just your grandpa's language -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/LISPDEBUG.html b/clones/lisp/www.cliki.net/LISPDEBUG.html deleted file mode 100644 index 4ac0ad88..00000000 --- a/clones/lisp/www.cliki.net/LISPDEBUG.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: LISPDEBUG - - - - - - - -
    LISPDEBUG
    LISPDEBUG is a source-level Common Lisp debugger written by Marc Mertens. It runs on a variety of platforms, including CMUCL, ACL, CLISP and GCL flavors.

    LISPDEBUG features a GUI, form highlighting, conditional breakpoints, code stepper, watching of variables or expressions, profiling, support of multisource projects and so on. LISPDEBUG is succeeded by Jabberwocky, no new versions are planned.

    Information about LISPDEBUG can be found here. The version of LISPDEBUG on this website is not the latest version (I can no longer maintain this page). For the latest version of LISPDEBUG, see the Jabberwocky home page - Jabberwocky includes LISPDEBUG.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/LISPWORKS.html b/clones/lisp/www.cliki.net/LISPWORKS.html deleted file mode 100644 index bd3ef0f3..00000000 --- a/clones/lisp/www.cliki.net/LISPWORKS.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: LispWorks - - - - - - - -
    LispWorks
    LispWorks is a non-free Common Lisp implementation. See http://www.lispworks.com/.

    You can find a review of the LispWorks editor on the Common Lisp Cookbook: https://lispcookbook.github.io/cl-cookbook/lispworks.html.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/LLA.html b/clones/lisp/www.cliki.net/LLA.html deleted file mode 100644 index f41ed649..00000000 --- a/clones/lisp/www.cliki.net/LLA.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: LLA - - - - - - - -
    LLA
    [unmaintained, maintainers welcome] “Lisp Linear Algebra”, LLA for short, aims to provide convenient and fast matrix operations by binding to LAPACK.


    -Prolific author of this library has switched to another language. According to him, would-be maintainer should fork and maintain for a year, announce the library resurrection, drop him an e-mail so he would redirect users, and convince Zach Beane to use the fork in Quicklisp. -

    Support for libraries other than LAPACK was also considered by original author.

    Homepage: GitHub

    License: Boost

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/LLGPL.html b/clones/lisp/www.cliki.net/LLGPL.html deleted file mode 100644 index ff44d1ee..00000000 --- a/clones/lisp/www.cliki.net/LLGPL.html +++ /dev/null @@ -1,375 +0,0 @@ - - - - - CLiki: LLGPL - - - - - - - -
    LLGPL
    The Lisp Lesser General Public License is the GNU Lesser General Public License version 2.1 (LGPL) with a preamble from Franz (makers of Allegro Common Lisp).

    Use of LLGPL is discouraged for the following reasons: -

      -
    1. The Franz preamble does not make sense when applied to LGPL version 3 (the section numbers are different).
    2. -
    3. In 2004, the Free Software foundation affirmed that "the LGPL works as intended with all known programming languages" and that "LGPL contains no special provisions for inheritance, because none are needed." There is no need for the linking and inheritance provisions that are in the Franz preamble.
    4. -
    5. In 2013, Eli Greenbaum published a detailed examination of the LLGPL in the International Free and Open Source Software Law Review (Volume 5, Issue 1), concluding that "the clarifications made by the LLGPL to the original GNU license are largely unnecessary, and that the LGPL would probably be interpreted in a similar fashion without the clarifications proposed by the LLGPL."
    6. -
    -The Free Software Foundation recommends publishing your software under the GNU General Public License version 3 or later. See the FSF explanation of why you should use the GPL instead of the LGPL.

    For more information about LGPL and the GPL, see the GNU Licenses FAQ

    Pages in the LLGPL topic: -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/LLVM.html b/clones/lisp/www.cliki.net/LLVM.html deleted file mode 100644 index 0f57c07d..00000000 --- a/clones/lisp/www.cliki.net/LLVM.html +++ /dev/null @@ -1,58 +0,0 @@ - - - - - CLiki: LLVM - - - - - - - -
    LLVM
    LLVM stands for Low Level Virtual Machine. It is a positively ambitious project being led by Chris Lattner, released under a BSD-style open source license.

    There are currently three sets of CL bindings:

    This might be a cool basis for new generation of Lisp implementations. Today at least, you can compile small Scheme systems, such as SIOD and TinyScheme, with the LLVM C front-end compiler. We haven't tried any Common Lisp implementations yet.

    Of course, just compiling your favorite Lisp implementation should bring only a minor boost. The real boost should be brought by usage of LLVM as a back end for Lisp implementation. It should be possible to retarget CMUCL's compiler, or maybe a compiler like Scheme->C, to produce LLVM instructions. This, coupled with the LLVM just-in-time compiler, would make for a pretty efficient Lisp.

    Clasp is a Common Lisp implementation that interoperates with C++ and uses LLVM for JIT(ish) compilation to native code

    LLVM Release 3.4 is the latest release as of March 2014.

    There is some very interesting work being done in integrating LLVM into the gcc 4.x line.

    The LLVM Developers' Meeting Proceedings (27 May 2007) is available in the form of videos and slides (PDF).

    --- -This page mostly written by Valery Khamenya and Brian Gaeke:


    -machine code
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/LMDB.html b/clones/lisp/www.cliki.net/LMDB.html deleted file mode 100644 index 280da1d1..00000000 --- a/clones/lisp/www.cliki.net/LMDB.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: LMDB - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/LML.html b/clones/lisp/www.cliki.net/LML.html deleted file mode 100644 index a8f87d14..00000000 --- a/clones/lisp/www.cliki.net/LML.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: LML - - - - - - - -
    LML
    LML (Lisp Markup Language) is a Web tool for generating XHTML documents. Is is written by Kevin Rosenberg who uses it for generating all of his web pages. This includes his Debian package maintenance -page which is automatically -generated from a database of package information.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/LML2.html b/clones/lisp/www.cliki.net/LML2.html deleted file mode 100644 index c70c05e2..00000000 --- a/clones/lisp/www.cliki.net/LML2.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: LML2 - - - - - - - -
    LML2
    LML2 is a Web tool for generating XHTML documents. It is based on the LML package by Kevin Rosenberg and the open source htmlgen macro by Franz.

    A summary of the differences between LML, LML2, and htmlgen are given on LML2's readme.html.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/LMud.html b/clones/lisp/www.cliki.net/LMud.html deleted file mode 100644 index c6e91e12..00000000 --- a/clones/lisp/www.cliki.net/LMud.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: LMud - - - - - - - -
    LMud
    LMud is a MUD (Multi-User Dungeon) Game implementation written in Common Lisp with heavy use of CLOS and multiple inheritance. It's threaded, currently relying on SBCL x86 for threading support. It has a CLIM-like command processor and will support smart terminals using NCurses and some hack like Linedit. It will eventually also have support for interaction with IRC via special rooms (#lisp will of course be the first). Also, the connection with the client will be handled by a fully functional Lisp-based TELNET server, CL-TELNETD.

    The (re)design is fairly complete and implementation is underway, but there's a lot of work to be done. Help is welcome and there are a number of interesting things to be worked on (command processing, object persistence, threads and locking mechanisms, security, etc). The repository is here: https://gitlab.common-lisp.net/lmud/lmud.

    If you're interested in helping please contact me, James A. Crippen. I'd love additional brains on the job.


    -Public Domain
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/LOCAL-TIME.html b/clones/lisp/www.cliki.net/LOCAL-TIME.html deleted file mode 100644 index cc09b858..00000000 --- a/clones/lisp/www.cliki.net/LOCAL-TIME.html +++ /dev/null @@ -1,61 +0,0 @@ - - - - - CLiki: local-time - - - - - - - -
    local-time
    local-time is a library for manipulating date and time information in a semi-standard manner. It is based almost entirely off of Erik Naggum's paper, The Long, Painful History of Time. It includes such features as:

      -
    • Time and date arithmetic
    • -
    • -ISO 8601 timestring formatted output and parsing
    • -
    • Reader macros to embed timestrings directly in code
    • -
    • Timezone handling (will read unix tzfile format)
    • -
    • Conversion between universal and unix time epochs
    • -
    • Julian date calculation
    • -
    -This library is still under development. Contributors and feedback are both very welcome.

    The maintainer of this project is Daniel Lowe. The last update was 1.0.6 on 2015-05-27.


    -BSD license
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/LSE.html b/clones/lisp/www.cliki.net/LSE.html deleted file mode 100644 index d8efbdcb..00000000 --- a/clones/lisp/www.cliki.net/LSE.html +++ /dev/null @@ -1,64 +0,0 @@ - - - - - CLiki: LSE - - - - - - - -
    LSE
    LSE, Langage Symbolique d'Enseigment programming language implementation. -(translation: Symbolic Teaching Language).

    LSE was a programming language designed in France to -run on mini-computers (4 kword RAM, 128 KB hard disk, a dozen terminals, video terminals and teletypes with punched tape reader/puncher) installed in 57 Lycées during the 1970s.

    The LSE programming language included :

      -
    • a "REPL", where commands and instructions could be evaluated (the authors of the LSE system knew LISP); -
    • -
    • a number type (floating points), vectors and matrices of numbers and strings; -
    • -
    • a number of functions and procedures to process those numbers and strings; -
    • -
    • procedures and functions, with parameter passing by value and by reference, local variables, and higher order functions (function parameters); -
    • -
    • a file system which allowed to store those data type in records in files. -
    • -

    NASIUM LSE is a re-implementation of the LSE system written in Common Lisp. It compiles each source line into a bytecode vector, and includes a virtual machine to execute those bytecode vectors.

    License: AGPL3.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/LSP.html b/clones/lisp/www.cliki.net/LSP.html deleted file mode 100644 index 48807e6f..00000000 --- a/clones/lisp/www.cliki.net/LSP.html +++ /dev/null @@ -1,101 +0,0 @@ - - - - - CLiki: LSP - - - - - - - -
    LSP
    LSP (Lisp Server Pages) is an HTML template library.

    LSP is copyright I/NET and is -licensed under the MIT License. It was written by John Wiseman, who discusses it in this blog post.

    LSP is designed to work with a separate web server library. The code -comes with support for both the AllegroServe and Araneida -servers, but it shouldn't be difficult to add support for other -libraries (see lsp-aserve.lisp and -lsp-allegroserve.lisp from the distribution for examples).

    LSP itself should be portable ANSI Lisp code that will run in any Lisp -implementation.

    Example of publishing an LSP file:

    (publish-lsp :path "/temperature.html" - :file "/Users/wiseman/src/temperature.lsp" - :server *my-server-or-http-listener*)

    Example of an LSP file:

    -<html>
    -<head>
    -<title>LSP Example (AllegroServe)</title>
    -</head>
    -<body>
    -<h1>LSP Example</h1>
    -
    -<h2>User Agent</h2>
    -<%=
    -  (:princ-safe (or (net.aserve:header-slot-value request
    -						 :user-agent)
    -		   "None."))
    -%>
    -
    -<h2>Referrer</h2>
    -<%=
    -  (:princ-safe (or (net.aserve:header-slot-value request
    -						 :referer)
    -		   "None."))
    -%>
    -
    -<h2>Query Variables</h2>
    -<table>
    -<%
    -(let ((queries (request-query request)))
    -  (if (null queries)
    -    (html (:tr (:td "None.")))
    -    (dolist (query queries)
    -      (html
    -       (:tr (:td (:princ-safe (car query)))
    -	    (:td (:princ-safe (cdr query))))))))
    -%>
    -</table>
    -
    -<h2>Loop Of Dynamism</h2>
    -
    -<% (dotimes (i (+ (random 10) 1)) %>
    -  Hi!<br>
    -<% ) %>
    -</body>
    -</html>
    -

    CL-EMB uses some code from LSP, but does more. However, it requires passing the "environment" as a plist to the rendering function. See the README for CL-EMB.

    Hunchentoot LSP is a port of LSP that targets the Hunchentoot webserver.

    See Lisp Server Pages for a more serious attempt at doing this right, by Sunil Mishra and Tim Bradshaw.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/LTK.html b/clones/lisp/www.cliki.net/LTK.html deleted file mode 100644 index b454ed29..00000000 --- a/clones/lisp/www.cliki.net/LTK.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: ltk - - - - - - - -
    ltk
    LTK is a set of CL bindings for the Tk GUI library, which provides a complete CLOS binding to the Tk widget set. It is implemented by means of talking to a Tcl interpreter. This makes the toolkit portable and capable of working over a remote socket.

    LTK was written by Peter Herth.

    Although the last release is somewhat dated, the project is still under active development. Most activity happens on its mailing list. The canonical repository seems to be on Github.

    Many examples, covering the tkdocs tutorial, were contributed by Peter Lane: https://peterlane.netlify.app/ltk-examples/.

    Plotting with Ltk

    A wrapper around tklib's Plotchart library is also available here: https://peterlane.netlify.app/ltk-plotchart/.

    Issues

    -One unfortunate problem is that LTK mysteriously fails to run on some Windows computers, depending on what programs happen to be running in the background. People are encouraged to either donate a Windows box for testing, or helpfully volunteer to track the issue down.

    This may be an issue limited to certain Lisp implementations, as SBCL has not been observed to manifest this problem.

    See cl-tk or clTcl for alternatives.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/LW-ADD-ONS.html b/clones/lisp/www.cliki.net/LW-ADD-ONS.html deleted file mode 100644 index 898679ac..00000000 --- a/clones/lisp/www.cliki.net/LW-ADD-ONS.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: LW-ADD-ONS - - - - - - - -
    LW-ADD-ONS
    LW-ADD-ONS is a collection of "enhancements" to the LispWorks IDE. It was written by Edi Weitz and could be categorized as a development aid.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Land of Lisp.html b/clones/lisp/www.cliki.net/Land of Lisp.html deleted file mode 100644 index 520664fc..00000000 --- a/clones/lisp/www.cliki.net/Land of Lisp.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Land of Lisp - - - - - - - -
    Land of Lisp
    Land of Lisp, written by Conrad Barski, is a Lisp book that teaches the language through examples of programming games. It's website is http://landoflisp.com/ and http://www.nostarch.com/lisp.htm.

    Page on Slashdot: https://books.slashdot.org/story/10/11/03/1238213/land-of-lisp


    -book
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Langband.html b/clones/lisp/www.cliki.net/Langband.html deleted file mode 100644 index 1606e56f..00000000 --- a/clones/lisp/www.cliki.net/Langband.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Langband - - - - - - - -
    Langband
    Langband is a rewrite of the popular roguelike role-playing Game Angband.

    The project has released v0.1.6 which is apparently already playable. There is a project page

    It currently works on Unix-like systems with ACL, CLISP, CMUCL, SBCL and LispWorks. A port to LispWorks Windows has also been done. Langband will probably be ported to other Lisp-implementations as the code grows more mature. Debian-packages exist in 'debian unstable', and 'debian woody' packages may be found on www.langband.org. Langband is distributed under the terms of the GPL and has been written by Stig E Sandø.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Language extension.html b/clones/lisp/www.cliki.net/Language extension.html deleted file mode 100644 index 64fd8ce5..00000000 --- a/clones/lisp/www.cliki.net/Language extension.html +++ /dev/null @@ -1,460 +0,0 @@ - - - - - CLiki: language extension - - - - - - - -
    language extension
    Language extensions are libraries that are not domain-specific (that is, just concern themselves with "programming" as opposed to "implementing algorithm/datastructure/service x"), widely usable, and could potentially be candidates for Proposed Extensions To ANSI, but are wider in scope than utilities. Examples would be new object systems, CPS-transformers, etc.

    Since Common Lisp is the "programmable programming language," many of these extensions are quite far-reaching.

      -
    • -ap5 - - A mature, embedded, in-memory Relational ObjectStore and a high-level/declarative/specification language -
    • -
    • -CAPTURED-STREAM - - captured-stream is a small Common Lisp library for viewing streams as sequences -
    • -
    • -CL Enumerations - - A package; an implementation of java.util.Enumeration and java.util.Iterator for Common Lisp -
    • -
    • -cl-2dsyntax - - cl-2dsyntax is an indentation-sensitive syntax system like Python (the programming language, not the CMUCL/SBCL compiler) does -
    • -
    • -cl-ana - - cl-ana aims to provide the basic tools necessary to analyze large/medium-large datasets -
    • -
    • -cl-annot - - cl-annot adds Python-like decorators (or Java-like annotations) to Common Lisp -
    • -
    • -cl-cont - - cl-cont is a delimited continuations library for Common Lisp -
    • -
    • -cl-dsl - - Define your Domain Specific Languages in a user-friendly way -
    • -
    • -cl-events - - Composable events system for Common Lisp -
    • -
    • -cl-groupby - - Short implementation of Scalas groupBy functionality for Common Lisp -
    • -
    • -cl-hooks - - cl-hooks allows the description of extension points in software using a concept of hooks (borrowed from Emacs) -
    • -
    • -cl-itertools - - Write iterators in CL in a way close to Python ones -
    • -
    • -cl-op - - A partial application library inspired by Goo's op function and SRFI 26 -
    • -
    • -cl-package-aliases - - Extends the standard CL package system with the ability to define package-local aliases (nicknames) to other packages in a transparent way -
    • -
    • -cl-parametric-types - - [BETA] A tool to repeatedly compile the same source code with different types -
    • -
    • -cl-read-macro-tokens - - Modify lisp reader, so that it could dispatch not only on characters, but also on arbitrary symbols in CAR -
    • -
    • -cl-rttemplate - - cl-rttemplate is a quotation system which works in a similar way like the quasiquotation, but during the read-time -
    • -
    • -cl-secure-read - - Define constrained versions of READ, READ-PRESERVING-WHITESPACE and READ-FROM-STRING -
    • -
    • -cl-slice - - This library was unmaintained for several years -
    • -
    • -cl-splicing-macro - - Define macros, that splice multiple forms directly into body of enclosing macro, without any PROGN's left -
    • -
    • -cl-typed - - ML-like syntax for ftypes with library-side type-checking -
    • -
    • -CLLIB - - CLLIB is a varied collection of Common lisp tools and routines in CLOCC -
    • -
    • -COLLECTING - - Common Lispy ways of collecting values during evaluation are diverse; here we discuss some well established and some proposed -
    • -
    • -collectors - - collectors is a common lisp library that aims to ease accumulating values (similar to loop/iter's collecting / appending clauses) -
    • -
    • -Common Lisp Reasoner - - Common Lisp meets AI problem-solving meets the semantic web -
    • -
    • -comparisons - - Comparison is a simple library adding comparison functions similar to EQUAL and EQUALP, which handle multiple types gracefully -
    • -
    • -computed-class - - A class metaobject for computed slot values and more -
    • -
    • -conduit-packages - - conduit-packages provides some enhancements to Common Lisp's package system -
    • -
    • -Context Lite - - Context Lite is a language extension for writing methods that specialize on the values of dynamic/special variables at runtime -
    • -
    • -ContextL - - ContextL is a language extension for Context-oriented Programming -
    • -
    • -data-lens - - This library provides a language for expressing data manipulations as the composition of more primitive operations -
    • -
    • -DBC - - DBC is a library for doing Design by contract ala the Eiffel programming language in Common Lisp -
    • -
    • -defmacro-enhance - - Extend DEFMACRO facility in spirit of Let Over Lambda -
    • -
    • -doplus - - doplus is a high-level, lispy, extensible iteration construct for Common Lisp -
    • -
    • -dynamic-classes - - Lets you specify CLOS classes (e.g., as arguments to make-instance) using parameters at run-time, letting you use mixins more conveniently -
    • -
    • -fare-quasiquote - - fare-quasiquote is a portable quasiquote implementation that plays well with pattern-matching -
    • -
    • -fast-generic-functions - - Generic functions that can be sealed on certain domains for performance -
    • -
    • -Filtered Functions - - filtered-functions implements arbitrary predicate dispatch for CLOS -
    • -
    • -function-cache - - Function-cache is a Common Lisp function caching / memoization library -
    • -
    • -gecol - - gecol provides bindings to GECODE in order to enjoy constraint programming in Lisp -
    • -
    • -General accumulator - - General accumulator is a general-purpose, extensible value accumulator library -
    • -
    • -generators - - Generators is a library that provides python style generators in common lisp, by using cl-cont delimited continuations -
    • -
    • -ia-hash-table - - Indifferent access hash-tables for Common Lisp -
    • -
    • -incognito-keywords - - incognito-keywords introduces a new kind of keyword that looks just like any non-keyword symbol and allows safe usage of convenient but clashy symbol names by multiple libraries without conflicts through sharing -
    • -
    • -Incongruent Methods - - A library that provides methods with incongruent lambda lists -
    • -
    • -inlined-generic-function - - A MOP-based implementation of fast inlined generic functions dispatched in compile-time -
    • -
    • -iterate - - iterate is a lispy and extensible replacement for the LOOP macro -
    • -
    • -iterate-keywords - - Lispy and extensible replacement for the LOOP macro, fork of iterate -
    • -
    • -lambda-reader - - lambda-reader is a language extension that lets you use the Unicode character λ for LAMBDA in the Lisp reader and printer -
    • -
    • -macrodynamics - - Macrodynamics is a language extension that broadens the notion of dynamic scope inside macroexpansion code -
    • -
    • -memoize - - Memoize is a small library for performing memoization -
    • -
    • -metacopy - - Metacopy is a library that makes it easy to specify how to make copies of an object -
    • -
    • -method-versions - - A Common Lisp library for dispatching generic methods based on the value of a global parameter rather than on one of the required parameters -
    • -
    • -mexpr - - mexpr is an Infix syntax library -
    • -
    • -modf - - An immutable setf -
    • -
    • -Modularize - - Modularize is an attempt at providing a common interface to segregate major application components -
    • -
    • -MW-EQUIV - - mw-equiv provides one of many possible equivalence relations between Common Lisp objects, similar to the standard EQUAL function family, but extensible -
    • -
    • -named-readtables - - Named-Readtables is a language extension library that provides a namespace for readtables akin to the -
    • -
    • -package-renaming - - package-renaming is a library for locally renaming CL packages -
    • -
    • -place-modifiers - - place-modifiers essentially gives access to hundreds of modify-macros through one single macro: modify -
    • -
    • -prompt-for - - Prompt the user for input of a particular type, or satisfying some predicate -
    • -
    • -quid-pro-quo - - A contract programming library for Common Lisp in the style of Eiffel’s Design by contract -
    • -
    • -readable - - readable adds additional abbreviations in the sexp reader; supports infix, optional standard function call notation, optional indentation -
    • -
    • -sb-sequence - - An SBCL implementation of the protocol for user defined sequences -
    • -
    • -screamer - - Screamer adds support for nondeterministic and constraint programming, including backtracking and undoable side-effects -
    • -
    • -Series - - A library providing data structure that combines aspects of sequences, (lazy) streams and loops, using a technique known as “fusion” or “deforestation” -
    • -
    • -Sheeple - - Sheeple is a delegative prototype-based object system inspired by CLOS -
    • -
    • -snakes - - Python style generators for Common Lisp -
    • -
    • -SRFI - - Scheme Requests for Implementation (SRFI) are proposed language extensions to Scheme, but that doesn't stop people from implementing them for Common Lisp -
    • -
    • -syntax-case - - SYNTAX-CASE is a system for macros proposed by R -
    • -
    • -xarray - - This package implements a generalized interface for array-like -
    • -

    Pattern matching: (main topic: pattern matching) -

      -
    • -bind - - Bind combines let*, destructuring-bind and multiple-value-bind into a single form -
    • -
    • -bpm2 - - bpm2 is a pattern matching language originally designed for doing code transformation [ie, writing compilers] -
    • -
    • -cartesian-product-switch - - cartesian-product-switch is a macro for choosing the appropriate form to execute according to the combined results of multiple tests -
    • -
    • -cl-unification - - Provides unification (as used in Prolog) over fairly arbitrary Common Lisp objects -
    • -
    • -cl-xmlspam - - XML Stream PAttern Matcher - concise, regexp-like pattern matching on streaming XML -
    • -
    • -let-plus - - LET+ extends let* with destructuring forms, slot access, hash table elements and various other constructs with a consistent interface -
    • -
    • -MCPat - - MCPat is a meta-circular pattern matching library -
    • -
    • -screamer - - Screamer adds support for nondeterministic and constraint programming, including backtracking and undoable side-effects -
    • -
    • -spath - - SPath is a library for running search queries against s-expressions, intended to match parts of them that the user needs -
    • -
    • -Toadstool - - Toadstool is a library for pattern matching -
    • -
    • -Trivia - - Trivial pattern matching compiler -
    • -
    • -type-r - - The complete collection of accessor functions and patterns to access the elements in a compound type specifier -
    • -

    Metaprogramming: (main topic: metaprogramming) -

      -
    • -agnostic-lizard - - An almost correct portable code walker for Common Lisp -
    • -
    • -arrow-macros - - Clojure-like arrow macros in Common Lisp -
    • -
    • -bubble-operator-upwards - - bubble-operator-upwards is a function that "bubbles an operator upwards" in a form, demultiplexing all alternative branches by way of cartesian product -
    • -
    • -cl-cont - - cl-cont is a delimited continuations library for Common Lisp -
    • -
    • -cl-curlex - - Leak *LEXENV*, which describes lexical environment, into the runtime -
    • -
    • -cl-indeterminism - - Find and manipulate undefined variables and functions in forms -
    • -
    • -cl-walker - - cl-walker implements an sexp → CLOS AST tree transformation (and vice versa) -
    • -
    • -Concrete-Syntax-Tree - - Concrete Syntax Trees represent s-expressions with source information -
    • -
    • -de.setf.utility - - de setf utility is a collection of Common Lisp utilities functions and several purpose-specific libraries -
    • -
    • -deprecations - - deprecations allows you to define functions, generic functions, macros and symbol macros as deprecated -
    • -
    • -linewise-template - - A Common Lisp library for processing text files and streams as templates conforming to simple line-based hierarchical formats -
    • -
    • -macro-eval - - A kind of eval for use at macro-expansion time (such as for constant-folding purposes) -
    • -
    • -macroexpand-dammit - - macroexpand-dammit is a code walker by John Fremlin -
    • -
    • -parse-declarations - - Parse-Declarations is a metaprogramming library to parse, filter, and build Common Lisp declarations (things like (inline foo)) -
    • -
    • -parse-number-range - - parse-number-range parses loop's convenient "for-as-arithmetic" syntax into 5 simple values -
    • -
    • -quasiquote-2.0 - - An alternative quasiquote syntax aimed at being more suitable for macros that define other macros -
    • -
    • -reader-interception - - reader-interception is a library for replacing the lisp reader with your own, so you can define your own syntax or compile other language through Lisp -
    • -
    • -symbol-namespaces - - symbol-namespaces defines a new kind of package that's named by a symbol rather than a string -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Larry Clapp.html b/clones/lisp/www.cliki.net/Larry Clapp.html deleted file mode 100644 index 3266c2a0..00000000 --- a/clones/lisp/www.cliki.net/Larry Clapp.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Larry Clapp - - - - - - - -
    Larry Clapp
    Larry Clapp is a Person, author of VILisp (see Development).
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Lars Brinkhoff.html b/clones/lisp/www.cliki.net/Lars Brinkhoff.html deleted file mode 100644 index 5f77e00c..00000000 --- a/clones/lisp/www.cliki.net/Lars Brinkhoff.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Lars Brinkhoff - - - - - - - -
    Lars Brinkhoff
    Home page.

    My "Road to Lisp".

    Unfinished Lisp projects include: Emacs Common Lisp (aka NaCl), loading JVM .class files by translating them to CLOS and MOP objects, and implementing various global illumination algorithms.


    -Category Person
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Lars Magne Ingebrigtsen.html b/clones/lisp/www.cliki.net/Lars Magne Ingebrigtsen.html deleted file mode 100644 index 4eb0eeff..00000000 --- a/clones/lisp/www.cliki.net/Lars Magne Ingebrigtsen.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Lars Magne Ingebrigtsen - - - - - - - -
    Lars Magne Ingebrigtsen
    Lars Magne Ingebrigtsen is the guy who wrote the Gnus newsreader. He's currently working on Reticule. -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Lawrence Mitchell.html b/clones/lisp/www.cliki.net/Lawrence Mitchell.html deleted file mode 100644 index 6541f1b4..00000000 --- a/clones/lisp/www.cliki.net/Lawrence Mitchell.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Lawrence Mitchell - - - - - - - -
    Lawrence Mitchell
    Lawrence is a Person, occaisionally he does things.

    His home (minimal as it is) on the web is rather boring really. He also has a page on the Emacs wiki.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Le Sursis.html b/clones/lisp/www.cliki.net/Le Sursis.html deleted file mode 100644 index 29b8fe73..00000000 --- a/clones/lisp/www.cliki.net/Le Sursis.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Le Sursis - - - - - - - -
    Le Sursis
    Le Sursis is a Web tool for writing CGI scripts. It provides functions for retrieving CGI queries and generating HTML responses.

    Le Sursis was developed by Tom Burdick and is distributed under the terms of the GPL. It currently runs under CLISP but it should be easily ported to other Common Lisp systems. Source code and documentation are available at the project home page.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Lem.html b/clones/lisp/www.cliki.net/Lem.html deleted file mode 100644 index b666036d..00000000 --- a/clones/lisp/www.cliki.net/Lem.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Lem - - - - - - - -
    Lem
    Lem is a stand-alone, Emacs-like editor built in Common Lisp, with built-in support for Common Lisp and other languages (Go, Rust, Python,…) as well as a directory mode, an html mode, and more.


    -MIT-LICENSE, IDE
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Lennart Staflin.html b/clones/lisp/www.cliki.net/Lennart Staflin.html deleted file mode 100644 index 9b776e49..00000000 --- a/clones/lisp/www.cliki.net/Lennart Staflin.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: Lennart Staflin - - - - - - - -
    Lennart Staflin
    Lennart Staflin is a Person interested in Lisp. He has erlier written some -Emacs Lisp (PSGML, (corba.el)) and is currently working on implementing CORBA in Common Lisp (CLORB). He has a ugly -Home Page (don't you just hate that term).

    Before Common Lisp there where other lisps, most notably InterLisp(-D).

    He is currently living in Stockholm. -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Leonardo Varuzza.html b/clones/lisp/www.cliki.net/Leonardo Varuzza.html deleted file mode 100644 index 1c93fa2d..00000000 --- a/clones/lisp/www.cliki.net/Leonardo Varuzza.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: Leonardo Varuzza - - - - - - - -
    Leonardo Varuzza
    Leonardo Varuzza is a Person from Brazil. -
    He's also porting some old Lisp Code to modern Lisp, adapting it to ASDF and a recent version of SBCL
    -
    -His lisp projects include CLLIB, an ASDF version of CLOCC CLLIB.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Let Over Lambda.html b/clones/lisp/www.cliki.net/Let Over Lambda.html deleted file mode 100644 index a8f7fc76..00000000 --- a/clones/lisp/www.cliki.net/Let Over Lambda.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Let Over Lambda - - - - - - - -
    Let Over Lambda
    Let Over Lambda is a book about advanced Common Lisp programming techniques written by Doug Hoyte.

    ISBN 978-1-4357-1275-1

    Webpage: http://letoverlambda.com/

    Lisp books

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Levenshtein.html b/clones/lisp/www.cliki.net/Levenshtein.html deleted file mode 100644 index 40b7cfe5..00000000 --- a/clones/lisp/www.cliki.net/Levenshtein.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Levenshtein - - - - - - - -
    Levenshtein
    The Levenshtein Distance algorithm finds the minimum number of operations needed to transform one string into the other, where an operation is an insertion, deletion, or substitution of a single character.

    This public domain Common Lisp implementation of the Levenshtein Distance (levenshtein-1.0.tgz) was converted to Common Lisp from the Scheme example given in Wikipedia.

    mw-diff-sexp applies the same algorithm to S-expressions. Soundex may also be of interest for those wanting to sort words.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Levente Mészáros.html b/clones/lisp/www.cliki.net/Levente Mészáros.html deleted file mode 100644 index 2caef959..00000000 --- a/clones/lisp/www.cliki.net/Levente Mészáros.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Levente Mészáros - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Lexer.html b/clones/lisp/www.cliki.net/Lexer.html deleted file mode 100644 index aa067366..00000000 --- a/clones/lisp/www.cliki.net/Lexer.html +++ /dev/null @@ -1,77 +0,0 @@ - - - - - CLiki: lexer - - - - - - - -
    lexer
    Lexers (also called tokenizers) can be used to prepare a string or stream of character data into a form suitable as an input for parsers generated by parser generators.

      -
    • -cl-lex - - cl-lex is a set of Common Lisp macros for generating lexical analyzers automatically -
    • -
    • -DEFLEXER - - The LEXER package implements a lexical-analyzer-generator called DEFLEXER, which is built on top of both REGEX and CLAWK -
    • -
    • -dso-lex - - Allows lexers to be defined using regular expressions a la cl-ppcre -
    • -
    • -graylex - - graylex offers a means to do string operations on input streams without slurping all input at once by using Common Lisp Gray Streams, fixed-sized and flexible buffers -
    • -
    • -token-stream - - Lexer class for cl-stream -
    • -
    • -Zebu - - A Tool for Specifying Reversible LALR(1) Parsers -
    • -
    -

    The LEXER Package

    The lexer package is a tokenizer for Common Lisp that makes heavy use of the re package.

    Repository: https://github.com/massung/lexer

    License: Apache 2

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Libraries.html b/clones/lisp/www.cliki.net/Libraries.html deleted file mode 100644 index ee639de9..00000000 --- a/clones/lisp/www.cliki.net/Libraries.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Libraries - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Library.html b/clones/lisp/www.cliki.net/Library.html deleted file mode 100644 index 003c9158..00000000 --- a/clones/lisp/www.cliki.net/Library.html +++ /dev/null @@ -1,164 +0,0 @@ - - - - - CLiki: Library - - - - - - - -
    Library
    Please do not use this topic for marking pages. Use a more specific topic marker. If you see any pages listed below, please categorize them appropriately!

    Quicklisp is a good way to get lisp libraries.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Libre Software Meeting 2002.html b/clones/lisp/www.cliki.net/Libre Software Meeting 2002.html deleted file mode 100644 index 5369d30d..00000000 --- a/clones/lisp/www.cliki.net/Libre Software Meeting 2002.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Libre Software Meeting 2002 - - - - - - - -
    Libre Software Meeting 2002
    The Libre Software Meeting 2002 was a Free Software conference in Bordeaux from July 9th to 13th. -It has a Very high-level languages for writing applications track organised by Robert Strandh of McCLIM fame, of interest to many Lispers

    See also Libre Software Meeting 2004

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Libre Software Meeting 2004.html b/clones/lisp/www.cliki.net/Libre Software Meeting 2004.html deleted file mode 100644 index cfa7c3d6..00000000 --- a/clones/lisp/www.cliki.net/Libre Software Meeting 2004.html +++ /dev/null @@ -1,112 +0,0 @@ - - - - - CLiki: Libre Software Meeting 2004 - - - - - - - -
    Libre Software Meeting 2004
    The Libre Software Meeting 2004 was held in Bordeaux on July 6th-10th 2004. -The meeting included a high-level languages track with a -presentation about Common Lisp, and there was a room available -for CL hacking sessions. Much fun was had by all.

    Photos are available at http://dept-info.labri.fr/~strandh/LSM2004/, courtesy of Aleksandar Bakic.

    The LSM is an inexpensive and informal event. The organization tends -to be a little haphazard, but this is compensated for by a congenial -atmosphere. Cheap accommodation in almost salubrious University dorms -is available, or there are plenty of hotels downtown. Bordeaux is 3 -hours by train from Paris, and good food and wine abounds.

    See http://wiki.ael.be/rmll2004/index.php/ThemeLangagesDeHautNiveauPourApplications and https://abul.org/Rencontres-mondiales-du-Logiciel,135.html.

    Things to do

    There has been some discussion on irc about whether we should get together and hack collectively on some project, as opposed to 2002 where people tended to work on their own individual projects. Two possibilities have been advanced so far

      -
    1. Frustrated by the recent poor security record of CVS (and, really, anything else written in C that listens on a network port), we thought about implementing the Arch version control system in CL, starting from the specification (I hope there is a specification ...) (There's a specification for the changeset format; implementing commits and so forth off of that doesn't seem terribly difficult. The tricky part, of course, is starting to work on merging ...). darcs also provides an interesting alternative to cvs and arch, with a well thought out patch model suitable for distributed development and since its written in haskell it cant be all evil. however, darcs doesn't have a specification, which is what is interesting here.

      -

    2. -
    3. The alternative, which admits a greater chance of cool screenshots, is to create the currently mythical CL-Emacs. Daniel Barlow's suggestion was to start with portable hemlock, work out how to install it in a selection of free CL implementations, add features to taste, and graft the SLIME protocol onto it (replacing WIRE, which is how unportable Hemlock currently talks to CMUCL) -
    4. -

    (In fact neither of these happened to any great extent, but we did admire Gilbert's CLIMified Portable Hemlock)

    -

    Lightning presentations

    The format of a lightning presentation is probably negotiable, but in essence is as follows: 5 minutes. There will be time afterwards for questions/discussion; how much time depends on how we go. Informal proceedings are available.

    Sign up here if you can give one or two:

    Attendees

      -
    • Daniel Barlow -
    • -
    • Christophe Rhodes -
    • -
    • Andreas Fuchs -
    • -
    • Rudi Schlatte -
    • -
    • Gilbert Baumann -
    • -
    • Deliana Foutekova -
    • -
    • Eric Marsden -
    • -
    • Bruno Haible -
    • -
    • -Tim Moore -
    • -
    • Aleksandar Bakic -
    • -
    • Robert Strandh -
    • -
    • Arnaud Rouanet -
    • -
    • Matthieu Villeneuve -
    • -
    • Nicolas Lamirault -
    • -
    • (add your name if you were there) -
    • -


    -Topic: Conference
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Libre Software Meeting 2005.html b/clones/lisp/www.cliki.net/Libre Software Meeting 2005.html deleted file mode 100644 index df67c0c4..00000000 --- a/clones/lisp/www.cliki.net/Libre Software Meeting 2005.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Libre Software Meeting 2005 - - - - - - - -
    Libre Software Meeting 2005
    The Libre Software Meeting Conference is rumoured to have taken place in Dijon; July 5th-9th, 2005 -A web site including the program, is at http://connect-fr.squat.net/nocturnes/
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Libre Software Meeting 2006.html b/clones/lisp/www.cliki.net/Libre Software Meeting 2006.html deleted file mode 100644 index 610595d1..00000000 --- a/clones/lisp/www.cliki.net/Libre Software Meeting 2006.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Libre Software Meeting 2006 - - - - - - - -
    Libre Software Meeting 2006
    The Libre Software Meeting 2006 is rumoured have taken place in (Vandoeuvre Les) Nancy, France, from July 4th to July 8th 2006.

    The web site is at http://2005.rencontresmondiales.org.


    -Topic: Conference
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Libre Software Meeting.html b/clones/lisp/www.cliki.net/Libre Software Meeting.html deleted file mode 100644 index a1c29aa9..00000000 --- a/clones/lisp/www.cliki.net/Libre Software Meeting.html +++ /dev/null @@ -1,68 +0,0 @@ - - - - - CLiki: Libre Software Meeting - - - - - - - -
    Libre Software Meeting
    An annual Free Software Conference which started in Bordeaux and now seems to move around France.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/License.html b/clones/lisp/www.cliki.net/License.html deleted file mode 100644 index 50f88cbb..00000000 --- a/clones/lisp/www.cliki.net/License.html +++ /dev/null @@ -1,127 +0,0 @@ - - - - - CLiki: License - - - - - - - -
    License
    A software license is a set of terms which specify how the user can use, modify or distribute the software.

    For a software package to be listed on CLiki, its license must usually be free according to the Debian Free Software Guidelines (or DFSG). -CLiki pages about licensing (most of which describe specific licenses) are

    There are also substantial lists of licenses elsewhere:

    -Because the Open Source Definition is derived from the DFSG, code licensed under any OSI-compatible license should be ok...
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Limp.html b/clones/lisp/www.cliki.net/Limp.html deleted file mode 100644 index db578252..00000000 --- a/clones/lisp/www.cliki.net/Limp.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Limp - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/LinJ.html b/clones/lisp/www.cliki.net/LinJ.html deleted file mode 100644 index 07a486a0..00000000 --- a/clones/lisp/www.cliki.net/LinJ.html +++ /dev/null @@ -1,56 +0,0 @@ - - - - - CLiki: LinJ - - - - - - - -
    LinJ
    Linj is a Common Lisp-like language that tries to be as similar to -Common Lisp as possible but allowing Linj programs to be compiled into -human-readable Java code.

    Homepage: https://github.com/xach/linj

    License: MIT

    According to the linked page:

    Linj is no longer officially supported or maintained and is available -only on an as-is basis. -


    -Topics: s-exp syntax
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Lindenmayer systems.html b/clones/lisp/www.cliki.net/Lindenmayer systems.html deleted file mode 100644 index 591b8cc1..00000000 --- a/clones/lisp/www.cliki.net/Lindenmayer systems.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Lindenmayer systems - - - - - - - -
    Lindenmayer systems
    This application was written in Common Lisp (by Edi Weitz).
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Linear Algebra.html b/clones/lisp/www.cliki.net/Linear Algebra.html deleted file mode 100644 index 54e0e718..00000000 --- a/clones/lisp/www.cliki.net/Linear Algebra.html +++ /dev/null @@ -1,144 +0,0 @@ - - - - - CLiki: linear algebra - - - - - - - -
    linear algebra
    Anything to do with linear algebra or matrices. See mathematics for other math libraries.

      -
    • -3d-matrices - - This is a library implementing common matrix operations, mainly intended as the counterpiece to 3d-vectors and thus being aimed at operations in 3D space -
    • -
    • -3d-vectors - - This is a simple library for 3D vectors -
    • -
    • -april - - A subset of APL (A Programming Language) compiling to Common Lisp -
    • -
    • -cl-blapack - - A wrapper around the Fortran BLAS and LAPACK libraries for dense linear algebra -
    • -
    • -cl-clsparse - - Common Lisp bindings for clSPARSE -
    • -
    • -cl-octave - - An FFI to the Octave linear algebra language (CMUCL-only) -
    • -
    • -cl-tuples - - cl-tuples is a library for writing optimised vector math -
    • -
    • -clem - - A library for representing and performing various operations on matrices -
    • -
    • -CLLIB - - CLLIB is a varied collection of Common lisp tools and routines in CLOCC -
    • -
    • -FSVD - - FSVD is a Common Lisp implementation of Simon Funk's quasi SVD as described at http://sifter.org/~simon/journal/20061211.html in the context of its application to the netflix prize -
    • -
    • -GSLL - - GNU Scientific Library for Lisp allows you to use the GNU Scientific Library (GSL) from Common Lisp -
    • -
    • -l-math - - L-MATH is a library for simple linear algebra in geometric applications -
    • -
    • -Linear-algebra - - Linear-algebra is a Common Lisp library of numeric linear algebra routines -
    • -
    • -lisp-matrix - - A matrix linear algebra library for common lisp building on work by Mark Hoemmen, Evan Monroig, Tamas Papp and Rif -
    • -
    • -LispLab - - The main purpose of Lisplab is to to integrate all kinds of mathematics capabilities into one framework -
    • -
    • -LLA - - [unmaintained, maintainers welcome] “Lisp Linear Algebra”, LLA for short, aims to provide convenient and fast matrix operations by binding to LAPACK -
    • -
    • -magicl - - Matrix Algebra proGrams In Common Lisp: numerical linear algebra routines with auto-generated bindings to BLAS, LAPACK and Expokit -
    • -
    • -MatLisp - - A BLAS and LAPACK linear algebra library wrapper which makes their features accessible through a set of CLOS classes -
    • -
    • -MGL-MAT - - MAT is a linear algebra library for working with multi-dimensional arrays which supports efficient interfacing to foreign and CUDA code -
    • -
    • -NLISP - - NLISP is an environment for numerical computation and visualisation like IDL or Matlab -
    • -
    • -sb-cga - - SB-CGA is a computer graphics algebra library for Common Lisp -
    • -
    • -Sheafhom - - Sheafhom is a package by Mark McConnell for large sparse linear algebra computations over the integers and other exact number types -
    • -
    • -spartns - - Spartns is a SPARse TeNSor representation library -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Linear-algebra.html b/clones/lisp/www.cliki.net/Linear-algebra.html deleted file mode 100644 index 494978fa..00000000 --- a/clones/lisp/www.cliki.net/Linear-algebra.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - CLiki: Linear-algebra - - - - - - - -
    Linear-algebra
    Linear-algebra is a Common Lisp library of numeric linear algebra routines. -It approximates the functionality present in the Basic Linear Algebra -Subroutines (BLAS) Fortran library. The objective of this project is to -generate linear algebra routines in native ANSI Common Lisp.

    Homepage: https://github.com/OdonataResearchLLC/linear-algebra -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Linedit.html b/clones/lisp/www.cliki.net/Linedit.html deleted file mode 100644 index 9ba89dcb..00000000 --- a/clones/lisp/www.cliki.net/Linedit.html +++ /dev/null @@ -1,79 +0,0 @@ - - - - - CLiki: Linedit - - - - - - - -
    Linedit
    Linedit is a portable line-editing console library for Common Lisp.

    Successor to cl-readline.

    More information on -Linedit homepage.

    New in release 0.16: -

      -
    • Should work on Lispworks and OpenMCL/CCL.
    • -

    Bug-reports appreciated. Patches appreciated even more.

    -Well, submitting bugs and patches is not allowed at all without having a pre-existing gitlab account, there's no apparant way to get a gitlab account, and the mailing list link leads to a 404 page not found, so perhaps bug-reports and patches aren't all that appreciated after all. But maybe you meant submitting bug reports on the page here? I can do that!

    This is for SBCL 1.2.10 on Arch Linux, readline library version 6.3

      -
    • pressing "Up-arrow" introduces garbage binary data to the input, if you are at the beginning of input history. Checking whether you are at the beginning of a list is pretty basic stuff... so this package should probably do that.
    • -
    • I don't know why I was having trouble with end-of-file conditions. It started working for some reason, ctrl-d and it prompts and lets me exit.
    • -
    -Might offer some patches later, but of course I can't send them to common-lisp.net without a gitlab account. -

    -- cy

    Installing Linedit as REPL for SBCL without disturbing ILISP or SLIME requires some tweaking:

    In your .sbclrc: -

    ;;; Check for --no-linedit command-line option. -(if (member "--no-linedit" sb-ext:*posix-argv* :test 'equal) - (setf sb-ext:*posix-argv* - (remove "--no-linedit" sb-ext:*posix-argv* :test 'equal)) - (when (interactive-stream-p *terminal-io*) - (require :sb-aclrepl) - (require :linedit) - (funcall (intern "INSTALL-REPL" :linedit) :wrap-current t))) -

    And then in your .emacs: -

    -(setq inferior-lisp-program "sbcl --noinform --no-linedit")
    -

    You might also want to add :eof-quits t to the install-repl form.


    Another way is instead to say in your .sbclrc -

    (when (and (interactive-stream-p *terminal-io*) - (null (find-package 'swank))) - (require :linedit) - (funcall (intern "INSTALL-REPL" :linedit) :wrap-current t)) -

    which doesn't require having a separate file for your ordinary initialization code. -- James A. Crippen

    How do you make this second method work? I can't and don't see how since -SBCL by necessity processes its initfiles before it gets around loading swank. -- Nikodemus Siivola

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Lint.html b/clones/lisp/www.cliki.net/Lint.html deleted file mode 100644 index 1c2def17..00000000 --- a/clones/lisp/www.cliki.net/Lint.html +++ /dev/null @@ -1,62 +0,0 @@ - - - - - CLiki: Lint - - - - - - - -
    Lint
    What should a CL lint-like tool look for?

      -
    • files that aren't in packages
    • -
    • explicit use of EXPORT and USE-PACKAGE
    • -
    • filename operations that work by string manipulation instead of - using pathnames
    • -
    • internal symbol use in other packages
    • -
    • any use of LOAD or EVAL
    • -
    • use of &aux
    • -
    • functions with &key and &optional args (note "and" not "or")
    • -
    • uses of CADR and THIRD
    • -


    -debugging
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Linux VLM workarounds.html b/clones/lisp/www.cliki.net/Linux VLM workarounds.html deleted file mode 100644 index c9d00281..00000000 --- a/clones/lisp/www.cliki.net/Linux VLM workarounds.html +++ /dev/null @@ -1,164 +0,0 @@ - - - - - CLiki: Linux VLM workarounds - - - - - - - -
    Linux VLM workarounds
    Linux VLM workarounds

    /* sordid hack to get VLM to run without special privilege. - * - * Inhibit certain calls which require net capabilities or root, - * but lie, and say they succeeded. - * - * Note fd returned by opening /dev/net/tun, with the intent to - * override the tun0 (sic) tap requested by VLM with the tap - * device specified in the VLM_TAP environment variable. - * - * Use LD_PRELOAD to load this ahead of the VLM binary. - * - * N.B. VLM doesn't like xlib-xcb based libX11.so. You need - * an older variant such as the one in Slackware 10.2. Use - * LD_LIBRARY_PATH so this shadows the normal library. - * - * Also, if you run NFS different machine than on your host, you - * need to tell Genera the IP of the NFS host prior to invoking - * Define Site. - * - * Say you've set up the NFS on a Linux VM with a tap configured - * as 10.0.0.1, and your VLM is at 10.0.0.2. Assuming you've - * properly configured your .VLM file, on booting Genera, you need - * to tell the listener: - * - * (setf (cadar (send net:*emb-host* :address)) "10.0.0.1") - * - * Now you may Define Site/Reset Network/Save World. - * - * Happy hacking! - * - * `(john q ,(gensym)) - July 16, 2009 - */ - -#include <dlfcn.h> -#include <sys/types.h> -#include <sys/stat.h> -#include <stdlib.h> -#include <fcntl.h> -#include <stdarg.h> -#include <stdio.h> -#include <string.h> -#include <net/if.h> -#include <sys/ioctl.h> -#include <linux/if_tun.h> - -#define RTLD_NEXT ((void *) -1l) - -static int tunfd = -1; - -int open(const char *file, int flags, ...) -{ - va_list ap; - mode_t mode; - static int (*oldfn_open)(const char *file, int flags, ...); - int fd; - - if (oldfn_open == NULL) - oldfn_open = dlsym(RTLD_NEXT, "open"); - - va_start(ap, flags); - mode = va_arg(ap, mode_t); - va_end(ap); - - fd = oldfn_open(file, flags, mode); - if (!strcmp(file, "/dev/net/tun")) - tunfd = fd; - return fd; -} - -/* Block the call to system("/sbin/ifconfig tun...") */ -int system(const char *command) -{ - static int (*oldfn_system)(const char *command); - - if (oldfn_system == NULL) - oldfn_system = dlsym(RTLD_NEXT, "system"); - - if (!strncmp("/sbin/ifconfig tun0", command, 19)) - return 0; - - return oldfn_system(command); -} - -int ioctl(int fd, unsigned long req, ...) -{ - va_list ap; - void *ioctlarg; - struct ifreq *ifr; - static int (*oldfn_ioctl)(int fd, unsigned long req, ...); - char *ifname; - - if (oldfn_ioctl == NULL) - oldfn_ioctl = dlsym(RTLD_NEXT, "ioctl"); - - va_start(ap, req); - ioctlarg = va_arg(ap, void *); - va_end(ap); - - if (req == SIOCSARP) - return 0; - - if (fd != tunfd || req != TUNSETIFF) - return oldfn_ioctl(fd, req, ioctlarg); - - if (!(ifname = getenv("VLM_TAP")) || strlen(ifname) >= IFNAMSIZ) - { - write(2, "Invalid VLM_TAP.\n", 20); - exit(1); - } - - ifr = ioctlarg; - strncpy(ifr->ifr_name, ifname, IFNAMSIZ); - return oldfn_ioctl(fd, req, ifr); -}
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Linux.html b/clones/lisp/www.cliki.net/Linux.html deleted file mode 100644 index 2f3a2068..00000000 --- a/clones/lisp/www.cliki.net/Linux.html +++ /dev/null @@ -1,80 +0,0 @@ - - - - - CLiki: Linux - - - - - - - -
    Linux
    Linux is a widely popular Unix kernel. Several Common Lisp Implementations run on Linux, including ABCL, CCL, CLISP, CMUCL, GCL, SBCL, ECL, emacs-cl, OpenMCL, PopLog, Sacla and others.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Liskell.html b/clones/lisp/www.cliki.net/Liskell.html deleted file mode 100644 index f52858c1..00000000 --- a/clones/lisp/www.cliki.net/Liskell.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Liskell - - - - - - - -
    Liskell
    Liskell is a s-exp syntax for Haskell.

    https://github.com/haskell-lisp/liskell

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Lisp - Next Generation.html b/clones/lisp/www.cliki.net/Lisp - Next Generation.html deleted file mode 100644 index 48180149..00000000 --- a/clones/lisp/www.cliki.net/Lisp - Next Generation.html +++ /dev/null @@ -1,330 +0,0 @@ - - - - - CLiki: Lisp - Next Generation - - - - - - - -
    Lisp - Next Generation
    In a time far, far in the future exists a kinder, gentler, friendlier Lisp. -What should it look like? What facilities would it have that are missing, -underdeveloped, or overcomplex in Common Lisp? Imagine that there are people -listening to any ideas or proposals you place here and are willing to divert -effort into implementing them...

    Lyn Headley's Wish lisp -

      -
    • -fully object oriented. I think all functions should -be methods and I should be able to specialize elt, length, etc for my own -types. -
    • -
    • concurrent and distributed -
    • -

    Fare Rideau's remarks: -

      -
    • Read about the history and spirit of lisp and learn from it. -(Kent Pitman can tell you a lot about its spirit). -If it's the way it is, that's for a reason, for better or worse. -
    • -
    • A new lisp, in many ways, would not be CL. -Indeed, the spirit and letter of CL are adapted to some assumptions -about the universe, and these assumptions mightn't be the same -as the designers of a new lisp would like. -
    • -
    • For instance, something very important to me is -concurrency and distribution. -However, in a world where every other thread can -(setf (symbol-function foo) ...), -it is no longer possible to make type-based cross-function optimizations -without breaking the semantics of CL. -Distributed programming within a same CL universe becomes impossible. -For a concurrent dynamic language that solves this issue in a clean way, -see Erlang. -
    • -
    • -Another problem with concurrency is that -when you define domain-specific languages, -you want thread interruption and interaction between concurrent threads -to preserve domain-specific invariants, -and that this is basically impossible without appropriate support -in both the compiler and the runtime support. - -Can you please elaborate on this point? -
    • -

    Alexander Kjeldaas' Remarks: -

      -
    • -I take exception to the notion that you can not do type-based cross-function optimizations without breaking the semantics of CL. This is entirely possible, but current CL implementations do not do it yet. Follow this simple strategy: -
        -
      1. Compile optimized functions with knowledge of types as much as you want. -
      2. -
      3. Make sure you compile an unoptimized version of every optimized function. -
      4. -
      5. Remember what type-information the optimized version of the function depends on. -
      6. -
      7. Attach a trigger that makes sure that any function that depends on type information that does not hold any more are disabled when (setf (symbol-function foo) ...) is called. Start using the unoptimized version instead. -
      8. -
      9. Profit. -
      10. -
      -
    • -

    Fare Rideau's remarks: -

      -
    • Close, but no cigar: -
        -
      1. -When you invalidate one function, -other functions that depended on its invariants must be invalidated, and so on. -In a distributed system, this can be very expensive: -all the many "global" and "special" bindings in CL -are as many points of synchronization nightmare. -The semantics of CL has to be significantly modified, -so as to accomodate for distributed computing. -
      2. -
      3. -Your invalidation business, while a nice idea, -doesn't concern only future invocations -of the invalidated functions, -but also past invocations that are still on stack. -This means that you can't change the shape of the call graph -or the internal data representation, -based on the fear that you'll have to fallback -to the unoptimized version. -So as to be able to do any non-local structural optimization, -or will have to restrict yourself to only "reversible" optimizations, -and dynamically reconvert everything back to unoptimized versions, -continuations included, when you hit an invalidation point. -While theoretically possible, this would lead to horrible complexity -and horrible performance in a distributed system -(global rewrite of system state). -
      4. -
      -
    • -
    • In CL, you might already allow optimization to occur -by declaring functions as inline, etc. -But then you lose any well-defined semantics -in presence of dynamic redefinition, etc. -Erlang for instance, has clear semantics for function redefinition, -that do not require expensive global synchronization. -
    • -
    • You can of course build a distributed on top of CL - this has been done. -But you can likewise build distributed systems -on top of C or of any Turing tar-pit. -The thing is, the distributed system is not CL. -
    • -

    Alexander Kjeldaas' Remarks:

    Changing the internal data representation is possible. Performance does not enter into the equation (almost). This kind of optimization is opportunistic - you gamble. You assume that you will win more than you will lose. So you lose big when a struct is changed. Too bad.

    Stop the circus. Rewrite the objects. Update pointers. Write-protect the old objects. Forward writes from old objects to new objects. Optionally, use type-stable storage for optimized objects so you don't have to traverse everything.

    I do not understand what you refer to when you say that you can not change the call graph.

    I am not saying CL is good at distributed programming. What I am saying is you can build a CL system with "pay-as-you-go" properties. The presence of threads makes it harder but not impossible. Everything self, goo and others have done is possible with CL.

    Fare Rideau's remark summary: -

      -
    • You (Alexander Kjeldaas): Performance is an exercise in caching
    • -
    • Me: cache invalidation costs -an extreme awful blazing catastrophic lot in a global distributed environment, -and its frequency is intrinsically unpredictable -in a fully dynamic language with the illusion of a uniform global store
    • -

    -Jochen Schmidt's Remarks: -

      -
    • -Another problem with distribution is the need for some kind of security framework -like e. g. a "Sandbox" or something similar. -
    • -
    • -A new Lisp should IMHO include highlevel (and lowlevel) networking. -If the standard is layered this could be made one of the upper layers, but I -think supporting this is important nowadays
    • -
    • -OOP should keep multiple inheritance or at least provide explicit mixins like Ruby or "Categories" like Objective-C. I really do not want to see another crippled OOP system like Java.
    • -
    • -A MOP should be part of the standard. -
    • -

    Add (not by Jochen Schmidt): -

      -
    • EuLisp, a nice attempt at a modern and efficient Lisp. -
    • -
    • Avoid ISLisp. [Why?] -
    • -
    • Dylan, a static language (!) derived from Common Lisp, Scheme and EuLisp. The first version had prefix syntax. The original Dylan book gives insights into its design. -
    • -
    • See: Lisp Evolution and Standardization, Frontiers in Artificial Intelligence and Applications, 1988 -
    • -
    • Lessons can also be learned from NewtonScript (Apple) and its libraries. It is amazing in how little memory it runs advanced object-oriented code. -
    • -
    • Replace LOOP by ITERATE and FORMAT by OUT. Add lispy regular expressions like in SCSH. -
    • -
    • Maybe the language Crush would be interesting? -
    • -

    Comment from Valery Khamenya: -

      -following nice languages could be considered: -
    • Clean - with parallelism and a very nice premise towards Virtual Machine based on graph rewriting. -
    • -
    • Mozart -- with accent on parallelism and distribution -
    • -

    Comment from gambarimasu who is at gmail: -

      -what would please me: -
    • start with cl -
    • -
    • scriptify, scriptify, scriptify -- make calling it much more convenient -than python, ruby, etc. you should not have to use a non-lisp language. -(for now, we can use emacs -batch with (require 'cl).) -
    • -
    • orthogonalize and clean up various small warts everybody knows about -
    • -
    • deprecate lots of stuff almost nobody uses -- they can be in libraries -
    • -
    • make series operators be named consistently with sequence operators. or -even incorporate them into the language to make cl more functional, -somehow. perhaps have sequence functions accept a :series keyword, somehow. -
    • -
    • maybe let sequence functions accept a :destructive keyword. -
    • -
    • other langs let you use non-congruent methods, right? -
    • -
    • type/class and function/method orthogonalization -
    • -
    • figure out whether and how to standardize, semi-standardize, apply a -real-valued metric of degree of standardness, or whatever, and get the -dealbreaker code into the language in some reasonable standardish way. -
    • -
    • the code you want is in some other language's comprehensive archive -network! get uffi or whatever *really* convenient to use so you can *easily* -run python, c, ruby, or whatever libraries from lisp (efficiency is a far lower -priority than convenience) -- without even having to know how to program in -those languages! -
    • -

    Comment from marijnh: -

      -
    • Just one wee little thing: A boolean false that is not an empty list. This makes interfacing with notations that do separate those concepts (JSON, SQL) a whole lot more pleasant. -
    • -

    Comments on a parallel / distributed Lisp, from MarkHoemmen: -

      -
    • -A lot of expertise in parallel programming comes from the scientific computing world, in which parallelism is typically exploited as SPMD, and the computing resources ("number of nodes") is usually fixed for the duration of an application. This has influenced the design of typical scientific computing programming libraries, such as MPI and GASNet. These can support threads as an additional layer, but threads do not cross nodes. (MPI 2 supports dynamic creation and destruction of processes, but I don't think so many people use that feature -- correct me if I'm wrong!) -
    • -In that community, threading is usually either done semi-automatically (via OpenMP and a parallelizing compiler) or by hand (pthreads and the like). There are extensions of OpenMP (such as Intel's) that support the notion of a "task queue," rather than the simplistic SPMD model that most OpenMP parallelization assumes. -
    • -Scientific computing has developed a number of parallel programming languages. Some follow the SIMD school, such as UPC and Titanium, and others the threading school, such as Cilk. Parallel languages in development, such as Fortress, X10 and Chapel, have varying models. Of these three, I think X10 is the closest to releasing an implementation, and Fortress is the most ambitious (and perhaps the most Lisp-inspired?). -
    • -CPU manufacturers are coming to the scientific computing community to learn how to exploit parallelism on the new multicore chips. -
    • -

    All this means that we Lispers could benefit from paying attention to how that community is designing languages and parallel programming libraries.

    Wish list from Eric Normand: -

      -
    • Do a clean sweep on the standard functions with four things in mind: -
        -
      1. Remove redundant functions. (elt vs nth, et al) -
      2. -
      3. Standardize naming of functions (and their arguments) (set-difference vs intersection). -
      4. -
      5. Rename functions to the currently accepted name (fold instead of reduce) -
      6. -
      7. Organize functions into "modules" so you can find what you want more quickly (:cl-sequence, :cl-math, etc). -
      8. -
      -
    • -
    • Clean up the sequence/list distinction (is it really necessary?) -
    • -
    • More functional programming facilities (like compose, curry, etc) -
    • -
    • Standardized bytecode representation (cross-platform) -
    • -
    • Decent free Windows implementation -
    • -
    • Standard package system and repository -
    • -
    • removed one because I think it's silly, now -
    • -
    • Continuations (if nothing else but for web/distributed programming, and they don't need to work everywhere) -
    • -
    • Fully transparent Persistent Object Database -
    • -
    • Generic functions dispatch on type AND number of arguments -
    • -
    -Some things I like that I read above: -
      -
    • MOP part of standard (we need more introspection!) -
    • -
    • Threads -
    • -
    • Good FFI to the most common programming languages -
    • -
    • Standard networking model -
    • -
    • Everything is a CLOS object, and all functions are generics (so you can "override" cons, cdr, car). I believe this was part of the original CLOS standard, but I don't think it has been kept. You could say (ensure-generic cons) or something like that, and it would convert a function to a generic. -
    • -

    Alphy's Remarks:

    It would be really nice if the new Lisp could run seamlessly on multiple architectures, initially via virtual-machine (if necessary), but natively as well. It would also be nice if the various libraries for this new Lisp (except for hardware-specific ones) would be available for every architecture.

    One thing I like about Python (and friends) is that I can expect it to work on Linux, Windows, and Mac OS X; even though I focus on Linux, there are times in which the script I developed in Linux needs to work in Windows. With few exceptions, I can expect both the core language and the libraries I used to be available for my script, regardless of platform.

    The closest I see for Common Lisp with regards to this is CLISP. Right now, I'm interested in parallel programming (it's a bit of a pain to use multiple processes in Python, using custom message-passing), but the only library I can find that will likely meet my needs, CL-MPI, isn't tested in CLISP. While it's tested in SBCL, SBCL isn't (or at least, doesn't seem to be) available for Windows!

    Of course, if CLISP is only available via CygWin, I wouldn't consider that "seamless": I want to be able to install the language on a machine without other special installs, and just have it work.

    Goheeca's remarks: -

      -
    • Improve lisp reader API to avoid ugly hacks like CLPython's setup-omnivore-readmacro function.
    • -
    • Improve stream API to have an option to unread a string (not only a char).
    • -
    • -eval should have a second optional argument - the environment object. -
    • -
    • Extend the tilde slash directive in the formatting string with an option of not consuming an argument.
    • -


    -Lisp
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Lisp Books.html b/clones/lisp/www.cliki.net/Lisp Books.html deleted file mode 100644 index 43f25371..00000000 --- a/clones/lisp/www.cliki.net/Lisp Books.html +++ /dev/null @@ -1,173 +0,0 @@ - - - - - CLiki: Lisp books - - - - - - - -
    Lisp books
    A list of favorite Lisp books.

    Another list of Lisp books.

    Online books: -

    Offline books with web pages: -

    Other interesting things: -

    See also topic AI for a list of AI lisp books.

    Lisp books pages on cliki (topic "book"): -

    -Using "book" instead of the previously used "lisp books" makes it easier to put the marker in the text.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Lisp Companies.html b/clones/lisp/www.cliki.net/Lisp Companies.html deleted file mode 100644 index 6cfd32ea..00000000 --- a/clones/lisp/www.cliki.net/Lisp Companies.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: Lisp Companies - - - - - - - -
    Lisp Companies
    Companies which uses Lisp, Scheme, ...

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Lisp History.html b/clones/lisp/www.cliki.net/Lisp History.html deleted file mode 100644 index 71f82509..00000000 --- a/clones/lisp/www.cliki.net/Lisp History.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Lisp History - - - - - - - -
    Lisp History
    Lisp has a long and interesting history, and many Lisp hackers are only vaguely familiar with the subject. Without a working knowledge of Lisp's history however the user will fail to understand much of the rationale (or lack thereof) behind modern Lisp implementations. This page attempts to provide some short historical background on Lisp, with particular emphasis on how the more popular open source Lisps came into being. It is not intended to become a comprehensive history of Lisp, but instead as a starting point in CLiki from which other sources can be found. There is a lot of Lisp history scattered about the web, but it's not well centralized at the moment. This page is thus intended as a good place from which to start browsing.

    Lisp began as a language development project of John McCarthy. He has documented its earliest history in his papers LISP---NOTES ON ITS PAST AND FUTURE---1980 and History of Lisp. These two papers were composed by McCarthy working from his own memory. However he has noted that Herbert Stoyan's review is probably more accurate. For other references there is also the excellent Evolution of Lisp by Gabriel and Steele which covers the 'golden age' of Lisp development, and Pitman and Miller's Brief History of Lisp. The old C.L.L FAQ also has a timeline through 1992. See also the ALU page on the history of Lisp.

    CMUCL comes to us from Spice Lisp, a Lisp implementation at Carnegie-Mellon University on the CMU-designed PERQ workstation. Hemlock of course also descends from the editor of the same name implemented in Spice Lisp. Spice Lisp was notable for being continually updated in step with the developing Common Lisp standard through the 1980s. At some point it was recognized that it had become a Common Lisp and was renamed to its present moniker. SBCL is a recent fork from CMUCL.

    GCL and ECL have roots in the first 'outsider' Common Lisp, Kyoto Common Lisp (KCL) implemented by Taiichi Yuasa and Masami Hagami based on their reading of the CLtL1. That implementation pointed out a lot of defects in the Common Lisp specification which had been either assumed or unnoticed by close community effects among the standardizers. KCL gave birth to the KCL family, in particular Austin Kyoto Common Lisp (AKCL), developed from KCL by William Schelter at the University of Texas, Austin. His aim was to provide a Lisp implementation which would run Maxima, the descendent of the MIT MACSYMA symbolic algebra system. Schelter later released AKCL as GCL under the GPL. (What about ECL?)

    OpenMCL is an open source Common Lisp implementation, licensed under a Lisp-specific variant of the LGPL, and derived from Digitool's MCL product. Versions are available for LinuxPPC, Linux 64-bit x86, and for Darwin (PPC and x86-64 bit), the BSD/Mach layer on which Mac OS X is based.

    Its history is an interesting path from commercial, to important government research, and finally to an open source project. It encompasses the highs of technical achievement, the lows of internecine battles over implementation language, and finally the charitable release of the software as open source.

    More details can be found on the Clozure site.

    CLISP history?

    Add links to other historical information sources here...

    There is a really nice set of emails from the early 80s when Common Lisp was being developed here.


    -document
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Lisp IDE.html b/clones/lisp/www.cliki.net/Lisp IDE.html deleted file mode 100644 index 0ad8b7c5..00000000 --- a/clones/lisp/www.cliki.net/Lisp IDE.html +++ /dev/null @@ -1,60 +0,0 @@ - - - - - CLiki: lisp IDE - - - - - - - -
    lisp IDE
      -
    • -Lisp in a Box - - Self-contained Lisp IDEs for various OSes (soon): -
    • -
    • -LispEdit - - LispEdit is a Geany plugin that provides shortcuts for sending s-expressions (symbolic expressions) to a Lisp process running in Geany's embedded terminal -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Lisp IRC Bots.html b/clones/lisp/www.cliki.net/Lisp IRC Bots.html deleted file mode 100644 index 14dea4ce..00000000 --- a/clones/lisp/www.cliki.net/Lisp IRC Bots.html +++ /dev/null @@ -1,104 +0,0 @@ - - - - - CLiki: Lisp IRC Bots - - - - - - - -
    Lisp IRC Bots
    There are several IRC bots written in Lisp. Most of them these days are done with the cl-irc library, which handles all of the IRC protocol (including DCC) and presents a very nice CLOS interface.

    • -cl-irc examples -
      -cl-irc comes with two example bots: clhs, a bot which performs hyperspec lookups, and cliki (aka minion on #lisp), an infobot that uses CLiki as a second-level database.
      -
    • - lisppaste -
      - An IRC bot that listens for connections through the web and allows - users to paste text into a webform. A link to the webform is then - displayed on the selected channel. -
      -
    • - irc-logger -
      - A multi-channel logger with web interface. -
      -
    • -
    • - WMBot -
      WMBot is a base that connects to the IRC server and responds to PING messages, and a set of modules that can be enabled and disabled while the bot is running. Currently implemented modules include basic logging, basic user management, a command module, and a simple info module, and it is fairly easy to write a new module. There has not been a packaged release in a while, but the svn repository at sourceforge.net has the latest code.
      -
      -License: LGPL
      -
    • -
    • - Lispbot -
      "The Lispbot is pretty much what it sounds like. It is an IRC bot written in Common Lisp. It doesn't do things like OPing and kicking flooder, other bots do that just fine. Rather, it provides some structure for other applications that users might want to interact with over IRC. Main feature is "eval" which allows commands to be used in a channel and executed in the main lisp system with the output going back to the channel."
      -
      -License: unknown
      -
    • -
    • - Eval Bot -
      Eval Bot is an REPL for IRC channel. It evaluates Common Lisp expressions and sends the values back to the channel. A subset of Common Lisp features is supported.
      -
      -License: AGPL3+
      -
    • -
    • - Colleen -
      Colleen is both an IRC bot framework as well as a directly usable bot program, with a plethora of already included modules to provide most of the functionality you might want out of an IRC bot.
      -
      -License: Artistic License 2.0
      -
    • -
    • - botihn -
      botihn is an IRC bot that watches Hacker News and forwards the title and url of news articles in irc://irc.libera.chat/#hn usable bot program.
      -
      -License: AGPL 3.0
      -
    • -
    • - botil -
      botil is an IRC logger bot. It's not deployed (I'm unsatisfied by the indexing engine).
      -
      -License: AGPL 3.0
      -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Lisp Irc Bots.html b/clones/lisp/www.cliki.net/Lisp Irc Bots.html deleted file mode 100644 index 14dea4ce..00000000 --- a/clones/lisp/www.cliki.net/Lisp Irc Bots.html +++ /dev/null @@ -1,104 +0,0 @@ - - - - - CLiki: Lisp IRC Bots - - - - - - - -
    Lisp IRC Bots
    There are several IRC bots written in Lisp. Most of them these days are done with the cl-irc library, which handles all of the IRC protocol (including DCC) and presents a very nice CLOS interface.

    • -cl-irc examples -
      -cl-irc comes with two example bots: clhs, a bot which performs hyperspec lookups, and cliki (aka minion on #lisp), an infobot that uses CLiki as a second-level database.
      -
    • - lisppaste -
      - An IRC bot that listens for connections through the web and allows - users to paste text into a webform. A link to the webform is then - displayed on the selected channel. -
      -
    • - irc-logger -
      - A multi-channel logger with web interface. -
      -
    • -
    • - WMBot -
      WMBot is a base that connects to the IRC server and responds to PING messages, and a set of modules that can be enabled and disabled while the bot is running. Currently implemented modules include basic logging, basic user management, a command module, and a simple info module, and it is fairly easy to write a new module. There has not been a packaged release in a while, but the svn repository at sourceforge.net has the latest code.
      -
      -License: LGPL
      -
    • -
    • - Lispbot -
      "The Lispbot is pretty much what it sounds like. It is an IRC bot written in Common Lisp. It doesn't do things like OPing and kicking flooder, other bots do that just fine. Rather, it provides some structure for other applications that users might want to interact with over IRC. Main feature is "eval" which allows commands to be used in a channel and executed in the main lisp system with the output going back to the channel."
      -
      -License: unknown
      -
    • -
    • - Eval Bot -
      Eval Bot is an REPL for IRC channel. It evaluates Common Lisp expressions and sends the values back to the channel. A subset of Common Lisp features is supported.
      -
      -License: AGPL3+
      -
    • -
    • - Colleen -
      Colleen is both an IRC bot framework as well as a directly usable bot program, with a plethora of already included modules to provide most of the functionality you might want out of an IRC bot.
      -
      -License: Artistic License 2.0
      -
    • -
    • - botihn -
      botihn is an IRC bot that watches Hacker News and forwards the title and url of news articles in irc://irc.libera.chat/#hn usable bot program.
      -
      -License: AGPL 3.0
      -
    • -
    • - botil -
      botil is an IRC logger bot. It's not deployed (I'm unsatisfied by the indexing engine).
      -
      -License: AGPL 3.0
      -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Lisp Machines.html b/clones/lisp/www.cliki.net/Lisp Machines.html deleted file mode 100644 index 1e1f61e6..00000000 --- a/clones/lisp/www.cliki.net/Lisp Machines.html +++ /dev/null @@ -1,83 +0,0 @@ - - - - - CLiki: Lisp Machines - - - - - - - -
    Lisp Machines
    Lisp Machines (commonly written 'LispM' and pronounced 'lispum' or 'lispem') are the nirvana (with all that implies ^_~) of Lisp users. A Lisp machine is a computer which runs an operating system and system software written entirely in Lisp, and which may have special hardware support for common Lisp operations (eg, GC, CONS).

    The first official Lisp Machines were implemented at the MIT Artificial Intelligence Laboratory back in 1975 or so. The prototype machine was called the CONS, for obvious reasons. Its successor, the CADR (the 'next one') was a 48-bit general microcode processor which ran a 16-bit macrocode that implemented the lispm instruction set. An HTML version of the paper on the CADR, MIT A.I. Memo 528 is available online at Lambda Unlimited (a PDF version also exists). The only bug in this paper is that it is missing page 18, which I (James A. Crippen) hope to fix as soon as my hardcopy arrives from MIT. Or not. It turns out the hardcopy is missing page 18 too!

    Many attempts have been made to implement a Lisp-based operating system for modern computers (eg the ubiquitous PC), but so far none of them have been successful. In order to avoid reimplementing the entire Lisp operating system (which is over 60 MB of source code) some intrepid hackers have embarked on an attempt to emulate a Lisp machine, the TI Explorer. The Explorer III ('E3') Project has made some progress, and work is currently underway on implementing the function calling macrocode instructions.

    The other major player in the LispM market aside from TI was Symbolics; see SMBX.org, home of the Symbolics Museum and the 'Usual Suspects'. From their website: "SMBX.org is a community of people who used to work at Symbolics that have come together to share information, resources, experiences, humor, etc. Some of us put in a lot of years of our lives at Symbolics trying to create something new and better. Along the way, we made a lot of friends. The friendships and the memories have proven to be more enduring than the product. The network of personal friendships and contacts persists today, in some cases more than 20 years after the fact."

    A very useful book for learning more about the Symbolics Lisp Machine is "Lisp Lore: A Guide to Programming the Lisp Machine. Second Edition. Hank Bromley and Richard Lamson". It is very expensive - but interestingly it is still being sold. The book was itself written with the Concordia publishing system on the Lisp Machine.

    Chapters: -

      -
    1. Introduction -
    2. -
    3. Getting Started on the Lisp Machine -
    4. -
    5. Flow of Control -
    6. -
    7. More on Navigating the Lisp Machine -
    8. -
    9. What's a Flavor -
    10. -
    11. User Interface -
    12. -
    13. The Graph Example -
    14. -
    15. Streams and Files -
    16. -
    17. The Calculator Example -
    18. -
    19. Systems, Storage and Errors -
    20. -
    21. The Card Game Example -
    22. -
    23. More Advanced Use of the Editor -
    24. -
    25. A Quick Look at the Network -
    26. -
    27. Appendix A: Basic Zmacs Commands -
    28. -

    -NB: Right now there are several second-hand copies of this book available through BookFinder.com.

    MF: Lisp lore can be found at OpenLibrary.org for free! https://openlibrary.org/books/OL2714433M/Lisp_lore


    -Lisp History
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Lisp Markup Languages.html b/clones/lisp/www.cliki.net/Lisp Markup Languages.html deleted file mode 100644 index ea73d025..00000000 --- a/clones/lisp/www.cliki.net/Lisp Markup Languages.html +++ /dev/null @@ -1,72 +0,0 @@ - - - - - CLiki: Lisp Markup Languages - - - - - - - -
    Lisp Markup Languages
    Lisp Markup Languages are Markup Languages that extend a Lisp system.

    Markup languages for Common Lisp include:

    -Related pages: Web tools, XML tools.

    See also cl-emb, which is a sort of opposite: Lisp embedded (a la JSP) in HTML text.

    Markup languages and related software based on other Lisp dialects than CL include: -BRL, -Curl, -DSSSL, -LAML, -Skribe, -etc.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Lisp Server Pages.html b/clones/lisp/www.cliki.net/Lisp Server Pages.html deleted file mode 100644 index 3db1d071..00000000 --- a/clones/lisp/www.cliki.net/Lisp Server Pages.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: Lisp Server Pages - - - - - - - -
    Lisp Server Pages
    Lisp Server Pages allows you to serve dynamic Web pages through use of scripts with embedded Common Lisp code which is translated into HTML-generating functions.

    It currently supports AllegroServe and, to a lesser degree, CL-HTTP.

    -There's a much simpler and less cool version of LSP-style hack available (requires AllegroServe). -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Lisp Videos.html b/clones/lisp/www.cliki.net/Lisp Videos.html deleted file mode 100644 index 0ee64f98..00000000 --- a/clones/lisp/www.cliki.net/Lisp Videos.html +++ /dev/null @@ -1,184 +0,0 @@ - - - - - CLiki: Lisp Videos - - - - - - - -
    Lisp Videos
    A topic to collect the various videos of people doing things with lisp.

    -

    Learning material

  • - Baggers Channel -- Youtube channel featuring videos of different Common Lisp topics: - -
  • -

  • vindarel's Udemy course -- "Common Lisp programming, from novice to effective developer" with chapters about:

  • - -
  • -

    University courses

    -

    Videos featuring software

      -
    • High-level overview of Gendl , with some low-level code and inspection examples. Demonstrates the concepts behind defining a full 3D geometric model as well as a dynamic web page to display and interact with the model. Gendl is agenerative programming and KBE system embedded in Common Lisp --- #gendl on libera.chat -
    • -

    -

    Others


    -

    Broken

    - Please find replacement links for the following projects: -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Lisp Web Tales.html b/clones/lisp/www.cliki.net/Lisp Web Tales.html deleted file mode 100644 index 6802dc75..00000000 --- a/clones/lisp/www.cliki.net/Lisp Web Tales.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Lisp Web Tales - - - - - - - -
    Lisp Web Tales
    Lisp Web Tales is a book about web development in common lisp, written by pavelpenev. It is structured as a set of tutorials and examples.

    The book is available for purchase in PDF/EPUB/MOBI formats from https://leanpub.com/lispwebtales.

    And a free html version is available at http://lispwebtales.ppenev.com.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Lisp as a shell.html b/clones/lisp/www.cliki.net/Lisp as a shell.html deleted file mode 100644 index 9dc8e6e0..00000000 --- a/clones/lisp/www.cliki.net/Lisp as a shell.html +++ /dev/null @@ -1,62 +0,0 @@ - - - - - CLiki: Lisp as a shell - - - - - - - -
    Lisp as a shell
    See CLISP-Shell locally or the -"official, expanded - and corrected version" -at the CLISP home

    Common Lisp shells under development:

      -
    • -lish is a portable shell and REPL in pure CL, including debugger, and command line utilities. License: GPL3 -
    • -
    • -SHCL is a POSIX adhering shell in CL. License: Apache 2 -
    • -

    For portable shell scripting with CL, you may consider using inferior-shell.

    Non-Common-Lisp Lisp solutions also include LUSH (the Lisp Universal Shell) or SCSH (Scheme Shell), or using the emacs' eshell…


    -Unix system programming
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Lisp books.html b/clones/lisp/www.cliki.net/Lisp books.html deleted file mode 100644 index 43f25371..00000000 --- a/clones/lisp/www.cliki.net/Lisp books.html +++ /dev/null @@ -1,173 +0,0 @@ - - - - - CLiki: Lisp books - - - - - - - -
    Lisp books
    A list of favorite Lisp books.

    Another list of Lisp books.

    Online books: -

    Offline books with web pages: -

    Other interesting things: -

    See also topic AI for a list of AI lisp books.

    Lisp books pages on cliki (topic "book"): -

    -Using "book" instead of the previously used "lisp books" makes it easier to put the marker in the text.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Lisp in a Box.html b/clones/lisp/www.cliki.net/Lisp in a Box.html deleted file mode 100644 index 6e88694e..00000000 --- a/clones/lisp/www.cliki.net/Lisp in a Box.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: Lisp in a Box - - - - - - - -
    Lisp in a Box
    Self-contained Lisp IDEs for various OSes (soon): -Lisp in a Box @ Common-Lisp.net. -Currently Windows (binary) and Linux (source) are supported.

    Mikel Evins has made a Lisp in a Box for Mac OS X out of Emacs, OpenMCL, and SLIME. The Mac OS X version currently requires OS X 10.6 Snow Leopard.

    Last updated: February 6, 2011

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Lisp machines.html b/clones/lisp/www.cliki.net/Lisp machines.html deleted file mode 100644 index 1e1f61e6..00000000 --- a/clones/lisp/www.cliki.net/Lisp machines.html +++ /dev/null @@ -1,83 +0,0 @@ - - - - - CLiki: Lisp Machines - - - - - - - -
    Lisp Machines
    Lisp Machines (commonly written 'LispM' and pronounced 'lispum' or 'lispem') are the nirvana (with all that implies ^_~) of Lisp users. A Lisp machine is a computer which runs an operating system and system software written entirely in Lisp, and which may have special hardware support for common Lisp operations (eg, GC, CONS).

    The first official Lisp Machines were implemented at the MIT Artificial Intelligence Laboratory back in 1975 or so. The prototype machine was called the CONS, for obvious reasons. Its successor, the CADR (the 'next one') was a 48-bit general microcode processor which ran a 16-bit macrocode that implemented the lispm instruction set. An HTML version of the paper on the CADR, MIT A.I. Memo 528 is available online at Lambda Unlimited (a PDF version also exists). The only bug in this paper is that it is missing page 18, which I (James A. Crippen) hope to fix as soon as my hardcopy arrives from MIT. Or not. It turns out the hardcopy is missing page 18 too!

    Many attempts have been made to implement a Lisp-based operating system for modern computers (eg the ubiquitous PC), but so far none of them have been successful. In order to avoid reimplementing the entire Lisp operating system (which is over 60 MB of source code) some intrepid hackers have embarked on an attempt to emulate a Lisp machine, the TI Explorer. The Explorer III ('E3') Project has made some progress, and work is currently underway on implementing the function calling macrocode instructions.

    The other major player in the LispM market aside from TI was Symbolics; see SMBX.org, home of the Symbolics Museum and the 'Usual Suspects'. From their website: "SMBX.org is a community of people who used to work at Symbolics that have come together to share information, resources, experiences, humor, etc. Some of us put in a lot of years of our lives at Symbolics trying to create something new and better. Along the way, we made a lot of friends. The friendships and the memories have proven to be more enduring than the product. The network of personal friendships and contacts persists today, in some cases more than 20 years after the fact."

    A very useful book for learning more about the Symbolics Lisp Machine is "Lisp Lore: A Guide to Programming the Lisp Machine. Second Edition. Hank Bromley and Richard Lamson". It is very expensive - but interestingly it is still being sold. The book was itself written with the Concordia publishing system on the Lisp Machine.

    Chapters: -

      -
    1. Introduction -
    2. -
    3. Getting Started on the Lisp Machine -
    4. -
    5. Flow of Control -
    6. -
    7. More on Navigating the Lisp Machine -
    8. -
    9. What's a Flavor -
    10. -
    11. User Interface -
    12. -
    13. The Graph Example -
    14. -
    15. Streams and Files -
    16. -
    17. The Calculator Example -
    18. -
    19. Systems, Storage and Errors -
    20. -
    21. The Card Game Example -
    22. -
    23. More Advanced Use of the Editor -
    24. -
    25. A Quick Look at the Network -
    26. -
    27. Appendix A: Basic Zmacs Commands -
    28. -

    -NB: Right now there are several second-hand copies of this book available through BookFinder.com.

    MF: Lisp lore can be found at OpenLibrary.org for free! https://openlibrary.org/books/OL2714433M/Lisp_lore


    -Lisp History
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Lisp newbie.html b/clones/lisp/www.cliki.net/Lisp newbie.html deleted file mode 100644 index 0656d459..00000000 --- a/clones/lisp/www.cliki.net/Lisp newbie.html +++ /dev/null @@ -1,103 +0,0 @@ - - - - - CLiki: Lisp newbie - - - - - - - -
    Lisp newbie
    Where do I start?

    Q: What is the purpose of this page?
    -A1: Well I am one, and I have lots of questions. I was going to do the wiki thing of "braindump onto the page, then delete or refactor later". Hopefully CLiki could be left with a page which other newbies could use to get started.
    -A2: A repository for stupid questions that might otherwise be answered in part 1 of the FAQ.
    -A3: An editting area for questions to cull for the FAQ? I'm afraid I don't do Usenet any more, like I don't do TV. Just can't keep up with it.


    Background on a newbie

    My apologies to Larry Wall for jilting Perl (but see Cut and shut), but I think the next project requires something Lisp-flavoured, although I don't know what. The spec for the project changes whenever I contemplate it, see noosphere.org for something in the same vein.

    I suspect my questions would be too far OffTopic for WardsWiki, so I trundled over here.

    I've dabbled in elisp, but I need something that can live outside emacs (yes I know I can fire it up on the command line .. but that doesn't seem right).

    "Emacs Lisp considered harmful" moved to the elisp page. That said, I would like to see one comparison page if such a beast could exist.

    Naturally I'm after something that's already ported to Debian. Laziness and moral soundness in one easy to swallow package(ing system). *g*

    Well, assuming you mean Debian on x86/Linux, you have the choice between CMUCL, SBCL, CLISP, gcl, ecl and installer packages for Allegro and LispWorks. I have most of them installed.

    The problem

    I'm circling the Lisp family like a vulture. I'm pretty sure it has what I need, but I'm not sure where to attack to get going efficiently.

    The thorough route would be to read half a dozen books on Lisp, Scheme and Haskell, learn each, and then compare. However I'm an idle sod, so that doesn't fly.

    -

    Lisp or Scheme or ...?

    I don't mean to start a fight here .. I suppose the only fair way to find out whether I want Lisp or Scheme is to try both, but that takes three times as long...

    (See Wiki:LispSchemeDifferences for a start.)

    Q: If I start with one and then decide to change to the other, how much trouble will I have? Can I just translate keywords and port to the different library, or would I need to start from scratch?

    They really are completely different languages.

    I'm getting that impression, but at this stage this is about as helpful as telling a Basic programmer that Java is completely different to C#. I'm trying to be objective about something I don't understand.

    If you are viewing Lisp & Scheme from the vantage point of a Java/C++/C# programmer then they look awfully similar. A lot of the points on the early learning curve are similar - getting used to the syntax, the idea of closures, functions as parameters, s-expressions, macros rewriting code etc. It's only once you have peeled away this layer that you start noticing the differences, and that they are in fact quite different languages. I'm still pretty much a newbie, but the best way of expressing the difference by analogy seems to be comparing CL to C++, and Scheme to C. Sure, Scheme is smaller, easier to learn, more lightweight and has generally more implementations, so might be more suitable for the newbie aclimatising to the LISP family, but CL is a much more thoroghly thought - out language, with a much broader spec, more suitable for multi-paradigm programming in the large..

    Q: What am I missing out on with CL? Does anyone actually use continuations? Without regret?

    -You can do continuation-passing-style without call/cc. The classes I've taken where we've used CPS never touched call/cc (though we did implement it). -

    Is the continuation done by arranging to return its value, or do you have a funky macro to redirect the execution path?

    SchemeVsLisp: Scheme has Hygienic macros, which are supposed to stop you shooting yourself in the foot. The CL people tell me that sometimes you need to shoot something very close to your foot, and should be allowed to; and that when you don't, CL can restrict your macros in a similar way.

    What's more, Scheme's hygienic macros don't actually stop you from shooting yourself in the foot. See postings in comp.lang.scheme by Al Petrovsky for mind-boggling uses of Scheme macros.

    Q: Can I get the best of both worlds? (i.e. use CL libraries from Scheme). Well I did say "stupid questions".

    In what sense is this the best of both worlds?

    -Common Lisp implementations

    So many to choose from. Do I pick one that's beginner-friendly or just start with something that has convenient Database and Web hooks? Do I worry about performance now or when I'm firmly stuck with one implementation? etc.

    Well, probably CLISP is the most "beginner friendly" (if there is such a thing) due to readline, but you can put readline around CMUCL too (look around this wiki). Convenient database and web hooks are available for all major LISPs. Web application too (Araneida, CL-HTTP, PortableAllegroserve). So, there you have it: I managed not to answer your question. ;)

    Language features

    Q: Is Lisp suitable for ExtremeProgramming or other agile processes?
    -A: It would seem that it is not only suitable, but they did it first. See Wiki:AgileLisp for example. -Of course the language can't help you talk to your Customer, but it streamlines testing remarkably. So I'm told, but I can see it happening already.

    Q: I like heredocs. How do I do them in Lisp?
    -A: You could probably cook up a funky reader-macro to do heredocs in lisp. Probably a good first exercise in reader-macro-land.

    Q: What does the compiler do for me behind my back?

    I started asking about this on WardsWiki, Wiki:WhyLisp but may bounce back over here to keep the topic police happy.

    I've found disassemble now and I'm quite impressed. It's good to be able to get that close to whats going on, when you need to of course, and so easily too. I would consider this a selling point when pitching to a hacker.

    Q: Hypothesis: If a function f is known to be pure, can I assume that the worst f can do if it turns out to be malicious is waste CPU and memory, until terminated?

    It could return an eeevil data structure or maybe call a purely eeevil continuation.

    Well naturally one doesn't trust the data it returns, but I'd forgotten about continuations. Surely it can only get one from a global or other callable function? Global variables would all have to be eliminated. 8-/

    Q: How can I detect whether a function is pure? (I mean it's just data, right? But it refers to lots of other code, whose purity is unknown)

    First, solve the halting problem. Then...

    But really, who cares? This is Schemeish thinking, but CL isn't Scheme. You will probably end up writing code in all sorts of paradigms, eventually, and excessive worrying about making functions ``pure'' is a waste of time, often.

    This would only be useful as applied to the previous question. I think instead perhaps it would be better to reimplement a subset of Lisp in Lisp but paying attention to security? Not that I need to do this yet, but the ability would fit the project I think I'm headed towards.

    Don't wanna play with Java, but it would fit better in other respects.

    Q: Is there a reverse list of functions and syntax? Something like a list of all functions (um, how many are there in CL?) mapped to related concepts, e.g. '(("joiners" cons list nconc append) ("splitters" car cdr nth))

    -I've got to the point where I think I need "something that does the opposite of list", and I'm not sure where to look.

    Not sure what you mean here, are you thinking of DESTRUCTURING-BIND?

    I don't quite follow it, but it sounds ilke the right sort of thing, although having looked at some list traversal examples I'm already seeing I was going down the wrong track anyway.

    I think my interntion for this question has changed, sorry. It was a fuzzy Q anyway.

    On the other hand, the HyperSpec, as well as having a page on everything, is organized into chapters... so you can read the Sequences chapter, or the Conditions chapter, and learn 'vertically' that way. -

    Q: Lisp advocates talk about the advantages of the Lisp environment in operating incrementally: fixing bugs and then retrying and continuing execution, making changes while your program is still running etc. This sounds way cool, but are there any documented examples of how to do this stuff, especially with CLisp or CMUCL?

    - A: For a simple "proof of concept," just start CLISP or CMUCL and -define a function or two in the reader (as opposed to writing them in a file -and then loading the file). As you see, you can test the functions, redefine -them, debug them, etc. It is much more pleasant, of course, to write code in -an editor, so your next step should be to hook up a Lisp to Emacs. ILISP is a -popular package that works with most Lisps. ELI is, IMHO, much better, but -doesn't work with other Lisps than Franz's Allegro CL out of the box. (There -are patches and hacks that make it work with other Lisps, though.) If -setting up ILISP or ELI is too much work for you, you can download the demo -version of Lispworks, as it has an integrated editor.

    Slime is the preferred Lisp environment these days (June '04).

    Once you have your Lisp hooked up to an editor, you can edit a file full of code in an editor buffer and press some special key each time you change a -definition (such as a DEFUN). The code you changed will be automatically sent to your Lisp and compiled. (There will also be a reader available, which is nice for one-liners you don't intend to keep.) -

    Q: I've also heard about hitting a bug and being able to make a change to the code and resume execution (the sort of thing you can only dream about in Java). How do we do this?

    -This is slightly implementation- and problem-dependent. Here's a very simple example, from SBCL: -
    -* (defun fact (x) (when (> x 0) (* x (fact (1- x))))) ; factorial function
    -
    -FACT
    -* (fact 5) ; test it.  Oh look, it's buggy!
    -
    -debugger invoked on condition of type SIMPLE-TYPE-ERROR in thread 16927:
    -  Argument Y is not a NUMBER: NIL
    -
    -restarts (invokable by number or by possibly-abbreviated name):
    -  0: [ABORT   ] Reduce debugger level (leaving debugger, returning to toplevel).
    -  1: [TOPLEVEL] Restart at toplevel READ/EVAL/PRINT loop.
    -(SB-KERNEL:TWO-ARG-* 2 1 NIL)[:EXTERNAL]
    -0] (defun fact (x) (if (> x 0) (* x (fact (1- x))) 1)) ; fix the function
    -
    -STYLE-WARNING: redefining FACT in DEFUN
    -FACT
    -0] f 1 ; go down a frame to somewhere where we know the answer
    -(FACT 1)
    -1] ret 1 ; return 1 from the current frame (1! is of course 1)
    -
    -120 ; the right answer to our original problem
    -

    Bear in mind that this was a very simple example.

    -Q: In the incremental style of development, if I make a new function with (defun ....) and do lots of typing, and it finally all works, how do I then get that into the "source code"? Do I have to scroll back to what I typed and copy and paste it into a file? I understand that I can save an image file, but that's not source code.

    A: Most of the time, you probably won't be typing your defuns at the REPL; instead, most people tend to use something like SLIME or ILISP, which enables communication between an Emacs and your Lisp. This way, you type your defuns in a real editor, complete with good line editing functions and all the Emacs sexpr navigation goodness, and when done type control-meta-x to send the form to your Lisp.

    Also, you ought to consider writing your code in files and invoking compile-file on them (in SLIME, control-c control-k does this in one step). This is still interactive development - even though your code is stored in a file and compiled, you can still send new definitions via control-meta-x as you test and debug, and the REPL is still available for you to test your definitions out.

    Q: Where do I get information on Gray Stream?

    Useful links

    - - An ECL + Qt4 Windows/Linux example -; this one is newer (requires CFFI, works with many recent Lisps)

    On Flaming

    -Newbies are friends, not food!
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Lisp-SNMP.html b/clones/lisp/www.cliki.net/Lisp-SNMP.html deleted file mode 100644 index 3a6eb8a5..00000000 --- a/clones/lisp/www.cliki.net/Lisp-SNMP.html +++ /dev/null @@ -1,65 +0,0 @@ - - - - - CLiki: Lisp-SNMP - - - - - - - -
    Lisp-SNMP
    Lisp-SNMP is a library for remote system and network administration that uses the Simple Network Management Protocol (SNMP). It can encode and decode a subset of ASN.1, send status requests to remote devices and decode the responses, interoperate with the SGI IRIX 5.3 scheme of remote sub agents, and more.

    Lisp-SNMP has been tested under CMUCL and Allegro CL on SGI and Sun workstations.

    Homepage: http://www.switch.ch/misc/leinen/snmp/sysman.html

    Download: http://www.switch.ch/misc/leinen/snmp/lisp/lisp-snmp.tar.gz

    License: ???

    Sample queries (you need to use the *snmp-readtable* for the BER encoding to work):

    * (snmp-get-tree "dukas" '([system])) -((([system.sysDescr.0] "SunOS dukas 5.5.1 Generic_103640-32 sun4u") - ([system.sysObjectID.0] - [.iso.org.dod.internet.private.enterprises.HP.2.3.10.1.2]) - ([system.sysUpTime.0] #<55+18:25:30.64>) ([system.sysContact.0] "") - ([system.sysName.0] "dukas") ([system.sysLocation.0] "") - ([system.sysServices.0] 72) ([system.8.0] #<00:00.00>))) -* (snmp-get-tree "milou" '([system])) -((([system.sysDescr.0] - "HP ETHERNET MULTI-ENVIRONMENT,ROM G.07.02,JETDIRECT,JD30,EEPROM G.07.17") - ([system.sysObjectID.0] - [.iso.org.dod.internet.private.enterprises.HP.2.3.9.1]) - ([system.sysUpTime.0] #<6+23:12:50.10>) ([system.sysContact.0] "") - ([system.sysName.0] "MILOU") ([system.sysLocation.0] "") - ([system.sysServices.0] 64)))
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Lisp-Stat.html b/clones/lisp/www.cliki.net/Lisp-Stat.html deleted file mode 100644 index 586b4cc8..00000000 --- a/clones/lisp/www.cliki.net/Lisp-Stat.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: lisp-stat - - - - - - - -
    lisp-stat
    Lisp-Stat is an environment for statistical computing, conceptually similar to R, that is also suitable for front-line production deployment of machine learning and statistical models. It grew out of a desire to have an environment for rapidly prototyping analytical and AI solutions, and move to production environments with minimal friction. It includes high accuracy statistical and mathematical functions, derived from the same sources as SciPy, a data frame implementation similar to Tidyverse/R and high quality interactive graphics via Vega-Lite
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Lisp.html b/clones/lisp/www.cliki.net/Lisp.html deleted file mode 100644 index f68b3b6e..00000000 --- a/clones/lisp/www.cliki.net/Lisp.html +++ /dev/null @@ -1,176 +0,0 @@ - - - - - CLiki: Lisp - - - - - - - -
    Lisp
    Alan Kay called it "the best language ever designed."

    There are many free Common Lisp Implementations - free as defined by the Debian Free Software Guidelines (DFSG).

    Topic Listing

      -
    • -cl-sgdos-csv - - cl-sgdos-csv is a library for mapping CSV files to LISP lists and CLOS objects and viceversa. -
    • -
    • -Coding Convention - - This page describes some common coding convention that you'll see in lisp source code -
    • -
    • -Conference - - Planning on going to a conference? This Cliki page is intended as a starting point for news of conferences with a Lisp theme or at which Lispers are likely to be present in significant numbers -
    • -
    • -copying problem - - Placeholder for the idea that there is no 'copy of this object' in Lisp -
    • -
    • -CRACL - - CRACL, the Campaign for Real Ale and Common Lisp, the Lisp user group for the greater Los Angeles area -
    • -
    • -Debian - - Debian GNU/Linux is a non-commercial Linux-distribution which is very popular with developers, and has CMUCL packages which are frequently updated -
    • -
    • -Donald Fisk - - An instance of the class Person -
    • -
    • -Editing Lisp Code with Emacs - - Keyboard tips -
    • -
    • -Fear of Lisp - - Fear of Lisp, 'parenthephobia' in Greek, is a disease that affects a large percentage of the population involved in the information technologies -
    • -
    • -Features - - Common lisp allows implementations to have extensions, and has an official way of testing for them, via membership of the *features* list -
    • -
    • -ffi - - FFI is short for Foreign Function Interface, which is useful for linking to arbitrary C (and not only) libraries from Lisp code -
    • -
    • -GMane - - GMane is a bidirectional Mail to News gateway -
    • -
    • -GNU - - GNU is a project to create a GPL-licensed UNIX that was started by Richard Stallman, the creator of EMACS -
    • -
    • -Graduate Student - - Lisp using Graduate Students include Cyrus Harmon -
    • -
    • -lambda-reader - - lambda-reader is a language extension that lets you use the Unicode character λ for LAMBDA in the Lisp reader and printer -
    • -
    • -Lisp - Next Generation - - In a time far, far in the future exists a kinder, gentler, friendlier Lisp -
    • -
    • -Lisp Companies - - Companies which uses Lisp, Scheme, .. -
    • -
    • -Lisp Markup Languages - - Lisp Markup Languages are Markup Languages that extend a Lisp system -
    • -
    • -macro example - - Some CLiki pages contain Lisp macros: -
    • -
    • -ObjectStore - - ObjectStore is a commercial object database for C++ and Java -
    • -
    • -Performance - - Performance is either the subject of programmer performance (speed and quality of programming) or program performance (speed and quality of execution (or of compilation when the program under consideration is a compiler)) -
    • -
    • -PowerShell - - An experiment in sending tasks to PowerShell from CL -
    • -
    • -profiler - - The goal of profiling is to find out the bottlenecks of the program, such as which function consumes the most time, which function is called most times etc -
    • -
    • -Proposed ANSI Revisions and Clarifications - - Entries under this page have been moved to one of the following two pages: -
    • -
    • -Quick Arrays - - A re-run benchmark on original code by Ron Parr, with a couple of tweaks by David Mullen to run on CCL, figuring that the contrast between then and now (1996 versus 2020) might be interesting -
    • -
    • -reeder - - A toy table-driven reader for Lisp, written in Common Lisp -
    • -
    • -REPL - - The Read Eval Print Loop of a Lisp listener -
    • -
    • -Self-Generation - - An expression that evaluates to itself -
    • -
    • -Three Comma Programmer - - A Three Comma Programmer is the Lisp version of the Three Star Programmer in C -
    • -
    • -uLisp - - uLisp is an embedded Lisp for microcontrollers, supporting Arduino, Adafruit M0/M4, Micro:bit, ESP8266/32, and RISC-V boards -
    • -
    • -YoungLispers - - Lisp is not just your grandpa's language -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/LispBuilder.html b/clones/lisp/www.cliki.net/LispBuilder.html deleted file mode 100644 index 8fd4ef00..00000000 --- a/clones/lisp/www.cliki.net/LispBuilder.html +++ /dev/null @@ -1,85 +0,0 @@ - - - - - CLiki: LispBuilder - - - - - - - -
    LispBuilder
    LispBuilder is a Common Lisp Application Builder providing several useful cross-platform packages for Common Lisp.

    Projects included in LispBuilder include


    -library
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/LispDoc.html b/clones/lisp/www.cliki.net/LispDoc.html deleted file mode 100644 index 63409092..00000000 --- a/clones/lisp/www.cliki.net/LispDoc.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: LispDoc - - - - - - - -
    LispDoc
    LispDoc is a documentation tool (probably somewhat OpenMCL specific) that automatically generates HTML documentation for all symbols exported from one or more packages from their documentation strings.

    LispDoc is part of Sven Van Caekenberghe's OpenMCL code collection.

    A self-referential example of LispDoc-generated documentation can be found here.


    lispdoc (currently 502) is also the name of a search engine for Common Lisp documentation.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/LispEdit.html b/clones/lisp/www.cliki.net/LispEdit.html deleted file mode 100644 index 5834c2cc..00000000 --- a/clones/lisp/www.cliki.net/LispEdit.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: LispEdit - - - - - - - -
    LispEdit
    LispEdit is a Geany plugin that provides shortcuts for sending s-expressions (symbolic expressions) to a Lisp process running in Geany's embedded terminal. The plugin is for a Geany installation running on a unix based OS. For windows I recommend LispIDE.

    This plugin turns Geany into a pretty niffty Lisp IDE. Read the HOWTO - LispEdit guide to find out how to install and use the plugin.

    The plugin requires Geany 0.20 and can be downloaded from https://github.com/tgutu/geanylispedit/blob/master/geanylispedit.tar.gz


    -Homepage: https://github.com/tgutu/geanylispedit


    -Topic markers: IDE Lisp IDE
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/LispGameDevelopers.html b/clones/lisp/www.cliki.net/LispGameDevelopers.html deleted file mode 100644 index df19a00b..00000000 --- a/clones/lisp/www.cliki.net/LispGameDevelopers.html +++ /dev/null @@ -1,180 +0,0 @@ - - - - - CLiki: LispGameDevelopers - - - - - - - -
    LispGameDevelopers

    About

    This LispGameDevelopers page is an impromptu home page for the irc.freenode.net #lispgames community. Hopefully we can collect links to projects, resources, games, and people who are developing games in Lisp.

    There is now a dedicated Lisp Games Wiki elsewhere. -And a lispgames.org wiki.

    People

    Feel free to add yourself to this list by putting your Person page in the category LispGameDevelopers.

    Games

    Add your project to this list by putting its page in the category Game, or add a link to an external site.

      -
    • -abuse - - Abuse is a 1995 Game, 2D shooter, written C++, including a lisp interpreter close to a subset of Common Lisp, in which the game logic is written -
    • -
    • -Asteroid Wars - - Asteroid Wars is a remake of the classic space shooter game "asteroids", that originally came out in the arcades in 1979 -
    • -
    • -bratwurst - - Bratwurst is a clone of the old amiga Game by 3 Little Elks (3LE) -
    • -
    • -Buclet - - Buclet provides CFFI bindings to the Bullet physics library -
    • -
    • -cl-horde3d - - CL-HORDE3D provides CFFI bindings to the Horde3D graphics engine -
    • -
    • -cl-liballegro - - CFFI interface and bindings to the Allegro 5 game programming library -
    • -
    • -cl-namegen - - cl-namegen reads wordlists and produces similar words, i.e -
    • -
    • -cl-ode - - CL-ODE is a CFFI interface to the Open Dynamics Engine -
    • -
    • -cl-reversi - - cl-reversi is a Common Lisp application of the classic -
    • -
    • -cl-sdl2 - - cl-sdl2 is a wrapper for SDL 2.0 -
    • -
    • -CL-Sokoban - - CL-Sokoban implements the classic game Sokoban -
    • -
    • -cl-tcod - - Common lisp bindings for the Doryen Library, a "free, fast, portable API for roguelike developers providing an advanced true color console, input, and lots of other utilities frequently used in roguelikes" -
    • -
    • -Cletris - - Cletris is a Tetris-like Game -
    • -
    • -cleven - - Cleven is an experimental game engine with volume graphics written in Common Lisp -
    • -
    • -clim-chess - - clim-chess is a CLIM chess playing game -
    • -
    • -Climon - - Climon is a Simon game (using pal) -
    • -
    • -clois-lane - - clois-lane provides bindings to the Object-Oriented Input System (OIS) for such things as game controllers -
    • -
    • -clones - - Clones is a game inspired by "same game" for GNOME -
    • -
    • -com.informatimago.hangman - - This is the classic Hangman game -
    • -
    • -IGS Client - - Basic IGS client back-end -
    • -
    • -Langband - - Langband is a rewrite of the popular roguelike role-playing Game Angband -
    • -
    • -LispGameDevelopers - - About -
    • -
    • -LMud - - LMud is a MUD (Multi-User Dungeon) Game implementation written in Common Lisp with heavy use of CLOS and multiple inheritance -
    • -
    • -Planet of the Feebs - - Planet of the Feebs is a simulation Game loosely based on the "Maze War" game developed by Steve Colley and Greg Thompson at the NASA Ames Research Center in California 1974 -
    • -
    • -Pretzil - - Pretzil is a Z-Machine (interactive fiction) emulator for McCLIM, which makes it a Game -
    • -
    • -RLX - - RLX is a game engine for roguelike games written in Common Lisp -
    • -
    • -skitter - - A repl friendly event system for games -
    • -
    • -Star Trek - - Star Trek is a classic 1970s console game that originated on mainframes -
    • -
    • -texatl - - texatl is a tiny system for creating font and sprite atlases -
    • -
    • -The Feebs War - - The Game The Feebs War is a new project based on Planet of the Feebs, with the intent to improve it, giving better support for lisp newbies and enhancing the features provided -
    • -
    • -The Invaders - - The Invaders is a remake of the classic game Space Invaders -
    • -


    game

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/LispGameIssues.html b/clones/lisp/www.cliki.net/LispGameIssues.html deleted file mode 100644 index 74bd8237..00000000 --- a/clones/lisp/www.cliki.net/LispGameIssues.html +++ /dev/null @@ -1,89 +0,0 @@ - - - - - CLiki: LispGameIssues - - - - - - - -
    LispGameIssues
    This page might be obsolete and superseded by the Lisp Games Wiki.

    This page is for information, links, and discussions related to Lisp Games. -Currently a rough draft but people are welcome to flesh things out.

    Open issues and projects

      -
    • Reproducing and eventually squashing the 64-bit windows sbcl/sdl crash bug. -
    • -
    • Using/improving Blackthorn Starter Pack and other starter packs. -
    • -
    • Identify documentation needs. -
    • -
    • Automating build process and packaging of binaries/libs/assets for all available platforms. -
    • -
    • Engine and language-agnostic DAM (digital asset management) tools. -
    • -
    • Working with others to add new platforms. -
    • -
    • DESCRIBE / LINK YOUR PROJECT HERE... -
    • -

    Lisp game development resources

    Game Development Resources

    -


    -Games
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/LispIDE.html b/clones/lisp/www.cliki.net/LispIDE.html deleted file mode 100644 index 09eca17c..00000000 --- a/clones/lisp/www.cliki.net/LispIDE.html +++ /dev/null @@ -1,70 +0,0 @@ - - - - - CLiki: LispIDE - - - - - - - -
    LispIDE
    LispIDE is a basic graphical shell for several Lisp implementations available for Windows. LispIDE is freeware.

    HomePage of LispIDE

    Features


    -IDE
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/LispLab.html b/clones/lisp/www.cliki.net/LispLab.html deleted file mode 100644 index d6a3765f..00000000 --- a/clones/lisp/www.cliki.net/LispLab.html +++ /dev/null @@ -1,65 +0,0 @@ - - - - - CLiki: LispLab - - - - - - - -
    LispLab
    The main purpose of Lisplab is to to integrate all kinds of mathematics capabilities into one framework. Lisplab is heavily based on CLOS.

    Lisplab contains: -

      -
    • Matlab-like matrix manipulation -
    • -
    • Interfaces to BLAS and LAPACK -
    • -
    • Interface to FFTW -
    • -
    • Numerical integration through QUADPACK -
    • -
    • Special functions from SLATEC -
    • -
    • Many Lisplab-specific routines for linear algebra, postscript output, PGM output, Fast Fourier Transform (native Common Lisp), infix math, etc. -
    • -

    The part of Lisplab which is most mature is the matrix and linear algebra, which should provide a good basis for matrix based modelling.

    Homepage: http://common-lisp.net/project/lisplab/

    License: GPL

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/LispWorks-UDP.html b/clones/lisp/www.cliki.net/LispWorks-UDP.html deleted file mode 100644 index 1d867353..00000000 --- a/clones/lisp/www.cliki.net/LispWorks-UDP.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: LispWorks-UDP - - - - - - - -
    LispWorks-UDP
    UDP networking for LispWorks

    Use by cl-net-snmp, OMax 2 and other apps.

    Contact Chun Tian (binghe) if you need any help on this package.

    Versions

    1.x: 1.1 (2008-9-6), 1.0 (2008-6-16)

    2.x: 2.2 (2008-9-6), 2.1 (2008-7-21)

    3.x: 3.0 (2008-9-6), 3.1 (2008-9-8), 3.2 (2008-9-9)

    4.x: 4.0 (2008-11-20)

    All versions can be download at sourceforge, or common-lisp.net, choose the biggest version if you're new user.

    Documentation

    Please go LispWorks-UDP home.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/LispWorks.html b/clones/lisp/www.cliki.net/LispWorks.html deleted file mode 100644 index bd3ef0f3..00000000 --- a/clones/lisp/www.cliki.net/LispWorks.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: LispWorks - - - - - - - -
    LispWorks
    LispWorks is a non-free Common Lisp implementation. See http://www.lispworks.com/.

    You can find a review of the LispWorks editor on the Common Lisp Cookbook: https://lispcookbook.github.io/cl-cookbook/lispworks.html.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Lispbuilder.html b/clones/lisp/www.cliki.net/Lispbuilder.html deleted file mode 100644 index 8fd4ef00..00000000 --- a/clones/lisp/www.cliki.net/Lispbuilder.html +++ /dev/null @@ -1,85 +0,0 @@ - - - - - CLiki: LispBuilder - - - - - - - -
    LispBuilder
    LispBuilder is a Common Lisp Application Builder providing several useful cross-platform packages for Common Lisp.

    Projects included in LispBuilder include


    -library
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Lispix.html b/clones/lisp/www.cliki.net/Lispix.html deleted file mode 100644 index 87d7e080..00000000 --- a/clones/lisp/www.cliki.net/Lispix.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Lispix - - - - - - - -
    Lispix
    Lispix is a public domain image analysis application for Windows, written and maintained by David Bright at NIST.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Lisplets.html b/clones/lisp/www.cliki.net/Lisplets.html deleted file mode 100644 index 02663a50..00000000 --- a/clones/lisp/www.cliki.net/Lisplets.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Lisplets - - - - - - - -
    Lisplets
    Lisplets are Java Servlets that forward their requests, and gather their response headers, using s-expressions over sockets. They enable easy integration of Common Lisp or Scheme into a Java-based web environment.

    Lisplets home page


    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Lisppaste.html b/clones/lisp/www.cliki.net/Lisppaste.html deleted file mode 100644 index 0db272e2..00000000 --- a/clones/lisp/www.cliki.net/Lisppaste.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: lisppaste - - - - - - - -
    lisppaste
    lisppaste sits on a webserver and users can paste text into it. Once pasted, lisppaste will notify a pre-configured IRC channel about the paste and where it can be located. The web application includes syntax colorization, annotations, XML-RPC support, and more. It was active at paste.lisp.org but the site indicates that "Due to continued abuse, this service has been disabled."

    Depends on: hunchentoot, puri, cl-irc, split-sequence, s-xml, s-xml-rpc, cl-ppcre, html-encode, cl-who, bordeaux-threads

    Repository: https://github.com/stassats/lisp-bots

    Mirror: https://gitlab.common-lisp.net/lisppaste/new-bots

    License: MIT

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Lispvirt.html b/clones/lisp/www.cliki.net/Lispvirt.html deleted file mode 100644 index a951189e..00000000 --- a/clones/lisp/www.cliki.net/Lispvirt.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Lispvirt - - - - - - - -
    Lispvirt
    Lispvirt is a Common LISP bindings for Libvirt API and Virtualization Tools.

    With Lispvirt you can manipulate the domains, storages, hypervisors, devices, network and accessing the libvirt daemon using only Common Lisp code.

    The license of Lispvirt is under GPLv3. You can clone the code and use respecting the license policies.

    There are some examples that can help you to understand how you can use the code.

    For more details please visit the official webpage of Lispvirt.

    The latest version of Lispvirt is available from GitHub repositories.

    Contributions and contributors are always welcome.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Lispworks.html b/clones/lisp/www.cliki.net/Lispworks.html deleted file mode 100644 index bd3ef0f3..00000000 --- a/clones/lisp/www.cliki.net/Lispworks.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: LispWorks - - - - - - - -
    LispWorks
    LispWorks is a non-free Common Lisp implementation. See http://www.lispworks.com/.

    You can find a review of the LispWorks editor on the Common Lisp Cookbook: https://lispcookbook.github.io/cl-cookbook/lispworks.html.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Lispy.html b/clones/lisp/www.cliki.net/Lispy.html deleted file mode 100644 index 983d83c5..00000000 --- a/clones/lisp/www.cliki.net/Lispy.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Lispy - - - - - - - -
    Lispy
    Lispy is a Common Lisp library manager.

    It is designed around the idea of a map and repository of tested/packaged Common Lisp source archives. It is also designed to be reliable, cross-platform (Windows, Linux and OSX at least), cross-implementation and not to depend on any external tools.

    Currently, Lispy is in a fairly stable state, although development continues.

    As of as of July 14, 2007, it includes 62 ready to install libraries and can download, install/uninstall and upgrade packages automatically.

    As of as of April 1, 2008, it includes 108 ready to install libraries.

    An LTK or CLG GUI interface is being contemplated.

    Homepage: http://common-lisp.net/project/lispy/

    There is an RSS feed for Lispy news.

    The source has been migrated to Github: http://github.com/lispnik/lispy.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/List Comprehension.html b/clones/lisp/www.cliki.net/List Comprehension.html deleted file mode 100644 index d0732658..00000000 --- a/clones/lisp/www.cliki.net/List Comprehension.html +++ /dev/null @@ -1,89 +0,0 @@ - - - - - CLiki: List Comprehension - - - - - - - -
    List Comprehension
    Refer to Wikipedia's article on List Comprehension.

    Example

    The following is a typical example of the usage of list comprehension:

    (setf l '(1 2 3 4 5 6 7 8 9 10)) - -(collect-list (list x y) - (for x in l) - (evenp x) - (for y in l) - (oddp y))

    ((2 1) (2 3) (2 5) (2 7) (2 9) (4 1) (4 3) (4 5) (4 7) (4 9) (6 1) (6 3) (6 5) -(6 7) (6 9) (8 1) (8 3) (8 5) (8 7) (8 9) (10 1) (10 3) (10 5) (10 7) (10 9))

    Implementation

    The macro collect-list can be constructed using with-collect macro and LOOP (or iterate) macro. Thus it can collect data in the data types which are supported by LOOP and Iterate. In fact, using with-collect and loop makes the implementation quite easy and straightforward.

    Here's the implementation of collect-list (based on Loop):

    (defmacro collect-list (element &body qualifiers) - (labels ((build-form (qualifiers body) - (if (not qualifiers) - body - (let ((first-form (first qualifiers)) - (rest-form (rest qualifiers))) - (cond ((string-equal (symbol-name (first first-form)) - "FOR") - (build-for-clause first-form - (build-form rest-form body))) - (t - `(when ,first-form - ,(build-form rest-form body))))))) - (build-for-clause (form body) - `(loop ,@form - do ,body))) - (let ((collector (gensym "COLLECTOR"))) - `(with-collect (,collector) - ,(build-form qualifiers - `(,collector ,element))))))

    And the example will be expanded into:

    (WITH-COLLECT (#:COLLECTOR1702) - (LOOP FOR X IN TEST DO - (WHEN (EVENP X) - (LOOP FOR Y IN TEST DO - (WHEN (ODDP Y) (#:COLLECTOR1702 (LIST X Y)))))))

    Which is also very efficient.

    The with-collect macro can be found in CLOCC/CLLIB/simple.lisp.

    Other Examples

    -

    (defun permutation (list) - (if (null list) - '(()) - (collect-list (cons x ys) - (for x in list) - (for ys in (permutation (remove x list))))))

    Other Implementations

    -For another take on comprehensions see List comprehensions for Lisp, an LGPL'd general collect macro.

    An afterthought

    It’ll be handy to use Iterate instead of Loop, in order to take advantage of its flexibility and expressiveness. But some forms like (for y previous x) are something you definitely don’t want to nest. One way to identify that is to construct it as ((for x …) (for y …)).


    -macro example
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/List comprehension.html b/clones/lisp/www.cliki.net/List comprehension.html deleted file mode 100644 index d0732658..00000000 --- a/clones/lisp/www.cliki.net/List comprehension.html +++ /dev/null @@ -1,89 +0,0 @@ - - - - - CLiki: List Comprehension - - - - - - - -
    List Comprehension
    Refer to Wikipedia's article on List Comprehension.

    Example

    The following is a typical example of the usage of list comprehension:

    (setf l '(1 2 3 4 5 6 7 8 9 10)) - -(collect-list (list x y) - (for x in l) - (evenp x) - (for y in l) - (oddp y))

    ((2 1) (2 3) (2 5) (2 7) (2 9) (4 1) (4 3) (4 5) (4 7) (4 9) (6 1) (6 3) (6 5) -(6 7) (6 9) (8 1) (8 3) (8 5) (8 7) (8 9) (10 1) (10 3) (10 5) (10 7) (10 9))

    Implementation

    The macro collect-list can be constructed using with-collect macro and LOOP (or iterate) macro. Thus it can collect data in the data types which are supported by LOOP and Iterate. In fact, using with-collect and loop makes the implementation quite easy and straightforward.

    Here's the implementation of collect-list (based on Loop):

    (defmacro collect-list (element &body qualifiers) - (labels ((build-form (qualifiers body) - (if (not qualifiers) - body - (let ((first-form (first qualifiers)) - (rest-form (rest qualifiers))) - (cond ((string-equal (symbol-name (first first-form)) - "FOR") - (build-for-clause first-form - (build-form rest-form body))) - (t - `(when ,first-form - ,(build-form rest-form body))))))) - (build-for-clause (form body) - `(loop ,@form - do ,body))) - (let ((collector (gensym "COLLECTOR"))) - `(with-collect (,collector) - ,(build-form qualifiers - `(,collector ,element))))))

    And the example will be expanded into:

    (WITH-COLLECT (#:COLLECTOR1702) - (LOOP FOR X IN TEST DO - (WHEN (EVENP X) - (LOOP FOR Y IN TEST DO - (WHEN (ODDP Y) (#:COLLECTOR1702 (LIST X Y)))))))

    Which is also very efficient.

    The with-collect macro can be found in CLOCC/CLLIB/simple.lisp.

    Other Examples

    -

    (defun permutation (list) - (if (null list) - '(()) - (collect-list (cons x ys) - (for x in list) - (for ys in (permutation (remove x list))))))

    Other Implementations

    -For another take on comprehensions see List comprehensions for Lisp, an LGPL'd general collect macro.

    An afterthought

    It’ll be handy to use Iterate instead of Loop, in order to take advantage of its flexibility and expressiveness. But some forms like (for y previous x) are something you definitely don’t want to nest. One way to identify that is to construct it as ((for x …) (for y …)).


    -macro example
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Literate Programming.html b/clones/lisp/www.cliki.net/Literate Programming.html deleted file mode 100644 index 1db130b9..00000000 --- a/clones/lisp/www.cliki.net/Literate Programming.html +++ /dev/null @@ -1,64 +0,0 @@ - - - - - CLiki: literate programming - - - - - - - -
    literate programming
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/LoGS.html b/clones/lisp/www.cliki.net/LoGS.html deleted file mode 100644 index 373c0200..00000000 --- a/clones/lisp/www.cliki.net/LoGS.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: LoGS - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Log4CL.html b/clones/lisp/www.cliki.net/Log4CL.html deleted file mode 100644 index af57b486..00000000 --- a/clones/lisp/www.cliki.net/Log4CL.html +++ /dev/null @@ -1,87 +0,0 @@ - - - - - CLiki: Log4CL - - - - - - - -
    Log4CL
    Log4CL is high performance extensible logging library for Common Lisp

    Status

    Library is maintained by sharplispers at https://github.com/sharplispers/log4cl.

    Features

    -
      -
    • Modeled after Log4J with the familiar concepts such as log categories, appenders and layouts -
    • -
    • No dependencies other then Bordeaux-threads -
    • -
    • High performance implementation that minimizes consing, with benchmarking showing it faster then log4j in most cases. -
    • -
    • Buffered and un-buffered stream appenders, console appender, file appender and daily rolling file appender with configurable name are all implemented. Auto-flushing of buffered appenders by background thread. -
    • -
    • Automatic naming of log categories, so that a log statement that does -not specifically name a logger, appearing in a function SOME-PACKAGE:FOO inside of a local flet function BAR, will automatically log into the category SOME-PACKAGE:FOO:BAR -
    • -
    • Appenders, layouts, and most everything else is implemented via CLOS, -and can be easily changed/extended/customized. Automatic log category naming -is also implemented via CLOS and can be specialized per-package, so packages -can implement their own custom naming options. -
    • -
    • Easy/abbreviated configuration function for interactive REPL work, with several pre-defined "sane" configurations, as well as traditional log4j like configuration via properties file, with option to auto-reload on changes. -
    • -
    • Pattern layout, with several enhancements, such as options to modify - separator and case (including invert) of log categories, for example one can print log category FOO:BAR:BAZ as foo--bar--baz -
    • -
    • Multiple logging hierarchies support, with each having an completely -independent configuration with regards to log levels and appenders, suitable for example for virtual hosts. -
    • -
    • Extensive test suite with over 400+ assertions. -
    • -
    • Tested on SBCL, CCL, CLISP and LispWorks -
    • -

    A quick-start guide is provided in README.md file.


    -Apache 2
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Log5.html b/clones/lisp/www.cliki.net/Log5.html deleted file mode 100644 index 11d56fea..00000000 --- a/clones/lisp/www.cliki.net/Log5.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: log5 - - - - - - - -
    log5
    Log5 is a logging library organized around five things: categories, outputs, senders, messages and contexts.

    You can find more out about log5 at its home page on Common-Lisp.net.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Logging.html b/clones/lisp/www.cliki.net/Logging.html deleted file mode 100644 index fa741993..00000000 --- a/clones/lisp/www.cliki.net/Logging.html +++ /dev/null @@ -1,108 +0,0 @@ - - - - - CLiki: logging - - - - - - - -
    logging
    Logging libraries. See also other tools for development, and a tutorial on logging and debugging. There's an article on Common Lisp and Logging, which discuss the ecosystem and general requirements for loggers in Common Lisp.

      -
    • -a-cl-logger - - A common lisp logging library providing context sensitive logging of more than just strings to more than just local files / output streams -
    • -
    • -cl-grip - - cl-grip is a high-level logging system for Common Lisp, focusing on a clear user interface, support for flexible structured logging, and easy extensibility for different backends to support direct logging to various inputs -
    • -
    • -cl-log - - CL-LOG is a general purpose logging utility, loosely modelled in some respects after Gary King's Log5 -
    • -
    • -cl-syslog - - Common Lisp interface to local and remote Syslog facilities -
    • -
    • -flood - - Comfortable, powerful and tiny logging library for common lisp -
    • -
    • -hu.dwim.logger - - hu,dwim,logger is a logging library -
    • -
    • -irc-logger - - irc-logger is a networking library written by Kevin Rosenberg which uses the cl-irc library to provide multichannel Internet Relay Chat (IRC) logging -
    • -
    • -journal - - A library for logging, tracing, testing and persistence -
    • -
    • -Log4CL - - Log4CL is high performance extensible logging library for Common Lisp -
    • -
    • -log5 - - Log5 is a logging library organized around five things: categories, outputs, senders, messages and contexts -
    • -
    • -LoGS - - A programmable log analysis engine available under the terms of the GPL -
    • -
    • -logv - - Logv is a cognitively lightweight logging utility for Common Lisp -
    • -
    • -Verbose - - Verbose is a logging framework that aims to provide a good default setup as well as an extensible back-end to suit all your logging needs -
    • -
    • -vom - - A tiny logging library for Common Lisp -
    • -

    When in doubt, you can go with log4cl, the "de facto" logging library maintained by the Sharplispers community. Or have a look at the Comparison of Common Lisp Logging Libraries, which is fairly extensive (last updated in 2016).

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Loki Davison.html b/clones/lisp/www.cliki.net/Loki Davison.html deleted file mode 100644 index 84cb33f4..00000000 --- a/clones/lisp/www.cliki.net/Loki Davison.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Loki Davison - - - - - - - -
    Loki Davison
    Newbie Lisp hacker. Hoping to make lisp the ultimate language for shell scripting and everything else. I think i should mention that i'm a person not an AI.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Lou Glassy.html b/clones/lisp/www.cliki.net/Lou Glassy.html deleted file mode 100644 index c0c9178f..00000000 --- a/clones/lisp/www.cliki.net/Lou Glassy.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Lou Glassy - - - - - - - -
    Lou Glassy
    is a Person, although not a superintelligent shade of blue. He teaches at a small university in Montana, USA, and occasionally delights in making his students aware of The Lambda Nature, and why Lisp is such a fun language to work with.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Lquery.html b/clones/lisp/www.cliki.net/Lquery.html deleted file mode 100644 index 1c78a60d..00000000 --- a/clones/lisp/www.cliki.net/Lquery.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: lQuery - - - - - - - -
    lQuery
    lQuery is a DOM manipulation library inspired by and based on the jQuery syntax and functions. It uses Plump and CLSS in the background to achieve its work. Its main idea is to replace HTML templating systems and allow generated documents for websites while relying on pure HTML files. This achieves a much cleaner separation of static and dynamic page parts.

    The project can be found on github including a fully documented symbol index and a getting started tutorial.
    -As of August 2013, lQuery is available on Quicklisp.

    lQuery is licensed under the Artistic License 2.0.


    -XML HTML web
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Ltk.html b/clones/lisp/www.cliki.net/Ltk.html deleted file mode 100644 index b454ed29..00000000 --- a/clones/lisp/www.cliki.net/Ltk.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: ltk - - - - - - - -
    ltk
    LTK is a set of CL bindings for the Tk GUI library, which provides a complete CLOS binding to the Tk widget set. It is implemented by means of talking to a Tcl interpreter. This makes the toolkit portable and capable of working over a remote socket.

    LTK was written by Peter Herth.

    Although the last release is somewhat dated, the project is still under active development. Most activity happens on its mailing list. The canonical repository seems to be on Github.

    Many examples, covering the tkdocs tutorial, were contributed by Peter Lane: https://peterlane.netlify.app/ltk-examples/.

    Plotting with Ltk

    A wrapper around tklib's Plotchart library is also available here: https://peterlane.netlify.app/ltk-plotchart/.

    Issues

    -One unfortunate problem is that LTK mysteriously fails to run on some Windows computers, depending on what programs happen to be running in the background. People are encouraged to either donate a Windows box for testing, or helpfully volunteer to track the issue down.

    This may be an issue limited to certain Lisp implementations, as SBCL has not been observed to manifest this problem.

    See cl-tk or clTcl for alternatives.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Lucerne.html b/clones/lisp/www.cliki.net/Lucerne.html deleted file mode 100644 index 5e234725..00000000 --- a/clones/lisp/www.cliki.net/Lucerne.html +++ /dev/null @@ -1,63 +0,0 @@ - - - - - CLiki: Lucerne - - - - - - - -
    Lucerne
    Lucerne is a web framework for Common Lisp, built on Clack. As of 2022-03-03 it is not available on Quicklisp.

    Features: -

      -
    • Built on Clack - Lucerne is built on Clack, an HTTP abstraction which allows it to switch between underlying servers. This ensures your app is not bound to a particular server stack. -
    • -
    • Inspired by Flask - Flask is a small and flexible web framework for Python, and Lucerne borrows most of its design concepts from it. -
    • -
    • Django-like Templates - Lucerne uses Djula, a clone of the Django template engine. -
    • -
    • Easy to Set Up - Lucerne includes a project skeleton generator, which takes care of setting up the structure of a basic application so you can start coding right away. -
    • -
    • Built-in Web Debugger - Lucerne comes with clack-errors, to make debugging server-side errors in development easier. -
    • -

    License: MIT

    Repository: https://github.com/eudoxia0/lucerne

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Luigi Panzeri.html b/clones/lisp/www.cliki.net/Luigi Panzeri.html deleted file mode 100644 index 1ff0dc47..00000000 --- a/clones/lisp/www.cliki.net/Luigi Panzeri.html +++ /dev/null @@ -1,57 +0,0 @@ - - - - - CLiki: Luigi Panzeri - - - - - - - -
    Luigi Panzeri
    Also known as matley.

    Personal Web site

    IRC: #lisp-it and #muppetslab(freenode)

    Lisp related

    -
  • I use Emacs + Slime + SBCL -
  • I play with ucw, McCLIM, QSIM -
  • I lurk on #lisp, comp.lang.lisp, lisp-it@lispmachine.org -
  • Working on cl-objc for the Google Summer of Code

    -Person -

  • - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Luke Gorrie.html b/clones/lisp/www.cliki.net/Luke Gorrie.html deleted file mode 100644 index a92f0ff7..00000000 --- a/clones/lisp/www.cliki.net/Luke Gorrie.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Luke Gorrie - - - - - - - -
    Luke Gorrie
    Just Another Lisp Hacker. I have a weblog of sorts.

    person

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Lycurgus.html b/clones/lisp/www.cliki.net/Lycurgus.html deleted file mode 100644 index 7e8118d1..00000000 --- a/clones/lisp/www.cliki.net/Lycurgus.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Lycurgus - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Lyn Headley.html b/clones/lisp/www.cliki.net/Lyn Headley.html deleted file mode 100644 index 0853e401..00000000 --- a/clones/lisp/www.cliki.net/Lyn Headley.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Lyn Headley - - - - - - - -
    Lyn Headley
    I, a Person, wax poetic on YoungLispers -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/MACRO-HTML.html b/clones/lisp/www.cliki.net/MACRO-HTML.html deleted file mode 100644 index 984a0200..00000000 --- a/clones/lisp/www.cliki.net/MACRO-HTML.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: macro-html - - - - - - - -
    macro-html
    MACRO-HTML is Max Rottenkolber's HTML generator.

    Abstract from the manual: -

    -
    MACRO-HTML is a HTML generation library. It aims to be fast, modular, cachable and concise. It does so by defining each tag as a macro which expands to code printing the respective HTML source. It also employs a DSL for element attributes.

    -

    Topics

    HTML, HTML generator

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/MARCH.html b/clones/lisp/www.cliki.net/MARCH.html deleted file mode 100644 index 9606f0ec..00000000 --- a/clones/lisp/www.cliki.net/MARCH.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: MARCH - - - - - - - -
    MARCH
    MArch is a daemon program that saves email going through a mail server into a database. It plugs in the Sendmail mail delivery system as a milter. Messages can then be recovered, searched, read, forwarded via an HTML interface.

    Homepage: http://wcp.sdf-eu.org/software/march/index.html

    License: GPL

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/MCL.html b/clones/lisp/www.cliki.net/MCL.html deleted file mode 100644 index ac88bfe5..00000000 --- a/clones/lisp/www.cliki.net/MCL.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: MCL - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/MCLIDE.html b/clones/lisp/www.cliki.net/MCLIDE.html deleted file mode 100644 index 802d8fb7..00000000 --- a/clones/lisp/www.cliki.net/MCLIDE.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: MCLIDE - - - - - - - -
    MCLIDE
    MCLIDE is a free open source Macintosh IDE for Lisp implementations on any platform. It is a double-clickable, stand-alone GUI based lisp development environment that connects to a Lisp either locally or through the network using SWANK. The MCLIDE Lisp IDE runs on MacOSX 10.4 and up (Intel or PPC). It can be used with many of the same Lisp implementations as SLIME/SWANK.

    Github repo: https://github.com/TerjeNorderhaug/mclide

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/MCPat.html b/clones/lisp/www.cliki.net/MCPat.html deleted file mode 100644 index d9bd70c9..00000000 --- a/clones/lisp/www.cliki.net/MCPat.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: MCPat - - - - - - - -
    MCPat
    MCPat is a meta-circular pattern matching library. The patterns are compiled to lisp using patterns, which maks the compiler extensible through patterns. In addition, pattern search and selection is controlled through an extensible CLOS-based mechanism, so that programs can describe the most efficient way to manage their patterns.

    MCPat is further described here.

    -Okay, I'm interested, but what can it do? There is not much in terms of documentation. Can someone provide some uses/examples where this will do something better/easier than say, fare-matcher? Or even point me to a project that uses it and I can ponder their source code. --Zach

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/MD5.html b/clones/lisp/www.cliki.net/MD5.html deleted file mode 100644 index 02721bd8..00000000 --- a/clones/lisp/www.cliki.net/MD5.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: md5 - - - - - - - -
    md5
    md5 is a cryptographic Message-Digest algorithm from RSA Data Security, Inc. It is defined in RFC 1321, by Ron L. Rivest. An implementation is included in the Ironclad package.

    Another portable implementation, by Pierre R. Mai, which has been highly bummed for CMUCL with copious input from other developers and users on the cmucl-help mailing list, is available from https://pmsf.eu/resources/lisp/MD5.html.

    and also (adjusted for SBCL compatibility) in SBCL contrib as sb-md5 - just (require :asdf) and (require :sb-md5) to load it.

    and also as a Debian package (stale) thanks to Kevin Rosenberg.

    Note that MD5 collisions have been found: Xiaoyun Wang and Dengguo Feng and Xuejia Lai and Hongbo Yu: -Collisions for Hash Functions MD4, MD5, HAVAL-128 and RIPEMD, so you should consider SHA1 instead.


    -cryptography
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/META.html b/clones/lisp/www.cliki.net/META.html deleted file mode 100644 index 2178285a..00000000 --- a/clones/lisp/www.cliki.net/META.html +++ /dev/null @@ -1,57 +0,0 @@ - - - - - CLiki: Meta - - - - - - - -
    Meta
    A recursive-descent parser DSL that is a simpler alternative to parser generators. Described by Henry Baker: -Pragmatic Parsing in Common Lisp; or, putting defmacro on steroids (ACM Lisp Pointers, vol. IV, no. 2, April--June 1991, pp. 3--15, DOI 10.1145/121983.121984). A few dozen lines of code in Common Lisp.

    The scheme involves building a tiny language, called Meta, on top of Lisp. Whereas it does not handle all possible regular and context-free grammars, it can be used for a surprisingly large fraction of the grammars Lisp programmers encounter.

    I think the family of grammars that Meta handles is usually called LL(1) as opposed to LL(k) which some other recursive descent parser generators support. -A. Kjeldaas. -Actually the look-ahead limitation to one character is an artifact of using CL streams. The same technique and software can be used with sexprs and strings (and could be used with your own buffering streams if you dared) to provide unlimited look-ahead. -Fare Rideau -I also believe that the languages Meta can parse can also be generated by Regular Tree Grammars: a formalism that under-pins xml schema languages like Relax-NG. -M. Swank

    A simple practical package that uses Meta is Scribble, which you may take as an example.

    meta source code is at: - https://gitlab.common-lisp.net/frideau/meta

    mel-base contains a modified version of cl-meta which uses sexprs instead -of the reader. Huh? Baker's META works equally well on objects of type STREAM, STRING or LIST. cl-meta features access to these 3 via WITH-STRING-META, WITH-STREAM-META, WITH-LIST-META: lexical scoping is the solution, via MACROLET and/or LABELS. -Jörg Höhle Also, meta-sexp package is yet another META parser generator using s-expressions.


    -s-exp syntax
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/METATILITIES.html b/clones/lisp/www.cliki.net/METATILITIES.html deleted file mode 100644 index 8625f875..00000000 --- a/clones/lisp/www.cliki.net/METATILITIES.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: metatilities - - - - - - - -
    metatilities
    Everyone needs their own set of utilities… These are Gary King's.

    Project: https://common-lisp.net/project/metatilities/

    Repository: https://github.com/gwkkwg/metatilities

    License: MIT

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/MGL-GPR.html b/clones/lisp/www.cliki.net/MGL-GPR.html deleted file mode 100644 index 6aac7ac4..00000000 --- a/clones/lisp/www.cliki.net/MGL-GPR.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: MGL-GPR - - - - - - - -
    MGL-GPR
    MGL-GPR is a machine learning library of evolutionary algorithms.

    MGL-GPR was written by Gabor Melis, with Ravenpack.

    It can be found at https://github.com/melisgl/mgl-gpr.

    Documentation is at http://melisgl.github.io/mgl-pax-world/gpr-manual.html.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/MGL-MAT.html b/clones/lisp/www.cliki.net/MGL-MAT.html deleted file mode 100644 index 0963f61d..00000000 --- a/clones/lisp/www.cliki.net/MGL-MAT.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: MGL-MAT - - - - - - - -
    MGL-MAT
    MAT is a linear algebra library for working with multi-dimensional arrays which supports efficient interfacing to foreign and CUDA code. BLAS and CUBLAS bindings are available.

    It can be found at https://github.com/melisgl/mgl-mat.

    Documentation is at http://melisgl.github.io/mgl-pax-world/mat-manual.html.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/MGL-PAX.html b/clones/lisp/www.cliki.net/MGL-PAX.html deleted file mode 100644 index bac5e0e6..00000000 --- a/clones/lisp/www.cliki.net/MGL-PAX.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: MGL-PAX - - - - - - - -
    MGL-PAX
    MGL-PAX is an exploratory programming environment and documentation generator.

    Homepage: https://github.com/melisgl/mgl-pax

    Documentation is at http://melisgl.github.io/mgl-pax-world/mgl-pax-manual.html.

    License: MIT

    PAX is a literate programming inside out: the documentation lives in the code and the interactive development workflow is unchanged. Hacky Authoring? Wacky Writing? Eloquent Editing?


    -Topics: document preparation Documentation Tool
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/MGL.html b/clones/lisp/www.cliki.net/MGL.html deleted file mode 100644 index 9763d2bf..00000000 --- a/clones/lisp/www.cliki.net/MGL.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: MGL - - - - - - - -
    MGL
    MGL is a machine learning for backpropagation neural networks, boltzmann machines, gaussian processes and more.

    MGL was written by Gabor Melis, with Ravenpack.

    It can be found at https://github.com/melisgl/mgl.

    Documentation is at http://melisgl.github.io/mgl-pax-world/mgl-manual.html.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/MICROLISP.html b/clones/lisp/www.cliki.net/MICROLISP.html deleted file mode 100644 index 67c65e25..00000000 --- a/clones/lisp/www.cliki.net/MICROLISP.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: MICROLISP - - - - - - - -
    MICROLISP
    MicroLisp is a compiler for a minimalistic Lisp dialect targeting ANSI C. Suited for educational purposes.

    Written by Max Rottenkolber.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/MIME.html b/clones/lisp/www.cliki.net/MIME.html deleted file mode 100644 index 6cd02e35..00000000 --- a/clones/lisp/www.cliki.net/MIME.html +++ /dev/null @@ -1,73 +0,0 @@ - - - - - CLiki: MIME - - - - - - - -
    MIME
    MIME, Multipurpose -Internet Mail Extensions, provides extensions to plain text Internet Mail messages defined in RFC 822 to provide for a wider range of content types. MIME is also used for multipart/form-data posts in HTML

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/MIME4CL.html b/clones/lisp/www.cliki.net/MIME4CL.html deleted file mode 100644 index 5e9ca20e..00000000 --- a/clones/lisp/www.cliki.net/MIME4CL.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: MIME4CL - - - - - - - -
    MIME4CL
    MIME4CL allows you to craft MIME compliant messages or to parse and handle them programmatically.

    It depends on SCLF, NPG, and Gray streams (as implemented in SBCL/CMUCL, extending CL streams).

    Homepage: http://wcp.sdf-eu.org/software/#mime4cl

    Download: http://wcp.sdf-eu.org/software/mime4cl-20150207T211851.tbz

    License: LGPL

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/MIPS.html b/clones/lisp/www.cliki.net/MIPS.html deleted file mode 100644 index 1ff1e609..00000000 --- a/clones/lisp/www.cliki.net/MIPS.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: MIPS - - - - - - - -
    MIPS
    MIPS (Mathematical Investigation of Pitch Systems) is a mathematical formal language for investigating the structural properties of Musical scales, pitch systems and their associated notational systems. MIPS models a whole class of pitch notation systems that contains the Western staff notation system as one of its members.

    MIPS has been implemented as a computer program written in Common Lisp.

    The complete specification containing the lisp implementation is available here.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/MIT-LICENSE.html b/clones/lisp/www.cliki.net/MIT-LICENSE.html deleted file mode 100644 index 7635224d..00000000 --- a/clones/lisp/www.cliki.net/MIT-LICENSE.html +++ /dev/null @@ -1,66 +0,0 @@ - - - - - CLiki: MIT-LICENSE - - - - - - - -
    MIT-LICENSE
    The MIT License is a DFSG-compliant License.

    This definition is reproduced from http://www.opensource.org/licenses/mit-license.html

    -Copyright (c)

    Permission is hereby granted, free of charge, to any person obtaining -a copy of this software and associated documentation files (the -"Software"), to deal in the Software without restriction, including -without limitation the rights to use, copy, modify, merge, publish, -distribute, sublicense, and/or sell copies of the Software, and to -permit persons to whom the Software is furnished to do so, subject to -the following conditions:

    The above copyright notice and this permission notice shall be included -in all copies or substantial portions of the Software.

    THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR -OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, -ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -OTHER DEALINGS IN THE SOFTWARE.

    -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/MIT-License.html b/clones/lisp/www.cliki.net/MIT-License.html deleted file mode 100644 index 7635224d..00000000 --- a/clones/lisp/www.cliki.net/MIT-License.html +++ /dev/null @@ -1,66 +0,0 @@ - - - - - CLiki: MIT-LICENSE - - - - - - - -
    MIT-LICENSE
    The MIT License is a DFSG-compliant License.

    This definition is reproduced from http://www.opensource.org/licenses/mit-license.html

    -Copyright (c)

    Permission is hereby granted, free of charge, to any person obtaining -a copy of this software and associated documentation files (the -"Software"), to deal in the Software without restriction, including -without limitation the rights to use, copy, modify, merge, publish, -distribute, sublicense, and/or sell copies of the Software, and to -permit persons to whom the Software is furnished to do so, subject to -the following conditions:

    The above copyright notice and this permission notice shall be included -in all copies or substantial portions of the Software.

    THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR -OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, -ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -OTHER DEALINGS IN THE SOFTWARE.

    -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/MIT-license.html b/clones/lisp/www.cliki.net/MIT-license.html deleted file mode 100644 index 7635224d..00000000 --- a/clones/lisp/www.cliki.net/MIT-license.html +++ /dev/null @@ -1,66 +0,0 @@ - - - - - CLiki: MIT-LICENSE - - - - - - - -
    MIT-LICENSE
    The MIT License is a DFSG-compliant License.

    This definition is reproduced from http://www.opensource.org/licenses/mit-license.html

    -Copyright (c)

    Permission is hereby granted, free of charge, to any person obtaining -a copy of this software and associated documentation files (the -"Software"), to deal in the Software without restriction, including -without limitation the rights to use, copy, modify, merge, publish, -distribute, sublicense, and/or sell copies of the Software, and to -permit persons to whom the Software is furnished to do so, subject to -the following conditions:

    The above copyright notice and this permission notice shall be included -in all copies or substantial portions of the Software.

    THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR -OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, -ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -OTHER DEALINGS IN THE SOFTWARE.

    -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/MIT.html b/clones/lisp/www.cliki.net/MIT.html deleted file mode 100644 index 5ee8f9ee..00000000 --- a/clones/lisp/www.cliki.net/MIT.html +++ /dev/null @@ -1,544 +0,0 @@ - - - - - CLiki: MIT - - - - - - - -
    MIT
    A software license; see MIT-LICENSE.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/MK-DEFSYSTEM.html b/clones/lisp/www.cliki.net/MK-DEFSYSTEM.html deleted file mode 100644 index 6ce4aefe..00000000 --- a/clones/lisp/www.cliki.net/MK-DEFSYSTEM.html +++ /dev/null @@ -1,84 +0,0 @@ - - - - - CLiki: mk-defsystem - - - - - - - -
    mk-defsystem
    MK-defsystem is a system definition utility; it fills a similar role for CL as make(1) does for C. MK-defsystem can be downloaded from the CLOCC and its current official version identifier is MK:DEFSYSTEM 3.4 Interim (MK3).

    The new experimental version of mk-defsystem is MK:DEFSYSTEM 4.x (MK4). It is completely CLOS based and backward compatible with 3.x.

    The sourceforge link to mk-defsystem is https://sourceforge.net/projects/clocc/

    The CVS modules in the CLOCC are -

      -
    • -defsystem-3.x and -
    • -
    • -defsystem-4.x -
    • -

    If you have patches to make mk-defsystem more usable, please submit them to the CLOCC mailing lists or to one of the CLOCC maintainers.



    Note that the latest version of MK3 already includes the code shown below.



    Did you know? You can also load foreign files with defsystem. For -example, to define that C components are compiled by calling out to "make" -and loaded using the foreign loader, try something like this example -(originally from db-sockets):

    (defparameter *make-program* "make") - -(defun c-make-file (filename &rest args &key output-file error-file) - ;; make foo.o - (declare (ignore args error-file)) - (make::run-unix-program *make-program* (list output-file))) - -(make:define-language :c - :compiler #'c-make-file - :loader - #+:lucid #'load-foreign-files - #+cmu #'alien::load-foreign - #+sbcl #'sb-alien::load-foreign - #+:allegro #'load - #-(or :cmu :sbcl :lucid :allegro) #'load - :source-extension "c" - :binary-extension "o")

    then you define the relevant component like this:

    (:file "get_h_errno.c" :language :c - :source-extension "c" :binary-extension "o")

    Commentary

    Are there any documents for mk-defsystem out there? How does one add a path to its search path?

    Chapter 4 of http://www-2.cs.cmu.edu/afs/cs.cmu.edu/project/ai-repository/ai/lang/lisp/code/tools/mkantdoc.tgz

    I have done a mild update to the defsystem.html that appears in clocc/src/defsystem-3.3i/docs/. I have submitted the changes, but don't believe they have been incorporated. You can find the documents here. I'll try to add some of the material discussed on this page, as time permits.

    The CLOCC version of mk-defsystem has some TeX/DVI/PS documentation. As to the specific question, the magical variable you're looking to push things onto is mk:*central-registry*.

    Just to clarify: the CLOCC documentation is limited and needs to be updated. As per the specific question, both MK3 and MK4 now have a new function

    (mk:add-registry-location ...)

    which does the PUSH in a more meaningful way.

    Henrik Motakef's Fight the System explains how to use and load libraries with mk-defsystem.

    Update (2020-08-01)

    An updated version (3.8) of the first widely available (and quite portable) DEFSYSTEM for Common Lisp: https://gitlab.common-lisp.net/mantoniotti/mk-defsystem

    MK:DEFSYSTEM was, and is, the first widely available, -implementation independent, DEFSYSTEM (or make) for Common Lisp.

    The current distribution and repository (3.8) contains a file -defsystem.lisp, a docs directory, and this README file. The -current version is based on MK:DEFSYSTEM distributed with CLOCC, -but it contains a few enhancements and extensions for newer CL implementations.

    MK:DEFSYSTEM works on most current (August 2020) Common Lisp implementations and it is still used by a wide variety of projects.


    -build
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/MKCL.html b/clones/lisp/www.cliki.net/MKCL.html deleted file mode 100644 index 7fecea67..00000000 --- a/clones/lisp/www.cliki.net/MKCL.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: MKCL - - - - - - - -
    MKCL
    ManKai Common Lisp.

    ManKai Common Lisp is a member of the KCL Family through its ECL branch. MKCL is a quite complete ANSI Common Lisp implementation, mainly developed by Jean-Claude Beaudoin at the moment.

    MKCL features, in its permanent configuration, a number of significant extensions like multi-threading, FFI and Unicode support, along with a good set of prepackaged libraries: CFFI, Babel, alexandria, FiveAM, Bordeaux-Threads, ASDF, SLIME and more.

    The main MKCL project page can be found at http://common-lisp.net/project/mkcl.

    Current stable version: 1.1.11 (released on 2019/05/02).

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/MOP design patterns.html b/clones/lisp/www.cliki.net/MOP design patterns.html deleted file mode 100644 index a7f449e8..00000000 --- a/clones/lisp/www.cliki.net/MOP design patterns.html +++ /dev/null @@ -1,247 +0,0 @@ - - - - - CLiki: MOP design patterns - - - - - - - -
    MOP design patterns

    How to add your own default class for metaclass instances by Pascal Costanza -

    The standard idiom for class initialization / reinitialization when -you want to add your own default topmost object (like standard-object -and funcallable-standard-object for standard-class and -funcallable-standard-class) is the one below.

    [Jean-Philippe Paradis remarks: see object-class.]

    -(defmethod initialize-instance :around
    -  ((class my-class) &rest initargs
    -   &key direct-superclasses)
    -  (declare (dynamic-extent initargs))
    -  (if (loop for class in direct-superclasses
    -            thereis (subtypep class (find-class 'my-object)))
    -
    -     ;; 'my-object is already one of the (indirect) superclasses
    -     (call-next-method)
    -
    -     ;; 'my-object is not one of the superclasses, so we have to add it
    -     (apply #'call-next-method
    -            class
    -            :direct-superclasses
    -            (append direct-superclasses
    -                    (list (find-class 'my-object)))
    -            initargs)))
    -
    -(defmethod reinitialize-instance :around
    -  ((class my-class) &rest initargs
    -   &key (direct-superclasses '() direct-superclasses-p))
    -  (declare (dynamic-extent initargs))
    -  (if direct-superclasses-p
    -
    -    ;; if direct superclasses are explicitly passed
    -    ;; this is exactly like above
    -    (if (loop for class in direct-superclasses
    -              thereis (subtypep class (find-class 'my-object)))
    -       (call-next-method)
    -       (apply #'call-next-method
    -              class
    -              :direct-superclasses
    -              (append direct-superclasses
    -                      (list (find-class 'my-object)))
    -              initargs))
    -
    -    ;; if direct superclasses are not explicitly passed
    -    ;; we _must_ not change anything
    -    (call-next-method)))
    -

    How to generate fast accessors for customized slot-value-using-class implementations by Attila Lendvai -

    The idea is to use standard-instance-access and capture the slot-definition-location into the accessor lambda, so we have an accessor with only 'eq comparisons and standard-instance-access calls.

    - Issues that needs to be dealth with: -

      -
    • Such an accessor is only usable for the concrete class it was generated for (because the effective slot locations are varying for each subclass) but the generic method is called also for subclasses of that class. Therefore we generate an accessor for each subclass, but this chain can be broken if the class of a subclass is not type of our metaclass. For graceful fallback we eq check (class-of instance) in the accessor lambda to the class that we used to generate this accessor for and if it's not 'eq then we fall back to a slow but correct slot-value call.
    • -
    • The standard is vague around standard-instance-access and slot boundp checking is quite platform dependent. The example is based on SBCL.
    • -

    For a working example and the original source of the code scratch below take a look at computed-class

    -

    (defclass computed-slot-definition (standard-slot-definition)
    -  ((computed-readers
    -    :initform nil
    -    :type list
    -    :accessor computed-readers-of
    -    :initarg :computed-readers)
    -   (computed-writers
    -    :initform nil
    -    :type list
    -    :accessor computed-writers-of
    -    :initarg :computed-writers)))
    -
    -(defclass computed-direct-slot-definition (computed-slot-definition standard-direct-slot-definition)
    -  ())
    -
    -(defclass computed-direct-slot-definition-with-custom-accessors (computed-direct-slot-definition)
    -  ()
    -  (:documentation "This direct slot definition converts the :readers and :writers initargs to :computed-readers and :computed-writers effectively disabling the generation of default accessors."))
    -
    -(defclass computed-effective-slot-definition (computed-slot-definition standard-effective-slot-definition)
    -  ())
    -
    -(defmethod initialize-instance :around ((slot computed-direct-slot-definition-with-custom-accessors)
    -                                        &rest args &key readers writers &allow-other-keys)
    -  (remf-keywords args :readers :writers)
    -  (apply #'call-next-method slot :computed-readers readers :computed-writers writers args))
    -
    -(defmethod compute-effective-slot-definition :around ((class computed-class) name direct-slot-definitions)
    -  (declare (type list direct-slot-definitions))
    -  (let ((%computed-effective-slot-definition% (find-if (lambda (direct-slot-definition)
    -                                                         (typep direct-slot-definition 'computed-direct-slot-definition))
    -                                                       direct-slot-definitions)))
    -    (declare (special %computed-effective-slot-definition%))
    -    (aprog1
    -        (call-next-method)
    -      ;; We collect and copy the readers and writers to the effective-slot, so we can access it
    -      ;; later when generating custom accessors.
    -      (when (typep it 'computed-effective-slot-definition)
    -        (setf (computed-readers-of it)
    -              (remove-duplicates (loop for direct-slot-definition :in direct-slot-definitions
    -                                       appending (if (typep direct-slot-definition 'computed-direct-slot-definition)
    -                                                     (computed-readers-of direct-slot-definition)
    -                                                     (slot-definition-readers direct-slot-definition)))
    -                                 :test #'equal))
    -        (setf (computed-writers-of it)
    -              (remove-duplicates (loop for direct-slot-definition :in direct-slot-definitions
    -                                       appending (if (typep direct-slot-definition 'computed-direct-slot-definition)
    -                                                     (computed-writers-of direct-slot-definition)
    -                                                     (slot-definition-writers direct-slot-definition)))
    -                                 :test #'equal))))))
    -
    -
    -(defmethod slot-value-using-class ((class computed-class)
    -                                   (object computed-object)
    -                                   (slot computed-effective-slot-definition))
    -  (declare #.(optimize-declaration))
    -  #.(slot-value-using-class-body))
    -
    -(defmethod (setf slot-value-using-class) (new-value
    -                                          (class computed-class)
    -                                          (object computed-object)
    -                                          (slot computed-effective-slot-definition))
    -  (declare #.(optimize-declaration))
    -  #.(setf-slot-value-using-class-body))
    -
    -(defmethod slot-boundp-using-class ((class computed-class)
    -                                    (object computed-object)
    -                                    (slot computed-effective-slot-definition))
    -  (declare #.(optimize-declaration))
    -  (not (eq #.(standard-instance-access-form)
    -           '#.+unbound-slot-value+)))
    -
    -(defmethod slot-makunbound-using-class ((class computed-class)
    -                                        (object computed-object)
    -                                        (slot computed-effective-slot-definition))
    -  (declare #.(optimize-declaration))
    -  #.(setf-standard-instance-access-form nil (quote (quote #.+unbound-slot-value+))))
    -
    -
    -(defun ensure-accessor-for (class accessor-name effective-slot type)
    -  (let* ((gf (ensure-generic-function accessor-name :lambda-list (ecase type
    -                                                                   (:reader '(object))
    -                                                                   (:writer '(new-value object)))))
    -         (specializers (ecase type
    -                         (:reader (list class))
    -                         (:writer (list (find-class 't) class))))
    -         (current-method (find-method gf '() specializers #f)))
    -    (if (and current-method
    -             (typep current-method 'computed-accessor-method)
    -             (= (slot-definition-location (effective-slot-of current-method))
    -                (slot-definition-location effective-slot)))
    -        (progn
    -          (log.dribble "Keeping compatible ~A for class ~A, slot ~S, slot-location ~A"
    -                       (string-downcase (symbol-name type)) class (slot-definition-name effective-slot)
    -                       (slot-definition-location effective-slot))
    -          (setf (effective-slot-of current-method) effective-slot))
    -        (progn
    -          (log.debug "Ensuring new ~A for class ~A, slot ~S, effective-slot ~A, slot-location ~A"
    -                     (string-downcase (symbol-name type)) class (slot-definition-name effective-slot)
    -                     effective-slot (slot-definition-location effective-slot))          
    -          (let  ((method (ensure-method gf
    -                                        (ecase type
    -                                          (:reader
    -                                           `(lambda (object)
    -                                             (declare (optimize (speed 1))) ; (speed 1) to ignore compiler notes when defining accessors
    -                                             (log.dribble "Entered reader for object ~A, generated for class ~A, slot ~A, slot-location ~A"
    -                                              object ,class ,effective-slot ,(slot-definition-location effective-slot))
    -                                             (if (eq (class-of object) ,class)
    -                                                 (progn
    -                                                   ,(slot-value-using-class-body effective-slot))
    -                                                 (progn
    -                                                   (log.dribble "Falling back to slot-value in reader for object ~A, slot ~A"
    -                                                                object (slot-definition-name ,effective-slot))
    -                                                   (slot-value object ',(slot-definition-name effective-slot))))))
    -                                          (:writer
    -                                           `(lambda (new-value object)
    -                                             (declare (optimize (speed 1))) ; (speed 1) to ignore compiler notes when defining accessors
    -                                             (log.dribble "Entered writer for object ~A, generated for class ~A, slot ~A, slot-location ~A"
    -                                              object ,class ,effective-slot ,(slot-definition-location effective-slot))
    -                                             (if (eq (class-of object) ,class)
    -                                                 (progn
    -                                                   ,(setf-slot-value-using-class-body effective-slot))
    -                                                 (progn
    -                                                   (log.dribble "Falling back to (setf slot-value) in writer for object ~A, slot ~A"
    -                                                                object  (slot-definition-name ,effective-slot))
    -                                                   (setf (slot-value object ',(slot-definition-name effective-slot)) new-value))))))
    -                                        :specializers specializers
    -                                        #+ensure-method-supports-method-class :method-class
    -                                        #+ensure-method-supports-method-class (find-class 'computed-reader-method))))
    -            (declare (ignorable method))
    -            #+ensure-method-supports-method-class
    -            (setf (effective-slot-of method) effective-slot))))))
    -
    -(defun ensure-accessors-for (class)
    -  (loop for effective-slot :in (class-slots class)
    -        when (typep effective-slot 'computed-effective-slot-definition) do
    -        (log.dribble "Visiting effective-slot ~A of class ~A to generate accessors" effective-slot class)
    -        (dolist (reader (computed-readers-of effective-slot))
    -          (ensure-accessor-for class reader effective-slot :reader))
    -        (dolist (writer (computed-writers-of effective-slot))
    -          (ensure-accessor-for class writer effective-slot :writer))))
    -
    -(defmethod finalize-inheritance :after ((class computed-class*))
    -  (ensure-accessors-for class))
    -


    -Topics: Document MOP
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/MOP-features.html b/clones/lisp/www.cliki.net/MOP-features.html deleted file mode 100644 index 484ad831..00000000 --- a/clones/lisp/www.cliki.net/MOP-features.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: MOP-features - - - - - - - -
    MOP-features
    This package provides a way to check what features a Common Lisp implementation supports. The simplest way to use it is to load it with asdf, use the :mop-feature-tests package and execute the functions run-feature-tests and describe-mop-features without parameters.

    MOP Features is written and maintained by Pascal Costanza. See Common-Lisp.net for more information.

    Repository: https://github.com/pcostanza/mop-features

    License: MIT

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/MOP-standards-discussion.html b/clones/lisp/www.cliki.net/MOP-standards-discussion.html deleted file mode 100644 index 0ea9bf86..00000000 --- a/clones/lisp/www.cliki.net/MOP-standards-discussion.html +++ /dev/null @@ -1,77 +0,0 @@ - - - - - CLiki: MOP-standards-discussion - - - - - - - -
    MOP-standards-discussion
    The MOP is great, but nothing is perfect. Here is a place to suggest changes that ought to come:

    Open Items

    -
      -
    • -The CLOS MOP spec states that the results are undefined if the restrictions on standard-instance-access are not met. This is a probably a case where the authors of the CLOS MOP specification weren't careful enough. Standard-instance-access "is intended to provide highly optimized access", but the wording "the results are undefined" leaves too much room for implementations. -
    • -slot-readers &co return _names_, not function object, which really - sucks if the symbol has been eg. uninterned or fmakunbound, as that - leaves you without any defined means to get at the generic function.

      Note that you can -

    • -
    -;; from Pascal Costanza
    -(loop for method in (specializer-direct-methods some-class)
    -      when (subtypep method 'standard-accessor-method)
    -      collect (cons (accessor-method-slot-definition method)
    -                    (method-generic-function method)))
    -

    -

    Dropped items

    -
      -
    • -set-funcallable-instance-fun, but no funcallable-instance-fun

      specifying -a funcallable-instance-function function invalidates a historically -used implementation strategy for funcallable instances. (As it turns -out, the historical implementation strategy is inherently not -threadsafe in a natively-threaded environment, but that's not to say -that that implementation strategy is universally bad.) [Christophe Rhodes]

      Note that you can also always call compute-discriminating-function if you need a current version of the discriminating function. In general, it's better to use the function itself rather than its instance-function. [Pascal Costanza]

    • -


    -document
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/MOP.html b/clones/lisp/www.cliki.net/MOP.html deleted file mode 100644 index 1539c65f..00000000 --- a/clones/lisp/www.cliki.net/MOP.html +++ /dev/null @@ -1,105 +0,0 @@ - - - - - CLiki: MOP - - - - - - - -
    MOP
    Meta Object Protocol(MOP) is a protocol for describing CLOS itself as an extensible CLOS program. In this description, the fundamental elements of CLOS programs (classes, slot definitions, generic functions, methods, specializers and method combinations) are represented by first-class objects. The behavior of CLOS is provided by these objects, or, more precisely, by methods specialized to the classes of these objects.

    Because these objects represent pieces of CLOS programs, and because their behavior provides the behavior of the CLOS language itself, they are considered meta-level objects or metaobjects. The protocol followed by the metaobjects to provide the behavior of CLOS is called the CLOS Metaobject Protocol (MOP).

    See also: -

    Topic: -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/MPC.html b/clones/lisp/www.cliki.net/MPC.html deleted file mode 100644 index 2afd8b99..00000000 --- a/clones/lisp/www.cliki.net/MPC.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: MPC - - - - - - - -
    MPC
    MPC is a fork of Drew Crampsie's Smug, a monadic parser combinators library for Common Lisp. The focus of this fork lies on providing a stable and practical API suited for production use. To achieve this goal more work has to be put into performance considerations (any one want to try to implement a memoization scheme for MPC?) and thorough quality assurance. MPC is deprecated in favor of MaxPC. See: Max’s Parser Combinators: Why? How?

    Maintained by Max Rottenkolber.


    -obsolete
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/MPD4CL.html b/clones/lisp/www.cliki.net/MPD4CL.html deleted file mode 100644 index d5425836..00000000 --- a/clones/lisp/www.cliki.net/MPD4CL.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: MPD4CL - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/MSL-Test.html b/clones/lisp/www.cliki.net/MSL-Test.html deleted file mode 100644 index c8a04cba..00000000 --- a/clones/lisp/www.cliki.net/MSL-Test.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: MSL-Test - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/MT19937.html b/clones/lisp/www.cliki.net/MT19937.html deleted file mode 100644 index 272288d6..00000000 --- a/clones/lisp/www.cliki.net/MT19937.html +++ /dev/null @@ -1,92 +0,0 @@ - - - - - CLiki: MT19937 - - - - - - - -
    MT19937
    MT19937 is a portable Mersenne Twister random number generator. It -is mainly a modification of CMUCL's random number generator with all -the CMUCL-specific parts taken out.

    It is faster than the JMT Mersenne Twister -implementation, but significantly slower than native random number -generators provided by major Common Lisp implementations. For light -use this shouldn't be a problem, since it is still very fast.

    It should be very stable, since it's based on stable CMUCL code. It -has been tested on CMUCL, SBCL, (LispWorks), Allegro CL, GCL, CLISP, and Corman Lisp. MT19937 is in the public domain.

    What's the point?

    -Why, you might ask, would you want to use a portable, slower random -number generator? The answer is consistency. The portable version of -this code was originally created for Maxima, a computer algebra -system. They wanted the results of the random number generator to be -portable across several implementations and platforms, so that if you -used a certain seed on CMUCL the numbers generated would be the same -as you would get with the same seed on GCL or CLISP. This was more -important than achieving the maximum possible speed. You may have -similar problems.

    Usage

    -MT19937 is a plug-in replacement for the Common Lisp random-number -generator. The MT19937 package exports all the Common Lisp symbols -related to random number generation, so you just need to load MT19937 -and call its functions instead of the built-in ones. For example:

    -;; Load MT19937
    -(asdf:oos 'asdf:load-op :mt19937)
    -
    -;; Make random numbers with your implementation's random number generator.
    -(random 1234567)
    -(random 42.56)
    -(random 3.1415d0)
    -
    -;; Make random numbers using MT19937
    -(mt19937:random 1234567)
    -(mt19937:random 42.56)
    -(mt19937:random 3.1415d0)
    -
    -;; MT19937 has its own random state
    -(eq *random-state*
    -    mt19937:*random-state*)  => nil
    -

    Download

    MT19937 can be downloaded from the asdf-packaging home page.

    Bug

    -This code has a bug in the definition of the "random" compiler macro at the bottom of the file. Because it is a macro the default value for the state argument needs a quote in front of it, so that the macro argument gets bound to a symbol, not the value of a symbol.

    Without this fix, code calling mt19937:random with a constant argument probably won't compile at all (it would not on ACL 8.0) for lack of a make-load-form method for random-state's. If one is added so that it compiles, it will behave differently than expected: calls using constant arguments with no state argument will fail to use the dynamic value of *random-state* at the time of the call.

    The macro definition should read -

    -(define-compiler-macro random (&whole form arg &optional (state '*random-state*)
    -
    -with single quote added in front of *random-state*.

    Or it might be safest to delete this macro entirely.

    Another weakness is that it is very unclear how to contact a maintainer of the code to correct a bug like this, short of modifying this page!

    Confirmed on SBCL 1.0.29. I believe the asdf-packaging mailing list is probably the best place to report the bug. I have asked on the list but have not yet received a response. -- Elliott Slaughter 2010-01-05

    Update: As of 2011-01-30, this bug has finally been fixed. -- Elliott Slaughter

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/MW-EQUIV.html b/clones/lisp/www.cliki.net/MW-EQUIV.html deleted file mode 100644 index 9f8076da..00000000 --- a/clones/lisp/www.cliki.net/MW-EQUIV.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: MW-EQUIV - - - - - - - -
    MW-EQUIV
    mw-equiv provides one of many possible equivalence relations between Common Lisp objects, similar to the standard EQUAL function family, but extensible.

    Unlike the standard equalities, MW-EQUIV can be extended for new objects through a simple CLOS protocol. The rules when two objects are considered equivalent distinguish between mutating and frozen objects. A frozen object is promised not to be mutated in the future in a way that operations on it can notice the difference.

    Documentation can be found on the MW-EQUIV home page. An article on MW-EQUIV provides some background and additional examples.


    -Topics: language extension
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/MacOS X.html b/clones/lisp/www.cliki.net/MacOS X.html deleted file mode 100644 index 5e9c3723..00000000 --- a/clones/lisp/www.cliki.net/MacOS X.html +++ /dev/null @@ -1,74 +0,0 @@ - - - - - CLiki: MacOS X - - - - - - - -
    MacOS X
    Apple's Unix platform based on the open source Darwin. Mac OS X offers the Aqua GUI layer, QuickTime integration, and MacOS Classic compatibility on top of the capabilities of the Darwin layer.

    Free Common Lisp implementations for Mac OS X include: -

    CLISP and SBCL are the easiest to get running. Both are in Fink, MacPorts, and SBCL now offers downloadable Mac OS X binaries. OpenMCL tends to be slightly more difficult to get running with SLIME, but it does also have a binary distribution and a couple of native interactive environments, namely Clotho and Alpaca. SBCL and OpenMCL are the fastest free Lisps on Mac OS X. OpenMCL has the best integration with the Mac OS X GUI and other Mac OS X features.

    There is a first attempt at a Lisp in a Box for Mac OS X by Mikel Evins. His other works in progress are also interesting: Clotho, a native IDE for Mac OS X, and Alpaca, a writer's editor, built with Bosco and OpenMCL.

    Most Mac OS X Lispers will need Emacs. Mac OS X comes with a console-only build of GNU Emacs 21.2. Fink contains GUI ports of GNU Emacs and XEmacs that use the X11 bundled with MacOS X. Carbon Emacs is a solid port of GNU EMacs with GUI support.

    See EmacsWiki:EmacsForMacOS.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Machine Learning.html b/clones/lisp/www.cliki.net/Machine Learning.html deleted file mode 100644 index fbdc58f1..00000000 --- a/clones/lisp/www.cliki.net/Machine Learning.html +++ /dev/null @@ -1,94 +0,0 @@ - - - - - CLiki: machine learning - - - - - - - -
    machine learning
    -Common Lisp Machine Learning projects:

      -
    • -MaLeCoLi, Machine Learning in Common Lisp.
    • -
    • -clml, Common Lisp Machine Learning Library.
    • -
    • -ML-Progs: More "Research-Level" Implementations of Learning Algorithms
    • -
    • -cl-bayesian, Common Lisp routines for Bayesian estimation and analysis.
    • -
    • -cl-mlep, a machine learning library for educational purposes
    • -
    • -cl-association-rules, an association rule mining library.
    • -
    • -cl-online-learning, a collection of machine learning algorithms for online linear classification.
    • -
    • -cl-random-forest, a fast implementation of Random Forest for multiclass classification and univariate regression
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Macro Characters.html b/clones/lisp/www.cliki.net/Macro Characters.html deleted file mode 100644 index 533d5ad3..00000000 --- a/clones/lisp/www.cliki.net/Macro Characters.html +++ /dev/null @@ -1,186 +0,0 @@ - - - - - CLiki: Macro Characters - - - - - - - -
    Macro Characters
    Macro characters used by various libraries: (TOTALLY INCOMPLETE AND OUTDATED)

    direct character definition

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    CharMeaningUsed by
    λ (lambda)LAMBDAlambda-reader
    Λ (Lambda)LAMBDAlambda-reader
    @Timestringlocal-time
    [MarkupScribble
    Stringboxen
    Specialboxen

    # dispatch

    (Note that the subchar dispatching is done case insensitively, so we list only uppercase letters, but the corresponding lower case letter may be used too (and might be used often for better readability, notably when a numerical argument is present before and after the subchar)).

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - . - - - - - - -
    CharMeaningUsed by
    IInfix syntaxInfix
    ?String interpolationcl-interpol
    ` (backquote)Shell command output substitutionclawk
    /Regular expression symbolclawk
    UURLs -CL-HTTP Puri uri-template cl-uri-templates -
    _ (underscore) -FFI TrapsCCL
    _ (underscore)A lookup for Qt functionalityCommonQt
    $ -FFI ConstantsCCL
    > -FFI StructuresCCL
    ! -Unix shell scripting (known as "shebang")CLISP and others
    @read-time splicingcl-rttemplate
    @package controlPKG
    " (double quote)a read-time quasiquotecl-rttemplate
    " (double quote)pathnames (predates #P?)CLISP
    LLambda: #L(list* !1 '- !2) as shorthand for two-arg LAMBDA -iterate
    MMoney: #978m123.43 = 123.43 EUR ; #840m123.43 = 123.43 USDin com.informatimago.common-lisp.invoice (should be extracted as a stand-alone library, bug Pascal Bourguignon)
    NInfix syntaxmexpr


    -programming tips
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Mad70.html b/clones/lisp/www.cliki.net/Mad70.html deleted file mode 100644 index b9726ca2..00000000 --- a/clones/lisp/www.cliki.net/Mad70.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Mad70 - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Magrathea.html b/clones/lisp/www.cliki.net/Magrathea.html deleted file mode 100644 index 8d1dbdde..00000000 --- a/clones/lisp/www.cliki.net/Magrathea.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Magrathea - - - - - - - -
    Magrathea
    A Hunchentoot extension to counter malicious scraping attempts.

    Repository: https://gitlab.common-lisp.net/theemacsshibe/magrathea

    License: BSD 2-Clause

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Maiden.html b/clones/lisp/www.cliki.net/Maiden.html deleted file mode 100644 index 3f61418d..00000000 --- a/clones/lisp/www.cliki.net/Maiden.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Maiden - - - - - - - -
    Maiden
    Maiden is a collection of systems to help you build applications and libraries that interact with chat servers. It can help you build a chat bot, or a general chat client. It also offers a variety of parts that should make it much easier to write a client for a new chat protocol.

    Home page: http://shirakumo.github.io/maiden/

    Github repo: https://github.com/Shirakumo/maiden

    License: zlib


    -IRC
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Make Old CMUCL CLX Work With Magic Cookies.html b/clones/lisp/www.cliki.net/Make Old CMUCL CLX Work With Magic Cookies.html deleted file mode 100644 index fcb2f4c0..00000000 --- a/clones/lisp/www.cliki.net/Make Old CMUCL CLX Work With Magic Cookies.html +++ /dev/null @@ -1,109 +0,0 @@ - - - - - CLiki: Make Old CMUCL CLX Work With Magic Cookies - - - - - - - -
    Make Old CMUCL CLX Work With Magic Cookies
    Put the following forms in a file, and load it after CLX is loaded:

    -(in-package "XLIB")
    -
    -(defun get-best-authorization (host display protocol)
    -  (labels ((read-short (stream &optional (eof-errorp t))
    -	     (let ((high-byte (read-byte stream eof-errorp)))
    -	       (and high-byte
    -		    (dpb high-byte (byte 8 8) (read-byte stream)))))
    -	   (read-short-length-string (stream)
    -	     (let ((length (read-short stream)))
    -	       (let ((string (make-string length)))
    -		 (dotimes (k length)
    -		   (setf (schar string k) (card8->char (read-byte stream))))
    -		 string)))
    -	   (read-short-length-vector (stream)
    -	     (let ((length (read-short stream)))
    -	       (let ((vector (make-array length :element-type '(unsigned-byte 8))))
    -		 (dotimes (k length)
    -		   (setf (aref vector k) (read-byte stream)))
    -		 vector))))
    -    ;; Original version didn't handle "localhost" correctly -- SEF.
    -    (if (string= host "localhost")
    -	(setq host (machine-instance)))
    -    (let ((pathname (authority-pathname)))
    -      (when pathname
    -	(with-open-file (stream pathname :element-type '(unsigned-byte 8)
    -				:if-does-not-exist nil)
    -	  (when stream
    -	    (let* ((host-family (ecase protocol
    -				  ((:tcp :internet nil) 0)
    -				  ;; The remaining protocols are not really supported -- SEF.
    -				  ((:dna :DECnet) 1)
    -				  ((:chaos) 2)))
    -		   (host-address (rest (host-address host host-family))))
    -	      (loop
    -	       (let ((family (read-short stream nil)))
    -		 (cond ((null family) (return (values "" ""))) ; No useful entry found. -- SEF
    -		       ((eql family 0)
    -			(let* ((address (read-short-length-vector stream))
    -			       (number (parse-integer (read-short-length-string stream)))
    -			       (auth-name (read-short-length-string stream))
    -			       (auth-data (read-short-length-vector stream)))
    -			  (when (and (= family host-family)
    -				     (equal host-address (coerce address 'list))
    -				     (= number display)
    -				     (string= auth-name "MIT-MAGIC-COOKIE-1"))
    -			    (return (values auth-name auth-data)))))
    -		       ;; This is the new case.  The cookie contains a string naming the
    -		       ;; host, then the display number, auth-name and auth-data. -- SEF
    -		       ((eql family 256)
    -			(let* ((hname (read-short-length-string stream))
    -			       (number (parse-integer (read-short-length-string stream)))
    -			       (auth-name (read-short-length-string stream))
    -			       (auth-data (read-short-length-vector stream)))
    -			  (when (and (string= hname host)
    -				(= number display)
    -				(string= auth-name "MIT-MAGIC-COOKIE-1"))
    -			    (return (values auth-name auth-data)))))))))))))))
    -

    CMUCL programming tips

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Mandelbrot Set explorer.html b/clones/lisp/www.cliki.net/Mandelbrot Set explorer.html deleted file mode 100644 index 37835e95..00000000 --- a/clones/lisp/www.cliki.net/Mandelbrot Set explorer.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Mandelbrot set explorer - - - - - - - -
    Mandelbrot set explorer
    This mathematics application was written in Common Lisp (by Edi Weitz).
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Mandelbrot set explorer.html b/clones/lisp/www.cliki.net/Mandelbrot set explorer.html deleted file mode 100644 index 37835e95..00000000 --- a/clones/lisp/www.cliki.net/Mandelbrot set explorer.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Mandelbrot set explorer - - - - - - - -
    Mandelbrot set explorer
    This mathematics application was written in Common Lisp (by Edi Weitz).
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Manuel Odendahl.html b/clones/lisp/www.cliki.net/Manuel Odendahl.html deleted file mode 100644 index c7f9b82c..00000000 --- a/clones/lisp/www.cliki.net/Manuel Odendahl.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Manuel Odendahl - - - - - - - -
    Manuel Odendahl
    Contact me at manuel-cliki@bl0rg.net. -Currently working on bknr.

    person

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Marc Battyani.html b/clones/lisp/www.cliki.net/Marc Battyani.html deleted file mode 100644 index 3eed0a5d..00000000 --- a/clones/lisp/www.cliki.net/Marc Battyani.html +++ /dev/null @@ -1,58 +0,0 @@ - - - - - CLiki: Marc Battyani - - - - - - - -
    Marc Battyani
    Marc Battyani :
    -I like so much Lisp and Electronics that I created my company (Fractal Concept) to work with Common Lisp and Electronics every day. As I'm an EE and a CS engineer, I really love to design entire systems from analog signal conditioning up to the high level software. Common Lisp is perfect for me to do the software part of these systems. (I use VHDL for the more hardware part)

    -The latest such systems being designed are a positioning system used for NDT inspection systems (and robots) and a temperature tracking system for sensitive products (vaccine, food, blood, etc.) that goes from the design of the electronic tags to the distributed web application to track them.

    -In addition to my industrial products I also work on a framework for complex web applications. It is used for banks and world wide traceability applications. I've given a talk on this framework at the ILC02. People interested can contact me for the paper. This framework uses mod_lisp which has been released as Open Source.

    -I've also released:
    -CL-PDF: An Open Source Common Lisp Library to generate PDF files.
    -cl-typesetting: An Open Source Common Lisp typesetting system.

    -You can reach me at marc.battyani@fractalconcept.com

    Marc is obviously a Person.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Marc Mertens.html b/clones/lisp/www.cliki.net/Marc Mertens.html deleted file mode 100644 index 6d88a798..00000000 --- a/clones/lisp/www.cliki.net/Marc Mertens.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Marc Mertens - - - - - - - -
    Marc Mertens
    Marc Mertens, a Person likes to do a little bit of mathematics (Topology, Henstock Integration and Manifolds) , a little bit of physics and of course some hacking in Lisp. I'm the author of Lisp Debug (a first try in writing a source level debugger for Lisp) and Jabberwocky where the debugger evolved to a Lisp IDE.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Marco Antoniotti.html b/clones/lisp/www.cliki.net/Marco Antoniotti.html deleted file mode 100644 index d25a8032..00000000 --- a/clones/lisp/www.cliki.net/Marco Antoniotti.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Marco Antoniotti - - - - - - - -
    Marco Antoniotti
    Marco Antoniotti is a researcher at NYU were he develops Bioinformatics applications using (among other things) Common Lisp. He is also a Person on CLiki.

    He is almost an old geezer who never touched a Symbolics machine (or a Xerox or a TI). However, has been fond of MCL and CMUCL.

    You can find out a little more about him at the NYU Courant Bioiformatics Group site.

    Some Common Lisp things he did include some code in the CLOCC, maintaining MK-DEFSYSTEM and ILISP.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Marco Baringer.html b/clones/lisp/www.cliki.net/Marco Baringer.html deleted file mode 100644 index aefac2a4..00000000 --- a/clones/lisp/www.cliki.net/Marco Baringer.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: Marco Baringer - - - - - - - -
    Marco Baringer
    Disclaimer: this page is written by Marco Baringer with the CL hacker hat, not Marco Baringer with the software consultant hat.

    Q&A Session with Marco Baringer

    So, who are you anyway?

    I'm a jaclh (Just Another Common Lisp Hacker). I use Common Lisp to do cool stuff.

    What really, really pisses you off about Lisp?

    There's no programming "busy work." I really hate the fact that I can't spend a day just defining classes, bean properties or other boiler plate code, or playing mine sweeper while the project re-compiles and I mindlessly click to get back to the point of the application where the bug is. Instead I'm forced to spend 95% of time actually thinking about the problem at hand and how to best deal with it. Then, and this is the kicker, once i've figured out how to deal with the problem I don't spend hours writing infrastructure code or re-inventing simple wheels, but I just write the code and I'm done. You have no idea how anti-climatic this is.

    smile, I was being funny.

    If Common Lisp was a car, what would it be?

    A Lotus Elise.

    Do you have any open source common lisp code?

    As a matter of fact I do. My personal utility package arnesi, a testing framework FiveAM, a html generating thing yaclml and the be all end all web framework ucw.

    You can find them over at common-lisp.net (the project bese and ucw.

    Are you a Person?

    No.

    Do you occasionally go by the name segv and make a rukcus on irc?

    Yes.

    What do you think about this xearth thing?

    I think it's pretty cool. I find it unsuprising, but never the less interesting, that almost all lispniks are located in Europe and the US. I was midly suprised to see more lispniks in Europe than the US.

    Red pill or Blue pill?

    I'm way too far down the rabbit hole to care.

    what font at your emacs

    I really like your emacs video, "slime.mov". -It's very useful -and I wanna know the name of font used at that video. -please tell me and sorry for my poor eng.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Marco Heisig.html b/clones/lisp/www.cliki.net/Marco Heisig.html deleted file mode 100644 index a5fbc464..00000000 --- a/clones/lisp/www.cliki.net/Marco Heisig.html +++ /dev/null @@ -1,67 +0,0 @@ - - - - - CLiki: Marco Heisig - - - - - - - -
    Marco Heisig
    Marco Heisig is a passionate programmer (and a person, for the concerns of this wiki). His current interests are high-performance computing, mathematics and compilers (but also music, food, art, vivid discussions ... ).

    Some of his projects:

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Marcus Breiing.html b/clones/lisp/www.cliki.net/Marcus Breiing.html deleted file mode 100644 index 3cbdcda8..00000000 --- a/clones/lisp/www.cliki.net/Marcus Breiing.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Marcus Breiing - - - - - - - -
    Marcus Breiing
    You can contact me here.

    Of the programming languages I use, CL is currently the one I enjoy using most, probably because of its support for linguistic abstraction.

    2005-01-10: While setting up a news spool, I had the idea of feeding it a complete comp.lang.lisp archive. I have found some partial downloadable archives, but I wonder if there's a way to get a complete archive short of spidering groups.google.com? If you know of one, please let me know.

    2004-01-12: So far, I found the old files from the AI repository and a few MB from someone who actually did spider Google groups (up to ca 2000)...

    Born out of the slightly silly idea that CL's C[AD]+R functions would make for a funny variation on the popular "tiny" url theme, I hacked together LispURL.com on a long winter evening between Christmas and New Year's Eve 2004, using CMUCL 19a, Araneida 0.9 and "yet another HTML generating macro". (If you want to give it a try, the best way is to bookmark the bookmarklet.)

    I live in Cologne, Germany.


    -Category: Person
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Mark .html b/clones/lisp/www.cliki.net/Mark .html deleted file mode 100644 index c0739ceb..00000000 --- a/clones/lisp/www.cliki.net/Mark .html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Mark <evenson.not.org@gmail.com> - - - - - - - -
    Mark
    Describe Mark here

    Mark Evenson is interested in Common Lisp on Java.

    person

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Mark Carter.html b/clones/lisp/www.cliki.net/Mark Carter.html deleted file mode 100644 index 2d648e5e..00000000 --- a/clones/lisp/www.cliki.net/Mark Carter.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Mark Carter - - - - - - - -
    Mark Carter
    Programmer in Scotland. I rarely use Lisp, but it holds a certain fascination with me.

    Website

    Category: Person

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Mark Davidson.html b/clones/lisp/www.cliki.net/Mark Davidson.html deleted file mode 100644 index f5b76722..00000000 --- a/clones/lisp/www.cliki.net/Mark Davidson.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Mark Davidson - - - - - - - -
    Mark Davidson
    I have been working with these infernal machines for over 22 years, and have dabbled with Lisp over time... so I still consider myself a newbie. :)

    I run CMU CL on my Ubuntu box with Emacs and SLIME, and OpenMCL on my Mac OS X laptop with Emacs and SLIME. I also happen to be the proud owner of a Symbolics 3620.

    During the day, I'm a Java developer for a small company in Silicon Valley.

    I can be reached via medavidson (at) mac (dot) com


    -Emacs Hemlock Java Slime
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Mark Karpov.html b/clones/lisp/www.cliki.net/Mark Karpov.html deleted file mode 100644 index 9428a185..00000000 --- a/clones/lisp/www.cliki.net/Mark Karpov.html +++ /dev/null @@ -1,68 +0,0 @@ - - - - - CLiki: Mark Karpov - - - - - - - -
    Mark Karpov
    My name is Mark Karpov and I feel like a person today, if you want -to know. Anytime you find a problem with my hacks, please -contact me (open issue on GitHub, or use my email that you can find on -GitHub). I hack various things, and some of them in Common -Lisp.

    I maintain the following libraries:


    Relevant topics: person

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Mark Simpson.html b/clones/lisp/www.cliki.net/Mark Simpson.html deleted file mode 100644 index f01f9b7e..00000000 --- a/clones/lisp/www.cliki.net/Mark Simpson.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Mark Simpson - - - - - - - -
    Mark Simpson
    Mark Simpson is a Person who is a Sofware Engineer. Unfortunately his 'real job' does not use Lisp. However he is starting to use it in his personal projects. He has a homepage which includes a page specifically about his personal projects. -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/MarkCarter.html b/clones/lisp/www.cliki.net/MarkCarter.html deleted file mode 100644 index dc019418..00000000 --- a/clones/lisp/www.cliki.net/MarkCarter.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: MarkCarter - - - - - - - -
    MarkCarter
    Describe MarkCarter here

    -I'm a Lisp newbie. Thr root of my Lisp page is at http://www.markcarter.me.uk/computing/lisp/lisp.htm

    -


    -Person
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/MarkHoemmen.html b/clones/lisp/www.cliki.net/MarkHoemmen.html deleted file mode 100644 index f4401db0..00000000 --- a/clones/lisp/www.cliki.net/MarkHoemmen.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: MarkHoemmen - - - - - - - -
    MarkHoemmen
    MarkHoemmen is a Person who is currently a PhD candidate at the University of California Berkeley. He is interested in numerical linear algebra and parallel computing. His thesis work is on rearranging algorithms on parallel machines to avoid communication. -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Markup.html b/clones/lisp/www.cliki.net/Markup.html deleted file mode 100644 index c995dc95..00000000 --- a/clones/lisp/www.cliki.net/Markup.html +++ /dev/null @@ -1,68 +0,0 @@ - - - - - CLiki: Markup - - - - - - - -
    Markup
    Markup is an HTML generator, where instead of encoding HTML as lisp sexps, you can write HTML directly in lisp code. This allows for copy pasting templates and snippets and working with external developers, while still giving you all the power of Lisp.

    This works by constructing a DOM tree before serializing, so it still gives all the correctness that libraries like CL-WHO provide.

    Here's a complete example:

    (markup:enable-reader) - -(markup:deftag template (children &key title) - <html> - <head> - <title>,(progn title)</title> - </head> - <body> - ,@children - </body> - </html>) - -(hunchentoot:define-easy-handler (foobar :uri "/") () - (markup:write-xml - <template title="Hello" > - <h1>hello world!</h1> - </template>))

    Depends on: str, alexandria, named-readtables, trivial-gray-streams

    Repository: https://github.com/moderninterpreters/markup

    License: Apache 2


    -HTML Generator
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Markus Fix.html b/clones/lisp/www.cliki.net/Markus Fix.html deleted file mode 100644 index 3932e247..00000000 --- a/clones/lisp/www.cliki.net/Markus Fix.html +++ /dev/null @@ -1,67 +0,0 @@ - - - - - CLiki: Markus Fix - - - - - - - -
    Markus Fix
    Markus Fix, an instance of class Person, grew up in Africa. He studied physics, mathematics and ethnology in Germany. Never inspired to do any of the usual degrees he used to teach computer science and networks at the Institute for New Media in Frankfurt, Germany.

    Influences on his real education are (in no apparent order):

      -
    • An old programmer recruiting him to help out at the local university computer center near his hometown at the age of 14. -
    • -
    • An old Tibetan monk inviting him to stay in a monastery in Tibet at the age of 21. -
    • -
    • The book "Illuminatus" at the age of 23. -
    • -
    • Aleister Crowley with his writings on meditation and yoga at the age of 23. -
    • -
    • Prof. Otto E. Roessler and his lectures on endophysics. Thank you Otto! -
    • -
    • K. Eric Drexler and his book "Engines of Creation". -
    • -
    • And of course the experiences he made backpacking through the world. -
    • -
    -

    I was introduced to Lisp while reading "Gödel, Escher, Bach" by Douglas R. Hofstadter at age 14.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Martin Atzmueller.html b/clones/lisp/www.cliki.net/Martin Atzmueller.html deleted file mode 100644 index 2f398959..00000000 --- a/clones/lisp/www.cliki.net/Martin Atzmueller.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: Martin Atzmueller - - - - - - - -
    Martin Atzmueller
    Martin Atzmueller is a Person. Since he likes hacking in Lisp, he's probably a Lisp hacker. -
    He's also a developer on project ILISP, as well as a contributor to project SBCL.
    -
    -His lisp projects include NET SBCL SOCKETS, a sockets library for SBCL.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Martin Dengler.html b/clones/lisp/www.cliki.net/Martin Dengler.html deleted file mode 100644 index e8d39e4f..00000000 --- a/clones/lisp/www.cliki.net/Martin Dengler.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: Martin Dengler - - - - - - - -
    Martin Dengler
    Martin Dengler is a python programmer in London.

    -


    -Person
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/MartySchrader.html b/clones/lisp/www.cliki.net/MartySchrader.html deleted file mode 100644 index b01b171f..00000000 --- a/clones/lisp/www.cliki.net/MartySchrader.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: MartySchrader - - - - - - - -
    MartySchrader
    Just a curious visitor.

    person

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Mason Smith.html b/clones/lisp/www.cliki.net/Mason Smith.html deleted file mode 100644 index b3563894..00000000 --- a/clones/lisp/www.cliki.net/Mason Smith.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Mason Smith - - - - - - - -
    Mason Smith
    I, Mason Smith, am a person. My homepage is masonium.com, though it is currently pretty sparse. I am currently developing/maintaining cl-fann.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Massimiliano Campagnoli.html b/clones/lisp/www.cliki.net/Massimiliano Campagnoli.html deleted file mode 100644 index 08810d4a..00000000 --- a/clones/lisp/www.cliki.net/Massimiliano Campagnoli.html +++ /dev/null @@ -1,58 +0,0 @@ - - - - - CLiki: Massimiliano Campagnoli - - - - - - - -
    Massimiliano Campagnoli
    I am currently re-implementing in Lisp the C++ ERP application used in the company I work for.
    Lisp is our "Secret Weapon" since it allows us to reduce developement time by a factor of five when compared to C++ and implement new features on the fly without having to wait for boring nightly build or to waste time in debugging hidden memory leaks due to dangling pointers.
    -Since we opted for a browser based interface the GUI API was not an issue anymore and we were free to use the best server side language available.
    After some attempts with PHP/Pyton/Java Common Lisp was our choice for these reasons:
    -1) Good relational database support ( see CLSQL )
    -2) Speed ( easily outperfomed PHP/Python/Java)
    -3) No more edit-compile-link-debug cycle
    -4) CLOS ( try to use C++ template and then move to CLOS generic methods. Do you feel better ?)
    -5) Excellent for modelling bussiness rules and business objects (the job-shop scheduler was a nightmare of spagetti code when modeled with C++ classes).


    -person
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/MatLisp.html b/clones/lisp/www.cliki.net/MatLisp.html deleted file mode 100644 index 6396cba0..00000000 --- a/clones/lisp/www.cliki.net/MatLisp.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: MatLisp - - - - - - - -
    MatLisp
    A BLAS and LAPACK linear algebra library wrapper which makes their features accessible through a set of CLOS classes.

    The system currently[when?] runs under CMUCL and SBCL, and it will be ported to CLISP as soon as some issues related to C compatible specialized arrays are dealt with.

    The MatLisp matrix library was originally developed by Raymond Toy and Tunc Simsek, and officially announced in April 2000. It is now[when?] maintained by Tunc Simsek.

    Some of MarkHoemmen's ideas about a second generation implementation. — unclear standalone sentence. (ed.)

    Homepage: GitHub, SourceForge.

    License: PostgreSQL License

    See also: GSLL, FEMLISP, NLISP for linear algebra in Lisp; spartns for tensors represented by sparse arrays.


    -Topics: mathematics
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Mathematics.html b/clones/lisp/www.cliki.net/Mathematics.html deleted file mode 100644 index e72b91dc..00000000 --- a/clones/lisp/www.cliki.net/Mathematics.html +++ /dev/null @@ -1,428 +0,0 @@ - - - - - CLiki: Mathematics - - - - - - - -
    Mathematics
    Mathematics Library and Application packages

      -
    • -Antik - - A library for computational mathematics, science, and engineering -
    • -
    • -axiom - - Axiom is a general purpose Computer Algebra application -
    • -
    • -Bordeaux-FFT - - Bordeaux-FFT is a fast, pure-Lisp implementation of Fast Fourier Transforms -
    • -
    • -cl-ana - - cl-ana aims to provide the basic tools necessary to analyze large/medium-large datasets -
    • -
    • -cl-buchberger - - cl-buchberger is a Common Lisp implementation of Buchberger's algorithm for the computation of Gröbner bases -
    • -
    • -cl-factoradic - - cl-factoradic is a Mathematics/Combinatorics library that implements calculation and iteration of permutations based on the factoradic numbers system -
    • -
    • -cl-fftw3 - - cl-fftw3 provides a CFFI interface for Common Lisp programs to use the FFTW3 Fourier transform library -
    • -
    • -cl-geometry - - cl-geometry is a Common Lisp package for simple two dimensional computational geometry -
    • -
    • -cl-graph - - CL-Graph is a set of Common Lisp utilities for manipulating graphs -
    • -
    • -cl-gsl - - cl-gsl provides bindings to the GNU Scientific Library (GSL) of mathematics routines -
    • -
    • -cl-jointgen - - CL-JOINTGEN is a Common Lisp implementation of the Joint Generation Algorithm for computing the dual of a monotone boolean function -
    • -
    • -cl-mathstats - - CL-MathStats is a set of miscellaneous Common Lisp mathematics and statistics utilities -
    • -
    • -CL-NUM-UTILS - - Simple numerical functions, including intervals, Chebyshev polynomials and univariate rootfinding -
    • -
    • -cl-permutation - - CL-PERMUTATION is a Mathematics library for doing permutation and permutation group calculations written by Robert Smith -
    • -
    • -cl-rmath - - [unmaintained, maintainers welcome] A simple, autogenerated foreign interface for the standalone R API -
    • -
    • -cl-satwrap - - A thin generic SAT (propositional satisfiability problem) solver interface to your favorite “industrial-strength” SAT solver -
    • -
    • -CLLIB - - CLLIB is a varied collection of Common lisp tools and routines in CLOCC -
    • -
    • -clmath - - CLMATH is a modern re-packaging of an old Common Lisp scientific library by Gerald Roylance -
    • -
    • -COMPUTABLE-REALS - - COMPUTABLE-REALS is a Mathematics library for dealing with arbitrary precision reals -
    • -
    • -Decimals - - A decimal number parser and formatting package for Common Lisp -
    • -
    • -embeddable-maxima - - embeddable-maxima is the fork of Maxima CAS to make it embeddable into common lisp application -
    • -
    • -Factorial - - The Factorial of n is the product of all the integers between 1 -
    • -
    • -FEMLISP - - FEMLISP is a Mathematics Application which solves partial differential equations with the help of the finite element method (FEM) -
    • -
    • -FFT - - A Common Lisp library to do Fast Fourier Transform on a multi-dimensional array of numbers -
    • -
    • -Fibonacci - - The Fibonacci sequence of numbers was described in a mathematics book by Leonardo da Pisa (Fibonacci) called Liber Abaci -
    • -
    • -float-features - - float-features is a portability library for IEEE float features that are not covered by the CL standard -
    • -
    • -floating-point - - Floating-point is a Common Lisp library with functions for calculating -
    • -
    • -Forward Discrete Cosine Transform - - forward-dct! is a function implementing forward Discrete Cosine Transform, as used in JPEG -
    • -
    • -graph-utils - - graph-utils: graph analysis utilities for Common Lisp -
    • -
    • -GSLL - - GNU Scientific Library for Lisp allows you to use the GNU Scientific Library (GSL) from Common Lisp -
    • -
    • -IMPS - - IMPS is an Interactive Mathematical Proof System developed by W -
    • -
    • -Integrate - - Integrate is a package to aid in solving differential equations, currently slightly limited in scope -
    • -
    • -LispLab - - The main purpose of Lisplab is to to integrate all kinds of mathematics capabilities into one framework -
    • -
    • -Mandelbrot set explorer - - This mathematics application was written in Common Lisp (by Edi Weitz) -
    • -
    • -MatLisp - - A BLAS and LAPACK linear algebra library wrapper which makes their features accessible through a set of CLOS classes -
    • -
    • -Maxima - - Maxima is a GPL'd Common Lisp mathematics application for computer based algebra (an implementation of MIT's Macsyma system) -
    • -
    • -maxima-json-rpc - - maxima-json-rpc is http post json-rpc server for embeddable-maxima -
    • -
    • -micmac - - Common Lisp Mathematics library by Gabor Melis that implements alpha-beta, beam search, UCT and Metropolis-Hastings MCMC -
    • -
    • -Mitch's LISP Mathematical Library - - Large Mathematics library by Mitch Richling: numerical analysis, dynamical systems, symbolic algebra, combinatorial enumeration and counting algorithms, computational group theory, probabilistic modeling and simulation -
    • -
    • -Nuprl - - The Nuprl system, based on the type theory of Martin-Löf, is a system for manipulating proofs -
    • -
    • -Oct - - Lisp implementation of quad-double floats -
    • -
    • -patxi-2 - - PatXi-2 is a library for doing numerical computations in Common Lisp -
    • -
    • -plot-2d - - Plot-2D is a 2-dimensional data representation and plotting application for Mathematics and scientific data -
    • -
    • -plotting - - Library and Application packages to produce 2D and 3D plots -
    • -
    • -primecount - - Sublinear (in time and space) counting and summing of integer primes using optimized sieving method -
    • -
    • -PRL - - The Proof (or Program) Refinement Logic program, led by Robert Constable of Cornell -
    • -
    • -Quantile estimator - - Biased Quantiles over Data Streams -
    • -
    • -ratmath - - Utilities for Rational Numbers in Common Lisp (rational approximations and interval arithmetic) -
    • -
    • -SimLab - - SimLab Is a scientific simulation and analysis tool that uses the weyl computer algebra system -
    • -
    • -TPS - - TPS, standing for Theorem Proving System, is a theorem prover for first-order logic and type theory -
    • -
    • -ulimyhmpqs - - ulimyhmpqs is an implementation of the Hypercube Multiple Polynomial Quadratic Sieve (HMPQS), an algorithm for the factorisation of large (up to about 110 digits, where the Number Field Sieve (NFS) algorithms become more efficient) integers -
    • -
    • -Weyl - - A computer algebra substrate for Common Lisp -
    • -
    • -wu-decimal - - Wu-Decimal is a decimal number package developed by Wukix -
    • -

    Linear algebra: (main topic: linear algebra) -

      -
    • -3d-matrices - - This is a library implementing common matrix operations, mainly intended as the counterpiece to 3d-vectors and thus being aimed at operations in 3D space -
    • -
    • -3d-vectors - - This is a simple library for 3D vectors -
    • -
    • -april - - A subset of APL (A Programming Language) compiling to Common Lisp -
    • -
    • -cl-blapack - - A wrapper around the Fortran BLAS and LAPACK libraries for dense linear algebra -
    • -
    • -cl-clsparse - - Common Lisp bindings for clSPARSE -
    • -
    • -cl-octave - - An FFI to the Octave linear algebra language (CMUCL-only) -
    • -
    • -cl-tuples - - cl-tuples is a library for writing optimised vector math -
    • -
    • -clem - - A library for representing and performing various operations on matrices -
    • -
    • -CLLIB - - CLLIB is a varied collection of Common lisp tools and routines in CLOCC -
    • -
    • -FSVD - - FSVD is a Common Lisp implementation of Simon Funk's quasi SVD as described at http://sifter.org/~simon/journal/20061211.html in the context of its application to the netflix prize -
    • -
    • -GSLL - - GNU Scientific Library for Lisp allows you to use the GNU Scientific Library (GSL) from Common Lisp -
    • -
    • -l-math - - L-MATH is a library for simple linear algebra in geometric applications -
    • -
    • -Linear-algebra - - Linear-algebra is a Common Lisp library of numeric linear algebra routines -
    • -
    • -lisp-matrix - - A matrix linear algebra library for common lisp building on work by Mark Hoemmen, Evan Monroig, Tamas Papp and Rif -
    • -
    • -LispLab - - The main purpose of Lisplab is to to integrate all kinds of mathematics capabilities into one framework -
    • -
    • -LLA - - [unmaintained, maintainers welcome] “Lisp Linear Algebra”, LLA for short, aims to provide convenient and fast matrix operations by binding to LAPACK -
    • -
    • -magicl - - Matrix Algebra proGrams In Common Lisp: numerical linear algebra routines with auto-generated bindings to BLAS, LAPACK and Expokit -
    • -
    • -MatLisp - - A BLAS and LAPACK linear algebra library wrapper which makes their features accessible through a set of CLOS classes -
    • -
    • -MGL-MAT - - MAT is a linear algebra library for working with multi-dimensional arrays which supports efficient interfacing to foreign and CUDA code -
    • -
    • -NLISP - - NLISP is an environment for numerical computation and visualisation like IDL or Matlab -
    • -
    • -sb-cga - - SB-CGA is a computer graphics algebra library for Common Lisp -
    • -
    • -Sheafhom - - Sheafhom is a package by Mark McConnell for large sparse linear algebra computations over the integers and other exact number types -
    • -
    • -spartns - - Spartns is a SPARse TeNSor representation library -
    • -

    Statistics: (main topic: statistics) -

      -
    • -cl-ana - - cl-ana aims to provide the basic tools necessary to analyze large/medium-large datasets -
    • -
    • -cl-mathstats - - CL-MathStats is a set of miscellaneous Common Lisp mathematics and statistics utilities -
    • -
    • -cl-randist - - This package is a manual translation from C to common lisp of some random number generation functions of GSL library -
    • -
    • -cl-random - - [unmaintained, maintainers welcome] A library for uni- and multivariate probability distributions and statistics functions -
    • -
    • -CLLIB - - CLLIB is a varied collection of Common lisp tools and routines in CLOCC -
    • -
    • -common-lisp-stat - - Common Lisp Statistics -- based on LispStat but updated for Common Lisp and incorporating lessons from R -
    • -
    • -Mersenne Twister - - The Mersenne Twister is a pseudorandom number generation algorithm created by Makoto Matsumoto -
    • -
    • -py-random - - A translation of the random module in the Python standard library -
    • -
    • -RCL - - RCL is an FFI to communicate with the R statistics environment -
    • -
    • -rclg - - An R (statistics programming language) FFI for Common Lisp -
    • -
    • -sapaclisp - - sapaclisp is a collection of Common Lisp functions for spectral analysis -
    • -
    • -SimpSamp - - SimpSamp is a statistics library for simple random sampling without replacement -
    • -
    • -Stats - - Stats by Larry Hunter is a statistics library -
    • -

    Other stuff: -

      -
    • -RCL is a library for interfacing Common Lisp with the R environment using CFFI. (October 7 2007) rukubites: RCL doesn't work in SBCL, and requires some small modifications in alien-defs.lisp to accomodate CFFI API changes for defcvar.
    • -
    • -RCLG is an unfinished R interface that works for sbcl but not clisp (as of git version October 7 2007). It seems to have a similar interface as RCL.
    • -
    • -FriCAS is a fork of the Axiom computer algebra system.
    • -
    • -cl-ana is Common Lisp data analysis library.
    • -
    • -Kenzo is a program for doing computational algebraic topology. -
    • -
    • -CommonLispStat (see also GitHub location), is a port/rewrite/re-intentioning of XLispStat to Common Lisp. The goal is to develop an "R like" set of packages which deliver additional functionality to Common Lisp for applied statistical data analysis. -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Matt Revelle.html b/clones/lisp/www.cliki.net/Matt Revelle.html deleted file mode 100644 index 9bd23c73..00000000 --- a/clones/lisp/www.cliki.net/Matt Revelle.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Matt Revelle - - - - - - - -
    Matt Revelle
    Matt Revelle is a Person.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Matt Sottile.html b/clones/lisp/www.cliki.net/Matt Sottile.html deleted file mode 100644 index c417c62a..00000000 --- a/clones/lisp/www.cliki.net/Matt Sottile.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Matt Sottile - - - - - - - -
    Matt Sottile
    Matt Sottile is computer geek at the Los Alamos Natl. Lab, Advanced Computing Lab.

    person

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Matthew Danish.html b/clones/lisp/www.cliki.net/Matthew Danish.html deleted file mode 100644 index d5265510..00000000 --- a/clones/lisp/www.cliki.net/Matthew Danish.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Matthew Danish - - - - - - - -
    Matthew Danish
    Still thinks he is a Person, despite graduating Carnegie-Mellon University with a Logic and Computation degree.

    OpenPGP public key fingerprint: A3C6 93AF 5805 F46B 67D5 96B2 CF15 3232 C24B 6010

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Matthew Kennedy.html b/clones/lisp/www.cliki.net/Matthew Kennedy.html deleted file mode 100644 index acb59bfd..00000000 --- a/clones/lisp/www.cliki.net/Matthew Kennedy.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Matthew Kennedy - - - - - - - -
    Matthew Kennedy
    Matthew Kennedy did the initial port of the Common Lisp Controller from Debian to Gentoo GNU/Linux and ported most of the Debian Common Lisp packages to it. Since January 2007, he's no longer a maintainer and no longer affiliated with the Gentoo project.

    Currently working on Lispy.

    person

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/MatthewAstley.html b/clones/lisp/www.cliki.net/MatthewAstley.html deleted file mode 100644 index f72284ec..00000000 --- a/clones/lisp/www.cliki.net/MatthewAstley.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: MatthewAstley - - - - - - - -
    MatthewAstley
    Matthew is a Person who flew in from WardsWiki, Wiki:MatthewAstley.

    This will explain the CamelCase words. I will try to use them only for pointing back at c2.

    I also have a normal web site, for small values of normal.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Matthias Koeppe.html b/clones/lisp/www.cliki.net/Matthias Koeppe.html deleted file mode 100644 index ae721eae..00000000 --- a/clones/lisp/www.cliki.net/Matthias Koeppe.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Matthias Koeppe - - - - - - - -
    Matthias Koeppe
    Matthias Koeppe is a Person.

    I have written CL-BibTeX, a replacement for the BibTeX system, including a compiler that translates BibTeX style files to CL.

    I am a co-maintainer of SWIG, an interface generator for embedding C and C++ libraries into many other languages.

    Matthias Koeppe's homepage. -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Max Mouratov.html b/clones/lisp/www.cliki.net/Max Mouratov.html deleted file mode 100644 index c06f9af2..00000000 --- a/clones/lisp/www.cliki.net/Max Mouratov.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Max Mouratov - - - - - - - -
    Max Mouratov
    A Person interested in Lisp.

    (@ :name mmouratov :domain gmail.com)

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Max Rottenkolber.html b/clones/lisp/www.cliki.net/Max Rottenkolber.html deleted file mode 100644 index 5ebbf63d..00000000 --- a/clones/lisp/www.cliki.net/Max Rottenkolber.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Max Rottenkolber - - - - - - - -
    Max Rottenkolber
    I am a software engineer located in Bonn. I work as a freelance consultant and you can hire me. My personal website is here.

    I develop and/or maintain various open source software including macro-html, bytes, riff-wave, soundlab, microlisp, cl-qprint, texp, mpc and net-telent-date.

    Topics

    -person
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Max-Gerd Retzlaff.html b/clones/lisp/www.cliki.net/Max-Gerd Retzlaff.html deleted file mode 100644 index 137ad79a..00000000 --- a/clones/lisp/www.cliki.net/Max-Gerd Retzlaff.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Max-Gerd Retzlaff - - - - - - - -
    Max-Gerd Retzlaff
    Max-Gerd Retzlaff is listed as a Person. You can contact him via <m.retzlaff@gmx.net> or <mgr@bl0rg.net>. (His GPG-key can be found at wwwkeys.de.pgp.net.)

    Some projects are documented on his homepage at http://bl0rg.net/~mgr or alternatively at http://team.vantronix.net/~mgr, and recently I started a weblog at http://blogs.bl0rg.net/mgr.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/MaxPC.html b/clones/lisp/www.cliki.net/MaxPC.html deleted file mode 100644 index 7acaaf91..00000000 --- a/clones/lisp/www.cliki.net/MaxPC.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: MaxPC - - - - - - - -
    MaxPC
    Max’s Parser Combinators is a simple and pragmatic library for writing parsers and lexers based on combinatory parsing. MaxPC is capable of parsing deterministic, context-free languages, provides powerful tools for parse tree transformation and error handling, and can operate on sequences and streams.

    Repository: https://github.com/eugeneia/maxpc

    License: AGPL


    -parser generator
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Maxima.html b/clones/lisp/www.cliki.net/Maxima.html deleted file mode 100644 index bbeeb42a..00000000 --- a/clones/lisp/www.cliki.net/Maxima.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Maxima - - - - - - - -
    Maxima
    Maxima is a GPL'd Common Lisp mathematics application for computer based algebra (an implementation of MIT's Macsyma system). Until recently, it was maintained by William Schelter at http://www.ma.utexas.edu/maxima.html . He passed away in 2001 and since then a group of developers co-ordinated around http://maxima.sourceforge.net -have been working on it.

    How to Install Maxima shows how you can build Maxima with CLISP and also demonstrates how to make Maxima use geomview, rendering amazing graphics via MesaGL. Also, how to set up TeXmacs with it.

    Maxima can also be used from Common Lisp programs as a library. See the section Lisp and Maxima in the Maxima manual for more information.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/McCLIM Listener.html b/clones/lisp/www.cliki.net/McCLIM Listener.html deleted file mode 100644 index a99da449..00000000 --- a/clones/lisp/www.cliki.net/McCLIM Listener.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: McCLIM Listener - - - - - - - -
    McCLIM Listener
    The McCLIM Listener is an Application / Development tool that is part of McCLIM.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/McCLIM.html b/clones/lisp/www.cliki.net/McCLIM.html deleted file mode 100644 index 12d7dc6b..00000000 --- a/clones/lisp/www.cliki.net/McCLIM.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - CLiki: McCLIM - - - - - - - -
    McCLIM
    McCLIM is Mike McDonald's Free and portable implementation of CLIM, the Common Lisp ueber-GUI toolkit.

    The current release is 0.9.7 (Imbolc), released 2018-02-16. Using Quicklisp is a preferred way to run McCLIM.

    The project page for McCLIM contains information about the mailing lists, code repository, and development.

    -(ql:quickload 'mcclim)
    -(ql:quickload 'clim-examples)
    -(clim-demo:demodemo)
    -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/McClim.html b/clones/lisp/www.cliki.net/McClim.html deleted file mode 100644 index 12d7dc6b..00000000 --- a/clones/lisp/www.cliki.net/McClim.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - CLiki: McCLIM - - - - - - - -
    McCLIM
    McCLIM is Mike McDonald's Free and portable implementation of CLIM, the Common Lisp ueber-GUI toolkit.

    The current release is 0.9.7 (Imbolc), released 2018-02-16. Using Quicklisp is a preferred way to run McCLIM.

    The project page for McCLIM contains information about the mailing lists, code repository, and development.

    -(ql:quickload 'mcclim)
    -(ql:quickload 'clim-examples)
    -(clim-demo:demodemo)
    -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/McPixel.html b/clones/lisp/www.cliki.net/McPixel.html deleted file mode 100644 index bde03207..00000000 --- a/clones/lisp/www.cliki.net/McPixel.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: McPixel - - - - - - - -
    McPixel
    McPixel is a McCLIM pixel art editor application.

    Homepage: https://github.com/ahefner/McPixel

    License: MIT

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Measures.html b/clones/lisp/www.cliki.net/Measures.html deleted file mode 100644 index 0b286626..00000000 --- a/clones/lisp/www.cliki.net/Measures.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: Measures - - - - - - - -
    Measures
    The Measures Package provides dimensioned numbers (i.e. numbers with dimensional units, short: dim-numbers) for Common Lisp.

    The software was originally written by Roman Cunis, Hamburg, Germany and then -maintained by Ralf Möller. See MEASURES in the CMU AI Repository.

    This version is taken from LOOM, which has various extensions -and defines many dimensional units.

    License: Loom® Public License

    Usage: measures-usage.text


    -science
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Mersenne Twister.html b/clones/lisp/www.cliki.net/Mersenne Twister.html deleted file mode 100644 index d2644b15..00000000 --- a/clones/lisp/www.cliki.net/Mersenne Twister.html +++ /dev/null @@ -1,62 +0,0 @@ - - - - - CLiki: Mersenne Twister - - - - - - - -
    Mersenne Twister
    The Mersenne Twister is a pseudorandom number generation algorithm created by Makoto Matsumoto. There is a Mersenne Twister home page, and a Wikipedia entry. The Mersenne Twister algorithm has a large period (something like 219,937 - 1), and it is advertised as fast. There are two main portable implementations:

    -
    -statistics
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Messaging.html b/clones/lisp/www.cliki.net/Messaging.html deleted file mode 100644 index dd721496..00000000 --- a/clones/lisp/www.cliki.net/Messaging.html +++ /dev/null @@ -1,88 +0,0 @@ - - - - - CLiki: messaging - - - - - - - -
    messaging
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Meta-CVS.html b/clones/lisp/www.cliki.net/Meta-CVS.html deleted file mode 100644 index 750e58da..00000000 --- a/clones/lisp/www.cliki.net/Meta-CVS.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Meta-CVS - - - - - - - -
    Meta-CVS
    Meta-CVS builds a more capable version control system around CVS. Its primary improvement over CVS is directory structure versioning, but it has also acquired easier branching with automated merge tracking, and smarter handling of file types, versioning of symbolic links, execute permissions and in fact arbitrary property lists, and much better support for tracking third party sources.

    Meta-CVS uses CVS without any modifications, as a separate process, and is written in Lisp. This is important because CVS is fragile code that has been debugged for well over a decade. The avoidance of modification to CVS and use of Lisp means that Meta-CVS is very stable. The decoupling also means that there is not only fault isolation between Meta-CVS and CVS, but installations of the two can be independently upgraded. Specific version of Meta-CVS don't target any specific versions of CVS. It has been tested with various 1.10 and 1.11 versions of CVS.

    Thanks in large part to the Lisp programming language, Meta-CVS was developed rapidly. Within three weeks of development it was already used for versioning its own sources, and files were already being renamed. This happened before the software was even packaged as a command line utility; it was a set of functions loaded into a Lisp session, and invoked interactively through the read-eval-print-loop.

    Meta-CVS has effectively offloaded a whole bunch of thorny problems from the CVS project's consideration, which can focus on the remaining architectural and performance issues. Whereas support for renaming and symbolic links can be done in a separate layer, fast tagging and atomic transactions can only be provided within CVS.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Meta.html b/clones/lisp/www.cliki.net/Meta.html deleted file mode 100644 index 2178285a..00000000 --- a/clones/lisp/www.cliki.net/Meta.html +++ /dev/null @@ -1,57 +0,0 @@ - - - - - CLiki: Meta - - - - - - - -
    Meta
    A recursive-descent parser DSL that is a simpler alternative to parser generators. Described by Henry Baker: -Pragmatic Parsing in Common Lisp; or, putting defmacro on steroids (ACM Lisp Pointers, vol. IV, no. 2, April--June 1991, pp. 3--15, DOI 10.1145/121983.121984). A few dozen lines of code in Common Lisp.

    The scheme involves building a tiny language, called Meta, on top of Lisp. Whereas it does not handle all possible regular and context-free grammars, it can be used for a surprisingly large fraction of the grammars Lisp programmers encounter.

    I think the family of grammars that Meta handles is usually called LL(1) as opposed to LL(k) which some other recursive descent parser generators support. -A. Kjeldaas. -Actually the look-ahead limitation to one character is an artifact of using CL streams. The same technique and software can be used with sexprs and strings (and could be used with your own buffering streams if you dared) to provide unlimited look-ahead. -Fare Rideau -I also believe that the languages Meta can parse can also be generated by Regular Tree Grammars: a formalism that under-pins xml schema languages like Relax-NG. -M. Swank

    A simple practical package that uses Meta is Scribble, which you may take as an example.

    meta source code is at: - https://gitlab.common-lisp.net/frideau/meta

    mel-base contains a modified version of cl-meta which uses sexprs instead -of the reader. Huh? Baker's META works equally well on objects of type STREAM, STRING or LIST. cl-meta features access to these 3 via WITH-STRING-META, WITH-STREAM-META, WITH-LIST-META: lexical scoping is the solution, via MACROLET and/or LABELS. -Jörg Höhle Also, meta-sexp package is yet another META parser generator using s-expressions.


    -s-exp syntax
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Metatilities.html b/clones/lisp/www.cliki.net/Metatilities.html deleted file mode 100644 index 8625f875..00000000 --- a/clones/lisp/www.cliki.net/Metatilities.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: metatilities - - - - - - - -
    metatilities
    Everyone needs their own set of utilities… These are Gary King's.

    Project: https://common-lisp.net/project/metatilities/

    Repository: https://github.com/gwkkwg/metatilities

    License: MIT

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Metering.html b/clones/lisp/www.cliki.net/Metering.html deleted file mode 100644 index e7072ece..00000000 --- a/clones/lisp/www.cliki.net/Metering.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: metering - - - - - - - -
    metering
    The Metering System is a portable Common Lisp code profiling tool. It gathers timing and consing statistics for specified functions while a program is running.

    Repository: https://gitlab.common-lisp.net/dkochmanski/metering

    License: Public Domain

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Michael Bobak.html b/clones/lisp/www.cliki.net/Michael Bobak.html deleted file mode 100644 index 5f99d2bd..00000000 --- a/clones/lisp/www.cliki.net/Michael Bobak.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Michael Bobak - - - - - - - -
    Michael Bobak
    Michael is Person interested in AI etc.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Michael Wolber.html b/clones/lisp/www.cliki.net/Michael Wolber.html deleted file mode 100644 index 30906f48..00000000 --- a/clones/lisp/www.cliki.net/Michael Wolber.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Michael Wolber - - - - - - - -
    Michael Wolber
    Worked for quite some years with Common Lisp in the nineties (MCL and ACL) and discovered SBCL just recently.

    During the past >10 years spent with Java and assorted stuff to make a living, I used to say "Lisp is my native (programming) tongue". Just for fun I got back and once more I'm impressed and it's fun again!

    You may want to take a look at cl-marshal.


    -Person
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Mike Maul.html b/clones/lisp/www.cliki.net/Mike Maul.html deleted file mode 100644 index 3b16b185..00000000 --- a/clones/lisp/www.cliki.net/Mike Maul.html +++ /dev/null @@ -1,69 +0,0 @@ - - - - - CLiki: Mike Maul - - - - - - - -
    Mike Maul
    Mike Maul is a Person, located in North Carolina who:

      -Areas of interest are: -
    • Functional Languages
    • -
    • Networking
    • -
    • Cyber-Security
    • -

    You can contact him at: - - - - - - - -
    mike.maul@gmail.com

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Mike Shaver.html b/clones/lisp/www.cliki.net/Mike Shaver.html deleted file mode 100644 index cdfe4e6c..00000000 --- a/clones/lisp/www.cliki.net/Mike Shaver.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Mike Shaver - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Misc-Extensions.html b/clones/lisp/www.cliki.net/Misc-Extensions.html deleted file mode 100644 index 62dfbcc9..00000000 --- a/clones/lisp/www.cliki.net/Misc-Extensions.html +++ /dev/null @@ -1,80 +0,0 @@ - - - - - CLiki: Misc-Extensions - - - - - - - -
    Misc-Extensions
    A convenience library containing a motley collection of macros and other extensions.

    Misc-Extensions is intended as a catchall for small, general-purpose extensions to Common Lisp, typically macros. It is in the public domain. It currently contains the following:

      -
    • A replacement for let that makes it much easier to write CL in a functional style making heavy use of multiple values. It generalizes the semantics of let, let*, and multiple-value-bind. For example:

      -(let ((a b c (foo x))
      -      ((d (bar a b))
      -       (e (baz b c)))
      -      (f (zot)))
      -  ...)
      -

      This binds a, b, and c to the three values of (foo x), and, in parallel, binds f to the value of (zot); then it binds d and e. The nesting level indicates scoping, so the values of a, b, and c are in scope for the clauses binding d and e, but not for the clause binding f. All these bindings are in scope for the body.

    • -
    • A replacement for cond that deals with the occasional situation where one wants to refer to a value in the body of a cond clause that was computed in the predicate. If the car of the predicate is the symbol let, then the scope of the bindings established by that let is extended to include the entire clause. Example:

      -(cond ((let ((x y (foo q)))
      -         x)
      -       (bar y))
      -      ...)
      -

    • -
    • Yet another iteration macro called GMap, which generalizes mapcar by providing an extensible set of sequence generators and allowing an arbitrary function to combine the results. GMap is in much the same spirit as Dick Waters' Series package; it provides much of the useful functionality of Series, but with a far simpler implementation. Some examples:

      -* (gmap :list #'+ (:list '(1 2 3)) (:index 10 nil))
      -(11 13 15)
      -* (gmap :string #'code-char (:index #x40 #x45))
      -"@ABCD"
      -* (gmap (:values :list :vector) (lambda (x y) (values (+ x y) (* x y)))
      -	(:vector #(0 12 42 17)) (:index 6 nil))
      -(6 19 50 26)
      -#(0 84 336 153)
      -* (gmap :alist nil (:plist '(a 1 b 2 c 3)))
      -((A . 1) (B . 2) (C . 3))
      -* (gmap :plist nil (:alist '((x . 0) (y . 1) (z . 2))))
      -(X 0 Y 1 Z 2)
      -
      -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Miscellaneous humour.html b/clones/lisp/www.cliki.net/Miscellaneous humour.html deleted file mode 100644 index ab81edd5..00000000 --- a/clones/lisp/www.cliki.net/Miscellaneous humour.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - CLiki: Miscellaneous humour - - - - - - - -
    Miscellaneous humour
    Miscellaneous humour. -
    -Did you hear about the two script kiddies who got lucky? They successfully broke into a top secret AI lab, and got away with the last 100 pages of the Lisp code for an intelligent theorem discovery system.

    It was all just closing parentheses. ....)))))))))))).... -



    -Humour
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Mitch's LISP Mathematical Library.html b/clones/lisp/www.cliki.net/Mitch's LISP Mathematical Library.html deleted file mode 100644 index ac7b364c..00000000 --- a/clones/lisp/www.cliki.net/Mitch's LISP Mathematical Library.html +++ /dev/null @@ -1,103 +0,0 @@ - - - - - CLiki: Mitch's LISP Mathematical Library - - - - - - - -
    Mitch's LISP Mathematical Library
    Large Mathematics library by Mitch Richling: numerical analysis, dynamical systems, symbolic algebra, combinatorial enumeration and counting algorithms, computational group theory, probabilistic modeling and simulation.

    http://www.mitchr.me/SS/mjrcalc/

    What kinds things can all of these LISP functions do? That's a hard question to answer directly, so I'll just list - some of the things I have used it for over the years: -

      -
    • Development and prototyping of deeply algorithmic and/or mathematical software
    • -
    • Numerical analysis -
        -
      • linear algebra
      • -
      • integration
      • -
      • ODEs
      • -
      • PDEs
      • -
      • Optimization
      • -
      • Root finding
      • -
      -
    • -
    • Dynamical systems modeling and simulation (ODEs, PDEs, and algebraic equations) -
        -
      • Efficient solutions to Kepler's equation
      • -
      • High speed orbital dynamics (finding earth satellites and planets with my telescope in real time)
      • -
      • High accuracy integration of planetary systems
      • -
      • Large scale particle simulation (Galactic dynamics, fungal growth, fountains, ...)
      • -
      • Diffusion simulations
      • -
      • Mathematical Population dynamics
      • -
      -
    • -
    • Symbolic algebra -
        -
      • Computational commutative algebra (solving polynomial systems, Grobner basis, etc...)
      • -
      • Non-numeric root localization
      • -
      • Rational and integer roots and critical points
      • -
      • Combined symbolic and numerical algorithms
      • -
      • Factorization of polynomials over the integers and prime order fields
      • -
      • Symbolic differentiation of LISP forms
      • -
      • Analytical solution of differential equations
      • -
      -
    • -
    • Combinatorial enumeration and counting algorithms -
        -
      • Most of the 12-fold way
      • -
      • Several combinatorial functions
      • -
      • Generation of combinatorial objects (sets, cross products, permutations, combinations)
      • -
      -
    • -
    • Computational group theory -
        -
      • Electron orbital mechanics
      • -
      • Crystal lattice formation
      • -
      -
    • -
    • Probabilistic modeling and simulation (complex systems or statistical tests)
    • -
    • Sophisticated data visualization problems
    • -
    • -Project Euler problems
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Mito.html b/clones/lisp/www.cliki.net/Mito.html deleted file mode 100644 index 014c15f9..00000000 --- a/clones/lisp/www.cliki.net/Mito.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Mito - - - - - - - -
    Mito
    An ORM for Common Lisp with migrations, relationships and PostgreSQL support.

    Depends on: cl-dbi, sxql, cl-ppcre, closer-mop, dissect, optima, cl-reexport, local-time, uuid, alexandria

    Repository: https://github.com/fukamachi/mito

    License: LLGPL

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Mixalot.html b/clones/lisp/www.cliki.net/Mixalot.html deleted file mode 100644 index c3e7b0dd..00000000 --- a/clones/lisp/www.cliki.net/Mixalot.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Mixalot - - - - - - - -
    Mixalot
    Mixalot is a grab bag of systems related to audio in Common Lisp under an MIT-style license.

    Currently it consists of a mixer component providing straightforward audio output on Linux (via ALSA) and other platforms (using libao), a CFFI binding to the libmpg123 library, and a helper component allowing playback of MP3 files through the mixer.

    License: MIT

    Homepage: http://github.com/ahefner/mixalot

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Modularize-Hooks.html b/clones/lisp/www.cliki.net/Modularize-Hooks.html deleted file mode 100644 index 5281745e..00000000 --- a/clones/lisp/www.cliki.net/Modularize-Hooks.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Modularize-Hooks - - - - - - - -
    Modularize-Hooks
    This is a simple extension to Modularize that allows modules to define and trigger hooks, which other modules can hook on to. While such a system is very easy to create for your own projects, it's a good idea to have a standard form of doing it that doesn't interfere in any other way.

    The project can be found on github including a fully documented symbol index and a getting started tutorial.
    -As of August 2014, Modularize-Hooks is available on Quicklisp.

    Modularize-Hooks is licensed under the Artistic License 2.0.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Modularize-Interfaces.html b/clones/lisp/www.cliki.net/Modularize-Interfaces.html deleted file mode 100644 index 092ae2b3..00000000 --- a/clones/lisp/www.cliki.net/Modularize-Interfaces.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Modularize-Interfaces - - - - - - - -
    Modularize-Interfaces
    This is an extension to Modularize that allows your application to define interfaces in-code that serve both as a primary documentation and as compliance control. Other modules can then implement interfaces to provide the actual functionality as outlined in the definition. A good example for a scenario in which this would be useful is databases. If other parts of the application can rely on a standardised interface it won't matter which database is really connected underneath and the type of database connection can be switched without having to change any of the other modules that rely on this functionality.

    The project can be found on github including a fully documented symbol index and a getting started tutorial.
    -As of August 2014, Modularize-Interfaces is available on Quicklisp.

    Modularize-Interfaces is licensed under the Artistic License 2.0.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Modularize.html b/clones/lisp/www.cliki.net/Modularize.html deleted file mode 100644 index fb201f24..00000000 --- a/clones/lisp/www.cliki.net/Modularize.html +++ /dev/null @@ -1,63 +0,0 @@ - - - - - CLiki: Modularize - - - - - - - -
    Modularize
    Modularize is an attempt at providing a common interface to segregate major application components. This is achieved by adding special treatment to packages. Each module is a package that is specially registered, which allows it to interact and co-exist with other modules in better ways. For instance, by adding module definition options you can introduce mechanisms to tie modules together in functionality, hook into each other and so on.

    The project can be found on github including a fully documented symbol index and a getting started tutorial.
    -As of August 2014, Modularize is available on Quicklisp.

    Modularize is licensed under the Artistic License 2.0.

    Modularize Extensions

    -
      -
    • -Modularize-Hooks - - This is a simple extension to Modularize that allows modules to define and trigger hooks, which other modules can hook on to -
    • -
    • -Modularize-Interfaces - - This is an extension to Modularize that allows your application to define interfaces in-code that serve both as a primary documentation and as compliance control -
    • -


    -language extension
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Moira.html b/clones/lisp/www.cliki.net/Moira.html deleted file mode 100644 index 4754de02..00000000 --- a/clones/lisp/www.cliki.net/Moira.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Moira - - - - - - - -
    Moira
    Moira is a simple (but not quite trivial) library for monitoring and, if necessary, restarting long-running threads. In principle, it is like an in-Lisp process supervisor.

    Depends on: alexandria, serapeum, trivial-features, bordeaux-threads, trivial-garbage, osicat

    Repository: https://github.com/ruricolist/moira

    License: MIT

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Monitoring.html b/clones/lisp/www.cliki.net/Monitoring.html deleted file mode 100644 index cb30ca46..00000000 --- a/clones/lisp/www.cliki.net/Monitoring.html +++ /dev/null @@ -1,68 +0,0 @@ - - - - - CLiki: monitoring - - - - - - - -
    monitoring
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Montezuma.html b/clones/lisp/www.cliki.net/Montezuma.html deleted file mode 100644 index b413879d..00000000 --- a/clones/lisp/www.cliki.net/Montezuma.html +++ /dev/null @@ -1,59 +0,0 @@ - - - - - CLiki: Montezuma - - - - - - - -
    Montezuma
    Montezuma is a text search engine for Common Lisp. It is a Common Lisp port of Ferret. Ferret is a Ruby port of Lucene. Lucene is sort of Doug Cutting's Java version of Text Database (TDB), which he and Jan Pedersen developed at Xerox PARC, and which, to complete the circle, was written in Common Lisp (see "An Object-Oriented Architecture for Text Retrieval" in PS format, or PDF).


    -sharplispers
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Monty Python and comp lang lisp.html b/clones/lisp/www.cliki.net/Monty Python and comp lang lisp.html deleted file mode 100644 index 6a0c440e..00000000 --- a/clones/lisp/www.cliki.net/Monty Python and comp lang lisp.html +++ /dev/null @@ -1,68 +0,0 @@ - - - - - CLiki: Monty Python and comp lang lisp - - - - - - - -
    Monty Python and comp lang lisp
    Recently Seen (August 2003) on comp.lang.lisp:

    -
    First C.L.L'er:
    -
    We have found an academic. May we burn him?
    -
    Other C.L.L'ers:
    -
    Burn him! Burn him! Burn him! Burn him! Burn him!
    -
    Bedevere:
    -
    How do you know he is an academic?
    -
    First C.L.L'er:
    -
    He defended Lisp-1!
    -
    Second C.L.L'er:
    -
    He mentioned abstraction!

    Third C.L.L'er:
    -
    He captured me in a closure!
    -
    Bedevere:
    -
    A closure?
    -
    Third C.L.L'er:
    -
    I got returned...
    -


    -humor
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Moon, on a stick.html b/clones/lisp/www.cliki.net/Moon, on a stick.html deleted file mode 100644 index 00d54d2b..00000000 --- a/clones/lisp/www.cliki.net/Moon, on a stick.html +++ /dev/null @@ -1,85 +0,0 @@ - - - - - CLiki: Moon, on a stick - - - - - - - -
    Moon, on a stick
    Every lispers platform of choice. An elusive goal, but the current definition seems to involve:

      -
    • xref -
    • -
    • process browser -
    • -
    • cross-platform gui toolkit -
    • -
    • native threads -
    • -
    • stepper -
    • -
    • multiple listeners -
    • -
    • integrated editor -
    • -
    • inspector -
    • -
    • graphical profiler -
    • -
    • generic function browser -
    • -
    • object clipboard -
    • -
    • generates "standalone executables" on unix, windows and mac -
    • -
    • fast, fast, FAST! -
    • -
    • multilingual (unicode?) -
    • -
    • complete manual -
    • -
    • free, Free, libre and gratis! -
    • -

    Sounds like Genera going native on stock hardware!

    Bah, and here I was expecting an archive of the Internet's best flames. -- Rahul


    -Vapourware
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Morn.html b/clones/lisp/www.cliki.net/Morn.html deleted file mode 100644 index a2312c01..00000000 --- a/clones/lisp/www.cliki.net/Morn.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Morn - - - - - - - -
    Morn
    See WP:User:Morn

    ''Morn, welcome to CLiki! Would you mind telling us a little about your connection with Lisp? --(David Owen)''


    -Person
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/MorphiCL.html b/clones/lisp/www.cliki.net/MorphiCL.html deleted file mode 100644 index 822c0f60..00000000 --- a/clones/lisp/www.cliki.net/MorphiCL.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: MorphiCL - - - - - - - -
    MorphiCL
    MorphiCL is a (possibly misguided) attempt at creating a GUI for CL loosely based on Squeak/Self Morphic.

    It currently requires CLX, but it can easily be ported to a different environment by writing a new backend. It currently has only been verified to work with CMUCL.

    MorphiCL is distributed under the licensing terms of the GNU LGPL. It may be downloaded from http://www.tunes.org/~eihrul/MorphiCL.tar.gz.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Movitz.html b/clones/lisp/www.cliki.net/Movitz.html deleted file mode 100644 index 656c1390..00000000 --- a/clones/lisp/www.cliki.net/Movitz.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Movitz - - - - - - - -
    Movitz
    Movitz is a Common Lisp implementation that targets the x86 PC architecture "on-the-metal". Its intended use is for embedded, single-purpose -systems, or operating system kernels.

    You can read more about Movitz (as well as browsing the source and the mailing lists) at common-lisp.net.

    The current technical documentation is available now.

    The instructions on how to build and boot it are on the project's Trac

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Music Mind Machine.html b/clones/lisp/www.cliki.net/Music Mind Machine.html deleted file mode 100644 index ffc7e825..00000000 --- a/clones/lisp/www.cliki.net/Music Mind Machine.html +++ /dev/null @@ -1,58 +0,0 @@ - - - - - CLiki: Music Mind Machine - - - - - - - -
    Music Mind Machine
    The Music Mind Machine research group at the Universities of Nijmegen and Amsterdam have a variety of Common Lisp software available for the computational modeling of Music cognition including:

      -
    • -POCO: an environment for the analysis of expression in music; -
    • -
    • -Algorithms for quantisation. -
    • -

    See the MMM download page for more details.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Music.html b/clones/lisp/www.cliki.net/Music.html deleted file mode 100644 index 0012121e..00000000 --- a/clones/lisp/www.cliki.net/Music.html +++ /dev/null @@ -1,177 +0,0 @@ - - - - - CLiki: Music - - - - - - - -
    Music
    Free software related to creating or manipulating music in Common Lisp. See also audio for general audio playing/recording/manipulation software.

      -
    • -AC Toolkit - - AC Toolkit is an open source Common Lisp application aimed at aiding music composition, ideas are based on AC Toolbox -
    • -
    • -Bach Chorales - - A database of music (100 chorale melodies) harmonised by J.S Bach -
    • -
    • -cl-collider - - cl-collider is an interface to the SuperCollider audio synthesis server -
    • -
    • -CL-IO-MOD - - CL-IO-MOD is a parser for a subset of the MOD music tracker file format -
    • -
    • -cl-wav-synth - - cl-wav-synth is a wav sample editor, a spectrum editor and a song editor. -
    • -
    • -CLCE - - CLCE (Common Lisp Composition Environment) is a complete environment for Musical composition based on the Common Lisp language and on the MidiShare operating system -
    • -
    • -cmpl - - Computer Music Programming Language -
    • -
    • -Common Lisp Music - - is a Music synthesis and signal processing package in the Music V family -
    • -
    • -Common Music - - Common Music (CM) is an object-oriented Music composition environment -
    • -
    • -Common Music Notation - - Common Music Notation is an independent subsystem of Common Music -
    • -
    • -Compo - - Compo is a language to describe in a natural way simple or complex structures of Music -
    • -
    • -EMI - - EMI (Experiments in Musical Intelligence) is David Cope's project to develop systems which are capable of automatic analysis and resynthesis of musical styles -
    • -
    • -Gsharp - - Gsharp is a graphical, interactive score editing application for standard Music notation -
    • -
    • -Incudine - - Incudine is a music/DSP programming environment for Common Lisp -
    • -
    • -midi - - A library for parsing MIDI (Musical Instrument Digital Interface) file format files and representing MIDI events, previously distributed as part of the Gsharp project -
    • -
    • -MIPS - - MIPS (Mathematical Investigation of Pitch Systems) is a mathematical formal language for investigating the structural properties of Musical scales, pitch systems and their associated notational systems -
    • -
    • -Music Mind Machine - - The Music Mind Machine research group at the Universities of Nijmegen and Amsterdam have a variety of Common Lisp software available for the computational modeling of Music cognition including: -
    • -
    • -Ntccrt - - Ntccrt is an interpreter for the Non-deterministic Timed Concurrent Constraint (ntcc) calculus capable of real-time interaction -
    • -
    • -OMax - - OMax is a software environment which learns in real-time typical features of a musician's style and plays along with him interactively, giving the flavor of a machine co-improvisation -
    • -
    • -OpenMusic - - OpenMusic is a visual programming language based on Common Lisp and CLOS -
    • -
    • -OSC - - An implementation of the OpenSoundControl protocol -
    • -
    • -Phorx - - Phorx is a program that allows you to write Music that can change dynamically as it is playing -
    • -

    Other

    -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/NET.QUADIUM.LDAP.html b/clones/lisp/www.cliki.net/NET.QUADIUM.LDAP.html deleted file mode 100644 index 51849e27..00000000 --- a/clones/lisp/www.cliki.net/NET.QUADIUM.LDAP.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: NET.QUADIUM.LDAP - - - - - - - -
    NET.QUADIUM.LDAP
    NET QUADIUM LDAP is an LDAP library for Common Lisp.

    It uses the OpenLDAP client-side utilities (via CLOCC-PORT for the pipes and subprocesses) to get LDIF, and NET.QUADIUM.LDIF to parse it. It also provides (currently minimal) support for adding and modifying records.

    Available from http://quadium.net/code/.


    -Topics: networking StructuredStorage
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/NET.QUADIUM.LDIF.html b/clones/lisp/www.cliki.net/NET.QUADIUM.LDIF.html deleted file mode 100644 index 690a0b66..00000000 --- a/clones/lisp/www.cliki.net/NET.QUADIUM.LDIF.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: NET.QUADIUM.LDIF - - - - - - - -
    NET.QUADIUM.LDIF
    NET QUADIUM LDIF is an LDIF (LDAP Data Interchange Format) library for Common Lisp.

    It provides services to read and write LDIF data records. Support for reading and writing change records is present but as yet there are no utilities to manipulate change records.

    Available from http://quadium.net/code/.


    -Topics: networking protocol
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/NET.QUADIUM.RPC-API.html b/clones/lisp/www.cliki.net/NET.QUADIUM.RPC-API.html deleted file mode 100644 index d9d68bf5..00000000 --- a/clones/lisp/www.cliki.net/NET.QUADIUM.RPC-API.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: NET.QUADIUM.RPC-API - - - - - - - -
    NET.QUADIUM.RPC-API
    RPC-API is a compiler to make an RPC (generally XML-RPC) API conveniently available to clients by means of providing RPC stubs as a simple library.

    http://vc.quadium.net/darcs/rpc-api/trunk/


    -IPC
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/NET4CL.html b/clones/lisp/www.cliki.net/NET4CL.html deleted file mode 100644 index 6549e495..00000000 --- a/clones/lisp/www.cliki.net/NET4CL.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: NET4CL - - - - - - - -
    NET4CL
    NET4CL is a collection of network functions, mostly encapsulation of existing functions to uniform the interface between different Lisp systems. Some other code in this page depends on it. Currently only CMUCL and SBCL are supported.

    Home page: http://wcp.sdf-eu.org/software/#net4cl

    Download: http://wcp.sdf-eu.org/software/net4cl-20150207T212000.tbz

    License: LGPL


    -networking
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/NLISP.html b/clones/lisp/www.cliki.net/NLISP.html deleted file mode 100644 index cb26cf13..00000000 --- a/clones/lisp/www.cliki.net/NLISP.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: NLISP - - - - - - - -
    NLISP
    NLISP is an environment for numerical computation and visualisation like IDL or Matlab. NLISP defines array syntax operators and array (matrix) intrinsic functions, plotting via gnuplot, sound file I/O via libsndfile, and a partial interface to the Gnu Scientific Library (see also GSLL). NLISP can produce xy, image and surface plots. Array operators and intrinsic functions are given for fixnum (long integer), double float and complex double float types. NLISP also provides array indexing to access and and operate on sub arrays.

    Homepage: http://sourceforge.net/projects/nlisp/

    License: GPL

    NLISP is maintained by David Wallis and -Leigh M. Smith.

    The install documentation for nlisp say to find and compile bin-gnuplot.c, however this is no longer needed.

    In order to do anything at all in nlisp, (use-package :nlisp) first. You shoud then be able to perform:

    (.iseq 0 12)


    -Topics: linear algebra
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/NPG.html b/clones/lisp/www.cliki.net/NPG.html deleted file mode 100644 index 296bb10c..00000000 --- a/clones/lisp/www.cliki.net/NPG.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: NPG - - - - - - - -
    NPG
    NPG is a Naïve Parser Generator. It's a small compiler of backtracking recursive descent parsers that accepts grammars in a somehow extended BNF notation of arbitrary complexity (excluding indirect left recursive rules). It doesn't produce any file, it just compiles the grammar internally, ready to be used. A couple of examples are included: a VS-Cobol II and a Python grammar (both far from complete).

    Homepage: http://wcp.sdf-eu.org/software/#npg

    Download: http://wcp.sdf-eu.org/software/npg-20150517T144652.tbz

    License: LGPL


    -s-exp syntax parser generator
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/NST.html b/clones/lisp/www.cliki.net/NST.html deleted file mode 100644 index 384c4cca..00000000 --- a/clones/lisp/www.cliki.net/NST.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: NST - - - - - - - -
    NST
    NST is a test framework for Common Lisp offering separate and reusable fixture definitions, test groups, extensible test criteria, ASDF integration, and optional JUnit XML output.

      -
    • Documentation is distributed from NST's trac wiki.
    • Compatibility. NST releases are tested on Allegro, SBCL, Clozure, CLisp and Lispworks. Further details are available from the trac wiki.
    • Recent changes. A list of changes by version is available on the trac wiki.
    • Authors. NST was written by John Maraist, with numerous contributions and suggestions by Robert Goldman. Other contributions and bug reports by Michael Atighetchi, Michael Pelican, Steve Harp, Patrick Stein and Jon Schewe. -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Named multiple-values.html b/clones/lisp/www.cliki.net/Named multiple-values.html deleted file mode 100644 index 99b08154..00000000 --- a/clones/lisp/www.cliki.net/Named multiple-values.html +++ /dev/null @@ -1,109 +0,0 @@ - - - - - CLiki: Named multiple-values - - - - - - - -
    Named multiple-values
    Named-multiple-values is a piece of macrology that enables one to deal with -Common Lisp's multiple-values somewhat abstractly. That is, you may -refer to a set of values by name, and also particular values by name.

    -named-multiple-values.lisp might be -considered to be a convenience library. It defines a single macro, called -named-multiple-values:define-named-multiple-values. This -macro generates two macros, whose names it returns. See the example.

    Example

    Here is an example of what it can look like:

    -  (define-named-multiple-values foo-values (bar zot zut)
    -    (:all &all))
    -=> FOO-VALUES, FOO-VALUES-BIND
    -
    -  (foo-values () :bar 'barney :zut 'zutteklut)
    -=> BARNEY, NIL, ZUTTEKLUT
    -
    -  (foo-values-bind (&zut my-zut &bar local-bar)
    -      (values 1 2 3)
    -    (list my-zut local-bar))
    -=> (3 1)
    -
    -  (foo-values-bind (&all default-foos)
    -      (values 1 2 3)
    -    (foo-values (:defaults default-foos)
    -      :zot 'special-zot))
    -=> 1, SPECIAL-ZOT, 3
    -

    However, named-multiple-values is not expected to be particularly -useful for interactive work, see the "background" section.

    Description

    I will offer two analogies to the concept of named-multiple-values:

      -
    • Multiple-values are similar to functions' argument-lists, where the - latter is "down-stream", and the former is "up-stream" flow of - information. Much like Common Lisp---by use of &key---allow you to - pass arguments (down-stream) to functions by name rather than position, - you can now generate up-stream multiple-values by name.
    • Common Lisp's defstruct offers the possibility of defining - abstract types whose concrete type is (for example) a list. - So while the type abstractly consits only of members a, b, and c, - in reality there will be a list of length three, whose first - element is a, second element is b, and third is c. - Named multiple-values are very much the same thing, except - the set of values only exists as an abstract entity: No list - or anything else is ever consed up, since the value-sets as such - never exist as lisp objects. Consequently, they cannot be passed - around between functions.
    • -
    -

    Background

    What is named-multiple-values useful for? I'm not quite sure. This -code is factored out from a project where I had many tens of functions -that followed the same protocol, both down-stream and up-stream. That -is, the functions accepted the same parameters, and returned the same -values. Being the lisper that I am, I took advantage of this -regularity in the code by having macros that dealt with both -directions of the protocol. This added greatly to the clarity of the -code, and saved me a lot of editing.

    While the down-stream part of my original project's macrology was -rather trivial, and didn't really provide that much beyond what &key -already does, the up-stream part I thought might be more interesting -for more general-purpose use. So here it is, available as finished -code, or just as and idea you might find usable in your own code.

    Because this code is factored out and modified quite a bit from my -original project with well-tested code, and abstracted into what I -suppose might be called a higher-order-macro (a macro-writing macro, -that is), I fully expect there to be bugs and quirks. So this code -should perhaps be considered more as a description of an idea than a -ready-to-use library.

    Comments are welcome.

    I (Gary King) am not sure that I follow but are named-multiple-values similar to returning property lists but without the consing?

    Yes, I think that would describe it reasonably. If you want to return numerous values and would prefer to refer to each value by name rather than ordering, you can use ``Named multiple-values''.


    -macro example
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Naming conventions.html b/clones/lisp/www.cliki.net/Naming conventions.html deleted file mode 100644 index fe9939c3..00000000 --- a/clones/lisp/www.cliki.net/Naming conventions.html +++ /dev/null @@ -1,235 +0,0 @@ - - - - - CLiki: Naming conventions - - - - - - - -
    Naming conventions
    Some symbol naming conventions, distilled from CLHS, the Lisp FAQ, and comp.lang.lisp.

    Widely used "need-to-know" conventions:

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    foo-bar"-" is used as a word delimiter
    *foo*(global) special variable
    foo*slightly different variant of the foo operator
    &foolambda list keyword. These symbols will be in the lambda-list-keywords list.
    nfoo(possibly) destructive (non-consing) function
    fooppredicate (also foo-p); see notes below for when to hyphenate
    foofplace changing (like in SETF, INCF, ...) (also foo-f)
    +foo+constant, or single CLOS instance
    %foolow-level, fast, dangerous function, or Lisp system specific implementation of foo
    make-foocreate a foo and return it
    define-foo(globally) define a new foo (also short version: "deffoo")
    with-foocreate a dynamic context with a foo
    do-fooiterate through a foo
    foo-casefoo-specific case expression
    foo-bartype-slot, converting FOO to BAR
    foo-to-barconverting FOO to BAR

    Often seen, but not-quite-so-common conventions:

    - - - - - - - - - - - - - - - - - - - - -
    bar-ofslot bar of an object
    foo/bartype/operation, foo with bar, bar version of foo
    foo.bartype.slot or, in some implementations conventional hierarchical package (e.g. ACL and CMUCL)
    ?foovariable in embedded language
    <foo<variable in embedded language

    Occasionally seen:

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    <foo>class
    %foo%local special variable
    .foo.internal special variable
    .foo.private macro symbol
    /foo/global lexical variable
    $foofunction visible from Macsyma
    foo&foo, operating on fixnums
    foo$foo, operating on floats

    Conventions in Scheme:

    - - - - - - - - - - - - - - - - - - - - -
    foo!destructive function
    foo?predicate
    $fooconstant
    call-with-fooInvoke a thunk in some dynamic context
    foo->barCoerce object of type foo to object of type bar

    This is standard syntax, not convention:

    - - - - - - - - - - - - - - - - -
    :barkeyword
    foo:barexternal symbol bar in package foo
    foo::barinternal symbol bar in package foo (don't try this at home, kids!)
    #:baruninterned symbol (does not belong to any package)

    These will annoy people:

    - - - - - - - - - - - - - -
    CamelCaseIdentifiersUse identifiers-like-this
    identifiers_with_underscoresare harder to type
    hungarian-identifiers-pcsnsi
    abbrv-idntfrsUse Emacs to expand them.

    Unless there is a good reason to use them (for instance, you need to interface -to a third-party package that uses them), they should be avoided.

    Some additional style notes:

      -
    • A function that tests for something involving its arguments is called a predicate and usually ends in p or -p. CLTL2 explains the rationale for each suffix:

      -By convention, the names of predicates usually end in the letter p (which stands for "predicate"). Common Lisp uses a uniform convention in hyphenating names of predicates. If the name of the predicate is formed by adding a p to an existing name, such as the name of a data type, a hyphen is placed before the final p if and only if there is a hyphen in the existing name. For example, number begets numberp but standard-char begets standard-char-p. On the other hand, if the name of a predicate is formed by adding a prefixing qualifier to the front of an existing predicate name, the two names are joined with a hyphen and the presence or absence of a hyphen before the final p is not changed. For example, the predicate string-lessp has no hyphen before the p because it is the string version of lessp (a MACLISP function that has been renamed < in Common Lisp). The name string-less-p would incorrectly imply that it is a predicate that tests for a kind of object called a string-less, and the name stringlessp would connote a predicate that tests whether something has no strings (is "stringless")! -

    • -
    • There are useful conventions for macros: deffoo or define-foo defines objects of type foo. Setting up a context for some actions, usually performing some binding, and including setup and teardown code, is usually a with-foo. Iterating macros are defined usually as do-foo.

    • -
    • -deffoo vs. define-foo used to be, and is in the spec, determined by foo. If foo is a hyphenated name, then the define-foo format is used, otherwise deffoo is used. For example, defmethod and defsetf vs. define-method-combination and define-setf-expander.

    • -
    • Occasionally, there will be a pair of operator functions, and one is a destructive version of the other. Historical tradition will name the destructive variant nfoo for the basic non-destructive function, but this is inconsistently used.

    • -
    • The CLIM specification supports a rather large protocol, and has a "spread arguments" convention for functions where there is a desire not to have to construct a large object just to call one function with it. A spread function takes many small constituent arguments and is named foo* for a basic function foo.

    • -
    • There are some various methods ending in f, notably setf (but some advanced ones include locf for old ZetaLisp). The f stands for a generic field of an object, like a part of a cons cell, structure, vector, array, class instance, and so forth. Kent M. Pitman explained the origin of it on comp.lang.lisp.

    • -
    • Note that nested conversions (e.g., (bar-to-baz (foo-to-bar x)) or (bar->baz (foo->bar x))) compose nicer if written the other way around: (baz-from-bar (bar-from-foo x)), (baz<-bar (bar<-foo x)). -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Nasal Demons.html b/clones/lisp/www.cliki.net/Nasal Demons.html deleted file mode 100644 index ccdcf234..00000000 --- a/clones/lisp/www.cliki.net/Nasal Demons.html +++ /dev/null @@ -1,65 +0,0 @@ - - - - - CLiki: Nasal Demons - - - - - - - -
    Nasal Demons
    An euphemism for - -undefined consequences. See - -Jargon File entry.

    Manifestations in comp.lang.lisp: -

    -

    "nasal demon" and "demons fly out of your nose" are different phrases

    But the same phenomenon. ,)


    -FAQ
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Natural Language Processing.html b/clones/lisp/www.cliki.net/Natural Language Processing.html deleted file mode 100644 index 5376386f..00000000 --- a/clones/lisp/www.cliki.net/Natural Language Processing.html +++ /dev/null @@ -1,100 +0,0 @@ - - - - - CLiki: Natural Language Processing - - - - - - - -
    Natural Language Processing
    Natural Language Processing is a subcategory of AI, consisting of a set of algorithms, theories and techniques used to process natural language (that spoken by humans) on computers.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Neil Van Dyke.html b/clones/lisp/www.cliki.net/Neil Van Dyke.html deleted file mode 100644 index e54c6874..00000000 --- a/clones/lisp/www.cliki.net/Neil Van Dyke.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Neil Van Dyke - - - - - - - -
    Neil Van Dyke
    Neil Van Dyke is a software developer and researcher living in Cambridge, Massachusetts, USA.

    Neil has written some publicly-available portable Scheme libraries and tools, as well as some Emacs Lisp packages, and has done commercial work in Scheme and Common Lisp. He could grow a Lisp hacker beard easily, but it would itch.

    He maintains the boston-lisp-announce moderated announcements email list, which is intended to reach the largest number of Lisp users is the Boston area.

    Neil's vanity Web site is: http://www.neilvandyke.org/


    -Person
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Neonsquare.html b/clones/lisp/www.cliki.net/Neonsquare.html deleted file mode 100644 index f65878d7..00000000 --- a/clones/lisp/www.cliki.net/Neonsquare.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Neonsquare - - - - - - - -
    Neonsquare
    Neonsquare is the Nickname of Jochen Schmidt - a Person
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/NetBSD.html b/clones/lisp/www.cliki.net/NetBSD.html deleted file mode 100644 index e0606f11..00000000 --- a/clones/lisp/www.cliki.net/NetBSD.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: NetBSD - - - - - - - -
    NetBSD
    NetBSD is a free, secure, and highly portable UNIX-like operating system -available for many platforms, from 64-bit AlphaServers and desktop systems to handheld and embedded devices. Its clean design and advanced features make it excellent in both production and research environments, and it is user-supported with complete source. Many applications are easily available.

    Currently you have a choice CLISP, ECL and SBCL as packaged for NetBSD.

    UtiLisp32 is also available in the NetBSD package collection

    Other Common Lisp implementations work on NetBSD as well, even if they aren't packaged separately for it: see CMUCL.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/NetCLOS.html b/clones/lisp/www.cliki.net/NetCLOS.html deleted file mode 100644 index 74c5fb63..00000000 --- a/clones/lisp/www.cliki.net/NetCLOS.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: NetCLOS - - - - - - - -
    NetCLOS
    NetCLOS is an extension to Common Lisp to provide distributed system support, written by Lothar Hotz.

    From the author:

    NetCLOS is "... an extension of Common Lisp which allows the definition of parallel programs within that functional and object-oriented language. In particular, the extensions are the introducing of active objects, sending synchronous and asynchronous messages between them, automatic and manual distribution of active objects to object spaces, and transparent object managing. With these extensions object-oriented parallel programming on a workstation cluster using different Common Lisp images is possible. These concepts are implemented as an extension of Allegro Common Lisp subsumed by the name NetCLOS."

    homepage (Archive)

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Netfarm.html b/clones/lisp/www.cliki.net/Netfarm.html deleted file mode 100644 index eed856f5..00000000 --- a/clones/lisp/www.cliki.net/Netfarm.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Netfarm - - - - - - - -
    Netfarm
    Netfarm is an attempt at creating a distributed trustless object system. It uses a distributed hash table, digital signatures and a small virtual machine to reproducibly simulate networked objects, regardless of implementation or application details.

    A typical Netfarm system is comprised of a networking library, such as decentralise2, the extensions to an object system, and some code to glue them together.

    Code repositories Documentation

    License: the Cooperative Software License

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Networking.html b/clones/lisp/www.cliki.net/Networking.html deleted file mode 100644 index d488d288..00000000 --- a/clones/lisp/www.cliki.net/Networking.html +++ /dev/null @@ -1,596 +0,0 @@ - - - - - CLiki: Networking - - - - - - - -
    Networking
    Code that helps with networking. Protocols, clients, servers, etc. For web (HTTP) specific software, see the web topic. See also the distributed topic.

      -
    • -aftpd - - aftpd is an FTP server written in Common Lisp -
    • -
    • -Allegro NFS Server - - Allegro NFS Server for Microsoft Windows, written in Common Lisp -
    • -
    • -carrier - - Carrier is an async HTTP client driven by cl-async and fast-http -
    • -
    • -chaos-lisp - - chaos-lisp implements a multi-threaded ChaosNET Network Control Program under OpenMCL running on Mac OS X, interfacing with Unix-domain sockets containing emulated ChaosNET packets -
    • -
    • -Chunga - - Chunga is a web/networking library which implements portable chunked HTTP streams as described in RFC 2616 -
    • -
    • -CL+SSL - - CL+SSL is a portable interface to OpenSSL -
    • -
    • -cl-agraph - - CL-AGRAPH is a minimal portable Lisp client for AllegroGraph -
    • -
    • -cl-async - - Cl-async is a asynchronous I/O library wrapping the libuv C library -
    • -
    • -cl-cidr-notation - - cl-cidr-notation is a library for converting IP addresses and CIDR blocks from integer to string representations and vice versa -
    • -
    • -cl-curl - - Cl-curl is a set of Lisp binding to the C libcurl HTTP client library, a multiprotocol file transfer library -
    • -
    • -CL-DBUS - - CL-DBUS aims to be an implementation of the popular D-BUS IPC/networking protocol -
    • -
    • -CL-DTYPE - - CL-DTYPE is a Common Lisp library implementing the DType networking protocol, introduced by MIT Media Labs -
    • -
    • -cl-fix - - cl-fix enables you to write FIX-based systems using Common Lisp -
    • -
    • -cl-flowd - - cl-flowd is an native Common Lisp interface to the flowd Netflow collector -
    • -
    • -CL-FTP - - cl-ftp is an FTP client -
    • -
    • -cl-growl - - Growl is a notification system for Mac OS X -
    • -
    • -CL-MEMCACHED - - CL-MEMCACHED is a fast interface to the memcached object caching system -
    • -
    • -cl-net-snmp - - cl-net-snmp is an SNMP library for Common Lisp -
    • -
    • -cl-oauth - - cl-oauth is an implementation of the OAuth 1.0a API authorization protocol -
    • -
    • -cl-openid - - Cl-OpenID is an implementation of OpenID protocol in Common Lisp -
    • -
    • -CL-PLUS-SSL - - This library is a fork of SSL-CMUCL -
    • -
    • -cl-sasl - - cl-sasl is a client implementation of the Simple Authentication and Security Layer (SASL) networking protocol -
    • -
    • -CL-TELNETD - - CL-TELNETD is a CL telnet networking server -
    • -
    • -CL-TLS - - CL-TLS is a prototype Common Lisp implementation of TLS and related protocols and standards including: -
    • -
    • -CL-ZEROCONF - - CL-ZEROCONF is a networking library for Lisp that handles Zeroconf service discovery (popularized by Apple's implementation, originally called Rendezvous and renamed to Bonjour for OS X 10.4) -
    • -
    • -CLERIC - - CLERIC (Common Lisp Erlang Interface) is an implementation of the Erlang distribution protocol, comparable with erl_interface and jinterface -
    • -
    • -CLOCC - - The Common Lisp Open Code Collection contains Lisp code for various -
    • -
    • -CLX - - CLX provides an implementation of the X Window System protocol to Lisp graphics library[ies] and applications -
    • -
    • -CLXS - - CLXS is an early-stage implementation of an X11 server (the part that does the drawing and keyboard/mouse handling) in Common Lisp -
    • -
    • -Etiquette - - Etiquette is a networking protocol construction framework -
    • -
    • -IOlib - - I/O(mainly networking) library containing: a BSD sockets library, a DNS resolver and an I/O multiplexer that supports select(2), epoll(4) and kqueue(2) -
    • -
    • -ip-interfaces - - ip-interfaces provides a convenient way to obtain a list of available networking interfaces on a machine -
    • -
    • -ipcalc - - A Common Lisp library for manipulating and calculating IPv4 and IPv6 network addresses -
    • -
    • -jarw-inet - - jarw-inet supports several Internet networking Standards including writing servers and clients, http, smtp, nntp protocols, header parsing, mime decoding -
    • -
    • -LENS - - Lisp Educational Network Simulator (LENS) provides a Common Lisp environment for network simulations -
    • -
    • -lisp-network-server - - lisp-network-server is a simple framework for writing Common Lisp networking applications -
    • -
    • -LispWorks-UDP - - UDP networking for LispWorks -
    • -
    • -NET.QUADIUM.LDAP - - NET QUADIUM LDAP is an LDAP library for Common Lisp -
    • -
    • -NET.QUADIUM.LDIF - - NET QUADIUM LDIF is an LDIF (LDAP Data Interchange Format) library for Common Lisp -
    • -
    • -NET4CL - - NET4CL is a collection of network functions, mostly encapsulation of existing functions to uniform the interface between different Lisp systems -
    • -
    • -org-davep-dict - - org-davep-dict is a Common Lisp networking protocol library for talking to a dict server -
    • -
    • -OSC - - An implementation of the OpenSoundControl protocol -
    • -
    • -plokami - - PLOKAMI is a libpcap/winpcap interface -
    • -
    • -Saluto - - Saluto is a submodule for RESTAS web-framework, which allow web-site users to be authorized with OAuth 2.0 protocol -
    • -
    • -Slitch - - A not-very-under-development-lately-but-will-get-back-to-it-some-day-soon TCP/IP networking stack in CMU Common Lisp (CMUCL) -
    • -
    • -SSL-CMUCL - - SSL-CMUCL is an interface to SSL streams for CMUCL -
    • -
    • -teepeedee2 - - teepeedee2 is a fast HTTP server and web framework -
    • -
    • -telnetlib - - telnetlib is a networking library for doing Telnet -
    • -
    • -trivial-ldap - - TRIVIAL-LDAP is a one-file, pure-Lisp client library for parts of RFC 4510 - Lightweight Directory Access Protocol (v3), LDAP -
    • -
    • -trivial-sockets - - trivial-sockets is a trivial networking library for undemanding Internet applications (for example "scripting" and interactive use) -
    • -
    • -unicly - - Unicly is a Common Lisp library for generation of UUIDs (Universally Unique -
    • -
    • -usocket - - USOCKET is a networking portability layer for BSD-style sockets -
    • -
    • -Usocket-UDP - - UDP networking patch for USOCKET -
    • -
    • -uuid - - A library for generation of universally unique identifiers (UUIDs) as described by RFC 4122 -
    • -
    • -Volemad - - VOLEMAD is an application for quickly interacting with Mullvad’s WireGuard servers, written in Common Lisp -
    • -
    • -Woo - - Woo is a fast async HTTP server built on top of libev, with aim to be the fastest -
    • -
    • -zen - - zen is a hackable X server written in Common Lisp -
    • -

    Dealing with email: (main topic: email) -

      -
    • -Allegro Maild - - Allegro Maild is an SMTP email server written in Common Lisp -
    • -
    • -cl-icalendar - - An implementation of the iCalendar (RFC 5545) file format -
    • -
    • -cl-pop - - CL-POP is a lisp networking library that provides a POP email client based on RFC 1939 -
    • -
    • -CL-Sendmail - - CL-Sendmail is a library for sending email using the external program 'sendmail' -
    • -
    • -CL-SES4 - - AWS SES email sender using Signature Version 4 of Amazon's API -
    • -
    • -CL-SMTP - - CL-SMTP is an SMTP (RFC 5321) client -
    • -
    • -clonsigna - - Clonsigna is a Common Lisp library that allows interaction with IMAP4rev1 servers -
    • -
    • -CLPMR - - CLPMR is the Common Lisp ProcMail Replacement -
    • -
    • -cocoa-mail - - cocoa-mail is a basic interface for OpenMCL on Mac OS X to the Cocoa Mail infrastructure -
    • -
    • -de.setf.utility - - de setf utility is a collection of Common Lisp utilities functions and several purpose-specific libraries -
    • -
    • -Demyltify - - Demyltify is a library that lets you write Sendmail email filters (milters) in Common Lisp -
    • -
    • -esmtp-client - - esmtp-client is a library for sending email via SMTP according to RFC 6409 -
    • -
    • -imap - - imap is a client library for Allegro CL for sending and receiving email with support for POP, IMAP and SMTP -
    • -
    • -jarw-inet - - jarw-inet supports several Internet networking Standards including writing servers and clients, http, smtp, nntp protocols, header parsing, mime decoding -
    • -
    • -macho - - Macho is an email web archiving system, similar in scope to pipermail or mhonarc -
    • -
    • -MARCH - - MArch is a daemon program that saves email going through a mail server into a database -
    • -
    • -mel-base - - mel-base is a library for handling email with support for Maildir, POP3, IMAP and SMTP folders -
    • -
    • -org-davep-newsrc - - org-davep-newsrc is a Common Lisp library that provides a couple of classes for reading a Unix Usenet newsrc file -
    • -
    • -org-davep-nntp - - org-davep-nntp is a Common Lisp library for talking to an NNTP (RFC 3977) server -
    • -
    • -rfc2822 - - Text email as defined in RFC 2822 -
    • -
    • -smta - - smta is a simple SMTP email server -
    • -
    • -smtp4cl - - SMTP4CL is a SMTP client library to send messages to an MTA (Mail Transport Agent) -
    • -
    • -trivial-email-utf-8 - - trivial-email-utf-8 is like CL-SMTP's send-mail, but qprints any Unicode characters in the message title or content and includes the appropriate headers if necessary -
    • -

    Libraries specific to MIME: (main topic: MIME) -

    Dealing with URIs: (main topic: URI) -

    Messaging: (main topic: messaging) -

    Wire formats: (main topic: wire format) -

      -
    • -ASN.1 - - Abstract Syntax Notation #1, the Common Lisp implementation and language mapping -
    • -
    • -cl-marshal - - Simple and fast marshalling of all kinds of Lisp data structures -
    • -
    • -cl-protobufs - - CL-PROTOBUFS is a library to use Google Protocol Buffers in Common Lisp, originally written by Scott McKay at ITA by Google -
    • -
    • -cl-stomp - - cl-stomp is an implementation of STOMP (Streaming Text Orientated Messaging Protocol) -
    • -
    • -de.setf.thrift - - de.setf.thrift is a binding for the Apache Thrift framework for scalable cross-language services development -
    • -
    • -S-PROTOBUF - - S-PROTOBUF is a library to encode data in the Google Protocol Buffers wire format -
    • -
    • -Swank - - Swank is distributed as part of SLIME -
    • -
    • -userial - - A Common Lisp library for serializing to binary buffers -
    • -

    IRC clients and bots: (main topic: IRC) -

      -
    • -beirc - - beirc is a CLIM IRC client application using the cl-irc library as a backend, initially written by Gilbert Baumann, now maintained by Dave Murray and others -
    • -
    • -Birch - - Birch is a simple IRC client library -
    • -
    • -cl-irc - - cl-irc is an IRC library written in Common Lisp -
    • -
    • -Colleen - - Colleen is yet another IRC chat bot framework -
    • -
    • -IRC Quotes - - Some moments from IRC, preserved for posterity, some humorous -
    • -
    • -irc-logger - - irc-logger is a networking library written by Kevin Rosenberg which uses the cl-irc library to provide multichannel Internet Relay Chat (IRC) logging -
    • -
    • -Lisp IRC Bots - - There are several IRC bots written in Lisp -
    • -
    • -lispcafe - - #lispcafe on www.libera.chat -
    • -
    • -lisppaste - - lisppaste sits on a webserver and users can paste text into it -
    • -
    • -Maiden - - Maiden is a collection of systems to help you build applications and libraries that interact with chat servers -
    • -
    • -minion - - minion is an IRC robot (who prefers the term "electronically composed.") For online help, try /msg minion help -
    • -
    • -trivial-irc - - trivial-irc is a small IRC library that provides only very basic facilities for communicating with IRC servers, and has no facilities for extensions like DCC, CTCP etc -
    • -
    • -WeirdIRC - - WeirdIRC is a simple IRC client using CLIM -
    • -
    • -X-Chat Common Lisp Plugin - - The X-Chat Common Lisp plugin is a plugin for X-Chat version 2 and up (the famous IRC client) that allows you to use Common Lisp scripts to control X-Chat behaviour -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Nick Levine.html b/clones/lisp/www.cliki.net/Nick Levine.html deleted file mode 100644 index c6ec4c38..00000000 --- a/clones/lisp/www.cliki.net/Nick Levine.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Nick Levine - - - - - - - -
    Nick Levine
    Visit my home page!. See my online resumé for background details. I am a Person and currently work as a consultant for Ravenbrook Limited.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Nicolas Hafner.html b/clones/lisp/www.cliki.net/Nicolas Hafner.html deleted file mode 100644 index ff5e3c4d..00000000 --- a/clones/lisp/www.cliki.net/Nicolas Hafner.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Nicolas Hafner - - - - - - - -
    Nicolas Hafner
    Wants to become a frill-necked lizard when they grow up.

    Usually found on the net with the handle Shinmera, this Person mainly concerns themselves with the mental anguish of believing to not be productive enough. Aside from coding, this Person also expresses themselves through drawing, writing and music. Everything about them can be found on shinmera.com

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Nicolas Neuss.html b/clones/lisp/www.cliki.net/Nicolas Neuss.html deleted file mode 100644 index 2fc4fc81..00000000 --- a/clones/lisp/www.cliki.net/Nicolas Neuss.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Nicolas Neuss - - - - - - - -
    Nicolas Neuss
    I'm a mathematician working in numerical mathematics, especially the solution of partial differential equations.

    Project: Femlisp.

    Homepage.


    -Person
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Nikodemus Siivola.html b/clones/lisp/www.cliki.net/Nikodemus Siivola.html deleted file mode 100644 index 8bd97497..00000000 --- a/clones/lisp/www.cliki.net/Nikodemus Siivola.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Nikodemus Siivola - - - - - - - -
    Nikodemus Siivola
    I'm an SBCL hacker, and my company Steel Bank Studio provides SBCL support and development.

    On the side I work on both other public projects like Alexandria, and more personal ones such as Raylisp.

    Homepage: http://random-state.net
    -Email: nikodemus@random-state.net

    person

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Nils Glanz.html b/clones/lisp/www.cliki.net/Nils Glanz.html deleted file mode 100644 index 116675c3..00000000 --- a/clones/lisp/www.cliki.net/Nils Glanz.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Nils Glanz - - - - - - - -
    Nils Glanz
    Nils Glanz ist eine Person. -Welche in Braunschweig (Niedersachsen) wohnt und auf die Gaußschule am Löwenwall geht.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/North.html b/clones/lisp/www.cliki.net/North.html deleted file mode 100644 index 49e90bd6..00000000 --- a/clones/lisp/www.cliki.net/North.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: north - - - - - - - -
    north
    North is a library that implements the OAuth 1.0a consumer and provider protocols. It allows you to connect to an OAuth provider and request its resources, or to build your own OAuth provider.

    The project can be found on github including a fully documented symbol index and a getting started tutorial.
    -As of March 2016, North is available on Quicklisp.

    North is licensed under the Artistic License 2.0.


    -web web api
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Ntccrt.html b/clones/lisp/www.cliki.net/Ntccrt.html deleted file mode 100644 index def62e82..00000000 --- a/clones/lisp/www.cliki.net/Ntccrt.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: Ntccrt - - - - - - - -
    Ntccrt
    Ntccrt is an interpreter for the Non-deterministic Timed Concurrent Constraint (ntcc) calculus capable of real-time interaction. Specifications for Ntccrt can be written in both, OpenMusic and Common Lisp. Then they are compiled to real-time C++ code as an stand-alone program using Midishare or as an external for Pure Data or Max/MSP using the Flext library.

    This library was created and mantained by Mauricio Toro Bermudez.

    Download it at: -http://ntccrt.sourceforge.net


    -Topics: music
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Nuprl.html b/clones/lisp/www.cliki.net/Nuprl.html deleted file mode 100644 index 5183c299..00000000 --- a/clones/lisp/www.cliki.net/Nuprl.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Nuprl - - - - - - - -
    Nuprl
    The Nuprl system, based on the type theory of Martin-Löf, is a system for manipulating proofs. By default Nuprl runs in the cloud, and is intended primarily to be used as a web service rather than as standalone software. Nuprl is a product of the PRL project.


    -Application Mathematics Theorem Provers
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Nyxt.html b/clones/lisp/www.cliki.net/Nyxt.html deleted file mode 100644 index b6813caa..00000000 --- a/clones/lisp/www.cliki.net/Nyxt.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Nyxt - - - - - - - -
    Nyxt
    Nyxt is a keyboard-oriented, extensible web-browser designed for power users. It has familiar key-bindings (Emacs, VI, CUA), is fully configurable and extensible in Lisp, and has powerful features for productive professionals. Nyxt (formerly Next) is under active development.

    Depends on: alexandria, bordeaux-threads, cl-css, cl-json, cl-markup, cl-ppcre, cl-prevalence, closer-mop, cl-containers, moptilities, dexador, enchant, iolib, local-time, log4cl, lparallel, mk-string-metrics, osicat, parenscript, quri, serapeum, str, plump, swank, trivia, trivial-clipboard, trivial-features, trivial-package-local-nicknames, trivial-types, unix-opts

    Repository: https://github.com/atlas-engineer/nyxt

    License: BSD 3-Clause


    -HTTP client application
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/OCML.html b/clones/lisp/www.cliki.net/OCML.html deleted file mode 100644 index ca6638d6..00000000 --- a/clones/lisp/www.cliki.net/OCML.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: OCML - - - - - - - -
    OCML
    The Operational Conceptual Modelling Language (OCML) combines logical reasoning in a frame-based language with the flexibility of extra-logical facilities like procedural attachment. It is implemented in Common Lisp, and has been tested with Lispworks, SBCL, and Allegro implementations. It is used by the Internet Reasoning System.

    Repository: https://github.com/kmi/ocml

    License: BSD-like


    -Theorem Provers
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ODS4CL.html b/clones/lisp/www.cliki.net/ODS4CL.html deleted file mode 100644 index a561f431..00000000 --- a/clones/lisp/www.cliki.net/ODS4CL.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - CLiki: ODS4CL - - - - - - - -
    ODS4CL
    ODS4CL can produce spreadsheets in OpenDocument (OpenOffice) file format. It can produce multiple page sheets but cells can't contain formulas. This package depends on SCLF.

    Homepage: http://wcp.sdf-eu.org/software/

    Download: http://wcp.sdf-eu.org/software/ods4cl-20090827T153948.tbz

    License: LGPL

    Here is an example:

    (ods4cl:make-spreadsheet "/tmp/foo.ods" - '(("My Sheet" - (a b c) - (1.2 3.4 5.6) - ("foo" "bar" "baz"))))
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/OMax.html b/clones/lisp/www.cliki.net/OMax.html deleted file mode 100644 index 0d680eb3..00000000 --- a/clones/lisp/www.cliki.net/OMax.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: OMax - - - - - - - -
    OMax
    OMax is a software environment which learns in real-time typical features of a musician's style and plays along with him interactively, giving the flavor of a machine co-improvisation.

    Homepage: http://recherche.ircam.fr/equipes/repmus/OMax/

    License: ???

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/OPENMCL.html b/clones/lisp/www.cliki.net/OPENMCL.html deleted file mode 100644 index 1735fe65..00000000 --- a/clones/lisp/www.cliki.net/OPENMCL.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: OpenMCL - - - - - - - -
    OpenMCL
    OpenMCL is called Clozure Common Lisp (CCL) now.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ORF.html b/clones/lisp/www.cliki.net/ORF.html deleted file mode 100644 index 27c1f860..00000000 --- a/clones/lisp/www.cliki.net/ORF.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - CLiki: ORF - - - - - - - -
    ORF
    A macro seen in some utility/convenience layers. A simple definition (from McCLIM) is:

    (define-modify-macro orf (&rest args) or)

    Another possibility is to modify the place only if it's null. This definition is more involved:

    (defmacro orf (place &rest forms &environment environment) - (multiple-value-bind (temps vals news writer reader) (get-setf-expansion place environment) - (let* ((new-form `(or ,@forms)) (set-form `(multiple-value-bind ,news ,new-form ,writer))) - `(let* (,.(mapcar #'list temps vals)) (or ,reader ,set-form)))))

    There's also an atomic version of orf, using SBCL's get-cas-expansion.


    -macro example
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ORM.html b/clones/lisp/www.cliki.net/ORM.html deleted file mode 100644 index 6f906d18..00000000 --- a/clones/lisp/www.cliki.net/ORM.html +++ /dev/null @@ -1,76 +0,0 @@ - - - - - CLiki: ORM - - - - - - - -
    ORM
    ORM (Object-Relational Mapping) is a way to persist CLOS objects in relational (SQL) databases.

      -
    • -cl-perec - - cl-perec is a CLOS ORM based on cl-rdbms -
    • -
    • -CLSQL - - CLSQL is a Database interface that can access a number of different SQL database engines -
    • -
    • -CLSQL-ORM - - CLSQL-ORM is an library to generate clsql view-classes from existing databases, by introspecting on the "information_schema" of the running database -
    • -
    • -Mito - - An ORM for Common Lisp with migrations, relationships and PostgreSQL support -
    • -
    • -Submarine - - Submarine is a Common Lisp library that's somewhere between a PostgreSQL library and an object persistence system -
    • -
    • -YstokSQL - - YstokSQL is a Common Lisp library for interfacing relational Database via ODBC -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/OSC.html b/clones/lisp/www.cliki.net/OSC.html deleted file mode 100644 index 388d0b37..00000000 --- a/clones/lisp/www.cliki.net/OSC.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: OSC - - - - - - - -
    OSC
    An implementation of the OpenSoundControl protocol. OSC is a networking protocol used "for communication among computers, sound synthesizers, and other multimedia devices"

    OSC is commonly used in; realtime music software, as well as some graphics toolkits and vj software.

    more information can be found at the cnmat site, or in the git repo.

    A currently maintained fork with additional features is available here.


    -audio
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/OSICAT.html b/clones/lisp/www.cliki.net/OSICAT.html deleted file mode 100644 index daaf2b32..00000000 --- a/clones/lisp/www.cliki.net/OSICAT.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Osicat - - - - - - - -
    Osicat
    Operating system interface library mainly for Unix. It is not a POSIX-style API, but rather a simple lispy accompaniment to the standard ANSI facilities, built on top of CFFI.

    Homepage


    -system programming
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/OWL.html b/clones/lisp/www.cliki.net/OWL.html deleted file mode 100644 index 2145c46d..00000000 --- a/clones/lisp/www.cliki.net/OWL.html +++ /dev/null @@ -1,98 +0,0 @@ - - - - - CLiki: OWL - - - - - - - -
    OWL
    -The W3C OWL 2 Web Ontology Language (OWL) is a Semantic Web language designed to represent rich and complex knowledge about things, groups of things, and relations between things. -- OWL 2 Web Ontology Language Primer -

    Documentation

    Current documentation of OWL, from the W3C OWL Working Group, may be referenced onto the official OWL 2 Web Ontology Language Document Overview. The following may serve as a cribbed outline for the said documentation, but is not intended to serve as a full substitute for the W3C's document overview to the same.

    Implementations

    RDF implementations would support representation of OWL ontologies via RDF mapping.

    -


    -Categories: Semantic Web
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Object Representation.html b/clones/lisp/www.cliki.net/Object Representation.html deleted file mode 100644 index ff99ce00..00000000 --- a/clones/lisp/www.cliki.net/Object Representation.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: Object Representation - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ObjectStore.html b/clones/lisp/www.cliki.net/ObjectStore.html deleted file mode 100644 index ae600cec..00000000 --- a/clones/lisp/www.cliki.net/ObjectStore.html +++ /dev/null @@ -1,104 +0,0 @@ - - - - - CLiki: ObjectStore - - - - - - - -
    ObjectStore
    ObjectStore is a commercial object database for C++ and Java. The project was originally founded in 1988 by several former Symbolics employees, including Daniel Weinreb. It was inspired by the Statice database originally developed at Symbolics. The following are object database systems written in Lisp, based on the standard Common Lisp Object System:

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Objective-CL.html b/clones/lisp/www.cliki.net/Objective-CL.html deleted file mode 100644 index 1ee676b7..00000000 --- a/clones/lisp/www.cliki.net/Objective-CL.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Objective-CL - - - - - - - -
    Objective-CL
    Objective-CL is a Common-Lisp/Objective-C bridge currently supporting a range of Lisp implementations on Mac OS X and GNUstep.

    Volunteers welcome!


    -LGPL FFI Cocoa
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Obsolete.html b/clones/lisp/www.cliki.net/Obsolete.html deleted file mode 100644 index cf8d58fb..00000000 --- a/clones/lisp/www.cliki.net/Obsolete.html +++ /dev/null @@ -1,297 +0,0 @@ - - - - - CLiki: obsolete - - - - - - - -
    obsolete
    Collection of pages about obsolete software. This is intended to help cleaning up CLiki. -
      -
    • -ASDF-Binary-Locations - - Note: this system is no longer being maintained -
    • -
    • -asdf-config - - (DEPRECATED, July 2006: This functionality was superseded by Gary King's new asdf operation load-preferences—it provides a slightly different and more general variant of the variable initialization support of asdf-config) -
    • -
    • -asdf-package-system - - asdf-package-system is an ASDF-extension (pre-3.1) whereby every file is its own system, and starts with a defpackage from which dependencies are deduced -
    • -
    • -asdf-system-connections - - Note: this system is no longer being maintained -
    • -
    • -asdf-upgrade - - This is a start at an ASDF-extension to upgrade -
    • -
    • -atom-slime - - Atom-slime is an Atom plugin for Common Lisp development -
    • -
    • -bundler - - the Bundler is an ASDF-Extension to combine many systems into one automatically -
    • -
    • -cclan-get - - cclan-get downloads and install vn-cclan packages automatically -
    • -
    • -ch-image - - ch-image is a common lisp image representation and processing library -
    • -
    • -ch-util - - Cyrus Harmon's CL utilities -
    • -
    • -CIM - - CIM aims to be a tool which allows you to easily install, manage, run REPL with, and execute with multiple Common Lisp implementation and systems -
    • -
    • -cl-async-future - - cl-async-future is a future (or "promise") implementation that allows a simple abstraction for values that may or may not be available yet -
    • -
    • -cl-couchdb - - cl-couchdb is a Common Lisp library for working with the CouchDB system -
    • -
    • -cl-en - - cl-en provides a common lisp interface to the echonest music analysis web API -
    • -
    • -CL-LDAP - - CL-LDAP is a UFFI interface to the OpenLDAP library -
    • -
    • -CL-Librarian - - CL-Librarian aims to be a manager for Common Lisp libraries that is focused on libraries updated dynamically by version control systems and targeted at power users -
    • -
    • -cl-match - - [unmaintained, optima recommended] extended ML-style pattern matching library -
    • -
    • -cl-pattern - - [superseded by optima] cl-pattern is a very fast ML-like pattern matching library for Common Lisp -
    • -
    • -CL-SDL - - CL-SDL is a set of Common Lisp bindings for the SDL graphics library, and OpenGL, using UFFI -
    • -
    • -cl-semantic - - cl-semantic is a collection of RDF/OWL extraction and relationship parsing macros -
    • -
    • -cl-toolbox - - This package is now obsolete -
    • -
    • -cl-variates - - CL-Variates is a set of platform independent Common Lisp utilities for mucking with random number generation -
    • -
    • -cl-yahoo - - CL-YAHOO is a Common Lisp interface to the Yahoo! API, a web API which enables searching the web through yahoo -
    • -
    • -cl-zlib - - CL-ZLIB is a UFFI interface to the zlib compression library -
    • -
    • -CLEE - - Unmaintained libevent bindings -
    • -
    • -CLiCC - - CLiCC is a Common Lisp to C Compiler, last released 1995 -
    • -
    • -db-sockets - - db-sockets is obsolete and no longer supported, see usocket for a currently maintained library -
    • -
    • -DebianIRC - - Drop by Debian IRC (irc.debian.org) channel #lisp some time -
    • -
    • -defsystem-compatibility - - Defsystem-compatibility papers over the differences between system definition tools and also provides a small set of relective capabilities to help system groveling tools be more portable -
    • -
    • -Dynamic ADTs - - Dynamic ADTs are abstract data types with a framework for observation and adaptation -
    • -
    • -eager-future - - Eager Future has been superseded by Eager Future2 -
    • -
    • -ediware - - Ediware is a darcs mirror of Edi Weitz's libraries, maintained and updated by Luís­ Oliveira using the downloadable release tarballs at http://common-lisp.net/~loliveira/ediware/ -
    • -
    • -Encline - - Encline is a Common Lisp software engine for enterprise-class software development -
    • -
    • -Eos - - Eos is an obsolete fork of FiveAM developed by Adlai Chandrasekhar -
    • -
    • -fare-matcher - - [superseded by optima according to optima's CLiki page] Extends CL with ML-like pattern matching in an extensible way -
    • -
    • -faslpath - - Faslpath is a build tool that relies on package naming conventions to automatically resolve dependencies between files, eliminating the need to have a separate system definition/make file -
    • -
    • -folio - - [superseded by folio2] A set of modules that make some functional programming idioms more convenient for use in Common Lisp -
    • -
    • -ILISP - - ILISP is an Emacs based interface to various lisp-like systems - a pretty essential development aid -
    • -
    • -IMHO - - IMHO is dead, as far as anyone knows -
    • -
    • -IOlib-POSIX - - This library is obsolete and should not be used -
    • -
    • -LIJOS - - The LIJOS system is a Lisp Implementation of the Java ObjectStream -
    • -
    • -lisp2wish - - lisp2wish is not actively maintained, see cl-tk for a currently maintained interface to Tk -
    • -
    • -LispGameIssues - - This page might be obsolete and superseded by the Lisp Games Wiki. -
    • -
    • -MPC - - MPC is a fork of Drew Crampsie's Smug, a monadic parser combinators library for Common Lisp -
    • -
    • -net-telent-date - - net-telent-date consists of the time parsing routines from CMUCL and a universal-time to RFC 822 date converter -
    • -
    • -optima - - [deprecated by trivia, see link below] A pattern matching library -
    • -
    • -PonzuDB - - This was just an experimental project -
    • -
    • -pxmlutils - - development on the xml parser in pxmlutils has stopped, use Miles Egan's XMLS parser instead. -
    • -
    • -RDNZL - - RDNZL (pronounced "Redunzl") enables Common Lisp applications to interact with dot-NET libraries -
    • -
    • -Reticule - - Reticule is an NNTP server written in Common Lisp by Lars Magne Ingebrigtsen -
    • -
    • -rt - - rt is a 1990 regression testing library that is used by some older software -
    • -
    • -Salza - - If you're writing new code, you probably want to check out Salza2, which is a from-scratch reimplementation, and is much faster and simpler (and maintained). -
    • -
    • -salza-png - - salza-png is considered obsolete by the author in favor of ZPNG. -
    • -
    • -ssqlfs - - ssqlfs is an application which generates a SQL database which corresponds -
    • -
    • -Stefil - - hu.dwim.stefil is an abandoned test framework with a living fork at fiasco, and its philosophy is to stay as transparent as possible, disrupting the normal Lisp application development process as little as possible -
    • -
    • -The Old Cliki - - This is a page about the old version of the wiki software that used to run cliki.net -
    • -
    • -TIMER - - An event scheduling library for SBCL by Zach Beane -
    • -
    • -trivial-https - - trivial-https was a fork of Brian Mastenbrook's trivial-http adding support for HTTPS using CL+SSL -
    • -
    • -turtl - - Turtl lets you take notes, bookmark websites, and store documents for sensitive projects -
    • -
    • -Verrazano - - Verrazano is no longer actively developed; see cl-autowrap (which uses c2ffi) or maybe SWIG. -
    • -
    • -xmlutils - - The xmlutils project is no longer hosted at Franz because it has been superseded by the newer sax parser -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Obtain libraries.html b/clones/lisp/www.cliki.net/Obtain libraries.html deleted file mode 100644 index cf2d90b2..00000000 --- a/clones/lisp/www.cliki.net/Obtain libraries.html +++ /dev/null @@ -1,90 +0,0 @@ - - - - - CLiki: Obtain libraries - - - - - - - -
    Obtain libraries
    Here is a list of projects/libraries/tools intended to install libraries easily.

    Versioned releases -

      -
    • -Quicklisp is a library installer and repository that features a huge number of Free Software and other open source CL libraries. It is the de-facto standard way of obtaining libraries. -
    • -
    • -obsoleted, historical note: ASDF-Install was around before Quicklisp came along. -
    • -
    • -obsoleted, historical note: Lispy aimed to do what Quicklisp did, but never became popular. -
    • -
    • -obsoleted, historical note: LibCL aims to be a single-install bundle of libraries. -
    • -

    Scripts to install libraries from version control repositories -

    Decentralized -

      -
    • -asia, ASDF2 Software Installation Assistant. -
    • -

    Linux package managers -


    -programming tips
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Oct.html b/clones/lisp/www.cliki.net/Oct.html deleted file mode 100644 index c138a965..00000000 --- a/clones/lisp/www.cliki.net/Oct.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Oct - - - - - - - -
    Oct
    Lisp implementation of quad-double floats

    Oct is a fairly portable Mathematics package for handling quad-double floats which have about 200 bits of precision.

    Further information can be found at the Oct home page.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Odd Benchmarks.html b/clones/lisp/www.cliki.net/Odd Benchmarks.html deleted file mode 100644 index 0477b157..00000000 --- a/clones/lisp/www.cliki.net/Odd Benchmarks.html +++ /dev/null @@ -1,91 +0,0 @@ - - - - - CLiki: Odd Benchmarks - - - - - - - -
    Odd Benchmarks
    A simple benchmark where one tries to set a value in a CLOS-object and in a hash-table, compares how much time this takes. The source may be found at http://www.ii.uib.no/~stig/set-speed-lisp.tar -(The benchmark was done because I was uncertain of whether to use slots or a hash-table for an application).

    ---------------------------------------------------------------
    -SLOT-SETTING TEST on CMU Common Lisp release x86-linux 3.0.8 18c+ 31 December 2001 build 3030
    -Setting via an accessor [1000000 accesses]:
    -Evaluation took:
    -  0.19 seconds of real time
    -  0.19 seconds of user run time
    -  0.0 seconds of system run time
    -  1 page fault and
    -  0 bytes consed.
    -Setting via SLOT-VALUE [1000000 accesses]:
    -Evaluation took:
    -  1.37 seconds of real time
    -  1.31 seconds of user run time
    -  0.03 seconds of system run time
    -  0 page faults and
    -  0 bytes consed.
    -Setting in EQ-table [1000000 accesses](10000 objs already in table):
    -Evaluation took:
    -  0.92 seconds of real time
    -  0.75 seconds of user run time
    -  0.03 seconds of system run time
    -  0 page faults and
    -  0 bytes consed.
    -Setting in EQL-table [1000000 accesses](10000 objs already in table):
    -Evaluation took:
    -  1.38 seconds of real time
    -  1.0 seconds of user run time
    -  0.06 seconds of system run time
    -  0 page faults and
    -  0 bytes consed.
    -Setting in EQUAL-table [1000000 accesses](10000 objs already in table):
    -Evaluation took:
    -  2.09 seconds of real time
    -  2.01 seconds of user run time
    -  0.04 seconds of system run time
    -  0 page faults and
    -  0 bytes consed.
    ---------------------------------------------------------------
    -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Okra.html b/clones/lisp/www.cliki.net/Okra.html deleted file mode 100644 index 918d6b22..00000000 --- a/clones/lisp/www.cliki.net/Okra.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Okra - - - - - - - -
    Okra
    Okra provides CFFI bindings to the Ogre 3D graphics engine.

    The project page is at https://github.com/erikg/okra

    Related libraries: Buclet, clois-lane.

    Topics: graphics library.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Ola Rinta-Koski.html b/clones/lisp/www.cliki.net/Ola Rinta-Koski.html deleted file mode 100644 index 626c7494..00000000 --- a/clones/lisp/www.cliki.net/Ola Rinta-Koski.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Ola Rinta-Koski - - - - - - - -
    Ola Rinta-Koski
    Ola Rinta-Koski is probably a Person. He wrote blogsym. Find out what else he is up to at http://ola.rinta-koski.net/
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Ole Arndt.html b/clones/lisp/www.cliki.net/Ole Arndt.html deleted file mode 100644 index 1661c813..00000000 --- a/clones/lisp/www.cliki.net/Ole Arndt.html +++ /dev/null @@ -1,57 +0,0 @@ - - - - - CLiki: Ole Arndt - - - - - - - -
    Ole Arndt
    A Person.

    Stuff on Cliki: -

    -Reachable via mail: anwyn at sugarshark dot com. -As time permits on #lisp as sugarshark.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Oliver Markovic.html b/clones/lisp/www.cliki.net/Oliver Markovic.html deleted file mode 100644 index 3680e194..00000000 --- a/clones/lisp/www.cliki.net/Oliver Markovic.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: Oliver Markovic - - - - - - - -
    Oliver Markovic
    Ordinary Person. Author of cl-package-aliases.

    E-Mail: entrox AT entrox DOT org -IRC: entrox at #lisp -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/On Lisp.html b/clones/lisp/www.cliki.net/On Lisp.html deleted file mode 100644 index af548ff6..00000000 --- a/clones/lisp/www.cliki.net/On Lisp.html +++ /dev/null @@ -1,92 +0,0 @@ - - - - - CLiki: On Lisp - - - - - - - -
    On Lisp
    by Paul Graham

    An advanced textbook on Common Lisp, with special focus on macros. Highly recommended. Currently out of print. Paul Graham has also gotten the copyright back and has made it freely available (both PDF and Postscript) on his website. A couple of unofficial TexInfo versions exist as well. The source code for the examples is also available—both from the official site and as PgUtils.

    - - - - - - - - - - - - - - - - - - - - -
    On Lisp (official site) -http://www.paulgraham.com/onlisp.html (PDF, PostScript, Errata -
    TexInfo (unofficial version by Shawn Betts)http://mirror.lug.udel.edu/pub/fink/distfiles/onlisp.texi.gz
    HTML (based on unofficial texinfo version)http://www.bookshelf.jp/texi/onlisp/onlisp.html
    epubhttps://bitbucket.org/mbishop/on-lisp
    PDF (with LaTeX sources)https://bitbucket.org/blevyq/onlisp


    -When defining continuation-passing macros (p. 267) Paul Graham assumes that *cont* is a global with lexical scope (p. 268):

    It is by manipulating *cont* that we will get the effect of continuations. -Although *cont* has a global value, this will rarely be the one used: *cont* will -nearly always be a parameter, captured by =values and the macros defined by -=defun. Within the body of add1, for example, *cont* is a parameter and not the -global variable. This distinction is important because these macros wouldn't work -if *cont* were not a local variable. That’s why *cont* is given its initial value -in a setq instead of a defvar: the latter would also proclaim it to be special.

    The Common Lisp standard, however, does not specify global lexical variables, and the behavior of setq with an undefined variable has undefined consequences. With present day Common Lisp implementations, the aforementioned macros just don't work. Also, this issue can be very confusing for newcomers. Suggested solutions for fixing the macros are (note that #'values is used instead of #'identity - according to Paul Graham's Errata): -

      -
    • emulate lexically scoped global variable *cont* using symbol-macro that can be shadowed by let or lambda:
      -(defvar *actual-cont* #'values)
      -(define-symbol-macro *cont* *actual-cont*) -
    • -
    • just omit (setq *cont* #'identity) and call "top-level" continuation-passing function as (=somefunc #'values ...) -
    • -
    • ... -
    • -
    -Another reference (1998) to the same issue in the book (1993) is at https://groups.google.com/g/comp.lang.lisp/c/d5bsSR0o4Ps/m/6Hxj3TCvDHQJ.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Online Tutorial.html b/clones/lisp/www.cliki.net/Online Tutorial.html deleted file mode 100644 index cc35f721..00000000 --- a/clones/lisp/www.cliki.net/Online Tutorial.html +++ /dev/null @@ -1,155 +0,0 @@ - - - - - CLiki: Online Tutorial - - - - - - - -
    Online Tutorial
    Online Tutorials for programming Common Lisp or with Common Lisp. See also the rest of the Documents and Lisp Books, and the Getting Started guide.

    Recommended for beginners

    Further reading

    University course material

    Implementation Provided Tutorials

    Those are Common Lisp tutorial provided by implementations. They may have some implementation specific examples, but may still be useful to all.

    Cliki Tutorials

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Online tutorial.html b/clones/lisp/www.cliki.net/Online tutorial.html deleted file mode 100644 index cc35f721..00000000 --- a/clones/lisp/www.cliki.net/Online tutorial.html +++ /dev/null @@ -1,155 +0,0 @@ - - - - - CLiki: Online Tutorial - - - - - - - -
    Online Tutorial
    Online Tutorials for programming Common Lisp or with Common Lisp. See also the rest of the Documents and Lisp Books, and the Getting Started guide.

    Recommended for beginners

    Further reading

    University course material

    Implementation Provided Tutorials

    Those are Common Lisp tutorial provided by implementations. They may have some implementation specific examples, but may still be useful to all.

    Cliki Tutorials

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Open Agent Engine.html b/clones/lisp/www.cliki.net/Open Agent Engine.html deleted file mode 100644 index 726275ab..00000000 --- a/clones/lisp/www.cliki.net/Open Agent Engine.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Open Agent Engine - - - - - - - -
    Open Agent Engine
    Open Agent Engine is an object oriented graphics framework based on classes representing OpenGL 2.0 windows (opaque and transparent), and OpenGL views with methods to handle rendering, animation, mouse input, keyboard events, gamePad input, texture management, and shader manipulation.

    License: LGPL

    Homepage: http://www.agentsheets.com/lisp/OpenGL.html

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/OpenGL.html b/clones/lisp/www.cliki.net/OpenGL.html deleted file mode 100644 index 6333cead..00000000 --- a/clones/lisp/www.cliki.net/OpenGL.html +++ /dev/null @@ -1,112 +0,0 @@ - - - - - CLiki: OpenGL - - - - - - - -
    OpenGL
    Interfaces and implementations of the OpenGL 3d graphics library

    Work is ongoing (as of Dec. 2009) to add the GLX extension to CLX. See http://www.ltn.lv/~jonis/glx.html for details.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/OpenMCL.html b/clones/lisp/www.cliki.net/OpenMCL.html deleted file mode 100644 index 1735fe65..00000000 --- a/clones/lisp/www.cliki.net/OpenMCL.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: OpenMCL - - - - - - - -
    OpenMCL
    OpenMCL is called Clozure Common Lisp (CCL) now.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/OpenMusic.html b/clones/lisp/www.cliki.net/OpenMusic.html deleted file mode 100644 index a000d306..00000000 --- a/clones/lisp/www.cliki.net/OpenMusic.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: OpenMusic - - - - - - - -
    OpenMusic
    OpenMusic is a visual programming language based on Common Lisp and CLOS. It is icon oriented and its control structures interface with the corresponding Lisp ones. Although OpenMusic has been designed for Music composition, it may be used as a general purpose language.

    See https://openmusic-project.github.io/ for more details.

    OpenMusic was originally developed at IRCAM for MacOS using Macintosh Common Lisp. It was ported on Windows XP in 2005 (using Allegro Common Lisp).

    The source code is distributed under the terms of the GPL.

    A port to CMUCL on Linux was done by Gerardo M. Sarria M. and Jose Fernando Diago.

    Another port to SBCL is to be released.

    A port to Linux, done by Anders Vinjar, using LispWorks, has been available since august 2013. See https://openmusic-project.github.io/openmusic/download for more info.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Osicat.html b/clones/lisp/www.cliki.net/Osicat.html deleted file mode 100644 index daaf2b32..00000000 --- a/clones/lisp/www.cliki.net/Osicat.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Osicat - - - - - - - -
    Osicat
    Operating system interface library mainly for Unix. It is not a POSIX-style API, but rather a simple lispy accompaniment to the standard ANSI facilities, built on top of CFFI.

    Homepage


    -system programming
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Other CLikis.html b/clones/lisp/www.cliki.net/Other CLikis.html deleted file mode 100644 index 965d96a0..00000000 --- a/clones/lisp/www.cliki.net/Other CLikis.html +++ /dev/null @@ -1,62 +0,0 @@ - - - - - CLiki: Other CLikis - - - - - - - -
    Other CLikis
    If you're running a web site based on CLiki, feel free to add a link to it here.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Overlord.html b/clones/lisp/www.cliki.net/Overlord.html deleted file mode 100644 index 1c2b4bbd..00000000 --- a/clones/lisp/www.cliki.net/Overlord.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Overlord - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/PAIP.html b/clones/lisp/www.cliki.net/PAIP.html deleted file mode 100644 index 1af4eb38..00000000 --- a/clones/lisp/www.cliki.net/PAIP.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: PAIP - - - - - - - -
    PAIP
    Paradigms of Artificial Intelligence Programming: Case Studies in Common Lisp.

    Written by Peter Norvig. Morgan Kaufmann, 1992. ISBN 1-55860-191-0.

    Web page of the book.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/PARENSCRIPT.html b/clones/lisp/www.cliki.net/PARENSCRIPT.html deleted file mode 100644 index ce583b4f..00000000 --- a/clones/lisp/www.cliki.net/PARENSCRIPT.html +++ /dev/null @@ -1,77 +0,0 @@ - - - - - CLiki: parenscript - - - - - - - -
    parenscript
    Parenscript is a translator from an extended subset of Common Lisp to JavaScript. Parenscript code can run almost identically on both the browser (as JavaScript) and server (as Common Lisp).

    Parenscript code is treated the same way as Common Lisp code, making the full power of Lisp macros available for JavaScript. This provides a web development environment that is unmatched in its ability to reduce code duplication and provides advanced metaprogramming facilities to web developers.

    At the same time, Parenscript is different from almost all other "language X" to JavaScript translators in that it imposes almost no overhead.

    License: BSD-3-Clause

    Homepage: http://common-lisp.net/project/parenscript/

    Parenscript is available in Quicklisp since version 2.1 (at least).

    It is a kind of s-exp syntax for Javascript.

    Live coding

    Trident-mode is an Emacs mode for live Parenscript interaction.

    More precisely it is a minor mode and a collection of commands for working with Parenscript code in SLIME and sending it to the browser via Skewer. The goal is to create an environment for hacking Parenscript which fits as naturally as possible into the Lisp style of interactive development. It can also open a Javascript REPL connected to the browser and connect to a page the server of which you don’t control.

    TodoMVC example

    This Todo MVC example is implemented in Parenscript, using the Panic wrapper around React.

    All pages in topic "Parenscript":

    -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/PARSE-NUMBER.html b/clones/lisp/www.cliki.net/PARSE-NUMBER.html deleted file mode 100644 index 09f6b61b..00000000 --- a/clones/lisp/www.cliki.net/PARSE-NUMBER.html +++ /dev/null @@ -1,65 +0,0 @@ - - - - - CLiki: parse-number - - - - - - - -
    parse-number
    parse-number accepts an arbitrary string and attempts to parse the string into one of the standard Common Lisp number types, if possible, or else parse-number signals an error of type invalid-number.

    Exported symbols

    Function PARSE-NUMBER (string &key start end radix float-format)
    - Function PARSE-REAL-NUMBER (string &key start end radix float-format)
    - Function PARSE-POSITIVE-REAL-NUMBER (string &key start end radix float-format)
    - Condition INVALID-NUMBER
    - Reader INVALID-NUMBER-VALUE
    - Reader INVALID-NUMBER-REASON

    Download

    The source code is availabe from a repository at github. -You can download the repository as a zip file or you can get a -tar file of the version 1.3.
    -In addition parse-number is available via Quicklisp.

    Installation

    parse-number comes with an asdf file for compilation.

    You can test the installation with asdf. This is an example output: -

    - (asdf:test-system :parse-number)
    -=> .PARSE-NUMBER: 23 assertions passed, 0 failed.
    -=> T
    -

    Documentation

    An online documentation is availabe at parse-number API documentation.

    Note

    parse-number does not handle thousands separators, so if you use this package, you might think about adding that.


    -parser utilities
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/PCALL.html b/clones/lisp/www.cliki.net/PCALL.html deleted file mode 100644 index d2ecc7be..00000000 --- a/clones/lisp/www.cliki.net/PCALL.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: pcall - - - - - - - -
    pcall
    PCall is a concurrency library that implements simple 'result-oriented' parallelism on top of Bordeaux-Threads. See also this article for background information.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/PCL.html b/clones/lisp/www.cliki.net/PCL.html deleted file mode 100644 index 126fae90..00000000 --- a/clones/lisp/www.cliki.net/PCL.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: pcl - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/PCall.html b/clones/lisp/www.cliki.net/PCall.html deleted file mode 100644 index d2ecc7be..00000000 --- a/clones/lisp/www.cliki.net/PCall.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: pcall - - - - - - - -
    pcall
    PCall is a concurrency library that implements simple 'result-oriented' parallelism on top of Bordeaux-Threads. See also this article for background information.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/PERCENT-ENCODING.html b/clones/lisp/www.cliki.net/PERCENT-ENCODING.html deleted file mode 100644 index d5508e15..00000000 --- a/clones/lisp/www.cliki.net/PERCENT-ENCODING.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: PERCENT-ENCODING - - - - - - - -
    PERCENT-ENCODING
    PERCENT-ENCODING is a library for URI percent encoding/decoding as specified in RFC3986.

    Source repository: https://github.com/llibra/percent-encoding

    License: MIT

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/PLOB!.html b/clones/lisp/www.cliki.net/PLOB!.html deleted file mode 100644 index 38c81a50..00000000 --- a/clones/lisp/www.cliki.net/PLOB!.html +++ /dev/null @@ -1,161 +0,0 @@ - - - - - CLiki: PLOB! - - - - - - - -
    PLOB!
    PLOB! (Persistent Lisp OBjects!) is an Object Database, implementing orthogonal persistency for LISP and CLOS objects. It also contains -important database features like transactions, locking and associative search over persistent objects. PLOB! mimics the features of CLOS' Metaobject -Protocol (MOP) as far as possible, e.g. by its implemented self-describing persistent objects and support for class changes promoted dynamically to persistent objects (schema evolution)

    PLOB! is available from http://www.lisp.de/software/plob/ (this link doesn't work, but this one does). Although free software, it depends on the POSTORE system from the University of St Andrews, which may not be. Anyone else know? PLOB! documentation available at this site .

    -Note: I can't get www.lisp.de to respond - but the new SourceForge page is at http://sourceforge.net/projects/plob.

    -I'm madly trying to get U. of St. Andrews to answer my questions -concerning licensing. I'm going to make them a fixed fee, unlimited -use offer soon, just to see if I can get them to respond. I'm thinking -of using PLOB in some commercial software I'm writing. -(I'm the author of the questions to which Heiko was responding, below). - --AlainPicard

    -Update -- after 2 months, I gave up on getting any answer from U -of St. Andrews, and am now using Lispworks's RDB-CLOS bindings. -The inability to licence POSTORE essentially orphans PLOB!, as it -cannot be safely used in a commercial environment. This is a shame, -as PLOB! is rather nice, IMO. --AlainPicard

    I'm willing to pester U. of S.A. if you can share some information on who you tried to contact (assuming you got to a live person, or had a live person's email address) and how long ago you gave up trying. --Dan Moniz

    Mail from Heiko Kirschke on the plob@lisp.de mailing list:

    -Subject:  Plob in production; was: RE: Mixing of metaobject classes  (Document
    -      link: Heiko Kirschke)
    -
    -> Regarding PLOB in a production environment, what are your feelings about
    -> its appropriateness?  Is it stable?  Can it run for days on end?
    -
    -Yes. I've tried to avoid the trap of using up resources over time which
    -are not given back to the system. For example, for the locking algortihm
    -the intermediate objects used for representing the locks are maintained
    -seperately from the other persistent objects in an explicit free list.
    -There are only very limited situations where objects are used up and
    -not deallocated after usage, for example when using compound keys on
    -btrees; this can also be avoided with some care in coding.
    -
    -You should have some ideas in mind when using Plob in a production
    -environment:
    -
    -1. The database itself is kept in virtual memory, i.e. the persistent
    -   layer implemented in the POSTORE library uses the virtual memory
    -   mechanisms of the underlying OS to implement persistent objects.
    -   For the sake of performance, the virtual memory is not flushed
    -   to disk at the end of a transaction in Plob's default
    -   configuration.
    -
    -   This must be forced either:
    -
    -   1.a. by evaluating plob-flush from time to time which
    -        forces a flush to disk every time it is called
    -
    -   or
    -
    -   1.b. by setting the always-flush mode of Plob by evaluating
    -        (flush-mode :always) which forces a flush of virtual memory
    -        and all disk buffers so that the database on disk is always
    -        up-to-date. (flush-mode :always) must be evaluated once
    -        after the database has been opened.
    -
    -   1.a. means that you have to do a flush by yourself from time to
    -   time, whereas in 1.b. Plob takes care for flushing at appropiate
    -   moments. 1.b. introduces more disk I/O. In 1994, this was a
    -   problem, but I think that now disk I/O has become so fast that
    -   using solution 1.b. is feasible.
    -
    -2. For doing a database backup, the database should be closed.
    -
    -3. Closing the database and restarting the database server from
    -   time to time (say once a week) definitely frees any resources
    -   which might have been allocated by let's say `unusual events',
    -   like orphaned database sessions etc. This can also be achieved
    -   by a call to (p-restart) on the client's side.
    -
    -4. For large databases, Plob shows a tendency towards slowing down.
    -   Do a quick check by putting in the number of objects you expect
    -   your application will have and watch out for Plob's performance.
    -
    -> (i.e. memory leaks, etc)?
    -
    -I've taken as much care as possible to find and fix memory leaks, so
    -I'm pretty confident that there are no leaks left. At least in the
    -C code.
    -
    -It is not that easy on the LISP side. Plob uses a cache for
    -performance and for maintaining the relation between a persistent
    -object in the database and its transient representation in the
    -LISP image. The cache is represented by two hash tables, one for
    -the mapping persistent to transient, one for transient to persistent.
    -Up to now, I've not found a satisfactory solution on using weak
    -hash tables for LWL or Allegro CL. This problem can only be bypassed
    -by evaluating (clear-cache) from time to time, which will result
    -in empty hash tables and a lost relation between a persistent object
    -and its transient representation.
    -
    -> I'm worried as much by the postore library,
    -
    -I've access to the POSTORE source code. The lib is pretty stable
    -now and uses malloc only in one place in a very controlled manner.
    -Since the POSTORE lib is now in use for at least 7 to 8 years,
    -it should not contain too much bugs any more.
    -
    -> (to which I don't have source access) as plob itself.
    -
    -You can find one reference at
    -<a href="http://www.lisp.de/software/plob/plob-koehorst.html"
    ->http://www.lisp.de/software/plob/plob-koehorst.html</a>
    -
    -*** Does anybody on the list have any experiences with Plob
    -in production or production-like environments? Input welcome ...
    -
    -> Do you know anyone else who runs "serious" software with
    -> Plob as a back end?
    -
    -Many people use Plob with cl-http. The feedback I've received up
    -to date is not that much, but it says that Plob runs pretty stable.
    -
    -[...]
    -

    Topic: persistence

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/PLisp.html b/clones/lisp/www.cliki.net/PLisp.html deleted file mode 100644 index 8f3c2df8..00000000 --- a/clones/lisp/www.cliki.net/PLisp.html +++ /dev/null @@ -1,85 +0,0 @@ - - - - - CLiki: PLisp - - - - - - - -
    PLisp
    PLisp is an s-exp syntax for generating PostScript files. The PLisp compiler translates PLisp to PostScript, which can then be run on any -PostScript engine. This makes it useful for document preparation.

    This system is advertised in the comp.lang.lisp faq as available from -nebula.cs.yale.edu. That host doesn't exist any more, but you can still -get it from the AI Repository at CMU.

    It's Public Domain. Although some of the source files have individual copyright messages, the author was contacted in February 2003 and said -"Go nuts. Delete copyrights. Have fun." Message-ID: pan.2003.02.13.01.19.24.891304@consulting.net.nz

    The author is now at jpeterson@western.edu - I'd be interested to hear if this software is still alive somewhere. -- John

    An example from the demo/ directory - -

    (defun inch (x) 1 (* x 72))
    -
    -(defun wedge () 0
    -  (with-newpath
    -    (moveto 0 0)
    -    (translate 1 0)
    -    (rotate 15)
    -    (translate 0 (sin 15))
    -    (arc 0 0 (sin 15) -90 90))
    -
    -(with-gsave
    -  (translate (inch 3.75) (inch 7.25))
    -  (scale (inch 1) (inch 1))
    -  (wedge)
    -  (setlinewidth 0.02)
    -  (stroke))
    -
    -(with-gsave
    -  (translate (inch 4.25) (inch 4.25))
    -  (scale (inch 1.74) (inch 1.75))
    -  (setlinewidth 0.02)
    -  (dotimes (i 12)
    -    (setgray (/ (1+ i) 12))
    -  (with-gsave
    -    (wedge)
    -    (with-gsave (fill))
    -    (setgray 0)
    -    (stroke))
    -  (rotate 30)))
    -(showpage)
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/PNG.html b/clones/lisp/www.cliki.net/PNG.html deleted file mode 100644 index 43ae9587..00000000 --- a/clones/lisp/www.cliki.net/PNG.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: PNG - - - - - - - -
    PNG
    PNG is the old name for CL-PNG, a Library for reading and writing PNG (Portable Network Graphics) files.

    cl-png is still called png according to its asdf system definition, hence -the asdf-install tag for cl-png is on this page, not that one. Makes sense? Don't worry

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/POSE.html b/clones/lisp/www.cliki.net/POSE.html deleted file mode 100644 index 2076919d..00000000 --- a/clones/lisp/www.cliki.net/POSE.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: POSE - - - - - - - -
    POSE
    Portable S-expressions are a form of S-expressions designed as an interchange format. (Compare with Rivest S-Expressions.) Unlike the standard Lisp syntax, POSE symbols are case-sensitive, and there are no packages, keywords, or dotted pairs. Simplicity of implementation appears to be the overriding concern; the Common Lisp implementation of POSE is only 172 lines.

    Repository: https://github.com/s-expressions/pose

    License: ISC


    -file format
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/PRBS.html b/clones/lisp/www.cliki.net/PRBS.html deleted file mode 100644 index 1f1b24a8..00000000 --- a/clones/lisp/www.cliki.net/PRBS.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: PRBS - - - - - - - -
    PRBS
    Library of pseudo-random binary sequence generators (LFSR-2 and LFSR-4) and related functions in Common Lisp.

    Repository: https://github.com/jlowder/prbs

    License: MIT


    -cryptography algorithm
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/PREPL.html b/clones/lisp/www.cliki.net/PREPL.html deleted file mode 100644 index a527e3bc..00000000 --- a/clones/lisp/www.cliki.net/PREPL.html +++ /dev/null @@ -1,61 +0,0 @@ - - - - - CLiki: PREPL - - - - - - - -
    PREPL
    prepl is a REPL implementation, also known as a Lisp listener.

    It is written in fully portable Common Lisp (aside from minor -workarounds for implementation-specific issues...), with major -unportable bits being handled by external portability libraries.

    Download

    git clone https://github.com/sharplispers/prepl.git

    -

    History

    prepl is a fork of SBCL's sb-aclrepl module.

    Since then, it has been ported to Clozure CL and other Lisps.

    Debugging capabilities have been added.

    Overall, PREPL does not have Allegro compatibility as a goal, although it -still largely keeps its interface.

    -

    Usage

    Manual startup:

    -  (asdf:operate 'asdf:load-op 'prepl)
    -  (prepl:repl)
    -

    -

    See also

    The Qt version of Hemlock uses PREPL in its Slave buffers.

    -

    Maintainer

    David Lichteblau

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/PRL.html b/clones/lisp/www.cliki.net/PRL.html deleted file mode 100644 index 43be348e..00000000 --- a/clones/lisp/www.cliki.net/PRL.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: PRL - - - - - - - -
    PRL
    The Proof (or Program) Refinement Logic program, led by Robert Constable of Cornell. Systems from the project include Nuprl and the Formal Digital Library.

    Mathematics

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/PURI.html b/clones/lisp/www.cliki.net/PURI.html deleted file mode 100644 index 703c7471..00000000 --- a/clones/lisp/www.cliki.net/PURI.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: puri - - - - - - - -
    puri
    puri, Portable Universal Resource Identifier, is a library for parsing and representing URIs.

    Current API documentation is available from Franz's Allegro CL documentation: https://franz.com/support/documentation/current/doc/uri.htm

    There is a fork that extends puri to support userinfo and specialized uri classes and re-implements the parser with cl-ppcre at https://github.com/lisp/com.b9.puri.ppcre

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/PURL.html b/clones/lisp/www.cliki.net/PURL.html deleted file mode 100644 index cb866522..00000000 --- a/clones/lisp/www.cliki.net/PURL.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: PURL - - - - - - - -
    PURL
    PURL provides a parser and defines a type for URLs as specified in RFC1738. Written by Max Rottenkolber.

    Source repository: https://github.com/eugeneia/purl

    License: AGPL-3.0-or-later

    URI

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/PVS Specification and Verification System.html b/clones/lisp/www.cliki.net/PVS Specification and Verification System.html deleted file mode 100644 index ee7e7744..00000000 --- a/clones/lisp/www.cliki.net/PVS Specification and Verification System.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: PVS Specification and Verification System - - - - - - - -
    PVS Specification and Verification System
    The PVS Specification and Verification System is a verification system: that is, a specification language integrated with support tools and a theorem prover. The latest version (4.0) works best with ACL 8.0 (should work with version >= 6.2). CMUCL 19c is also supported.

    As of version 4.0 (november 2006) PVS is now distributed under the terms of the GPL license.

    Repository: https://github.com/SRI-CSL/PVS

    Theorem Provers

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Paolo Amoroso.html b/clones/lisp/www.cliki.net/Paolo Amoroso.html deleted file mode 100644 index 1c808e5d..00000000 --- a/clones/lisp/www.cliki.net/Paolo Amoroso.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Paolo Amoroso - - - - - - - -
    Paolo Amoroso
    Paolo Amoroso is a Person. He lives in Milano, Italy, where he currently works in astronomy popularization for the Hoepli planetarium, the largest in the country, and for University of Milano's School of Physics, History of Physics Department, at Brera's Observatory.

    He dreams of becoming a good Lisp programmer, but reality is a bit different and he has to do a lot more work. Paolo is the editor of the EncyCMUCLopedia and helps in maintaining ILISP.

    Paolo also has fun (more precisely, he writes Scheme code for LispMe) with two Palm OS PDAs, a TRGpro and a trusty old Palm III. He is the founder of the Peditors Forum. -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ParenScript.html b/clones/lisp/www.cliki.net/ParenScript.html deleted file mode 100644 index ce583b4f..00000000 --- a/clones/lisp/www.cliki.net/ParenScript.html +++ /dev/null @@ -1,77 +0,0 @@ - - - - - CLiki: parenscript - - - - - - - -
    parenscript
    Parenscript is a translator from an extended subset of Common Lisp to JavaScript. Parenscript code can run almost identically on both the browser (as JavaScript) and server (as Common Lisp).

    Parenscript code is treated the same way as Common Lisp code, making the full power of Lisp macros available for JavaScript. This provides a web development environment that is unmatched in its ability to reduce code duplication and provides advanced metaprogramming facilities to web developers.

    At the same time, Parenscript is different from almost all other "language X" to JavaScript translators in that it imposes almost no overhead.

    License: BSD-3-Clause

    Homepage: http://common-lisp.net/project/parenscript/

    Parenscript is available in Quicklisp since version 2.1 (at least).

    It is a kind of s-exp syntax for Javascript.

    Live coding

    Trident-mode is an Emacs mode for live Parenscript interaction.

    More precisely it is a minor mode and a collection of commands for working with Parenscript code in SLIME and sending it to the browser via Skewer. The goal is to create an environment for hacking Parenscript which fits as naturally as possible into the Lisp style of interactive development. It can also open a Javascript REPL connected to the browser and connect to a page the server of which you don’t control.

    TodoMVC example

    This Todo MVC example is implemented in Parenscript, using the Panic wrapper around React.

    All pages in topic "Parenscript":

    -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ParenScriptObjectSystem.html b/clones/lisp/www.cliki.net/ParenScriptObjectSystem.html deleted file mode 100644 index de699270..00000000 --- a/clones/lisp/www.cliki.net/ParenScriptObjectSystem.html +++ /dev/null @@ -1,65 +0,0 @@ - - - - - CLiki: ParenScriptObjectSystem - - - - - - - -
    ParenScriptObjectSystem
    The ParenScript Object System (PSOS) is a facility for object-oriented programming in ParenScript using the same style and techniques as the Common Lisp Object System. It consists of a set of macros in lisp and a runtime environment in Parenscript. The project is maintained by Red Daly (reddaly at gmail) and licensed under the GPL.

    Features

    Multiple inheritance, generic functions, and basic method combination is currently implemented. Example Parenscript that uses PSOS:

    (defclass person ()) -(defclass politician (person)) - -(defgeneric discuss-environment (individual)) -(defmethod discuss-environment ((individual person)) - (alert "I don't know anything about the environment")) -(defmethod discuss-environment ((individual politician)) - (alert "The environment is an important issue, but so is Osama Bin Laden"))

    TODO

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Parenscript.html b/clones/lisp/www.cliki.net/Parenscript.html deleted file mode 100644 index ce583b4f..00000000 --- a/clones/lisp/www.cliki.net/Parenscript.html +++ /dev/null @@ -1,77 +0,0 @@ - - - - - CLiki: parenscript - - - - - - - -
    parenscript
    Parenscript is a translator from an extended subset of Common Lisp to JavaScript. Parenscript code can run almost identically on both the browser (as JavaScript) and server (as Common Lisp).

    Parenscript code is treated the same way as Common Lisp code, making the full power of Lisp macros available for JavaScript. This provides a web development environment that is unmatched in its ability to reduce code duplication and provides advanced metaprogramming facilities to web developers.

    At the same time, Parenscript is different from almost all other "language X" to JavaScript translators in that it imposes almost no overhead.

    License: BSD-3-Clause

    Homepage: http://common-lisp.net/project/parenscript/

    Parenscript is available in Quicklisp since version 2.1 (at least).

    It is a kind of s-exp syntax for Javascript.

    Live coding

    Trident-mode is an Emacs mode for live Parenscript interaction.

    More precisely it is a minor mode and a collection of commands for working with Parenscript code in SLIME and sending it to the browser via Skewer. The goal is to create an environment for hacking Parenscript which fits as naturally as possible into the Lisp style of interactive development. It can also open a Javascript REPL connected to the browser and connect to a page the server of which you don’t control.

    TodoMVC example

    This Todo MVC example is implemented in Parenscript, using the Panic wrapper around React.

    All pages in topic "Parenscript":

    -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ParenscriptClassicOO.html b/clones/lisp/www.cliki.net/ParenscriptClassicOO.html deleted file mode 100644 index 25678070..00000000 --- a/clones/lisp/www.cliki.net/ParenscriptClassicOO.html +++ /dev/null @@ -1,147 +0,0 @@ - - - - - CLiki: ParenscriptClassicOO - - - - - - - -
    ParenscriptClassicOO
    JavaScript's support for object-oriented programming is a bit unusual and often feels repetitive and low-level. With ParenScript, all it takes is a few simple macros and you can bury the details of JavaScript's OO machinery.

    Packages

    The usual approach to creating packages in JavaScript is to use plain-old objects as namespaces. However, to avoid accidentally clobbering a package when it is declared again, it's common to test for the package's existence first. This macro does just that:

    (defjsmacro defpackage (name)
    -  `(if (= (typeof ,name) "undefined")
    -       (setf ,name (new (*Object)))))

    Classes

    Classes in JavaScript are just functions that are invoked with the "new" operator. Defining a class is pretty simple, but supporting inheritance makes things a bit trickier. This class macro sets us up for inheritance (using the :extends keyword argument) by saving a copy of the superclass in the prototype and supporting a special constructor argument, "noinit", to prevent the constructor from running multiple times when the class is extended. The actual constructor implementation is moved to a method called "init", which will be called only if it exists.

    (defjsmacro defclass (name &key extends)
    -  `(progn
    -     (setf ,name (lambda ()
    -                   (if (and (!= (slot-value arguments 0) "noinit") this.init)
    -                       (.apply this.init this arguments))))
    -     ,@(if extends
    -           `((setf (slot-value ,name 'prototype)
    -                   (new (,extends "noinit")))
    -             (setf (slot-value (slot-value ,name 'prototype) 'super)
    -                   (slot-value ,extends 'prototype))))))

    Methods

    Defining methods is just a matter of adding functions to the class's prototype object. Defining static (class) methods is done by adding functions to the class object itself:

    (defjsmacro defmethod (cname mname args &rest body)
    -  `(setf (slot-value (slot-value ,cname 'prototype) ,mname)
    -         (lambda ,args ,@body)))
    -
    -(defjsmacro defstatic (cname mname args &rest body)
    -  `(setf (slot-value ,cname ,mname)
    -         (lambda ,args ,@body)))

    Superclass Calls

    Finally, we'll define a little helper macro for calling methods on the superclass. This allows us to handle inheritance without needing to be concerned with the details of how the superclass prototype needs to be stored and called:

    (defjsmacro super (mname &rest args)
    -  `(.call (slot-value this.super ,mname) this ,@args))

    Complete Implementation

    Here is the entire set of macros needed, for convenience in copying to your own code:

    (defjsmacro defpackage (name)
    -  `(if (= (typeof ,name) "undefined")
    -       (setf ,name (new (*Object)))))
    -
    -(defjsmacro defclass (name &key extends)
    -  `(progn
    -     (setf ,name (lambda ()
    -                   (if (and (!= (slot-value arguments 0) "noinit") this.init)
    -                       (.apply this.init this arguments))))
    -     ,@(if extends
    -           `((setf (slot-value ,name 'prototype)
    -                   (new (,extends "noinit")))
    -             (setf (slot-value (slot-value ,name 'prototype) 'super)
    -                   (slot-value ,extends 'prototype))))))
    -
    -(defjsmacro defmethod (cname mname args &rest body)
    -  `(setf (slot-value (slot-value ,cname 'prototype) ,mname)
    -         (lambda ,args ,@body)))
    -
    -(defjsmacro defstatic (cname mname args &rest body)
    -  `(setf (slot-value ,cname ,mname)
    -         (lambda ,args ,@body)))
    -
    -(defjsmacro super (mname &rest args)
    -  `(.call (slot-value this.super ,mname) this ,@args))

    Usage

    Here's a simple example, defining 2d and 3d point classes using inheritance and nested packages:

    (defpackage lib)
    -(defpackage lib.geom)
    -
    -(defclass lib.geom.*point-2d)
    -(defmethod lib.geom.*point-2d 'init (x y)
    -  (setf this.x x)
    -  (setf this.y y))
    -(defmethod lib.geom.*point-2d 'to-string ()
    -  (return (+ "Point2d(" this.x ", " this.y ")")))
    -
    -(defclass lib.geom.*point-3d :extends lib.geom.*point-2d)
    -(defmethod lib.geom.*point-3d 'init (x y z)
    -  (super 'init x y)
    -  (setf this.z z))
    -(defmethod lib.geom.*point-3d 'to-string ()
    -  (return (+ "Point3d(" this.x ", " this.y ", " this.z ")")))

    JavaScript Output

    With these macros defined, ParenScript will generate the following JavaScript output from the above code:

    if (typeof lib == 'undefined') {
    -  lib = new Object();
    -};
    -if (typeof lib.geom == 'undefined') {
    -  lib.geom = new Object();
    -};
    -lib.geom.Point2d =
    -function () {
    -  if (arguments[0] != 'noinit' && this.init) {
    -    this.init.apply(this, arguments);
    -  };
    -};
    -lib.geom.Point2d.prototype.init =
    -function (x, y) {
    -  this.x = x;
    -  this.y = y;
    -};
    -lib.geom.Point2d.prototype.toString =
    -function () {
    -  return 'Point2d(' + this.x + ', ' + this.y + ')';
    -};
    -lib.geom.Point3d =
    -function () {
    -  if (arguments[0] != 'noinit' && this.init) {
    -    this.init.apply(this, arguments);
    -  };
    -};
    -lib.geom.Point3d.prototype = new lib.geom.Point2d('noinit');
    -lib.geom.Point3d.prototype.super = lib.geom.Point2d.prototype;
    -lib.geom.Point3d.prototype.init =
    -function (x, y, z) {
    -  this.super.init.call(this, x, y);
    -  this.z = z;
    -};
    -lib.geom.Point3d.prototype.toString =
    -function () {
    -  return 'Point3d(' + this.x + ', ' + this.y + ', ' + this.z + ')';
    -};

    The use of these macros cuts the amount code we need to write for this example by about two thirds.


    -ParenScript -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ParenscriptTipsAndTricks.html b/clones/lisp/www.cliki.net/ParenscriptTipsAndTricks.html deleted file mode 100644 index 0b0a8bcf..00000000 --- a/clones/lisp/www.cliki.net/ParenscriptTipsAndTricks.html +++ /dev/null @@ -1,140 +0,0 @@ - - - - - CLiki: ParenscriptTipsAndTricks - - - - - - - -
    ParenscriptTipsAndTricks
    This page is for snippets of code that are useful in writing ParenScript code. Please add your own!

    Debugging with FireBug

    - -The FireBug extension for FireFox has a nice console that you can write output to. This is much nicer than using "alert", since you can write as much debugging output as you want without annoying the user (or yourself). Here's a debug macro that outputs a message only if the *debug* variable is true: - -
    -(defvar *debug* t)
    -
    -(defjsmacro debug (message)
    -  (if *debug*
    -      `(if window.console
    -           (console.log ,message))))
    -
    - -When you're ready to deploy your code, set *debug* to nil, and all the "console.log" calls will disappear from your JavaScript output. -

    Returning multiple values

    - -These macros provide a way to return multiple values from a function. The "receive" macro is also useful in asynchronous programming, since it uses a callback that can delay execution arbitrarily. - -
    -(defjsmacro receive (args proc &rest body)
    -  `(,proc (lambda (,@args) ,@body)))
    -
    -(defjsmacro values (&rest args)
    -  `(lambda (proc) (proc ,@args)))
    -
    - -Example: - -
    -(defun divmod (a b)
    -  (return (values (/ a b) (% a b))))
    -
    -(receive (div mod) (divmod 10 3)  
    -         (debug (+ "div: " div ", mod: " mod)))
    -
    - -Result: - -
    -div: 3.3333333333333335, mod: 1
    -

    "After" macro

    - -Lisp makes it easy to wrap code in macros that would otherwise requre passing functional arguments. Here's a macro that executes some code in the future: - -
    -(defjsmacro after (ival &rest body)
    -  `(set-timeout (lambda () ,@body) ,ival))
    -
    - -Example: - -
    -(after 2000
    -  (alert "two seconds have elapsed!"))
    -

    Real let-bindings

    - -The "let" macro that comes with ParenScript doesn't introduce a new lexical scope like proper Lisp. However, there is the "lexical-let" macro which does.

    Binding Elements by IDs

    - -You can use the above technique to implement other binding macros, such as the following, which looks DOM elements up by their IDs: - -
    -(defjsmacro with-elements-by-ids (binds &body body)
    -  `((lambda ,(mapcar #'(lambda (x)
    -                         (if (consp x) (car x) x))
    -                     binds)
    -      ,@body)
    -    ,@(mapcar #'(lambda (x) `(document.get-element-by-id
    -                              ,(if (consp x)
    -                                   (cadr x)
    -                                 (string-downcase (symbol-name x)))))
    -              binds)))
    -
    - -Example: - -
    -(with-elements-by-ids (mydiv (other "otherdiv"))
    -  (setf mydiv.inner-h-t-m-l other.inner-h-t-m-l))
    -
    - -Result: - -
    -(function (mydiv, other) {
    -   mydiv.innerHTML = other.innerHTML;
    - })
    -(document.getElementById('mydiv'), document.getElementById('otherdiv'));
    -


    -ParenScript -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ParenscriptWithApachePHP.html b/clones/lisp/www.cliki.net/ParenscriptWithApachePHP.html deleted file mode 100644 index 682bb150..00000000 --- a/clones/lisp/www.cliki.net/ParenscriptWithApachePHP.html +++ /dev/null @@ -1,91 +0,0 @@ - - - - - CLiki: ParenscriptWithApachePHP - - - - - - - -
    ParenscriptWithApachePHP
    This page describes one technique for seamlessly integrating ParenScript with Apache using PHP, mod_rewrite, and GNU make. It assumes a Un*x-like environment. These instructions should work on most Common Lisp implementations with minimal modifications, though they are written with CLisp in mind.

    Installing ParenScript

    Make a directory off of your web root. For this example, I'll call it "lisp". Inside of "lisp", copy "asdf.lisp" or "asdf.fas" from the ASDF package. Extract the ParenScript archive in this folder and make a symbolic link to "parenscript.asd":

    -ln -s parenscript-20060914/parenscript.asd .
    -

    Creating the wrapper Lisp code

    Create two files, header.inc.lisp and footer.inc.lisp. In header.inc.lisp, write this:

    -(load "asdf")
    -(asdf:operate 'asdf:load-op :parenscript :verbose nil)
    -(shadow :!)
    -(use-package :js)
    -
    -(princ
    - (js
    -

    And in footer.inc.lisp, write this:

    -))
    -

    Creating the Makefile

    Create a file called "Makefile" with the following contents:

    -%.js: %.lisp header.inc.lisp footer.inc.lisp
    -    cat header.inc.lisp $< footer.inc.lisp | /usr/local/bin/clisp -q -q -modern - > $@
    -

    Make sure you use a tab character to indent the line starting with "cat" or this will not work. Also, make sure the path and arguments to your Lisp binary are correct. The "-q -q" options to CLisp keep extraneous output to a minimum; "-modern" is not necessary but I like lowercase symbols.

    Creating the PHP Wrapper

    Create a file called "makejs.php", and write the following PHP code:

    -<?php
    -error_reporting(E_ALL);
    -header('Content-type: text/plain');
    -isset($_GET['file']) or die('no file specified');
    -$file = $_GET['file'];
    -preg_match('/^[\w-]+$/', $file) or die('invalid file: ' . $file);
    -file_exists("$file.lisp") or die('file not found: ' . $file);
    -exec("make $file.js 2>&1", $output);
    -foreach ($output as $line) {
    -    if ($line) {
    -        $line = addslashes($line);
    -        echo "if (window.console) console.log('$line');\n";
    -    }
    -}
    -echo file_get_contents("$file.js");
    -?>
    -

    Adding the mod_rewrite rule

    Create a file called ".htaccess" and write the following two directives. For this to work, you will need to have "AllowOverride all" or similar in your Apache configuration and the "mod_rewrite" Apache module enabled.

    -RewriteEngine On
    -RewriteRule (.*)\.js makejs.php?file=$1 [L]
    -

    Putting it Together

    Create a test HTML page, and in the "head" block, write a script tag like this:

    -<script type="text/javascript" src="/lisp/test.js"></script>
    -

    Create a Lisp source file in the "lisp" directory called "test.lisp" with the following contents:

    -(alert "Hello, world!")
    -

    Now, when you pull up your test page in a web browser, the script tag will cause it to request "/lisp/test.js". This will be intercepted by the mod_rewrite rule, causing "makejs.php?file=test" to be requested. "makejs.php" will call "make test.js", after ensuring the file exists and does not contain any dangerous characters. The header, Lisp source, and footer will be concatenated together, and their output will be sent to "test.js". The result will be sent to the browser, as if "test.js" had been there all along. If "test.lisp" has not been modified, "test.js" will not be recreated.

    If all goes well, you should see an alert dialog that says "Hello, world!" when you load the page.

    FireBug Support

    I recommend installing the FireBug extension for FireFox. The "makejs.php" script will output its error messages using "console.log", which is a function that FireBug exposes to allow writing to the FireBug Console tab. If you do not have FireBug installed, no errors will occur because "makejs.php" checks to make sure "console.log" actually exists. The console messages can be a helpful aid in debugging. You can also view the JavaScript output on the filesystem to see what is being generated.


    -This document was originally written by Dave Benjamin.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Parser.html b/clones/lisp/www.cliki.net/Parser.html deleted file mode 100644 index 40b30189..00000000 --- a/clones/lisp/www.cliki.net/Parser.html +++ /dev/null @@ -1,137 +0,0 @@ - - - - - CLiki: parser - - - - - - - -
    parser
    Pages tagged as on the topic of parser:


    -Topic tags: Library Text XML
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Pascal Bourguignon.html b/clones/lisp/www.cliki.net/Pascal Bourguignon.html deleted file mode 100644 index 031b82e5..00000000 --- a/clones/lisp/www.cliki.net/Pascal Bourguignon.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: Pascal Bourguignon - - - - - - - -
    Pascal Bourguignon
    Pascal Bourguignon is an independant lisp developer.

    He often goes under the nicknames pjb or matimago.

    *To be written*

    In the meantime...

    -


    -Category: Person

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Pascal Costanza.html b/clones/lisp/www.cliki.net/Pascal Costanza.html deleted file mode 100644 index fd78c712..00000000 --- a/clones/lisp/www.cliki.net/Pascal Costanza.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Pascal Costanza - - - - - - - -
    Pascal Costanza
    Pascal Costanza is a Person. He has written Closer to MOP and ContextL.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Patrick Anderson.html b/clones/lisp/www.cliki.net/Patrick Anderson.html deleted file mode 100644 index 2af625c7..00000000 --- a/clones/lisp/www.cliki.net/Patrick Anderson.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Patrick Anderson - - - - - - - -
    Patrick Anderson
    Patrick Anderson is a Person living in Utah, USA.

    he is addicted to EMACS. -he hopes to one day write a 3d moo environment using Scheme and OpenGL - with the client serving as the editor - which will eventually become an EMACS replacement.

    Current home:

    http://ecocomics.org

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Patrick Stein.html b/clones/lisp/www.cliki.net/Patrick Stein.html deleted file mode 100644 index 2b21f2ba..00000000 --- a/clones/lisp/www.cliki.net/Patrick Stein.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: Patrick Stein - - - - - - - -
    Patrick Stein
    Patrick Stein is a stay-at-home Dad who spends much of his free time coding and blogging about coding: http://nklein.com/

    -


    -Person
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Paul Dietz.html b/clones/lisp/www.cliki.net/Paul Dietz.html deleted file mode 100644 index e312ab60..00000000 --- a/clones/lisp/www.cliki.net/Paul Dietz.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: Paul Dietz - - - - - - - -
    Paul Dietz
    Paul Dietz, a Person, is a long-time Lisp user living in the Chicago area.

    Paul is currently developing the GCL ANSI Test Suite, a comprehensive set of ANSI Common Lisp standards compliance tests. -All developers of Common Lisp implementations are encouraged to run the tests and send feedback to dietz AT dls.net. -The tests are currently (December 2004) about 85% done. The next part to be done is to finish testing of the Environments section. After that, System Construction and the Reader will be tested, followed by a sweep through the standard to fill in parts that were missed (such as long form method combination definition.)

    Paul has also put together a random test generator for exercising lisp compilers. It is included in the gcl ansi-tests suite, but runs separately from the test suite proper. Anyone making a significant change in a Common Lisp compiler is encouraged to run this tester immediately; it has often quickly found bugs in new optimizations.


    -For what it's worth: nothing says that pages should be listed in one topic and one topic only: that something is a Theorem Prover doesn't disqualify it from being related to AI. Just a minor point (and feel free to delete this text) but I thought I'd mention it - dan
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Paul Foley.html b/clones/lisp/www.cliki.net/Paul Foley.html deleted file mode 100644 index b3c08785..00000000 --- a/clones/lisp/www.cliki.net/Paul Foley.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Paul Foley - - - - - - - -
    Paul Foley
    is a person, who can be contacted via the i-name =pf.

    Has a few Lisp-related things at http://users.actrix.co.nz/mycroft/cl.html.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Paul Graham.html b/clones/lisp/www.cliki.net/Paul Graham.html deleted file mode 100644 index 489f8d01..00000000 --- a/clones/lisp/www.cliki.net/Paul Graham.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: Paul Graham - - - - - - - -
    Paul Graham
    Paul Graham is a lisp hacker who wrote several books about Common Lisp, became rich and famous by making what became Yahoo!Store, and is now developing a new lisp dialect, Arc.

    His article A Plan for Spam is probably -responsible for the current fashion of Bayesian spam filters. The full text of his book On Lisp is available; this is a really good book showing how use Lisps unique features (esp. Macros) to do cool stuff, although it is not for the faint of heart.

    See his site: PaulGraham.com


    -person
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Performance Benchmarks.html b/clones/lisp/www.cliki.net/Performance Benchmarks.html deleted file mode 100644 index 5e6eb012..00000000 --- a/clones/lisp/www.cliki.net/Performance Benchmarks.html +++ /dev/null @@ -1,542 +0,0 @@ - - - - - CLiki: Performance Benchmarks - - - - - - - -
    Performance Benchmarks
    Here are the results of several performance benchmarking tests run on ten different Common Lisp implementations running on a MacBook Pro, a dual P4 3.0 GHz, a P3 1.1 GHz, a G3 400 MHz and an UltrasparcIIe 500 MHz. The tests run include

      -
    • the well-known Gabriel benchmarks -
    • -
    • hashtable exercising -
    • -
    • READ-LINE exercising -
    • -
    • mathematical functions: factorial, fibonacci, ackermann's number -
    • -
    • some bignum intensive code from Bruno Haible -
    • -
    • various aspects of CLOS: time taken to compile and execute - DEFCLASS forms which create a class hierarchy, instance creation - time, time taken to compile and execute DEFMETHOD forms, execution - of method combinations, both with and without :after methods. -
    • -
    • various operations on arrays, bitvectors and strings. -
    • -
    • Odd Benchmarks that test various features of CL against each other -
    • -

    Except for the CLOS code, timings do not include compilation time. The -garbage collector is run before each test to try to make the timings -more repeatable. Remember that the only real benchmark is your -application: this code is only representative of real-life programs to -a limited extent. For certain targets, we assume that the times -reported by GET-INTERNAL-RUN-TIME and GET-INTERNAL-REAL-TIME are -accurate.

    The code for these performance benchmarks can be downloaded from -http://www.chez.com/emarsden/downloads/cl-bench.tar.gz. (For some reason -this seems to error out as a direct link but not when accessed from -the following page: http://www.chez.com/emarsden/downloads/.) A Makefile and a Bourne shell are used to run the benchmarks. A Windows user may not have those installed or wish to use them; in that case, create a .bat file in the toplevel cl-bench directory. Examples:

    -rem Clozure Common Lisp 1.6 32-bit ran successfully
    -set lisp=C:\ccl16\wx86cl.exe
    -set opt=--batch --no-init
    -set optimize=(declaim (optimize (speed 3) (space 1) (safety 0) (debug 0) (compilation-speed 0)))
    -if exist files/optimize.txt goto got_olisp
    -cd files
    -echo %optimize% > optimize.txt
    -for %%i in (*.lisp) do copy optimize.txt+%%i %%i_o
    -rename *.lisp_o *.olisp
    -cd ..
    -:got_olisp
    -%lisp% %opt% --load sysdep/setup-openmcl.lisp --load do-compilation-script.lisp --eval "(quit)"
    -%lisp% %opt% --load sysdep/setup-openmcl.lisp --load do-execute-script.lisp --eval "(quit)"
    -

    -rem Steel Bank Common Lisp 1.0.47 ran successfully
    -set lisp="C:\Program Files\Steel Bank Common Lisp\1.0.47\sbcl.exe"
    -rem Heap size must be 1GB or STRING-CONCAT will exhaust it.
    -set opt=--dynamic-space-size 1000
    -set optimize=(declaim (optimize (speed 3) (space 1) (safety 0) (debug 0) (compilation-speed 0)))
    -if exist files/optimize.txt goto got_olisp
    -cd files
    -echo %optimize% > optimize.txt
    -for %%i in (*.lisp) do copy optimize.txt+%%i %%i_o
    -rename *.lisp_o *.olisp
    -cd ..
    -:got_olisp
    -rem --script is required.  --load blah --eval "(quit)" will not work.
    -%lisp% %opt% --load sysdep/setup-sbcl.lisp --script do-compilation-script.lisp
    -%lisp% %opt% --load sysdep/setup-sbcl.lisp --script do-execute-script.lisp
    -

    Not all Windows CLs can run cl-bench. As of 15 April 2011:

      -
    • Allegro CL 8.2 Express Edition will not run cl-bench because the heap size is restricted. -
    • -
    • Lispworks Personal Edition 6.0.1 does not have a console available. Attempts to run cl-bench manually through the IDE failed because the listener doesn't appear to understand hierarchical directories. Also the Personal Edition has a heap size restriction so it will probably fail anyways. -
    • -
    • The CLISP 2.49 Windows native binary does not have a POSIX module. cl-bench will fail with an error 'there is no package named "OS"'. Also, watch out when installing this binary. The CLISP Windows binary installer will completely destroy your system %PATH%, if you check the "add CLISP to your path" option. If you notice that your system path has been destroyed before you reboot, you may be able to recover an older copy of it by starting regedit and looking under HKLM\System\ControlSetXXX\Control\Session Manager\Environment\Path, where "XXX" is a number such as "004". Otherwise once you reboot you are SOL. -
    • -
    • The CLISP 2.48 Cygwin package provides a POSIX layer, so most benchmarks do run. However, STRING-CONCAT fails because a desired string length of 6553600 exceeds the supported maximum length. This test can be skipped by adding #-(or clisp) before the STRING-CONCAT test in do-execute-script.lisp. -
    • -
    - -Here is an example of the type of results you can obtain, for x86 and -SPARC platforms. To interpret these numbers: the number in the Reference column is a number of seconds taken to execute that test. The other numbers are the relative performance of that implementation, so for example a number of 1.3 means 30% slower than the reference implementation. A number of -1 means that the corresponding test was not run on that implementation, either because it does not support the given feature (certain types of method combination for CLISP, for instance), or because of implementation limits (heap size limit on LispWorks Personal, for example).

    -
    -+-- MAC-Pro 2x2.66 GHz Dual Core Xeon
    -Benchmark                 Reference  ECL 8  SBCL   CMU C  CLISP
    ------------------------------------------------------------------------
    -COMPILER                 [      0.65]   2.92   1.76   2.05   2.09
    -WALK-LIST/SEQ            [      0.03]   2.79   0.51   0.82   0.49
    -WALK-LIST/MESS           [      0.02]   5.70   1.06   0.99   5.60
    -BOYER                    [      7.97]   0.11   0.29   0.65   4.50
    -BROWSE                   [      0.47]   1.00   0.43   0.98   3.00
    -DDERIV                   [      0.44]   1.86   0.36   1.31   4.24
    -DERIV                    [      0.48]   1.79   0.50   1.49   4.33
    -DESTRUCTIVE              [      0.29]   2.59   0.60   1.18   4.71
    -DIV2-TEST-1              [      0.71]   1.39   0.34   1.52   4.25
    -DIV2-TEST-2              [      0.79]   1.67   0.56   1.65   4.66
    -FFT                      [      0.06]  13.75   0.50   0.73  53.54
    -FRPOLY/FIXNUM            [      0.48]   2.03   0.50   0.69   7.20
    -FRPOLY/BIGNUM            [      1.00]   0.62   0.22   0.53   1.64
    -FRPOLY/FLOAT             [      0.70]   1.99   0.46   0.90   5.51
    -PUZZLE                   [      0.34]   8.24   0.55   0.39  22.65
    -TAK                      [      0.18]   1.62   1.51   1.48  15.63
    -CTAK                     [      0.41]   4.36   0.53   0.44   7.68
    -TRTAK                    [      0.18]   1.62   1.50   1.48  15.58
    -TAKL                     [      0.49]   0.53   0.65   0.81   6.51
    -STAK                     [      0.43]   1.10   0.92   0.73   6.79
    -FPRINT/UGLY              [      1.64]   1.18   0.44   0.40   0.74
    -FPRINT/PRETTY            [      1.90]   7.87   0.89   1.55   1.30
    -TRAVERSE                 [      0.53]   1.37   1.29   1.27  11.41
    -TRIANGLE                 [      0.50]   8.86   1.15   1.10  24.55
    -RICHARDS                 [      1.52]   0.32   0.29   0.23   5.64
    -FACTORIAL                [      0.84]   0.57   0.20   0.68   1.31
    -FIB                      [      0.10]   8.17   3.00   2.92  19.99
    -FIB-RATIO                [      0.04]   4.89   1.07   0.97   1.38
    -ACKERMANN                [      0.81]   9.89   2.67   2.99  -1.00
    -MANDELBROT/COMPLEX       [      0.28]   5.96   1.30   3.76   6.02
    -MANDELBROT/DFLOAT        [      0.13]   1.05   0.13   0.21  10.04
    -MRG32K3A                 [      5.70]   0.92   0.09   0.08   3.70
    -CRC40                    [      1.04]  46.68   7.61  17.49  73.57
    -BIGNUM/ELEM-100-1000     [      0.78]   0.09   0.15   0.22   0.05
    -BIGNUM/ELEM-1000-100     [      5.14]   0.04   0.05   0.07   0.02
    -BIGNUM/ELEM-10000-1      [      5.54]   0.05   0.05   0.07   0.02
    -BIGNUM/PARI-100-10       [      0.48]   0.02   0.04   0.08   0.04
    -BIGNUM/PARI-200-5        [     13.98]   0.00   0.00   0.02   0.00
    -PI-DECIMAL/SMALL         [      2.07]   2.09   0.39   1.38   0.72
    -PI-DECIMAL/BIG           [      2.58]   2.34   0.29   0.86   0.35
    -PI-ATAN                  [      2.27]   0.40   0.31   0.57   0.80
    -PI-RATIOS                [      5.00]   0.26   0.24   0.52   0.12
    -HASH-STRINGS             [      3.57]   0.22   0.04   0.04   0.31
    -HASH-INTEGERS            [      1.97]   0.58   0.14   0.37   0.89
    -SLURP-LINES              [      3.85]   3.07   0.49   1.48   1.53
    -BOEHM-GC                 [      9.18]   0.50   0.09   0.26   1.17
    -DEFLATE-FILE             [      0.29]   3.18   0.82   1.23   9.43
    -1D-ARRAYS                [      0.02]  16.75   1.45   2.41  32.32
    -2D-ARRAYS                [      0.51]  11.36   0.53   1.13  32.18
    -3D-ARRAYS                [      1.26]  22.31   0.68   1.19  28.69
    -BITVECTORS               [     16.87]   0.42   0.03   0.08   0.32
    -BENCH-STRINGS            [      1.70]   4.93   0.24   0.39   8.41
    -fill-strings/adjustable  [     20.59]   0.69   0.24   0.55   1.37
    -STRING-CONCAT            [     27.50]   2.21   0.89   3.76  -1.00
    -SEARCH-SEQUENCE          [      1.80]   3.28   0.06   1.09   3.77
    -CLOS/defclass            [      0.17]   4.23   4.48  16.02   2.71
    -CLOS/defmethod           [      0.11]   2.92  29.41  43.53   1.11
    -CLOS/instantiate         [      3.22]  38.92   1.25   2.27   0.89
    -CLOS/simple-instantiate  [      3.44]  19.83   0.04   0.11   0.57
    -CLOS/methodcalls         [      2.61]   1.88   0.29   0.89   1.43
    -CLOS/method+after        [      1.41]   2.74   1.43   3.46   1.59
    -CLOS/complex-methods     [      0.51]   6.37   2.40   0.08  -1.00
    -EQL-SPECIALIZED-FIB      [      0.45]   7.46   0.44   0.54   2.40
    -Reference time in first column is in seconds; other columns are relative
    -Reference implementation: Clozure Common Lisp Version 1.2-r11313M  (DarwinX8664)
    -Impl ECL 8: ECL 8.9.0 (CVS 2008-06-19 17:09)
    -Impl SBCL : SBCL 1.0.22.17
    -Impl CMU C: CMU Common Lisp CVS Head 2008-11-08 00:35:08 (19E)
    -Impl CLISP: CLISP 2.47+ (2008-10-24) (built 3435106496) (memory 3435106574)
    -
    -
    -,---- MacBook Pro, Intel Core 2 Duo @2.33 GHz ---
    -|
    -| Benchmark                 Reference  OpenMCL  CLISP    ECL   ABCL
    -| -----------------------------------------------------------------
    -| COMPILER                 [      1.21]   0.85   0.95   4.39  -1.00
    -| LOAD-FASL                [      0.34]   1.34   1.39  -1.00  -1.00
    -| SUM-PERMUTATIONS         [      1.09]   4.22   2.04  -1.00   1.73
    -| WALK-LIST/SEQ            [      0.01]   2.67   1.05  26.39  -1.00
    -| WALK-LIST/MESS           [      0.03]   0.72   4.89  12.00  -1.00
    -| BOYER                    [      2.58]   4.50  13.45   0.36   1.06
    -| BROWSE                   [      0.31]   2.35   4.13   1.60   0.72
    -| DDERIV                   [      0.20]   2.40  10.85   6.50   2.06
    -| DERIV                    [      0.30]   1.73   8.19   4.61   1.98
    -| DESTRUCTIVE              [      0.19]   1.63   7.66   4.55   2.68
    -| DIV2-TEST-1              [      0.30]   2.49  11.88   4.01   0.97
    -| DIV2-TEST-2              [      0.53]   1.57   7.97   3.67   0.83
    -| FFT                      [      0.03]   2.27 102.68  24.24  24.82
    -| FRPOLY/FIXNUM            [      0.26]   2.38  13.09   4.17   5.37
    -| FRPOLY/BIGNUM            [      0.27]   5.50   6.69   2.94   2.73
    -| FRPOLY/FLOAT             [      0.35]   2.88  11.03   2.97   3.04
    -| PUZZLE                   [      0.15]   2.64  48.36  25.11  82.40
    -| TAK                      [      0.30]   0.95  10.16   7.84   4.50
    -| CTAK                     [      0.21]   2.24  15.66  18.82 940.77
    -| TRTAK                    [      0.31]   0.94  10.24   7.66   3.68
    -| TAKL                     [      0.37]   1.57   9.65   1.64   2.61
    -| STAK                     [      0.35]   1.37   7.92   3.12   5.60
    -| FPRINT/UGLY              [      0.95]   2.28   1.42   1.19   2.66
    -| FPRINT/PRETTY            [      1.84]   1.35   1.27  31.65   8.18
    -| TRAVERSE                 [      0.75]   0.88   9.91   1.92   6.01
    -| TRIANGLE                 [      0.65]   0.98  20.47   9.78  24.10
    -| RICHARDS                 [      0.44]   2.85  22.54   2.89  42.59
    -| FACTORIAL                [      0.20]   6.84   7.45   2.67   2.28
    -| FIB                      [      0.32]   0.44   5.82   2.42   1.08
    -| FIB-RATIO                [      0.04]   1.83   1.68   7.50   8.73
    -| ACKERMANN                [      2.43]   0.42  -1.00   3.95   1.57
    -| MANDELBROT/COMPLEX       [      0.34]   1.14   6.34   2.22   3.32
    -| MANDELBROT/DFLOAT        [      0.02]  10.35  96.39   4.90  13.94
    -| MRG32K3A                 [      0.54] 186.18  51.36   5.11  11.00
    -| CRC40                    [      9.17]   0.13  10.04   6.62   2.29
    -| BIGNUM/ELEM-100-1000     [      0.13]  10.02   0.32   1.03   2.85
    -| BIGNUM/ELEM-1000-100     [      0.29]  29.53   0.36   1.42   2.67
    -| BIGNUM/ELEM-10000-1      [      0.32]  28.86   0.31   2.36   2.70
    -| BIGNUM/PARI-100-10       [      0.02]  37.14   0.59   1.52   2.82
    -| BIGNUM/PARI-200-5        [      0.08] 305.08   1.02   1.30   2.23
    -| PI-DECIMAL/SMALL         [      0.96]   3.36   1.96   9.86  43.01
    -| PI-DECIMAL/BIG           [      0.86]   4.89   1.29  16.51  93.86
    -| PI-ATAN                  [      0.85]   3.90   2.92   1.80   2.19
    -| PI-RATIOS                [      1.41]   5.98   0.53   1.91   3.36
    -| HASH-STRINGS             [      0.23]   5.54   4.61   4.68   4.49
    -| HASH-INTEGERS            [      0.51]   5.76   2.75   2.26   1.80
    -| SLURP-LINES              [      1.98]   2.59   3.22   2.77   1.43
    -| BOEHM-GC                 [      1.16]  13.17  12.17   6.97   5.67
    -| DEFLATE-FILE             [      0.37]   1.40   8.13   2.96   4.11
    -| 1D-ARRAYS                [      0.06]   0.76   9.54   6.35   2.21
    -| 2D-ARRAYS                [      0.32]   7.55  50.23  17.14  33.41
    -| 3D-ARRAYS                [      0.99]   5.77  35.60  43.07  36.99
    -| BITVECTORS               [      0.60]  -1.00   9.47  11.02   1.09
    -| BENCH-STRINGS            [      0.45]   5.91   1.34  32.56   7.43
    -| fill-strings/adjustable  [     13.64]   2.53   2.01   1.30   0.70
    -| STRING-CONCAT            [     37.05]   1.01  -1.00   1.17   1.71
    -| SEARCH-SEQUENCE          [      0.12]  17.46  60.84  83.05  20.36
    -| CLOS/defclass            [      0.66]   0.35   0.68   2.81  15.94
    -| CLOS/defmethod           [      0.82]   0.11   0.13   2.51   7.91
    -| CLOS/instantiate         [      5.41]   0.97   0.65 121.47   2.57
    -| CLOS/simple-instantiate  [      0.16]  82.43  13.24 663.62  69.45
    -| CLOS/methodcalls         [      0.73]   6.08   6.62  10.67  11.16
    -| CLOS/method+after        [      0.78]   2.87   3.44  34.92  14.77
    -| CLOS/complex-methods     [      1.48]   0.46  -1.00   2.70   3.16
    -| EQL-SPECIALIZED-FIB      [      0.23]   2.67   4.43  13.52  -1.00
    -|
    -| Reference time in first column is in seconds; other columns are relative
    -| Reference implementation: SBCL 1.0.2 (binary download)
    -| Impl OpenMCL: OpenMCL Version 1.1-pre-061231 (DarwinX8664)
    -| Impl ECL: ECL 0.9i (GCC 4.0.1 -O2 -march=nocona -fomit-frame-pointer)
    -| Impl CLISP: CLISP 2.41 (2006-10-13) (built 3379682400) (memory 3379682557)
    -| Impl ABCL: Armed Bear Common Lisp 0.0.9 (Apple Java 1.5.0_06 -server -Xss128M -Xms1G -Xmx1G -Xrs)
    -| === Test machine ===
    -|    Machine-type: X86
    -|    Machine-version: MacBook Pro, Intel Core 2 Duo @2.33 GHz, 3 GB, Mac OS X 10.4.8 
    -`----
    -
    -
    -,---- dual Pentium 4, 3.0 GHz, 1000 MB RAM, 512 KB cache ---
    -| 
    -| Benchmark               Reference  CMUCL CMUCL  SBCL    ACL     ACL  GNUCL   ECL-S  CLISP Poplog     ABCL    ABCL
    -|                         CMUCL 18e    19a 19aP4 0.8.13   6.2     5.0  2.6.3    0.9d 2.33.2  15.53   J1.4.2  J1.5b2
    -| -----------------------------------------------------------------------------------------------------------------
    -| COMPILER                 [  1.98]   1.15  1.05  1.49   0.60    0.90   0.08    3.50   0.69   0.01    20.23   19.35
    -| LOAD-FASL                [  0.18]   1.16  1.12  2.79   1.70    1.19   0.45    2.61   2.19  11.14    24.47   23.08
    -| SUM-PERMUTATIONS         [  2.05]   1.13  1.11  1.52   0.84    1.52   1.24   -1.00   1.51   1.63     6.39    5.51
    -| WALK-LIST/SEQ            [  0.03]   1.00  0.96  1.00   1.07    1.07   1.43    4.29   1.00  10.36     3.93    3.82
    -| WALK-LIST/MESS           [  0.16]   1.31  0.47  1.82  -1.00   -1.00   2.06    0.75   1.57  -1.00    -1.00   -1.00
    -| BOYER                    [  5.51]   0.99  0.97  0.86   1.14    1.05   2.86    4.23  12.43   7.73     5.65    4.22
    -| BROWSE                   [  0.58]   1.04  0.97  0.96   0.44    1.33  12.85    2.50   6.27   1.74     4.86    3.43
    -| DDERIV                   [  0.56]   0.97  0.98  0.91   0.54    1.11   3.97    6.97  12.55   2.30     7.98    6.38
    -| DERIV                    [  0.62]   1.02  1.01  0.93   0.47    0.41   3.65    6.37  12.88   2.11     6.99    5.36
    -| DESTRUCTIVE              [  0.51]   0.97  1.00  0.89   0.33    0.33   3.66    3.72   7.75   2.39     8.89    5.11
    -| DIV2-TEST-1              [  1.30]   0.97  0.94  0.71   0.15    0.18   2.66    4.54  10.66   1.64     4.18    1.99
    -| DIV2-TEST-2              [  1.41]   0.96  0.94  0.84   0.33    0.33   2.89    4.42  10.49   1.34     1.61    0.64
    -| FFT                      [  0.06]   1.03  1.02  0.87   0.94    1.09  55.00   42.03  65.58 250.16    63.09   23.39
    -| FRPOLY/FIXNUM            [  0.54]   0.99  1.00  0.87   1.39    2.00   2.52    4.69  12.59   3.04    13.01    5.85
    -| FRPOLY/BIGNUM            [  0.62]   0.98  1.02  0.84   1.49    2.20   1.68    2.84   7.81   1.60     2.06    1.57
    -| FRPOLY/FLOAT             [  0.94]   0.88  0.90  0.76   1.09    2.76   1.35    2.70  10.75   2.19     1.77    1.27
    -| PUZZLE                   [  0.17]   0.99  1.00  1.10   4.31    1.90   6.21   46.26  71.59  14.14   109.75   61.32
    -| TAK                      [  0.36]   1.02  1.00  1.00   0.62    0.78   1.71    7.17  13.94   2.97    10.29    6.06
    -| CTAK                     [  0.33]   1.20  1.19  0.94   3.71    3.34   4.53    6.90  11.24  25.02  1461.22 1128.68
    -| TRTAK                    [  0.36]   1.01  0.99  0.99   0.61    0.78   1.67    7.13  13.64   2.95     7.44    3.35
    -| TAKL                     [  0.37]   1.05  1.00  0.99   0.85    0.98   0.87    4.78  20.55   5.03     4.37    4.08
    -| STAK                     [  0.47]   1.12  0.99  1.05   5.35    2.54   1.67   -1.00   7.64   7.34    15.64    7.32
    -| FPRINT/UGLY              [  0.68]   1.08  1.06  1.63   3.30   13.72   1.23    1.95   1.70   8.58    21.18   21.04
    -| FPRINT/PRETTY            [  2.23]   0.95  0.94  1.37   2.30    4.40   0.39    1.22   3.34   6.77   216.94  199.28
    -| TRAVERSE                 [  0.80]   1.00  1.00  4.21   0.56    0.64   2.23    7.21  14.10   5.29    20.60   15.60
    -| TRIANGLE                 [  0.60]   1.04  1.07  1.01   1.48    0.68   2.09   18.39  30.20  10.58    17.64   12.62
    -| RICHARDS                 [  0.46]   1.05  1.03  1.01   4.43    3.21   1.19   10.72  30.24  12.08    28.02   24.34
    -| FACTORIAL                [  0.33]   0.98  0.97  1.33   3.15    3.03   9.79    4.71  20.27   2.40     3.55    2.16
    -| FIB                      [  0.44]   1.01  1.00  1.01   0.25    0.27   4.77    2.24   6.44   1.10     5.55    2.26
    -| FIB-RATIO                [  0.34]   0.99  0.99  1.01  11.25   15.95  30.55    0.99   0.11   2.94     3.24    1.69
    -| ACKERMANN                [  5.63]   1.00  1.01  1.00   0.53    0.64  22.28    2.06   6.69   1.92     4.33    2.05
    -| MANDELBROT/COMPLEX       [  9.13]   0.97  0.97  1.01   1.80    5.36   1.93    2.24  10.58   0.77     0.75    0.32
    -| MANDELBROT/DFLOAT        [  5.26]   0.99  0.98  0.96   0.92    5.55   2.51    3.42  13.09   1.50     1.58    0.76
    -| MRG32K3A                 [  0.78]   1.00  1.00  1.03   5.93  183.82   5.45    7.13 118.85   7.38    10.43    8.45
    -| CRC40                    [ 19.30]   1.01  1.11  0.95   4.02    4.27  13.52    8.91  12.63   2.26     4.40    2.23
    -| BIGNUM/ELEM-100-1000     [  0.50]   1.01  1.02  1.17   1.59    1.88   0.77    0.22   0.10   2.40     1.56    1.46
    -| BIGNUM/ELEM-1000-100     [  2.74]   1.01  1.00  1.40   1.66    1.68   0.92    0.05   0.07   3.08     0.43    0.35
    -| BIGNUM/ELEM-10000-1      [  3.00]   1.01  1.00  1.38   4.77    4.80   0.79    0.05   0.06  19.89     0.48    0.37
    -| BIGNUM/PARI-100-10       [  1.28]   0.50  0.49  0.69   0.05    0.07   0.02    0.02   0.01   0.02     0.19    0.15
    -| BIGNUM/PARI-200-5        [ 15.90]   0.49  0.49  0.76   0.02    0.02   0.01    0.00   0.00   0.01     0.02    0.02
    -| PI-DECIMAL/SMALL         [ 25.10]   1.01  1.00  1.42  14.89   15.31   8.44    0.27   0.24   3.31     1.97    1.79
    -| PI-DECIMAL/BIG           [ 53.32]   1.00  1.00  1.55  15.63   15.74   6.07   -1.00   0.05   3.84     1.90    1.58
    -| PI-ATAN                  [  1.38]   1.01  0.99  1.29   2.97    2.98   5.80   -1.00   6.89   1.16     2.40    2.38
    -| PI-RATIOS                [  4.51]   0.99  1.00  1.11   5.31    5.42   3.91    0.58   0.33   2.01     1.54    1.44
    -| SLURP-LINES              [  0.89]   0.96  0.98  1.02   0.57    7.09   2.85    1.63   4.69   3.00    23.99   21.94
    -| HASH-STRINGS             [  0.47]   0.84  0.78  0.81  13.63 4218.26 251.42   50.04   5.81  35.71     7.68    6.02
    -| HASH-INTEGERS            [  0.84]   0.99  0.94  1.21   3.13    4.89   0.58    1.49   6.31  11.79     5.04    4.08
    -| BOEHM-GC                 [  1.89]   1.01  0.97  1.16   1.37    3.82   3.89    7.87  18.34   2.22    12.13    7.14
    -| DEFLATE-FILE             [  0.45]   1.30  1.30  1.22   1.07   24.97   3.27    9.55   8.87   7.80    16.87   11.25
    -| 1D-ARRAYS                [  0.07]   1.01  1.03  1.49   2.60    8.22   4.11    6.30  12.14  18.63     4.79    3.29
    -| 2D-ARRAYS                [  0.87]   1.01  1.01  0.63  10.25    9.77  22.62   21.31  26.39  14.16    46.67   31.88
    -| 3D-ARRAYS                [  2.91]   1.00  1.00  0.77   7.88    7.62   8.91   16.19  16.69   7.88    36.01   26.28
    -| BITVECTORS               [  0.63]   0.97  0.95  1.60   1.69    1.74  10.16   13.12  33.12  -1.00  2334.29  822.13
    -| BENCH-STRINGS            [  2.54]   1.02  0.99  0.14   3.88   16.87   4.30    5.78   0.47  33.55     9.67    4.18
    -| fill-strings/adjustable  [ 19.24]   1.01  1.00  1.00   1.47   -1.00   0.90   15.19   4.62 104.94     1.22    0.91
    -| STRING-CONCAT            [ 55.08]   1.07  1.03  0.50   0.60   -1.00  26.24   -1.00  10.29  -1.00     2.23    1.66
    -| SEARCH-SEQUENCE          [  3.03]   1.00  1.00  0.05   0.73    4.07   2.28    3.29   3.58   3.61    11.74    9.28
    -| CLOS/defclass            [  3.46]   1.08  1.07  0.63   0.05    0.11  -1.00    0.47   0.12   0.02     3.92    3.75
    -| CLOS/defmethod           [  7.27]   1.03  1.05  0.85   0.03    0.05  -1.00    0.17   0.01   0.00     1.34    1.27
    -| CLOS/instantiate         [  8.03]   1.13  1.09  0.98   0.26    0.86  -1.00  281.76   1.36   1.55    28.19   27.07
    -| CLOS/simple-instantiate  [  0.33]   0.99  0.99  0.96   0.84    0.57  -1.00   51.78  18.96 112.65   692.94  635.93
    -| CLOS/methodcalls         [  1.61]   0.97  0.97  1.23   3.25    3.01  -1.00   50.49  10.92   9.61    97.55   86.93
    -| CLOS/complex-methods     [  0.06]   1.00  0.97  7.44   4.92    5.76  -1.00 1963.22  -1.00  -1.00  1799.75 1600.25
    -| EQL-SPECIALIZED-FIB      [  0.32]   1.02  1.01  1.06   1.19   10.87  -1.00    7.16   5.30   9.06 10336.55 9321.19
    -| 
    -| Reference time in first column is in seconds; other columns are relative
    -| Reference implementation: CMU Common Lisp 18e CVS Head 2003-09-14 16:41:12 (binary rel.)
    -| Impl CMUCL:  CMU Common Lisp 19a-pre3 (binary rel. from ftp.linux.org.uk/pub/lisp/cmucl)
    -| Impl CMUCL:  CMU Common Lisp 19a-pre3 Pentium4 (built with CFLAGS="-march=pentium4")
    -| Impl SBCL:   SBCL 0.8.13 (bootstrapped with CMUCL 18e)
    -| Impl ACL6.2: International Allegro CL Enterprise Edition 6.2 [Linux/X86] (binary:)
    -| Impl ACL 5:  Allegro CL Trial Edition 5.0 [Linux/X86] (no heap limit! binary only:)
    -| Impl GNUCL:  Kyoto Common Lisp GCL 2.6.3 ANSI (gcc 3.3.1 -march=pentium4)
    -| Impl ECL-S:  ECL 0.9d CVS Head 2004-07-27 (aka ECL Spain, gcc 3.3.1 -march=pentium4)
    -| Impl CLISP:  CLISP 2.33.2 (2004-06-02) (not optimized for pentium4 because of make failure)
    -| Impl Poplog: Sussex Poplog 15.53e Common Lisp 2.0 (using "easy to install version" haha)
    -| Impl ABCL14: Armed Bear Common Lisp 0.0.3.16+ CVS Head 2004-08-01 / Sun Java 1.4.2-b28
    -| Impl ABCL15: Armed Bear Common Lisp 0.0.3.16+ CVS Head 2004-08-01 / Sun Java 1.5.0-beta2-b51
    -|              Java invocation for ABCL: java -server -Xss64M -Xmx256M -Xrs
    -| === Test machine ===
    -|    Machine-type: X86
    -|    Machine-version: dual Intel Pentium 4 at 3.00GHz, 1000 MB RAM, 512 KB cache
    -|    Linux 2.4.21-199-smp4G i686 i386 GNU/Linux (SuSE 9.0)
    -| (declaim (optimize (speed 3) (space 1) (safety 0) (debug 0) (compilation-speed 0)))
    -`----
    -
    -
    -,---- Pentium III@1.1GHz, 512MB RAM ---
    -|
    -| Benchmark                 Reference   18d   18dsm  CLISP   SBCL  Poplog
    -| -----------------------------------------------------------------------
    -| BOYER                          1.50   0.73   0.74   5.61   1.01   3.03
    -| BROWSE                         0.61   0.74   0.74   2.54   1.26   2.85
    -| DDerviv                        0.66   0.52   0.53   2.14   1.15   1.62
    -| Deriv                          1.29   0.50   0.48   2.05   1.10   1.26
    -| DESTRUCTIVE                    1.05   0.91   0.95   3.17   1.13   3.38
    -| DIV2-TEST-1                    1.09   0.51   0.51   1.66   1.07   1.29
    -| DIV2-TEST-2                    0.54   0.52   0.61   1.69   1.09   1.31
    -| FFT                            0.19   1.00   1.00  37.00   1.21  91.21
    -| FRPOLY/FIXNUM                  0.54   0.87   0.89   6.85   1.09   3.00
    -| FRPOLY/BIGNUM                  1.30   0.73   0.74   2.44   1.08   1.39
    -| FRPOLY/FLOAT                   0.54   0.76   0.78   4.41   1.06   2.11
    -| PUZZLE                         0.68   0.99   0.99  25.09   9.35  27.93
    -| TAK                            0.79   0.97   0.97   9.08   1.25   3.10
    -| CTAK                           0.73   1.00   0.97   6.49   1.05   4.84
    -| TRTAK                          0.79   0.97   0.97   9.13   1.25   3.11
    -| TAKL                           1.37   1.01   1.00   7.70   1.27   4.02
    -| STAK                           0.96   1.02   1.02   7.07   1.08   1.50
    -| FPRINT                         1.21   0.92   0.82   1.06   2.28   4.17
    -| TRAVERSE                       2.00   0.94   0.99  11.45   1.50   5.42
    -| TRIANGLE                       1.70   1.01   1.01  17.58   1.28  23.19
    -| RICHARDS                       0.53   1.00   0.98  21.26   1.00   6.47
    -| FACTORIAL                      0.37   0.54   0.57   0.81   1.14   0.62
    -| FIB                            0.33   1.00   1.00   5.30   1.06   1.18
    -| RATIOS                         2.24   0.96   0.96   0.12   0.96   1.81
    -| BIGNUM/ELEM-100-1000           1.06   0.92   0.97   0.08   0.97   2.27
    -| BIGNUM/ELEM-1000-100           4.99   0.99   0.99   0.05   0.93   2.14
    -| BIGNUM/ELEM-10000-1            5.19   1.01   1.00   0.05   0.92  12.90
    -| BIGNUM/PARI-100-10             1.21   0.99   1.02   0.02   0.95   0.04
    -| BIGNUM/PARI-200-5             14.30   0.99   1.00   0.01   0.92   0.01
    -| HASH-STRINGS                   1.15   0.84   0.69   3.25   0.99  30.89
    -| HASH-INTEGERS                  0.44   0.80   0.66   2.75   1.27   6.95
    -| BOEHM-GC                       6.41   0.47   0.46   4.10   1.12   1.53
    -| DEFLATE                        1.16   1.00   1.02   6.34   1.52   5.53
    -| CLOS/defclass                  1.75   0.90   0.92   0.53   2.53   0.06
    -| CLOS/defmethod                 8.73   0.77   0.71   0.02   2.17   0.00
    -| CLOS/instantiate               6.42   0.57   0.54   0.96   0.99   3.57
    -| CLOS/methodcalls               8.17   0.42   0.44   1.01   0.90   3.93
    -| CLOS/method+after             10.76   0.84   0.77   0.47   2.42   2.01
    -| CLOS/complex-methods           0.29   1.07   1.14  -1.00   6.17  -1.00
    -| 1D-ARRAYS                      2.44   0.81   0.79   5.68   1.39  15.75
    -| 2D-ARRAYS                     11.28   0.99   0.89   3.45   4.39   6.04
    -| BITVECTORS                     2.01   0.82   0.81   0.60   0.98  -1.00
    -| FILL-STRINGS                   6.83   0.88   0.82   1.16   3.77  27.38
    -| fill-strings/adjustable       14.18   0.99   0.87   1.36   1.73 118.49
    -| BENCH-STRING-CONCAT            5.79   1.88   1.62  -1.00   2.75  -1.00
    -| 
    -| Reference implementation: CMU Common Lisp 18c
    -| Impl   18d: CMU Common Lisp 18d-pre, level-1 built 2002-04-08 on melbourne
    -| Impl 18dsm: CMU Common Lisp 18d-pre-small, level-1 built 2002-04-08 on sydney
    -| Impl CLISP: CLISP 2.27.2 (released 2001-10-05) (built 3222523548) (memory 3222523674)
    -| Impl SBCL : SBCL 0.7.1.22 (from debian testing)
    -| Impl Poplog: Sussex Poplog Common Lisp 2.0
    -| Linux melbourne 2.4.17 #2 SMP Wed Feb 6 11:35:03 CET 2002 i686 unknown
    -|  (declaim (optimize (speed 3) (space 0) (safety 1) (debug 0) (compilation-speed 0)))
    -`----
    -
    -
    -,---- 400MHz G3, 1024KB L2 cache, 192 MB RAM --
    -|
    -| Benchmark                 Reference  CLISP   SBCL
    -| --------------------------------------------------
    -| BOYER                          7.15   3.57   0.36
    -| BROWSE                         2.42   2.51   0.61
    -| DDerviv                        4.00   2.62   0.29
    -| Deriv                          6.91   2.83   0.28
    -| DESTRUCTIVE                    3.31   4.42   0.69
    -| DIV2-TEST-1                    5.06   3.26   0.28
    -| DIV2-TEST-2                    2.54   3.27   0.26
    -| FFT                           16.63   1.27   0.05
    -| FRPOLY/FIXNUM                  2.89   4.29   0.40
    -| FRPOLY/BIGNUM                  5.75   2.22   0.46
    -| FRPOLY/FLOAT                   3.53   2.43   0.34
    -| PUZZLE                        19.53   2.37   1.06
    -| TAK                            2.08  12.04   1.45
    -| CTAK                           3.21   6.04   0.76
    -| TRTAK                          2.08  12.05   1.45
    -| TAKL                           6.94   5.36   0.67
    -| STAK                           2.86   7.01   0.94
    -| FPRINT                         5.38   1.33   1.75
    -| TRAVERSE                       7.81  10.37   1.20
    -| TRIANGLE                       7.59  11.73   1.04
    -| RICHARDS                       2.37  17.46   0.72
    -| FACTORIAL                      2.30   1.82   0.30
    -| FIB                            0.45  12.87   1.44
    -| BIGNUM/ELEM-100-1000           2.33   0.17   0.99
    -| BIGNUM/ELEM-1000-100           9.50   0.18   0.61
    -| BIGNUM/ELEM-10000-1           18.52   0.09   0.33
    -| BIGNUM/PARI-100-10             1.88   0.10   1.85
    -| BIGNUM/PARI-200-5             17.84   0.05   3.35
    -| HASH-STRINGS                   5.60   1.49  14.50
    -| HASH-INTEGERS                  2.12   1.28   0.72
    -| BOEHM-GC                      58.63   1.82   0.22
    -| DEFLATE                        4.53   4.78   1.36
    -| CLOS/defclass                  0.75   4.76  14.77
    -| CLOS/defmethod                 0.31   2.87 150.39
    -| CLOS/instantiate              31.41   0.83   0.54
    -| CLOS/methodcalls              29.87   1.34   0.50
    -| CLOS/method+after             12.61   1.69   6.09
    -| CLOS/complex-methods           2.71  -1.00   1.55
    -| 1D-ARRAYS                      8.36   5.42   1.49
    -| BITVECTORS                    11.30   0.36   0.29
    -| FILL-STRINGS                  32.03   0.75   2.84
    -| fill-strings/adjustable       35.86   1.87   2.78
    -|
    -| Reference implementation: OpenMCL Version (Beta: Linux) 0.10.1
    -| Impl CLISP: CLISP 2.28 (released 2002-03-03) (built 3227525942) (memory
    -+3227526439)
    -| Impl SBCL : SBCL 0.7.2
    -`----
    -
    -
    -,---- UltraSPARCIIe at 500MHz, 640MB RAM, SunOS 5.8 ---
    -|
    -| Benchmark                 Reference  CMU C  CLISP
    -| -----------------------------------------------------
    -| BOYER                          3.98   0.91   8.03
    -| BROWSE                         1.72   0.91   2.85
    -| DDerviv                        2.02   0.75   3.21
    -| Deriv                          3.63   0.81   3.13
    -| DESTRUCTIVE                    3.11   1.01   4.18
    -| DIV2-TEST-1                    2.19   0.83   3.92
    -| DIV2-TEST-2                    1.12   0.82   3.85
    -| FFT                            0.74   1.03  28.86
    -| FRPOLY/FIXNUM                  1.87   1.01   7.89
    -| FRPOLY/BIGNUM                  4.59   1.29   3.07
    -| FRPOLY/FLOAT                   1.65   0.96   5.68
    -| PUZZLE                         2.07   0.95  30.62
    -| CTAK                           2.74   1.01   9.04
    -| TAK                            1.84   1.00  14.08
    -| RTAK                           1.84   1.01  13.95
    -| TAKL                           3.37   1.01  11.63
    -| STAK                           2.32   1.01   8.87
    -| FPRINT                         4.17   1.02   1.12
    -| TRAVERSE                       5.84   0.99  13.74
    -| TRIANGLE                       5.53   0.86  15.57
    -| CASCOR                        10.53   0.73  52.81
    -| RICHARDS                       2.35   0.94  22.46
    -| FACTORIAL                      1.46   1.48   2.88
    -| FIB                            0.94   0.99   6.71
    -| BIGNUM/ELEM-100-1000           2.80   1.24   0.28
    -| BIGNUM/ELEM-1000-100          10.14   1.19   0.44
    -| BIGNUM/ELEM-10000-1           11.38   1.35   0.41
    -| BIGNUM/PARI-100-10             2.76   1.15   0.09
    -| BIGNUM/PARI-200-5             27.19   1.06   0.05
    -| READ-LINE                      3.39   1.06   1.19
    -| HASH-STRINGS                   5.42   1.20   2.19
    -| HASH-INTEGERS                  1.61   0.76   2.00
    -| BOEHM-GC                      19.97   0.76   4.14
    -| CLOS/defclass                  4.78   1.01   0.81
    -| CLOS/defmethod                27.61   0.89   0.03
    -| CLOS/instantiate              20.93   0.85   1.28
    -| CLOS/methodcalls              23.62   1.08   1.94
    -| CLOS/method+after             33.70   1.07   0.78
    -| CLOS/complex-methods           1.41   0.92  -1.00
    -| 1D-ARRAYS                     10.77   0.92   3.51
    -| 2D-ARRAYS                     56.66   1.40   2.61
    -| BITVECTORS                     5.35   0.86   0.42
    -| FILL-STRINGS                  18.88   1.07   0.97
    -| fill-strings/adjustable       45.09   1.46   1.41
    -| BENCH-STRING-CONCAT           48.10   0.90  -1.00
    -| 
    -| Reference implementation: CMU Common Lisp 18c, Built 2000-11-27
    -| Impl CMU C: CMU Common Lisp 18d-pre, level-1 built 2001-12-12 on liszt
    -| Impl CLISP: CLISP 2.27.2 (released 2001-10-05) (built on moustacho)
    -| SunOS eagles 5.8 Generic_108528-10 sun4u sparc SUNW,Sun-Blade-100
    -`----
    -

    Note that results prior to 2002-01 were a little bogus, since the optimization settings were not being set correctly across implementations, so default optimization levels were used.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Performance Benchmarks2.html b/clones/lisp/www.cliki.net/Performance Benchmarks2.html deleted file mode 100644 index 062870a6..00000000 --- a/clones/lisp/www.cliki.net/Performance Benchmarks2.html +++ /dev/null @@ -1,281 +0,0 @@ - - - - - CLiki: Performance Benchmarks2 - - - - - - - -
    Performance Benchmarks2
    Here are the results of several performance benchmarking tests run on seven different Common Lisp implementations running on a P3 1.1 GHz, an UltraSPARCIIe 500 MHz and a dual G5 2.5 GHz. The tests run include

      -
    • the well-known Gabriel benchmarks -
    • -
    • hashtable exercising -
    • -
    • READ-LINE exercising -
    • -
    • mathematical functions: factorial, fibonacci, ackermann's number -
    • -
    • some bignum intensive code from Bruno Haible -
    • -
    • various aspects of CLOS: time taken to compile and execute - DEFCLASS forms which create a class hierarchy, instance creation - time, time taken to compile and execute DEFMETHOD forms, execution - of method combinations, both with and without :after methods. -
    • -
    • various operations on arrays, bitvectors and strings. -
    • -
    • Odd Benchmarks that test various features of CL against each other -
    • -

    This page is very similar to performance benchmarks. Should they be merged? -- Roland Kaufmann

    Except for the CLOS code, timings do not include compilation time. The -garbage collector is run before each test to try to make the timings -more repeatable. Remember that the only real benchmark is your -application: this code is only representative of real-life programs to -a limited extent. For certain targets, we assume that the times -reported by GET-INTERNAL-RUN-TIME and GET-INTERNAL-REAL-TIME are -accurate.

    The code for these performance benchmarks can be downloaded from -http://www.chez.com/emarsden/downloads/cl-bench.tar.gz. (For some reason -this seems to error out as a direct link but not when accessed from -the following page: http://www.chez.com/emarsden/downloads/.) - -Here is an example of the type of results you can obtain, for x86 and -SPARC platforms. To interpret these numbers: the number in the Reference column is a number of seconds taken to execute that test. The other numbers are the relative performance of that implementation, so for example a number of 1.3 means 30% slower than the reference implementation. A number of -1 means that the corresponding test was not run on that implementation, either because it does not support the given feature (certain types of method combination for CLISP, for instance), or because of implementation limits (heap size limit on LispWorks Personal, for example).

    -,---- Pentium III@1.1GHz, 512MB RAM ---
    -|
    -| Benchmark                 Reference   CMUCL CMUCL  CLISP   SBCL  Poplog
    -|                           CMUCL 18c   18d   18dsm  2.27.2  0.7.1 2.0
    -| -----------------------------------------------------------------------
    -| BOYER                          1.50   0.73   0.74   5.61   1.01   3.03
    -| BROWSE                         0.61   0.74   0.74   2.54   1.26   2.85
    -| DDerviv                        0.66   0.52   0.53   2.14   1.15   1.62
    -| Deriv                          1.29   0.50   0.48   2.05   1.10   1.26
    -| DESTRUCTIVE                    1.05   0.91   0.95   3.17   1.13   3.38
    -| DIV2-TEST-1                    1.09   0.51   0.51   1.66   1.07   1.29
    -| DIV2-TEST-2                    0.54   0.52   0.61   1.69   1.09   1.31
    -| FFT                            0.19   1.00   1.00  37.00   1.21  91.21
    -| FRPOLY/FIXNUM                  0.54   0.87   0.89   6.85   1.09   3.00
    -| FRPOLY/BIGNUM                  1.30   0.73   0.74   2.44   1.08   1.39
    -| FRPOLY/FLOAT                   0.54   0.76   0.78   4.41   1.06   2.11
    -| PUZZLE                         0.68   0.99   0.99  25.09   9.35  27.93
    -| TAK                            0.79   0.97   0.97   9.08   1.25   3.10
    -| CTAK                           0.73   1.00   0.97   6.49   1.05   4.84
    -| TRTAK                          0.79   0.97   0.97   9.13   1.25   3.11
    -| TAKL                           1.37   1.01   1.00   7.70   1.27   4.02
    -| STAK                           0.96   1.02   1.02   7.07   1.08   1.50
    -| FPRINT                         1.21   0.92   0.82   1.06   2.28   4.17
    -| TRAVERSE                       2.00   0.94   0.99  11.45   1.50   5.42
    -| TRIANGLE                       1.70   1.01   1.01  17.58   1.28  23.19
    -| RICHARDS                       0.53   1.00   0.98  21.26   1.00   6.47
    -| FACTORIAL                      0.37   0.54   0.57   0.81   1.14   0.62
    -| FIB                            0.33   1.00   1.00   5.30   1.06   1.18
    -| RATIOS                         2.24   0.96   0.96   0.12   0.96   1.81
    -| BIGNUM/ELEM-100-1000           1.06   0.92   0.97   0.08   0.97   2.27
    -| BIGNUM/ELEM-1000-100           4.99   0.99   0.99   0.05   0.93   2.14
    -| BIGNUM/ELEM-10000-1            5.19   1.01   1.00   0.05   0.92  12.90
    -| BIGNUM/PARI-100-10             1.21   0.99   1.02   0.02   0.95   0.04
    -| BIGNUM/PARI-200-5             14.30   0.99   1.00   0.01   0.92   0.01
    -| HASH-STRINGS                   1.15   0.84   0.69   3.25   0.99  30.89
    -| HASH-INTEGERS                  0.44   0.80   0.66   2.75   1.27   6.95
    -| BOEHM-GC                       6.41   0.47   0.46   4.10   1.12   1.53
    -| DEFLATE                        1.16   1.00   1.02   6.34   1.52   5.53
    -| CLOS/defclass                  1.75   0.90   0.92   0.53   2.53   0.06
    -| CLOS/defmethod                 8.73   0.77   0.71   0.02   2.17   0.00
    -| CLOS/instantiate               6.42   0.57   0.54   0.96   0.99   3.57
    -| CLOS/methodcalls               8.17   0.42   0.44   1.01   0.90   3.93
    -| CLOS/method+after             10.76   0.84   0.77   0.47   2.42   2.01
    -| CLOS/complex-methods           0.29   1.07   1.14  -1.00   6.17  -1.00
    -| 1D-ARRAYS                      2.44   0.81   0.79   5.68   1.39  15.75
    -| 2D-ARRAYS                     11.28   0.99   0.89   3.45   4.39   6.04
    -| BITVECTORS                     2.01   0.82   0.81   0.60   0.98  -1.00
    -| FILL-STRINGS                   6.83   0.88   0.82   1.16   3.77  27.38
    -| fill-strings/adjustable       14.18   0.99   0.87   1.36   1.73 118.49
    -| BENCH-STRING-CONCAT            5.79   1.88   1.62  -1.00   2.75  -1.00
    -| 
    -| Reference implementation: CMU Common Lisp 18c
    -| Impl   18d: CMU Common Lisp 18d-pre, level-1 built 2002-04-08 on melbourne
    -| Impl 18dsm: CMU Common Lisp 18d-pre-small, level-1 built 2002-04-08 on sydney
    -| Impl CLISP: CLISP 2.27.2 (released 2001-10-05) (built 3222523548) (memory 3222523674)
    -| Impl SBCL : SBCL 0.7.1.22 (from debian testing)
    -| Impl Poplog: Sussex Poplog Common Lisp 2.0
    -| Linux melbourne 2.4.17 #2 SMP Wed Feb 6 11:35:03 CET 2002 i686 unknown
    -|  (declaim (optimize (speed 3) (space 0) (safety 1) (debug 0) (compilation-speed 0)))
    -`----
    -
    -
    -,---- UltraSPARCIIe at 500MHz, 640MB RAM, SunOS 5.8 ---
    -|
    -| Benchmark                 Reference  CMU C  CLISP
    -| -----------------------------------------------------
    -| BOYER                          3.98   0.91   8.03
    -| BROWSE                         1.72   0.91   2.85
    -| DDerviv                        2.02   0.75   3.21
    -| Deriv                          3.63   0.81   3.13
    -| DESTRUCTIVE                    3.11   1.01   4.18
    -| DIV2-TEST-1                    2.19   0.83   3.92
    -| DIV2-TEST-2                    1.12   0.82   3.85
    -| FFT                            0.74   1.03  28.86
    -| FRPOLY/FIXNUM                  1.87   1.01   7.89
    -| FRPOLY/BIGNUM                  4.59   1.29   3.07
    -| FRPOLY/FLOAT                   1.65   0.96   5.68
    -| PUZZLE                         2.07   0.95  30.62
    -| CTAK                           2.74   1.01   9.04
    -| TAK                            1.84   1.00  14.08
    -| RTAK                           1.84   1.01  13.95
    -| TAKL                           3.37   1.01  11.63
    -| STAK                           2.32   1.01   8.87
    -| FPRINT                         4.17   1.02   1.12
    -| TRAVERSE                       5.84   0.99  13.74
    -| TRIANGLE                       5.53   0.86  15.57
    -| CASCOR                        10.53   0.73  52.81
    -| RICHARDS                       2.35   0.94  22.46
    -| FACTORIAL                      1.46   1.48   2.88
    -| FIB                            0.94   0.99   6.71
    -| BIGNUM/ELEM-100-1000           2.80   1.24   0.28
    -| BIGNUM/ELEM-1000-100          10.14   1.19   0.44
    -| BIGNUM/ELEM-10000-1           11.38   1.35   0.41
    -| BIGNUM/PARI-100-10             2.76   1.15   0.09
    -| BIGNUM/PARI-200-5             27.19   1.06   0.05
    -| READ-LINE                      3.39   1.06   1.19
    -| HASH-STRINGS                   5.42   1.20   2.19
    -| HASH-INTEGERS                  1.61   0.76   2.00
    -| BOEHM-GC                      19.97   0.76   4.14
    -| CLOS/defclass                  4.78   1.01   0.81
    -| CLOS/defmethod                27.61   0.89   0.03
    -| CLOS/instantiate              20.93   0.85   1.28
    -| CLOS/methodcalls              23.62   1.08   1.94
    -| CLOS/method+after             33.70   1.07   0.78
    -| CLOS/complex-methods           1.41   0.92  -1.00
    -| 1D-ARRAYS                     10.77   0.92   3.51
    -| 2D-ARRAYS                     56.66   1.40   2.61
    -| BITVECTORS                     5.35   0.86   0.42
    -| FILL-STRINGS                  18.88   1.07   0.97
    -| fill-strings/adjustable       45.09   1.46   1.41
    -| BENCH-STRING-CONCAT           48.10   0.90  -1.00
    -| 
    -| Reference implementation: CMU Common Lisp 18c, Built 2000-11-27
    -| Impl CMU C: CMU Common Lisp 18d-pre, level-1 built 2001-12-12 on liszt
    -| Impl CLISP: CLISP 2.27.2 (released 2001-10-05) (built on moustacho)
    -| SunOS eagles 5.8 Generic_108528-10 sun4u sparc SUNW,Sun-Blade-100
    -`----
    -

    Note that results prior to 2002-01 were a little bogus, since the optimization settings were not being set correctly across implementations, so default optimization levels were used.

    If anyone can run these against ACL (not the trial version, whose heap size limits prevent most of these tests from running) I would appreciate obtaining the results. -- Eric Marsden

    ----

    I reran the cl-bench benchmarks, using newer versions of SBCL and OpenMCL. -I aimed for ~10 seconds of run time per individual benchmark. Compiler optimization -made this impossible on some tests.

    I would like to include Lispworks, but the personal edition has a heap size limitation -that prevents many of the tests from completing. No bias is intended!

    I did not bother with the Allegro alisp8 runs this time.

    SBCL no longer crashes on the CLOS tests.

    A quick hand count shows:

    Allegro 47/65 -SBCL 14/65 -OpenMCL 4/65

    The test machine is a dual 2.5 G5, running OS X 10.4.2

    -Benchmark                 Reference    OpenMCL      SBCL 
    -                          ACL 7.0      0.14.3       0.9.4
    --------------------------------------------------------------------------------------
    -COMPILER                 [    10.80 ]     0.99*     3.33 
    -LOAD-FASL                [     9.77*]     2.83      3.51 
    -SUM-PERMUTATIONS         [    10.68*]     3.05      1.86 
    -WALK-LIST/SEQ            [     0.01*]     5.50      2.60 
    -WALK-LIST/MESS           [     0.02*]     2.00      2.85 
    -BOYER                    [    14.94 ]     1.83      0.65*
    -BROWSE                   [    10.89*]     2.62      4.17 
    -DDERIV                   [    10.21*]     4.65      8.26 
    -DERIV                    [    10.90*]     4.60      8.95 
    -DESTRUCTIVE              [    10.32*]     3.47      5.47 
    -DIV2-TEST-1              [    11.01*]    12.54     22.10 
    -DIV2-TEST-2              [     9.80*]    10.11     18.23 
    -FFT                      [    10.76*]   116.68      1.07 
    -FRPOLY/FIXNUM            [    12.02*]     1.84      2.47 
    -FRPOLY/BIGNUM            [    11.91*]     2.60      3.12 
    -FRPOLY/FLOAT             [    10.84*]     2.89      2.59 
    -PUZZLE                   [    10.91 ]     4.89      0.50*
    -TAK                      [    11.76*]     1.39      1.70 
    -CTAK                     [    11.31 ]     0.93      0.59*
    -TRTAK                    [    10.58*]     1.39      1.79 
    -TAKL                     [    11.74 ]     1.71      0.82*
    -STAK                     [    11.53 ]     0.37      0.15*
    -FPRINT/UGLY              [    10.41*]    10.81      4.50 
    -FPRINT/PRETTY            [     9.87*]     5.78      4.98 
    -TRAVERSE                 [    11.05*]     1.77      1.04 
    -TRIANGLE                 [    10.72 ]     1.84      0.75*
    -RICHARDS                 [    10.66 ]     0.75      0.64*
    -FACTORIAL                [    10.72*]     7.25      9.42 
    -FIB                      [    11.87*]     1.49      2.51 
    -FIB-RATIO                [    10.92*]     4.40      8.20 
    -ACKERMANN                [    13.47 ]     0.52*     0.81 
    -MANDELBROT/COMPLEX       [    11.02*]     2.61      8.44 
    -MANDELBROT/DFLOAT        [    11.79*]    56.63      4.89 
    -MRG32K3A                 [    11.92 ]    16.34      0.57*
    -CRC40                    [    13.95*]     3.31      2.82 
    -BIGNUM/ELEM-100-1000     [    11.64*]     3.92      2.03 
    -BIGNUM/ELEM-1000-100     [    11.98 ]     5.38      0.87*
    -BIGNUM/ELEM-10000-1      [    11.94 ]     5.00      0.40*
    -BIGNUM/PARI-100-10       [    11.67*]    25.08      3.81 
    -BIGNUM/PARI-200-5        [    11.98*]    68.45      2.92 
    -PI-DECIMAL/SMALL         [    12.09*]    12.20      5.51 
    -PI-DECIMAL/BIG           [    10.29*]    35.78      3.33 
    -PI-ATAN                  [    11.35*]     3.41      5.75 
    -PI-RATIOS                [    11.44*]     2.96      2.84 
    -HASH-STRINGS             [    11.70 ]     0.53      0.31*
    -HASH-INTEGERS            [    11.84*]    15.67      4.92 
    -SLURP-LINES              [    10.39*]     4.80     26.57 
    -BOEHM-GC                 [    13.29*]     4.84      2.78 
    -DEFLATE-FILE             [    11.27*]     1.56      1.42 
    -1D-ARRAYS                [    11.01 ]     0.92*     1.19 
    -2D-ARRAYS                [    11.13*]    18.09      2.23 
    -3D-ARRAYS                [    12.00*]    17.90      1.88 
    -BITVECTORS               [    10.55*]    62.95     15.56 
    -BENCH-STRINGS            [    11.88*]     4.20      1.10 
    -fill-strings/adjustable  [    15.82*]     7.70      7.37 
    -SEARCH-SEQUENCE          [    11.92 ]     1.35      0.10*
    -CLOS/defclass            [    10.70*]   102.03   1323.65 
    -CLOS/defmethod           [    11.71 ]     0.68*   197.61 
    -CLOS/instantiate         [    10.30*]     7.38    126.80 
    -CLOS/simple-instantiate  [     9.46*]    40.98    157.12 
    -CLOS/methodcalls         [    10.47*]     3.59     32.44 
    -CLOS/method+after        [    11.32*]     3.11     79.45 
    -CLOS/complex-methods     [    11.23 ]     3.19      0.61*
    -EQL-SPECIALIZED-FIB      [    12.10 ]     1.48      0.60*
    -Reference time in first column is in seconds; other columns are relative
    -Reference implementation: International Allegro CL Professional Edition 7.0 [Mac OS X] (Sep 29, 2005 18:24)
    -Impl OpenM: OpenMCL Version (Beta: Darwin) 0.14.3
    -Impl SBCL : SBCL 0.9.4
    -=== Test machine ===
    -   Machine-type: PowerPC
    -   Machine-version: Power Macintosh
    -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Performance.html b/clones/lisp/www.cliki.net/Performance.html deleted file mode 100644 index ce0aedfe..00000000 --- a/clones/lisp/www.cliki.net/Performance.html +++ /dev/null @@ -1,105 +0,0 @@ - - - - - CLiki: Performance - - - - - - - -
    Performance
    Performance is either the subject of programmer performance (speed and quality of programming) or program performance (speed and quality of execution (or of compilation when the program under consideration is a compiler)).

    Programmer Performance

    Papers about various studies comparing programmer/language performance:

    In summary, the experiences tend to show that with lisp you get faster development times, at least as fast execution times, and less variance amongst developers (so there's less risk in using lisp than other programming languages).

    Program Performance

    -

    Lisp Performance

    See benchmark for programs trying to measure the performance of Lisp systems.

    In the "program quality" aspect of things:

    -and numerous other pitfalls in programs written in "normal" programming languages.

    That should give a lot of reasons to use CL.

    Algorithm and Algorithm Implementation Performance

    -

    Energy Performance

    -

    Related

    -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Persistence.html b/clones/lisp/www.cliki.net/Persistence.html deleted file mode 100644 index 1de3ac78..00000000 --- a/clones/lisp/www.cliki.net/Persistence.html +++ /dev/null @@ -1,89 +0,0 @@ - - - - - CLiki: persistence - - - - - - - -
    persistence
    -

    Historical interest: MetaStore (1992)

    An early implementation of persistent objects in Common Lisp (via the MOP) is detailed in The Persistent Object System MetaStore (PDF). This PCL-based system "uses the metaprogramming facilities of the metaobject protocol to add persistence to the Common Lisp Object System. This approach leaves the semantics of CLOS 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."

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Person.html b/clones/lisp/www.cliki.net/Person.html deleted file mode 100644 index 8b059a48..00000000 --- a/clones/lisp/www.cliki.net/Person.html +++ /dev/null @@ -1,1325 +0,0 @@ - - - - - CLiki: Person - - - - - - - -
    Person
    For the purposes of CLiki, a Person is an intelligent lifeform. Traditionally most are carbon-based, bipedal, and breathe oxygen, but we're -happy to welcome AIs, robots, superintelligent shades of the colour blue, and others.

    You might also be interested in YoungLispers and The Road to Lisp Survey.

    Also see the Common Lispers list.

    People who've created a page for themselves - or had one created for them - on CLiki are

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Petalisp.html b/clones/lisp/www.cliki.net/Petalisp.html deleted file mode 100644 index 727f9486..00000000 --- a/clones/lisp/www.cliki.net/Petalisp.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Petalisp - - - - - - - -
    Petalisp
    Elegant code generation for high-performance computing.

    Repository: https://github.com/marcoheisig/Petalisp


    -Topics: concurrency
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Peter Buchlovsky.html b/clones/lisp/www.cliki.net/Peter Buchlovsky.html deleted file mode 100644 index e45cce5f..00000000 --- a/clones/lisp/www.cliki.net/Peter Buchlovsky.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Peter Buchlovsky - - - - - - - -
    Peter Buchlovsky
    He is a person.

    I sometimes hang out on #lisp where my nickname is petebu.

    I've (not so) recently been thinking about (read as: wishing for) a lisp IDE.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Peter Denno.html b/clones/lisp/www.cliki.net/Peter Denno.html deleted file mode 100644 index 8e3de97b..00000000 --- a/clones/lisp/www.cliki.net/Peter Denno.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Peter Denno - - - - - - - -
    Peter Denno
    Programmer


    -person
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Peter Eddy.html b/clones/lisp/www.cliki.net/Peter Eddy.html deleted file mode 100644 index 289357f1..00000000 --- a/clones/lisp/www.cliki.net/Peter Eddy.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Peter Eddy - - - - - - - -
    Peter Eddy
    Peter Eddy is generally considered to be a Person
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Peter Graves.html b/clones/lisp/www.cliki.net/Peter Graves.html deleted file mode 100644 index 63775355..00000000 --- a/clones/lisp/www.cliki.net/Peter Graves.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Peter Graves - - - - - - - -
    Peter Graves
    Peter Graves, a Person, is the principal author of Armed Bear Lisp and new XCL
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Peter Keller.html b/clones/lisp/www.cliki.net/Peter Keller.html deleted file mode 100644 index 58d6d6c2..00000000 --- a/clones/lisp/www.cliki.net/Peter Keller.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: Peter Keller - - - - - - - -
    Peter Keller
    Peter Keller is a person and a systems programmer who works in distributed computing. He had been a long time scheme hacker, but moved over to Common Lisp -after an Absinthe binge. This was a good move.

    He has written some lisp software and tutorials available -here.

    His blog often contains lisp content in addition to junk which would likely fail a Turing Test.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Peter S Housel.html b/clones/lisp/www.cliki.net/Peter S Housel.html deleted file mode 100644 index d5637bef..00000000 --- a/clones/lisp/www.cliki.net/Peter S Housel.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Peter S Housel - - - - - - - -
    Peter S Housel
    Peter S. Housel is a Person. See (Peter Housel's Road to Lisp) and what passes for my home page these days.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Peter Scott.html b/clones/lisp/www.cliki.net/Peter Scott.html deleted file mode 100644 index 4e80774c..00000000 --- a/clones/lisp/www.cliki.net/Peter Scott.html +++ /dev/null @@ -1,62 +0,0 @@ - - - - - CLiki: Peter Scott - - - - - - - -
    Peter Scott
    Peter Scott is, as the name suggests, yet another Person named "Peter".

    I am the author of the following packages: -

      -
    • -xml-psychiatrist, a package for sanity-checking XML
    • -
    • -periodic-table, the periodic table in Lispy syntax
    • -
    • -chemical-compounds, a parser, pretty-printer, and formula weight finder for chemical compounds in a user-friendly syntax. It's a pretty neat use of the META parsing technique.
    • -
    • -Chemboy, described below. It's now asdf-installable and perfectly usable!
    • -
    • I maintain cl-utilities, a collection of semi-standard utilities that everyone is sick of implementing Greenspun-style.
    • -

    I'm also the founder of the asdf-packaging project, an effort to find good Lisp code and make it asdf-installable.

    My email address is sketerpot@gmail.com.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Peter Seibel.html b/clones/lisp/www.cliki.net/Peter Seibel.html deleted file mode 100644 index 8ece4f72..00000000 --- a/clones/lisp/www.cliki.net/Peter Seibel.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Peter Seibel - - - - - - - -
    Peter Seibel
    Peter Seibel is a Person who has written an introductory book about Common Lisp, Practical Common Lisp. Some additional information can be found in other places.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Peter Szilagyi.html b/clones/lisp/www.cliki.net/Peter Szilagyi.html deleted file mode 100644 index d29abd25..00000000 --- a/clones/lisp/www.cliki.net/Peter Szilagyi.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Peter Szilagyi - - - - - - - -
    Peter Szilagyi
    I am another -Person, of no particular distinction.

    I am faced with the horrible realization that I'm really too old to include myself in YoungLispers. I'm very glad to see all you whippersnappers discovering Lisp, though. In my day...

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Peter Van Eynde.html b/clones/lisp/www.cliki.net/Peter Van Eynde.html deleted file mode 100644 index 3718ab05..00000000 --- a/clones/lisp/www.cliki.net/Peter Van Eynde.html +++ /dev/null @@ -1,56 +0,0 @@ - - - - - CLiki: Peter Van Eynde - - - - - - - -
    Peter Van Eynde
    It's strange to edit a record that states "describe foo" when -you are that foo, but anyway.

    I'm a Person and debian developer who ported and tries to maintain the -CMUCL port for Linux. I release debian packages (.deb's) now -and again, hoping that .rpm users use "alien" to convert them. See -CMUCL on Debian.

    I am also a Physicist.

    You can reach me at pvaneynd at debian.org.

    As I've noticed while reading the IRC logs that people have a lot of questions and (let us be frank) rants against me I've decided to kidnap cliki for my own imperialistic purposes.

    Therefore I introduce: Ask Uncle Peter! -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Peter Ward.html b/clones/lisp/www.cliki.net/Peter Ward.html deleted file mode 100644 index a30e38b7..00000000 --- a/clones/lisp/www.cliki.net/Peter Ward.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Peter Ward - - - - - - - -
    Peter Ward
    Peter Ward is a Person for whom Lisp is the language of choice.

    Sadly, it's usually not my choice.

    Peter can be contacted using mailto:peter.ward@services.fujitsu.com

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Pg.html b/clones/lisp/www.cliki.net/Pg.html deleted file mode 100644 index 6142e916..00000000 --- a/clones/lisp/www.cliki.net/Pg.html +++ /dev/null @@ -1,72 +0,0 @@ - - - - - CLiki: Pg - - - - - - - -
    Pg
    Pg is a socket-level interface to the PostgreSQL object-relational Database. -Pg implements the client part of the frontend/backend -protocol, so does not require interfacing with the libpq library. SQL -types are converted to the equivalent Common Lisp types where -possible. Supports large objects (BLOBs).


    -Postmodern is a newer and much-much cleaner library. Its cl-postgres asdf system implements the same functionality as Pg -- Attila Lendvai -

    The only non portable code is the use of SOCKET-CONNECT. Versions are -provided for CMU Common Lisp (CMUCL), SBCL, OpenMCL, CLISP, LispWorks and Allegro Common Lisp (ACL). Corman CL doesn't support binary I/O on socket streams, so it doesn't work there.

    Pg is available under the GNU LGPL licence from www.chez.com/emarsden/downloads. -There are also Emacs Lisp and scsh versions of the library.

    This is a snapshot of the CVS repository at common-lisp.net/project/pg and it is not GPG signed.

    Here is the last released version, but it's quite old:

    http://www.chez.com/emarsden/downloads/pg-dot-lisp-0.19.tar.gz

    Sample code:

    -(with-pg-connection (conn "testdb" "login" :host "dbhost" :password "secret")
    -   (with-pg-transaction conn
    -      (when (member "test_date" (pg-tables conn) :test #'string=)
    -         (pg-exec conn "DROP TABLE test_date"))
    -      (pg-exec conn "CREATE TABLE test_date(a timestamp, b abstime, c time, d date)")
    -      (pg-exec conn "INSERT INTO test_date VALUES "
    -                    "(current_timestamp, 'now', 'now', 'now')")))
    -
    -


    -Stargreen Box Office uses Pg for its database glue layer; it's respectably fast, simple enough to see what it's doing, and impervious to PostgreSQL shared library versioning issues (because it doesn't use them). I'm very happy with it -- Daniel Barlow -
    -You must set unix_socket_directory in your postgresql.conf to /var/run/postgresql
    -pg doesn't use the default path for the unix domain socket. See Socket Path.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/PgUtils.html b/clones/lisp/www.cliki.net/PgUtils.html deleted file mode 100644 index c89f1e59..00000000 --- a/clones/lisp/www.cliki.net/PgUtils.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: PgUtils - - - - - - - -
    PgUtils
    PgUtils is a package containing all the utility functions and macros from -Paul Graham's excellent On Lisp book.

    http://ftp.linux.org.uk/pub/lisp/cclan/pgutils.tar.gz

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Philippe Brochard.html b/clones/lisp/www.cliki.net/Philippe Brochard.html deleted file mode 100644 index 259ba339..00000000 --- a/clones/lisp/www.cliki.net/Philippe Brochard.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - CLiki: Philippe Brochard - - - - - - - -
    Philippe Brochard
    Philippe Brochard is a person who has a lot of fun with cl-wav-synth and clfswm and lisp in general. -He's sometimes 'hocwp' on IRC.

    -


    -person -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Phorx.html b/clones/lisp/www.cliki.net/Phorx.html deleted file mode 100644 index ef87bdcf..00000000 --- a/clones/lisp/www.cliki.net/Phorx.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Phorx - - - - - - - -
    Phorx
    Phorx is a program that allows you to write Music that can change dynamically as it is playing. It is based on a mathematical construct called a transition probability matrix, or Markov Chain. Phorx was written in Macintosh Common Lisp, using CLOS to define node and edge classes and their behaviors. More from Jim Carlsen's web pages.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Pieter Breed.html b/clones/lisp/www.cliki.net/Pieter Breed.html deleted file mode 100644 index 2e633c41..00000000 --- a/clones/lisp/www.cliki.net/Pieter Breed.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Pieter Breed - - - - - - - -
    Pieter Breed
    Pieter Breed is a person. He laments the fact that he needs to code in C++, VB and .NET technologies to be able to make a living in South Africa. He sometimes pops into #lisp and asks stupid questions under the nickname pwab.

    He has a webpage/blog too and can be reached at pieter@pb.co.za.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Pietro Braione.html b/clones/lisp/www.cliki.net/Pietro Braione.html deleted file mode 100644 index 5afb4ac0..00000000 --- a/clones/lisp/www.cliki.net/Pietro Braione.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Pietro Braione - - - - - - - -
    Pietro Braione
    They say I am a person, but who can tell it exactly? Anyways, I am an active contributor of the TUNES cliki. You can check my homepage here. -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Pinot.html b/clones/lisp/www.cliki.net/Pinot.html deleted file mode 100644 index a0d6cd9a..00000000 --- a/clones/lisp/www.cliki.net/Pinot.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Pinot - - - - - - - -
    Pinot
    Pinot is a web framework as well as some content management functionality built on that framework. It's written in ANSI Common Lisp, requires CMUCL, Apache, and mod_lisp, and is licensed under the GNU General Public License. It is installed in several locations, personal and commercial.

    Most recent development has been on the content functionality (e.g., links, articles, file libraries). It's quite rough, but you can successfully create content through Web forms. Authentication is even rougher currently but there are plans for a lot of proper security features (decoupling identity from authentication, privilege escalation, fine-grained access control, and more) built on the current foundation of the authentication framework.

    License: GPL

    Sources: http://vc.quadium.net/svn/pinot/trunk/

    Evaluation, 20100901

    A very brief assessment of all web frameworks listed in cliki was carried out in September 2010. This assessment comprised: check websites, download source if available, attempt to compile, review documentation.

    The review found that there were four pages of documentation written in 2004; Pinot does not seem to be actively promoted even by its author.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Planet of the Feebs.html b/clones/lisp/www.cliki.net/Planet of the Feebs.html deleted file mode 100644 index 1d193401..00000000 --- a/clones/lisp/www.cliki.net/Planet of the Feebs.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Planet of the Feebs - - - - - - - -
    Planet of the Feebs
    Planet of the Feebs is a simulation Game loosely based on the "Maze War" game developed by Steve Colley and Greg Thompson at the NASA Ames Research Center in California 1974. Programs written by the player control creatures that move around a maze and try to zap one another. -The game runs under CMUCL and requires CLX. Since it relies on the CMUCL event management facilities, porting it to other Common Lisp implementations requires some work.

    Planet of the Feebs was originally developed at the beginning of the nineties[?] by Scott Falhman, Skef Wholey and others at Carnegie-Mellon University, and it was placed in the public domain. In 1998 Fred Gilham modified the graphics routines to work with X11. This version is now included with CMUCL src under the "src/contrib/games/feebs" directory.

    Note: The documentation of Planet of the Feebs erroneously credits Xerox PARC researchers for "Maze War". Actually this game was was first written for the Imlac PDS-1 at the abovementioned location, then taken to MIT by Greg Thompson, where it was rewritten for the Xerox Alto and subsequently sent to Xerox PARC.

    See also a The Feebs War, a new project based on Planet of the Feebs.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Plotting.html b/clones/lisp/www.cliki.net/Plotting.html deleted file mode 100644 index 769f0776..00000000 --- a/clones/lisp/www.cliki.net/Plotting.html +++ /dev/null @@ -1,148 +0,0 @@ - - - - - CLiki: plotting - - - - - - - -
    plotting
    Library and Application packages to produce 2D and 3D plots. -
  • -Plot - Plot is a common lisp interface to Vega and Vega-Lite plotting
  • -


    -Mathematics, graphics library
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Plump.html b/clones/lisp/www.cliki.net/Plump.html deleted file mode 100644 index 780e4650..00000000 --- a/clones/lisp/www.cliki.net/Plump.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: Plump - - - - - - - -
    Plump
    Practically Lenient and Unimpressive Markup Parser

    Plump is a parser for HTML/XML like documents, focusing on being lenient towards invalid markup. It can handle things like invalid attributes, bad closing tag order, unencoded entities, inexistent tag types, self-closing tags and so on. It parses documents to a class representation and offers a small set of DOM functions to manipulate it. You are free to change it to parse to your own classes though.

    The project can be found on github including a fully documented symbol index and a getting started tutorial.
    -As of April 2014, Plump is available on Quicklisp.

    Plump is licensed under the Artistic License 2.0.


    -XML HTML HTML parser
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/PonzuDB.html b/clones/lisp/www.cliki.net/PonzuDB.html deleted file mode 100644 index 0bffac8c..00000000 --- a/clones/lisp/www.cliki.net/PonzuDB.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: PonzuDB - - - - - - - -
    PonzuDB
    This was just an experimental project. Not in development anymore. obsolete?

    PonzuDB was an ORM based on CLSQL.

    Homepage: https://github.com/fukamachi/ponzu.db

    License: LLGPL

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/PopLog.html b/clones/lisp/www.cliki.net/PopLog.html deleted file mode 100644 index f50de9b3..00000000 --- a/clones/lisp/www.cliki.net/PopLog.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: Poplog - - - - - - - -
    Poplog
    Poplog is a multi-language programming system which includes its own Common Lisp implementation, as well as Standard ML, Prolog, and Pop-11. The Poplog system features its own editor, ved, and extensive online help and tutorials.

    Although originally a commercial product, a new, open source version, Free Poplog, has been made available for no cost. It runs on a variety of Unix and linux platforms as well as Windows 95/98/NT/2000

    An excellent resource for Poplog can be found at http://www.poplog.org/. As of 2011-01-10, the domain is for sale.

    A more up to date source of poplog, along with documentation, additional packages and a version packaged for linux+PC can be found here (at the University of Birmingham): - -http://www.cs.bham.ac.uk/research/poplog/freepoplog.html

    Another such environment seems to be Xerox PARC ILU system.

    prolog

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Poplog.html b/clones/lisp/www.cliki.net/Poplog.html deleted file mode 100644 index f50de9b3..00000000 --- a/clones/lisp/www.cliki.net/Poplog.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: Poplog - - - - - - - -
    Poplog
    Poplog is a multi-language programming system which includes its own Common Lisp implementation, as well as Standard ML, Prolog, and Pop-11. The Poplog system features its own editor, ved, and extensive online help and tutorials.

    Although originally a commercial product, a new, open source version, Free Poplog, has been made available for no cost. It runs on a variety of Unix and linux platforms as well as Windows 95/98/NT/2000

    An excellent resource for Poplog can be found at http://www.poplog.org/. As of 2011-01-10, the domain is for sale.

    A more up to date source of poplog, along with documentation, additional packages and a version packaged for linux+PC can be found here (at the University of Birmingham): - -http://www.cs.bham.ac.uk/research/poplog/freepoplog.html

    Another such environment seems to be Xerox PARC ILU system.

    prolog

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Portable CommonLoops.html b/clones/lisp/www.cliki.net/Portable CommonLoops.html deleted file mode 100644 index df2a3d81..00000000 --- a/clones/lisp/www.cliki.net/Portable CommonLoops.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Portable CommonLoops - - - - - - - -
    Portable CommonLoops
    Portable CommonLoops is a reference CLOS/MOP implementation originally developed by Xerox, deriving from the Loops Project.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Portable Exit.html b/clones/lisp/www.cliki.net/Portable Exit.html deleted file mode 100644 index 07e249f4..00000000 --- a/clones/lisp/www.cliki.net/Portable Exit.html +++ /dev/null @@ -1,72 +0,0 @@ - - - - - CLiki: Portable Exit - - - - - - - -
    Portable Exit
    A portability layer for ending the Lisp image.

    (defun quit (&optional code) - ;; This group from "clocc-port/ext.lisp" - #+allegro (excl:exit code) - #+clisp (#+lisp=cl ext:quit #-lisp=cl lisp:quit code) - #+cmu (ext:quit code) - #+cormanlisp (win32:exitprocess code) - #+gcl (lisp:bye code) ; XXX Or is it LISP::QUIT? - #+lispworks (lw:quit :status code) - #+lucid (lcl:quit code) - #+sbcl (sb-ext:exit :code code) - ;; This group from Maxima - #+kcl (lisp::bye) ; XXX Does this take an arg? - #+scl (ext:quit code) ; XXX Pretty sure this *does*. - #+(or openmcl mcl) (ccl::quit) - #+abcl (cl-user::quit) - #+ecl (si:quit) - ;; This group from <hebi...@math.uni.wroc.pl> - #+poplog (poplog::bye) ; XXX Does this take an arg? - #-(or allegro clisp cmu cormanlisp gcl lispworks lucid sbc - kcl scl openmcl mcl abcl ecl) - (error 'not-implemented :proc (list 'quit code)))

    Taken from Rob Warnock's post "How to programmatically exit?"


    -compatibility layers
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Portable Hemlock.html b/clones/lisp/www.cliki.net/Portable Hemlock.html deleted file mode 100644 index 188662a2..00000000 --- a/clones/lisp/www.cliki.net/Portable Hemlock.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Portable Hemlock - - - - - - - -
    Portable Hemlock
    "An attempt to free Hemlock from its CMUCL prison."

    Runs (more or less) in CMUCL CLISP, OpenMCL, SBCL, SCL.

    Homepage

    See also the git repository for the portable version of Hemlock.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Portable-Threads.html b/clones/lisp/www.cliki.net/Portable-Threads.html deleted file mode 100644 index 07301084..00000000 --- a/clones/lisp/www.cliki.net/Portable-Threads.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Portable-Threads - - - - - - - -
    Portable-Threads
    Portable-threads is the GBBopen project's portable-thread code all packaged up for ASDF-Install. More information about GBBopen can be found on their page. More information on the code can be found in their documentation.

    Although Bordeaux-Threads may be more popular today, but Portable-threads offers more portable APIs (e.g. atomic-incf) and supports older versions of implementations. GBBopen also has a " scheduled-periodic-functions" module based on portable-threads, it literally supports creating "scheduled periodic functions" which is very useful in a Lisp server environment.

    Dan Corkill is the one to bother regarding bugs, comments, criticism, suggestions, enhancements, and extensions.

    Gary King is the one to talk to if something is wrong with the ASDF-Install portion of things.

    Chun Tian (binghe) created a separated repository on Github after realized that cl-containers doesn't use portable-threads any more (the download link below is a very old version of portable-threads). This new repository contains both "portable-threads.lisp" and "scheduled-periodic-functions.lisp" from GBBopen project. He also added support for LispWorks 7.


    -Apache 2, compatibility layers
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Portableaserve.html b/clones/lisp/www.cliki.net/Portableaserve.html deleted file mode 100644 index 976980e2..00000000 --- a/clones/lisp/www.cliki.net/Portableaserve.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: portableaserve - - - - - - - -
    portableaserve
    Portable AllegroServe is a fork of the AllegroServe HTTP server, adapted to work with other CL implementations, not only with Allegro CL. Includes htmlgen and acl-compat.


    -LLGPL
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Portal.html b/clones/lisp/www.cliki.net/Portal.html deleted file mode 100644 index 6421a6b9..00000000 --- a/clones/lisp/www.cliki.net/Portal.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: Portal - - - - - - - -
    Portal
    Portal is a portable Common Lisp implementation of WebSockets using usocket.

    -Categories: Web, IPC, WebSocket server

    -Source repository: https://github.com/charJe/portal .

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/PorterStemmer.html b/clones/lisp/www.cliki.net/PorterStemmer.html deleted file mode 100644 index 194ab236..00000000 --- a/clones/lisp/www.cliki.net/PorterStemmer.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: PorterStemmer - - - - - - - -
    PorterStemmer
    The Porter Stemmer is a stemming text algorithm by Martin Porter. It has a Common Lisp implementation that was written by Stephen M. Haflich.

    PorterStemmer is available in Quicklisp under the name "stem"

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/PostScript.html b/clones/lisp/www.cliki.net/PostScript.html deleted file mode 100644 index 4ed7eca0..00000000 --- a/clones/lisp/www.cliki.net/PostScript.html +++ /dev/null @@ -1,60 +0,0 @@ - - - - - CLiki: PostScript - - - - - - - -
    PostScript
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Postmodern.html b/clones/lisp/www.cliki.net/Postmodern.html deleted file mode 100644 index 93af1690..00000000 --- a/clones/lisp/www.cliki.net/Postmodern.html +++ /dev/null @@ -1,63 +0,0 @@ - - - - - CLiki: postmodern - - - - - - - -
    postmodern
    Postmodern is an interface to PostgreSQL SQL databases.

    Features: -

      -
    • Efficient communication with the database server without need for foreign libraries. -
    • -
    • Support for UTF-8 on Lisp implementations with Unicode support -
    • -
    • A lispy syntax for expressing SQL queries -
    • -
    • Convenient support for prepared statements and stored procedures -
    • -
    • Defclass-like definition of tables and associated accessor classes -
    • -

    It supports PostgreSQL versions up from 7.4, and is theoretically portable across Lisp implementations, though not much testing has been done yet.

    License: BSD-style

    Homepage: http://marijn.haverbeke.nl/postmodern/

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Postscript.html b/clones/lisp/www.cliki.net/Postscript.html deleted file mode 100644 index 4ed7eca0..00000000 --- a/clones/lisp/www.cliki.net/Postscript.html +++ /dev/null @@ -1,60 +0,0 @@ - - - - - CLiki: PostScript - - - - - - - -
    PostScript
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/PowerLoom.html b/clones/lisp/www.cliki.net/PowerLoom.html deleted file mode 100644 index fcab4645..00000000 --- a/clones/lisp/www.cliki.net/PowerLoom.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: PowerLoom - - - - - - - -
    PowerLoom
    A (not written in Common Lisp) Knowledge Representation & Reasoning System. PowerLoom is implemented in stella that can be translated into Lisp, C++ and Java and therefore available in Common-Lisp version. It is a successor to LOOM. As Wikipedia article claims, LOOM could be used as a deductive layer that overlays an ordinary CLOS network so that users can obtain many of the benefits of using Loom without impacting the function or performance of their CLOS-based applications. See Retrospective of Loom and references therein for details.

    [PDF] PowerLoom manual

    Homepage: at isi.edu

    License: MPL, GPL, LGPL (see PowerLoom Downloads page for details).

    See Also: KR


    -Topics: Knowledge Representation Systems
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/PowerShell.html b/clones/lisp/www.cliki.net/PowerShell.html deleted file mode 100644 index eb91a52e..00000000 --- a/clones/lisp/www.cliki.net/PowerShell.html +++ /dev/null @@ -1,182 +0,0 @@ - - - - - CLiki: PowerShell - - - - - - - -
    PowerShell
    An experiment in sending tasks to PowerShell from CL. The Perl Batcave has this thing lying around: Win32::PowerShell::IPC. It's possible to steal this technique for Common Lisp. CCL handles a lot of the tricky OS-level details (like I/O on pipes). But a PowerShell "cmdlet" normally produces an array of objects—which have "properties"—and it can be expedient to get them in the form of S-expressions (or at least lists).

    A quick-and-dirty way to do this is to arrange for PowerShell to format the result as one big string, and then parse the output into a Lisp list. This is done by designating two separator characters: the "vertical tab" character as a separator between objects, and the null character to separate properties within an object. These correspond (respectively) to #\PageUp and #\Nul in CCL, or `v and `0 in PowerShell. (Unlike many other languages, PowerShell uses the backtick as an escape character in double-quoted strings.)

    The code

    Licensed under Apache 2. The external-process management is specific to Clozure CL.

    (defvar *powershell* nil - "If set: an EXTERNAL-PROCESS.") - -(defun open-powershell () - "Start PowerShell and save it in *POWERSHELL*." - (setq *powershell* (run-program "powershell.exe" - '("-Command" "-") - :wait nil - :input :stream - :error :stream - :output :stream))) - -(defun close-powershell (&optional (powershell *powershell*)) - "Close associated streams, causing PowerShell to exit." - (close (external-process-input-stream powershell)) - (close (external-process-error-stream powershell)) - (close (external-process-output-stream powershell))) - -(defun make-command-boundary (command) - (loop for boundary-code = (random most-positive-fixnum) - for boundary = (format nil "END_COMMAND_~36R" boundary-code) - while (search boundary command) finally (return boundary))) - -(define-condition powershell-error (error) - ((command :initarg :command :reader powershell-error-command) - (string :initarg :string :reader powershell-error-string)) - (:report (lambda (powershell-error reporting-stream) - (format reporting-stream - "PowerShell error on command ~S:~%~A" - (powershell-error-command powershell-error) - (powershell-error-string powershell-error))))) - -(defun run-powershell (command &optional (powershell *powershell*)) - (let* ((input-stream (external-process-input-stream powershell)) - (output-stream (external-process-output-stream powershell)) - (error-stream (external-process-error-stream powershell)) - (boundary (make-command-boundary command)) - (end-line (format nil "echo ~A" boundary))) - (write-line command input-stream) - (write-line end-line input-stream) - (force-output input-stream) - (let ((result-string - (with-output-to-string (result-stream) - (loop with pending-line = nil - for line = (read-line output-stream) until (equal line boundary) - when pending-line do (write-line pending-line result-stream) - do (setq pending-line line) - finally (when pending-line - ;; Don't write the trailing #\Newline. - (write-string pending-line result-stream))))) - ;; We have read up to (and including) the boundary. - ;; Now consume all available output from ERROR-STREAM. - (error-string - (with-output-to-string (buffer) - (loop for char = (read-char-no-hang error-stream) - while char do (write-char char buffer))))) - ;; Did we get an ERROR-STRING? - (if (plusp (length error-string)) - (error 'powershell-error - :command command - :string error-string) - result-string)))) - -(defun parse-powershell-output (string) - (when (equal string "") (return-from parse-powershell-output nil)) - (let ((end (length string)) (pending-property (make-string-output-stream))) - (macrolet ((get-property () `(get-output-stream-string pending-property))) - (loop with (list sublist) = nil - for i of-type fixnum from 0 to end - for char = (when (< i end) (char string i)) - do (cond ((or (= i end) (char= char #\PageUp)) - (if sublist - (progn - (push (get-property) sublist) - (push (nreverse sublist) list) - (setq sublist nil)) - ;; One property, no sublist. - (push (get-property) list)) - ;; Done parsing? - (when (= i end) - (return-from parse-powershell-output - (nreverse list)))) - ((char= char #\Nul) - (push (get-property) sublist)) - ((write-char char pending-property))))))) - -(defun run-powershell* (command &optional (powershell *powershell*)) - (parse-powershell-output (run-powershell command powershell))) - -(defmacro $ (control-string &rest format-arguments) - (let ((split-point (member '=> format-arguments))) - (unless split-point (error "Expected => part.")) - (multiple-value-bind (command-arguments property-selection-arguments) - (values (ldiff format-arguments split-point) (rest split-point)) - `(format nil "(~A | %{~A -join \"`0\"}) -join \"`v\"" - (format nil ,control-string ,@command-arguments) - (format nil ,@property-selection-arguments)))))

    Usage examples

    ? (open-powershell) -#<EXTERNAL-PROCESS (powershell.exe -Command -)[#<A Foreign Pointer #x7C4>] (RUNNING) #x2101A0216D>

    Now the *powershell* variable is set to a running PowerShell. Here's an example of piping commands to it: find-big-folders recursively looks for folders containing more than 500 files. Then it returns the full pathname and modification time for each such directory. The run-powershell* function takes care of parsing the command output.

    (defun find-big-folders (directory-name) - (run-powershell* ($ "Get-ChildItem '~A' -Recurse ~ - | Where-Object {$_.PSIsContainer -eq $True} ~ - | Where-Object {$_.GetFiles().Count -gt 500}" - directory-name => "$_.FullName, $_.LastWriteTime")))

    Trying this on the directory where the HyperSpec lives:

    ? (find-big-folders "C:/HyperSpec") -(("C:\\HyperSpec\\Body" "2/12/2020 8:03:53 AM") - ("C:\\HyperSpec\\Issues" "2/12/2020 8:04:12 AM"))

    Another example: extracting links from an HTML page via Invoke-WebRequest. This will signal an error if the page isn't accessible—namely, a Lisp condition of type powershell-error.

    (defun get-links (url) - (run-powershell* ($ "(Invoke-WebRequest '~A').Links" - url => "$_.href, $_.innerHTML")))

    This will provide a list of Win32 links:

    ? (get-links "https://cliki.net/Win32") -(("https://github.com/Zulu-Inuoe/win32" "win32") ("/CFFI" "CFFI") - ("https://github.com/Lovesan/doors" "Doors") ("/Windows" "Windows") - ("https://github.com/quek/cl-win32ole/" "cl-win32ole") - ("/SBCL" "SBCL") ("/CLISP" "CLISP") ("/cffi" "cffi") - ("/trivial-garbage" "trivial-garbage") - ("https://github.com/ailisp/Graphic-Forms" "Graphic-Forms") - ("/Windows" "Windows") ("/BSD" "BSD") - ("https://github.com/sharplispers/cormanlisp" "Corman Lisp") - ("/Common%20Lisp%20implementation" "Common Lisp implementation") - ("/Win32" "Current version") - ("/site/history?article=Win32" "History") - ("/site/backlinks?article=Win32" "Backlinks") - ("/site/edit-article?title=Win32&amp;from-revision=3799349377" - "Edit") - ("/site/edit-article?create=t" "Create") ("/" "Home") - ("/site/recent-changes" "Recent Changes") ("/CLiki" "About") - ("/Text%20Formatting" "Text Formatting") ("/site/tools" "Tools") - ("/site/register" "register"))

    Then there's the Atom feed format. CLiki uses it. We can use XPath in PowerShell to select feed entries. Since Atom is a namespaced XML format, this requires providing the Namespace option to Select-XML:

    (defparameter *atom-entry-properties* - ;; A few atom:entry properties, e.g. innerText gives the HTML content, - ;; assuming that "html" is the value of the <content type=""> attribute. - "$_.Node.updated, $_.Node.link.href, $_.Node.content.innerText") - -(defun get-atom-entries (url) - (run-powershell* ($ "Select-XML -XPath '//atom:entry' -Namespace @{atom='http://www.w3.org/2005/Atom'} ~ - -Content (Invoke-WebRequest '~A')" url => *atom-entry-properties*)))

    A wrinkle

    There doesn't seem to be any obvious way to send Ctrl+C to PowerShell via IPC. So the problem is how to break out of a PowerShell command by signaling from Lisp.


    -Windows IPC
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Practical Common Lisp.html b/clones/lisp/www.cliki.net/Practical Common Lisp.html deleted file mode 100644 index 22246172..00000000 --- a/clones/lisp/www.cliki.net/Practical Common Lisp.html +++ /dev/null @@ -1,65 +0,0 @@ - - - - - CLiki: Practical Common Lisp - - - - - - - -
    Practical Common Lisp
    "Practical Common Lisp", an introduction to Common Lisp by Peter Seibel, available on the web at http://www.gigamonkeys.com/book/ and also in dead-tree form from Apress.

    It won a Productivity Award in the technical book category of the 2006 Jolt Product Excellence and Productivity Awards.

    If you are new to Common Lisp, a great way to quickly peek into this world, is to work through the first three chapters of this book. The book's website has a "lisp in a box" [dead, but see Portacle] distribution ready for you and these chapters are completely online. Warning: Lisp is addictive and you may end up ordering this book after you have gotten your first dose. You have been warned.

    Topics covered in this book

    -
      -
    • How do I install (and which) Lisp?
    • -
    • What does CL look like?
    • -
    • Walk me through several tutorials
    • -
    • Why is CL different?
    • -
    • What are these macros everyone is talking about?
    • -
    • How do I do normal modern programming tasks, like talking http or generating web pages?
    • -
    • How do I write portable cl code?
    • -
    • How do packages work?
    • -
    -

    Lisp in a box

    -Seibel has customized Matthew Danish and Mikel Evins' Lisp in a Box to give you a complete and standalone lisp environment. This includes pre-installed cl libraries such as cl-ppcre for Perl compatible regular expressions.

    Once you start to gain some confidence with CL, you will want to install a fresh Common Lisp distribution, ASDF-INSTALL, etc. outside of the book's LispBox. The book's LispBox limits a few things to guarantee that the tutorials will all work with the book.

    Practical Common Lisp - Distilled

    -An aide-mémoire for readers of Practical Common Lisp. This document attempts to summarise the core facilities of Common Lisp as presented by the technical chapters of the book, to help the reader when working through the practical chapters and beyond.


    -Document Online Tutorial book
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Pretzil.html b/clones/lisp/www.cliki.net/Pretzil.html deleted file mode 100644 index 3aa62007..00000000 --- a/clones/lisp/www.cliki.net/Pretzil.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Pretzil - - - - - - - -
    Pretzil
    Pretzil is a Z-Machine (interactive fiction) emulator for McCLIM, which makes it a Game.

    It can be found at its home page. -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/PrevaylerStorage.html b/clones/lisp/www.cliki.net/PrevaylerStorage.html deleted file mode 100644 index 7ffc3599..00000000 --- a/clones/lisp/www.cliki.net/PrevaylerStorage.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: PrevaylerStorage - - - - - - - -
    PrevaylerStorage
    The storage technique aimed primarily at object oriented environments, that challenges DBMS technology, making heavy use of RAM. See Prevalence home site

    Common Lisp already has an implementation of PrevaylerStorage here.

    -- HaroldoStenger

    persistence

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Privacy Statement.html b/clones/lisp/www.cliki.net/Privacy Statement.html deleted file mode 100644 index 602f99a4..00000000 --- a/clones/lisp/www.cliki.net/Privacy Statement.html +++ /dev/null @@ -1,57 +0,0 @@ - - - - - CLiki: Privacy Statement - - - - - - - -
    Privacy Statement
    In normal operation, CLiki and the webserver it runs on will collect information about the people browsing and contributing to it. This information includes

      -
    • Server logs collected by Hunchentoot. -
    • -
    • Text that you provide when editing or adding pages to CLiki. This is - obviously - not private. -
    • -

    Copyright

    By submitting information to CLiki, you grant a licence to all present and future CLiki readers and contributors to use, delete, modify and redistribute your text, and to redistribute modified versions of your text. You also agree that the text you are providing is free from any legal encumbrance such as possible copyright or patent claims by a third party.

    Please note that any legal claims against CLiki will likely result in the -site being closed down entirely.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Programming Tips.html b/clones/lisp/www.cliki.net/Programming Tips.html deleted file mode 100644 index ac931b88..00000000 --- a/clones/lisp/www.cliki.net/Programming Tips.html +++ /dev/null @@ -1,129 +0,0 @@ - - - - - CLiki: Programming Tips - - - - - - - -
    Programming Tips
    The following CLiki pages offer programming tips: -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Programming language.html b/clones/lisp/www.cliki.net/Programming language.html deleted file mode 100644 index c40d5347..00000000 --- a/clones/lisp/www.cliki.net/Programming language.html +++ /dev/null @@ -1,175 +0,0 @@ - - - - - CLiki: programming language - - - - - - - -
    programming language

    Other programming languages implemented in Common Lisp.

    If Python runs on Common Lisp, does it mean you can have snakes on a cl-trane?

    S-exp syntax for other programming languages.

    See also s-exp syntax, for a list of systems providing a lisp-like syntax for different programming languages.

    Implementations of Common Lisp written in other programming languages

    While Common Lisp implementations are usually written in Common Lisp, some implementations are written at least partially, if not mostly, in a different programming language. Those implementations can be (or could be if they were conforming enough) used to bootstrap other Common Lisp implementations.

    • emacs lisp: emacs-cl is an implementation of Common Lisp written in emacs lisp (23). It would require some love to be updated to emacs 24 and lexical bindings, and complete the CL subset.

    • -
    • Scheme: there's an old bit-rotten implementation of Common Lisp, Butterfly Common Lisp, written in Butterfly Scheme. But no known contemporaneous CL implementation is written in scheme.

    • -
    • C: -
        -
      • CLISP is written mostly in C (with heavy usage of the C preprocessor and of a custom preprocessor), even if some parts are written in Common Lisp, notably the compiler. -
      • -
      • Robert Strandh's Bootstrap-Common-Lisp is implemented in pure C. -
      • -

    • -
    • Java: More than 50% of the sources of ABCL are written in Java (the rest in Common Lisp) (298 java files, 256 lisp files; 13070 java lines, 10195 lisp lines).

    • -
    • Smalltalk: no known CL implementation written in smalltalk (there are toy lisps implemented in smalltalk). -
    • -
    • Python: no known CL implementation written in python (there are toy lisps implemented in python). -
    • -
    • Ruby: no known CL implementation written in python (there are toy lisps implemented in Ruby). -
    • -
    • Javascript: no known CL implementation written in Javascript (there are toy lisps and scheme implemented in Javascript). -
    • -
    • Perl: no known CL implementation written in perl (there are toy lisps implemented in Perl). -
    • -
    • Bash: no known CL implementation written in bash. -
    • -
    • PopLog: contains a CL implementation written in POP-1 (along with Prolog, Standard ML, and POP-11). -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Programming style.html b/clones/lisp/www.cliki.net/Programming style.html deleted file mode 100644 index d39e3bb8..00000000 --- a/clones/lisp/www.cliki.net/Programming style.html +++ /dev/null @@ -1,85 +0,0 @@ - - - - - CLiki: Programming style - - - - - - - -
    Programming style
    These are suggestions for programming style, some undisputable, some my (Stanisław Halik) whims.

      -
    • Always put parenthesis after the previous expression on its line, never on a line by itself. If you have trouble reading code formatted in this way, ignore the parens (or make them disappear by regexp-replace or font lock) and look at indentation.
    • Use long, descriptive variable names. It's +buffer-size+, not +BUFSIZ+ or similar. This immensely helps reading comprehension and generally alleviates the need to comment the code (see below). I can't bring myself to read uncommented code in languages that don't allow hyphens in variable names, while I can read people's Lisp just fine. It doesn't apply when abbreviations are widely known (e.g.retval, i). Also abbreviate extremely long symbol names, e.g. frobnicate-svuc might be preferred to frobnicate-slot-value-using-class if the code is expected to fit in 80 columns.
    • Comment non-obvious stuff. For instance, once I wrote the following code:

      (defmacro fn (&environment env &body body)
      -  (with-walker-configuration (:undefined-reference-handler nil)
      -    ;; .VARS is modified implicitly in macroexpansion of the form
      -    ;; package protects against leaking symbols
      -    (let* ((.vars nil)
      -           (macro-name (gensym))
      -           (ret (macroexpand-all `(macrolet ((,macro-name ()
      -                                               (car (push (gensym) .vars))))
      -                                    (symbol-macrolet ((_ (,macro-name)))
      -                                      (progn . ,body)))
      -                                 env)))
      -      (declare (special .vars))
      -      `(lambda ,(reverse .vars)
      -         ,ret))))

      and had to add the comment because it wasn't immediately obvious what this code does.

    • Instead of (if some-list .. ...) use (if (not (endp some-list)) ... ...). Instead of (if (lookup foo) ... ...) use (if (not (null (lookup foo))) ... ...). Basically, only use a bare expression in conditionals if it uses the -p convention. -
    • -
    -

    Other Style Guides


    -document macro example
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Prolog Technology Theorem Prover.html b/clones/lisp/www.cliki.net/Prolog Technology Theorem Prover.html deleted file mode 100644 index 2ae1472f..00000000 --- a/clones/lisp/www.cliki.net/Prolog Technology Theorem Prover.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Prolog Technology Theorem Prover - - - - - - - -
    Prolog Technology Theorem Prover
    The Prolog Technology Theorem Prover (PTTP) is an implementation (in Common Lisp) of the model elimination theorem-proving procedure that extends Prolog to the full first-order predicate calculus. PTTP differs from Prolog in its use of: (1) unification with the occurs check for soundness, (2) depth-first iterative deepening search instead of unbounded depth-first search to make the search strategy complete, and (3) the model elimination inference rule that is added to Prolog inferences to make the inference system complete. PTTP also extends Prolog by providing the capability of printing the proofs it finds. Because PTTP compiles the clauses of a problem, its inference rate is very high. Because PTTP uses depth-first search, its storage requirements are low and term size need not be limited to reduce memory usage at the expense of completeness. PTTP's simple architecture facilitates its adaptation and use in applications.

    It is available here under a BSD-like license.


    -Application Theorem Provers
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Prolog.html b/clones/lisp/www.cliki.net/Prolog.html deleted file mode 100644 index 38916b28..00000000 --- a/clones/lisp/www.cliki.net/Prolog.html +++ /dev/null @@ -1,73 +0,0 @@ - - - - - CLiki: Prolog - - - - - - - -
    Prolog
    Prolog is a programming language based around logical assertions. -The name is a shortened form of "PROgramming in LOGic".

    Common Lisp implementations:

    Pages in category 'prolog:

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Proposed ANSI Changes.html b/clones/lisp/www.cliki.net/Proposed ANSI Changes.html deleted file mode 100644 index d66b16ce..00000000 --- a/clones/lisp/www.cliki.net/Proposed ANSI Changes.html +++ /dev/null @@ -1,127 +0,0 @@ - - - - - CLiki: Proposed ANSI Changes - - - - - - - -
    Proposed ANSI Changes
    This page is a listing of proposed and wishlist revisions to ANSI Common Lisp. It is not a forum for pie-in-the sky thoughts about future Lisps (for which, see Lisp - Next Generation) or extra functionality that could be standardized (see Proposed Extensions To ANSI.)

    For clarifications and errata, see ANSI Clarifications and Errata.

      -
    • Un-deprecate REMOVE-IF-NOT, DELETE-IF-NOT.

    • -
    • -Issue UNDEPRECATE-IF-NOT: Un-deprecate all *-if-not functions.

    • -
    • -Issue REMOVE-SET: Remove SET (already deprecated).

    • -
    • -Issue CONSTANTLY-MULTIPLE-VALUES: Extend CONSTANTLY to return multiple values if given other than 1 argument.

    • -
    • -Issue PRINTING-SPACE: Change the behavior of character printing such that invisible graphic characters such as space can be printed by name. The ~:C format directive does this already.

    • -
    • -Issue PRINT-OBJECT-RETURNS: The requirements that PRINT-UNREADABLE-OBJECT returns nil and that user-defined methods for PRINT-OBJECT must return the object don't fit well together. The example in PRINT-UNREADABLE-OBJECT demonstrates the problem: It is in error because it returns nil from PRINT-OBJECT, in the assumption that the return value of PRINT-UNREADABLE-OBJECT is usable as a return value of PRINT-OBJECT. It would be a simplification if returning nil from PRINT-OBJECT were allowed, or if PRINT-UNREADABLE-OBJECT were specified to return the object. (By contrast, DESCRIBE-OBJECT may return anything.)

      The :REPORT option of DEFINE-CONDITION defines a method for PRINT-OBJECT, so the issue affects that too. In particular, (:REPORT "foo") defines a method that typically returns the string "foo", rather than the required condition object.

    • -
    • -Issue BOOLEAN-RETURNS: Many functions are specified to return true when they could just as easily return T. Since most (all?) implementations already return T for these functions, tighten the standard so this is required. Why would this be a good thing? Issue MACROEXPAND-RETURN-VALUE changed the language to the opposite direction. -(Actually, that issue just noted the inconsistency; the proposed solution there -would change the requirement to 'true'. Another possible solution would be to -change everything else to require T.) It would be a good thing because it would remove a gratuitous and unnecessary incompatibility between implementations, which would make it slightly easier to write portable programs. GCL ansi-tests would have been noticeably easier to write had all the predicates returned T for true. -- Paul Dietz

    • -
    • -Issue NO-NEXT-METHOD: NO-APPLICABLE-METHOD is specified to be called/signalled only when there are no applicable methods. However, there is an error situation for built-in method combinations that is not covered by this: when there is no primary method. Specify an analogous NO-PRIMARY-METHOD generic-function/condition pair.

    • -
    • Issue UNDEPRECATE-REQUIRE: [ may be contentious ] Undeprecate single-argument require, reflecting its continuing usage by Lisp implementors to load optional bolt-on modules that are supplied with the implementation. This is not supposed to be a means for the user to load his own or third-party libraries, for which a real DEFSYSTEM is a better solution. Note that a real DEFSYSTEM is outside the scope of this page. If cl:require is actually removed, implementations can still have ext:require, which doesn't seem too bad if the names of the modules are already not portable. Alternatively some parts of the REQUIRE mechanism might be specified -- eg. *REQUIRE-HOOK* or *REQUIRE-HOOKS*. You're right. REQUIRE should be removed and implementations that use it can have EXT:REQUIRE or something

    • -
    • -Issue TYPE-OF-BIGNUM: The definition of TYPE-OF implies that BIGNUM or FIXNUM cannot be the types returned (due to requirement 1 and the presence of UNSIGNED-BYTE in figure 4-2.) This was probably not intended. Fix this.

    • -
    • -Issue COMPILER-MACRO-IMPLICIT-BLOCK. Specify that DEFINE-COMPILER-MACRO should establish an implicit block around the body.

    • -
    • -Issue SXHASH-NEGATIVE-ZERO: SXHASH and the file compiler are affected by a loose specification of similarity with respect to negative zeros. It would appear that an implementation is permitted to dump negative zeros as positive ones (and vice versa), to the extent that (defconstant foo 0.0) (defvar *bar* (eql foo foo)) need not return true; also, it requires (sxhash 0.0) to be equal to (sxhash -0.0) even though (equal 0.0 -0.0) is false. Specify that negative zeros are not similar to positive zeros.

    • -
    • -Issue IMAGPART-NEGATIVE-ZERO: The IMAGPART and COMPLEX functions are inconsistent in their treatment of objects of type (REAL * (0)): (complex -2.0) returns an object whose imaginary part is (coerce 0 'single-float), while (imagpart -2.0) returns (* 0 -2.0), which is different in implementations supporting negative zeros. This has ramifications in the treatment of branch cuts for real numbers.

    • -
    • -Issue FORMAT-VERBATIM: FORMAT should offer a directive that prints a string verbatim to the output stream, character by character, ignoring printer settings such as *PRINT-CIRCLE* and *PRINT-LEVEL*; i.e., one that corresponds to WRITE-STRING and not PRINC or PRIN1.

      The section on Formatted Output almost reads as if ~A is supposed to ignore printer settings when printing strings ("If arg is a string, its characters will be output verbatim"); however, under this interpretation, ~S will also ignore those variables when printing strings, since it's specified as "just like ~A, but arg is printed with escape characters", while it is clearly desirable to honor printer settings in ~S. So, at least some clarification is needed here.

      Consider the following code snippet.

      (defparameter *separator* ",")

      (defstruct foo (a 'a) (b 'b))

      (defmethod print-object ((foo foo) stream) - (print-unreadable-object (foo stream) - (format stream "~A~A~A" (foo-a foo) *separator* (foo-b foo))))

      (let ((*print-circle* t)) (print (list (make-foo) (make-foo))))

      The intended output is (#<a,b> #<a,b>). However, in at least one CL implementation, the output will be (#<a#1=,b> #<a#1#b>), i.e., the printer will detect the shared structure and use sharpsign notation instead of printing the string verbatim. [Side note: There's no way to tell for sure where the printed representation of the object the #1= refers to ends, so the output is not very useful.] It's hard to argue that this output is non-conforming because of the wording in the description of ~S. So I don't think there's a way to write this print-object method without resorting to an explicit write-string (or copy-seq, but this will cons needlessly; or using a symbol, which is counter-intuitive). It's a pity format has this limitation.

      Issue PRINC-READABLY seems to be related to this.

    • -
    • -Issue DEFCONSTANT-REDEFINE: Change the behavior of DEFCONSTANT so that it assigns a value to the given symbol only if that symbol is not already bound (much like DEFVAR)

      I think that's a bad idea. DEFCONSTANT is only problematic for values that cannot be compared with EQL but only, for example, with EQUAL. This may lead to the situation that one wants to use, for example, constant strings, but every time the respective DEFCONSTANT form is reevaluated an error is issued because two EQUAL strings are not necessarily EQL. Here is another proposal: Add a TEST keyword to DEFCONSTANT that allows programmers to specify how they intend to use the constant, i.e. under what equivalence semantics. In the case of string constants they can say, for example: (DEFCONSTANT +example+ "example" :test #'equal). The idea here is that this is a promise to the compiler that the rest of the program does not rely on the EQL identity of the value of +example+. In turn, if the value of +example+ is indeed changed to another value that is not EQUAL in a subsequent DEFCONSTANT form the compiler can issue a warning / error as before.

    • -
    • -Issue COMPILE-FILE-EXTENSIONS: Change COMPILE-FILE to allow implementation-defined keys (much like SBCL / CMUCL's use of :TRACE-FILE or LispWorks's :LOAD; I'm sure other implementations have similar extensions)

    • -
    • -Issue FORMAT-LOGICAL-BLOCK-PREFIX-SUFFIX: Allow ~~ (Tilde) in the prefix and suffix segments of ~ (Logical Block). Currently, those segments cannot contain any format directives, so the corresponding output strings cannot contain tilde characters. It is not necessary to allow other directives (~%) or parameters (~V~, ~1~) to fix this.

    • -
    • -Issue CONDITIONS-NOT-EXTERNALIZABLE: Clarify the intention and interaction between MAKE-LOAD-FORM, that specifies primary methods on conditions to signal an error, and 3.2.4.4 that specifies that the file compiler uses MAKE-LOAD-FORM to externalize conditions. Taken together with 11.1.2.1.2.19 this implies that given a portable program and a conforming implementation standardized conditions can never appear as externalized objects in compiled code, which probably was not the intention.

      Options: -

        -
      • Clarify that standardized conditions cannot be externalized. -
      • -
      • Allowing (but not requiring) implementations to use something else then MAKE-LOAD-FORM to externalize standardized conditions. -
      • -
      • Allowing implementations to define methods on MAKE-LOAD-FORM for standard conditions that signal an error only if the real class of the condition is not a standardized condition. -
      • -

    • -
    • -Issue MAP-INTO-SAMPLE-DEFINITION: The notes section on MAP-INTO section give an example of how it could be implemented; the example is incorrect in the way it handles the fill-pointer of result-sequence. MAP-INTO is specified to ignore the fill-pointer when deciding how many iterations to perform, and afterwards change it to the number of iterations performed.

    • -
    • -Issue KEYWORD-TYPE: KEYWORD and KEYWORDP are inconsistent (and the former is inconsistent with the glossary definition of 'keyword'.) A symbol is in the KEYWORD type if it is accessible in the package, but KEYWORDP is true if the symbol has the package named KEYWORD as its home package. The latter was probably intended. Fix this by either prohibiting importing (and shadow importing) of symbols into the keyword package, or force the home package of the symbol to be changed when this is done.

    • -
    • -Issue MAKE-CONDITION-ERROR: MAKE-CONDITION should be allowed to signal an error on type arguments that do not name classes, like (or type-error program-error).
    • -Issue PATHNAME-PRINT-READABLY: NAMESTRING, PARSE-NAMESTRING, PATHNAME et al use (in the examples sections) a readable syntax for printing pathnames: #S(PATHNAME ...). It should be specified as such, instead of requiring #P"..." which is not always readable.
    • PRINT-UNREADABLE-OBJECT's specification, if taken literally, requires that an ugly space be printed after the type description but before the closing bracket if type is true, identity is false, and the forms don't print anything. This may not have been intended; change so that the space is not printed in this situation (and the mirror case with identity being true.)

    • -
    • -The glossary entry for "single escape" includes this parenthetical comment: "In the standard readtable, slash is the only single escape." This should reference "backslash", not "slash".

    • -
    • -ARITHMETIC-ERROR-OPERATION is specified to return a function designator in Arguments and Values, but a list in Description. Those types are disjoint; presumably the description is wrong.

    • -
    • Section 2.4.8.4 (Sharpsign Asterisk) states that an error of type READER-ERROR is signaled if [...] "n is greater than one, but no bits were specified." This should be "n is greater than or equal to one, but no bits were specified."

    • -
    • -*PRINT-READABLY* states that the printed form should be readable within the "standard readtable". This implies that the printed representation is not allowed to be expressed in terms of user-defined reader macros. Although it leads to "normalized" representations, it can be considered overly restrictive if the printed representation is only read in when the user-defined readtable is in effect (reading and writing become asymmetric). Proposal: remove the restriction on "standard readtable", but perhaps "encourage" users to give representations that work in the "standard readtable". c.l.l March 7, 2007

    • -
    • Section 23.1.2 (Effect of Readtable Case on the Lisp Reader) states: "When the readtable case is :invert, then if all of the unescaped letters in the extended token are of the same case, those (unescaped) letters are converted to the opposite case." The term "extended token" is not well defined, but presumably means the entire symbol token, including package name, separators, and symbol name. This has the (likely unintended) consequence that "common-lisp-user::Foo" references package "common-lisp-user" instead of "COMMON-LISP-USER". This should be amended to treat the package name and symbol name parts of the token separately. As a point of information, LispWorks 4.4.6 appears to be faithful to the standard, whereas CLisp 5.1 uses the proposed behavior.

    • -
    • The dictionary entry for mapc and company discusses 'result-type' in the text ("result-type specifies the type of the resulting sequence."), however none of these functions appear to implement the functionality of allowing the user to specify the result-type in the actual function specifications. It has been speculated that this is an erroneous copy and paste from the entry for map.
    • -COMPLEMENT is specified to take a FUNCTION, while most other higher-order -operators in CL take designators for functions. (Additionally, the Notes section for COMPLEMENT is incorrect, since APPLY takes -a function designator.) For similarity with the rest of the language, COMPLEMENT should take a function designator.
    • -NCONC has a few tiny bugs in its specification. First, it would be nicely specified as a right fold instead of a left fold, i.e. (nconc list-1 list-2 . lists) == (nconc list-1 (nconc list-2) . lists) instead of (nconc (nconc list-1 list-2) . lists) — an overly literal reading of the left-folding definition leads to quadratic evaluation time (though optimizations are possible). Second, the example (setq x '(a b c)) (setq y '(d e f)) (nconc x y) flies in the face of Section 3.7.1 Modification of Literal Objects. -As for me, I'd like to see a note somewhere that NCONC is very seldom a good idea, since its time complexity class is no better than APPEND, its space complexity class also is no better than APPEND in the common case where no one else is sharing the side-effected list, and its bug complexity class is way higher than APPEND. If the small enhancement factor due to APPEND vs NCONC is a limiting resource in your program, you have a big problem and are probably using the wrong data structure. I'd like to see the use of NCONC explicitly discouraged. If it weren't for legacy code that may rely on it, I would make the order or even existence of its side-effects made explicitly unspecified, so that APPEND be a valid implementation of NCONC. -
    • The standard should provide a list of all forms that provide an implicit NIL block around their bodies, for reference. The current wording in CLHS individual pages is inconsistent, which makes it hard to find a list of such forms with a search. At least these forms put implicit NIL blocks around their bodies: DO, DO*, PROG, PROG*, LOOP, DOLIST, DOTIMES, DO-SYMBOLS, DO-ALL-SYMBOLS, DO-EXTERNAL-SYMBOLS -
    • -CLHS 2.4.8.6, on Sharpsign Dot, does not specify what happens if the form prefixed by #. returns no values. The most popular answer, and arguably the most useful, is for nothing to be read, so that '(#.(values) foo) => (FOO). SBCL, Clozure CL, Allegro CL, and LispWorks all do this. It should accordingly be required by the standard.
    • -RENAME-FILE does not specify what happens when a file named new-name already exists. Several implementations add a third optional (sometimes keyword) if-exists parameter to RENAME-FILE that is used to specify what happens (typical values are :error and :overwrite). This de-facto extension to CL should be standardized.
    • The function FIND makes it impossible to find NIL in a sequence since NIL will be returned regardless of the input sequence. The suggestion is to add a second returned variable that is T if the element was found and NIL if it was not - like in GETHASH. (The usual way to deal with this is to use MEMBER instead.) -
    • -
    -Please put outright extensions (not fixups) in Proposed Extensions To ANSI.


    -standards
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Proposed ANSI Revisions and Clarifications.html b/clones/lisp/www.cliki.net/Proposed ANSI Revisions and Clarifications.html deleted file mode 100644 index 87883ab3..00000000 --- a/clones/lisp/www.cliki.net/Proposed ANSI Revisions and Clarifications.html +++ /dev/null @@ -1,56 +0,0 @@ - - - - - CLiki: Proposed ANSI Revisions and Clarifications - - - - - - - -
    Proposed ANSI Revisions and Clarifications
    Entries under this page have been moved to one of the following two pages:

    Apart from these, see Proposed Extensions to ANSI for extra functionality that could be standardized in the future, and Lisp - Next Generation for thoughts on future Lisps.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Proposed Extensions To ANSI.html b/clones/lisp/www.cliki.net/Proposed Extensions To ANSI.html deleted file mode 100644 index 00c98684..00000000 --- a/clones/lisp/www.cliki.net/Proposed Extensions To ANSI.html +++ /dev/null @@ -1,112 +0,0 @@ - - - - - CLiki: Proposed Extensions To ANSI - - - - - - - -
    Proposed Extensions To ANSI
    This page is for proposed incremental changes and extensions to the language that go beyond what would be appropriate for Proposed ANSI Revisions and Clarifications, but not as radical as changes in Lisp - Next Generation: -
      -
    • Changes to ANSI that are technically extensions, but address long-absent functionality which makes it difficult to portably do simple things. -
    • -
    • Extensions that cannot be reasonably implemented as libraries. (Note: this makes FFI technically in scope, but unless a high-quality spec materializes there's no need to mention it...) -
    • -
    • Extensions that can be implemented as libraries, but are very much standard folklore, like with-gensyms. -
    • -

    CDR is one process for publishing proposed extensions.

    For user-space extensions, go and write a library.

      -
    • -Gray streams user-extensible streams

    • -
    • -simple-streams from Franz, which avoid some problems in Gray streams

    • -
    • User-extensible sequences. See Christophe Rhodes' presentation from ILC 2007: http://www.doc.gold.ac.uk/~mas01cr/talks/2007-04-03%20Cambridge/ilc-talk.pdf.

      From the paper, it seems like the protocol relies on CLOS in a way that makes this impossible to support structures in addition to classes. Which, for example, prevents SERIES in its present form from being upgraded to a user-defined sequence. Even though anything implemented as a structure can be ported to CLOS, I believe it's worth pointing out, since structures can be expected to be more efficient in general. — akater

    • -
    • Case-sensitive symbols. ACL and CLISP both have extensions to provide this (see https://franz.com/support/documentation/current/doc/case.htm and https://clisp.sourceforge.io/impnotes/package-case.html)

    • -
    • Add conformal displacement (array slices) for multidimensional arrays. The other side of the argument is to get rid of displaced arrays altogether, since they are rarely used and prevent certain optimizations. --Vladimir Sedach

    • -
    • Extend ARRAY, VECTOR, STRING, and related type specifiers so that other array attributes can be specified (that the object is/is not displaced, adjustable, or (for vectors) it does/does not have a fill pointer.)

    • -
    • Add weak-key hashtables for example by standardizing on the extensions of Franz -or Lispworks. trivial-garbage is a library that attempts to provide a portable interface to various implementations' weak hashtables. Weak-value hashtables and weak references should also be included. Finalizers are a very important feature. The extension should specify whether the finalizer can have access to the about-to-be-collected object to be able to "resurrect" it (currently some GCs run finalizers post-collection; the pros and cons of either approach should be examined). See Bruno Haible's writeup on weak references which examines the issues and state of various implementations as of 2005.

    • -
    • Have a way to weakly intern symbols in a package. The effect is that if nothing else refers to the symbol, the symbol can be gc-ed and removed from the package. Alternatively, allow gc of every unreferenced truly worthless symbol (that is, one on which BOUNDP, FBOUNDP, and SYMBOL-PLIST all return NIL) --John Cowan

    • -
    • Make WITH-GENSYMS or WITH-UNIQUE-NAMES macro part of the standard, since it is very widely re-implemented in libraries.

    • -
    • Specify, for lisps purporting to conform to :IEEE-FLOATING-POINT, the mechanism for enabling traps and clearing accrued exceptions, and for setting the rounding mode (and precision, where applicable), and how this interacts with standard CL functions such as FFLOOR and FCEILING.

    • -
    • Improve the support for floating-point and complex arithmetic as outlined in section C.9 of the draft version of ISO/IEC 10967-2 and section C.7 of the draft version of ISO/IEC CD 10967-3. (There may be other standards from ISO/IEC JTC1/SC22/WG11 that could be made normative.)

    • -
    • Add an ARGLIST function that, given a function designator, returns the argument list of the function. Suggested alternative name: FUNCTION-LAMBDA-LIST.

    • -
    • Define a way for macros to wrap a LOOP around the body without affecting LOOP-FINISH forms within it. This could be done by defining a new LOOP keyword FINISH-NAME. Then, (loop ... do (loop finish-name foo ... do (loop-finish))) would finish the outer loop directly. To finish just the inner loop, you'd have to use (loop-finish foo). Macros would use gensyms.

      Other possible syntaxes include (loop using (loop-finish foo) ...), which puns on for-as-hash; (loop unfinishable ...), which would be entirely invisible to LOOP-FINISH; and (loop fully named foo ...), which would require both (return-from foo ...) and (loop-finish foo).

      Would extending LOOP-FINISH to take the loop name as an argument be sufficient (exit from the innermost loop with the given name)? --Nikodemus - Not quite. Users of macros would often omit the argument of LOOP-FINISH, for the sake of clarity or compatibility with current CL. Implementors of macros would not be able to handle such cases transparently. If LOOP is extended too, then only macro implementors need be careful, like they already are with names of variables; users can ignore the whole issue. -Kalle Olavi Niemitalo

      I don't understand the need for this. However, LOOP already has a NAMED clause that could be used for LOOP-FINISH. It would overload its meaning, but it would reduce the number of changes needed. - Marco Antoniotti -

    • -
    • -(backquote ...) standard macro (like Scheme quasiquote) to allow for easier and scheme-like programmatic use of ` in constructs. I forget any arguments as to why it standardising it would not be good idea, but no doubt there are some. Constraining implementations seems unlikely as far as I can see. Morality-police discouraging its use, maybe, but I don't like that.

      If the semantics are going to match Scheme, then the name should too. Also, one cannot implement extensions such as `#C(,x ,y) if the ` reader macro is required to just read a form and put (backquote ...) around it. -Kalle Olavi Niemitalo

      Is that really so? I would think that changing #C to translate #C(,x ,y) to (unquote (complex x y)) would do the trick. -Dirk Gerrits

      This is a really, really bad idea; totally contrary to the meaning of backquote. Backquoted material should be handled by the reader (as in most CL implementations now). Turning it into a form is so bad, I'd seriously consider abandoning Lisp if it happened, I feel so strongly about that. -- AC

      No, it's a good idea. While most of the times it doesn't matter whether backquote is handled in the reader or not, there are times when it'd be really nice to know what the sexpression representation of '`(foo ,bar) is. Currently it's implementation defined which means that macro-writing macros can't take backquoted templates as input which they can then frob. A specific example: recently I was writing a mini-language and wanted to write two functions, one that compiled my intermediate representation for use in a macro and another that interpreted it. The compiler and interpreter were essentially identical except one generated code while the other executed it. If backquote templates were read into a specified sexpression form then I could have written a macro that took a list of backquoted templates and generated both functions. Instead I had to essentially implement my own backquote syntax that I could then take apart and put back together. -- Peter Seibel

      I don't claim to have thought this through, but requiring tighter binding of backquote/comma to the reader might let constructions such as #C`(,a ,b) fall -out without extra per-read-macro specifications. --nikodemus -

    • -
    • -Extend MAKE-HASH-TABLE to take any function as an equality predicate, and open it up so users can write their own hash functions. These will put CLOS objects on an equal footing with built-in objects.

      I'd rather see (DEFINE-HASH-TABLE-TEST test-function-name hash-function-designator), and making MAKE-HASH-TABLE accept any defined test in addition to #'eq.*. This way libraries can provide new hash-table types, and users of those libraries don't need to muck about with extra arguments to M-H-T. --Nikodemus --Why not test-function-designator, then? --John Cowan

      I like DEFINE-HASH-TABLE-TEST too. --sds -

    • -
    • -Extend the guaranteed behavior of SUBTYPEP, so that it must succeed in determining subtype relationships in more situations. In particular: -
        -
      • If SUBTYPEP can determine that A is (or is not) a subtype of B, then -it should determine that (NOT B) is (is not) a subtype of (NOT A).
      • -
      • (NOT (NOT A)) should have the same behavior as A.
      • -
      • If SUBTYPEP can determine that A is a subtype of B, and A is a subtype of C, -then it should be able to determine that A is a subtype of (AND B C).
      • -
      • If SUBTYPEP can determine that A is a subtype of C, and B is a subtype of C, -then it should be able to determine that (OR A B) is a subtype of C.
      • -
      • Better yet, require SUBTYPEP to succeed in all situations except those involving SATISFIES (which are undecidable), per Henry Baker's decision algorithm. --John Cowan
      • -
      -
    • -

    • Make more builtins be readably printable in some standard way. Alternately, allow users to define PRINT-OBJECT methods for builtin types on which the implementation does not provide a method.
    • Add an ELASTIC-NEWLINE function.
    • Franz's first-class environments proposal.

    • -
    • Eliminate holes in standardized exceptional situations (where the standard says something is undefined for certain arguments, etc.). The goal should be that safe code does not have undefined behaviors on erroneous arguments, since any such is a potential security hole.

    • -
    • A function to expand user-defined types into primitives. Does this mean a function that takes a type specifier and returns something implementation-specific? Or something else? I don't understand this or why it's needed. --Vladimir Sedach

    • -
    • Ability to efficiently list all specified readtable characters/dispatch-characters.

    • -
    • Custom CLOS specializers without rewriting that much of standard-class. How would this work? --Vladimir Sedach

    • -
    • Reader syntax for hash tables.

    • -
    • Turn COERCE into a generic function.

    • -
    • Add readers RESTART-TEST-FUNCTION, RESTART-INTERACTIVE-FUNCTION, RESTART-REPORT-FUNCTION, which will act analogous to RESTART-NAME. This will make the existing condition system introspection facilities (COMPUTE-RESTARTS and FIND-RESTART) more useful.

    • -
    • Add function SIGNALED-CONDITION to make the currently signaled condition easily accessible within restarts.

    • -
    • Add a dual to COMPUTE-RESTARTS that, given a restart, will return a list of the conditions currently associated with that restart (see CLHS section 9.1.4.2.4 Associating a Restart with a Condition: "A single restart may be associated with several conditions at the same time.")

    • -
    • Add an analogue of PROGV for RESTART-CASE. That is, make it possible to use the result of FIND-RESTART or COMPUTE-RESTARTS to introduce restart handlers in the current dynamic environment. Right now this is possible by constructing a RESTART-CASE expression based on examining restarts, and applying EVAL to that expression. This would extend the introspection facilities of the condition system.

    • -
    • Provide access to SAFETY OPTIMIZE declarations during macroexpansion time ala the Environments chapter of CLtL2. This will make it more convenient to write optimized code with optional type checks/assertions.

    • -
    • A standard way to figure out whether a setf expander has been defined (via either DEFSETF or DEFINE-SETF-EXPANDER) for a symbol FOO . See this mailing list thread for why this is problematic to do with GET-SETF-EXPANSION.

    • -


    -standards
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Proposed Extensions to ANSI.html b/clones/lisp/www.cliki.net/Proposed Extensions to ANSI.html deleted file mode 100644 index 00c98684..00000000 --- a/clones/lisp/www.cliki.net/Proposed Extensions to ANSI.html +++ /dev/null @@ -1,112 +0,0 @@ - - - - - CLiki: Proposed Extensions To ANSI - - - - - - - -
    Proposed Extensions To ANSI
    This page is for proposed incremental changes and extensions to the language that go beyond what would be appropriate for Proposed ANSI Revisions and Clarifications, but not as radical as changes in Lisp - Next Generation: -
      -
    • Changes to ANSI that are technically extensions, but address long-absent functionality which makes it difficult to portably do simple things. -
    • -
    • Extensions that cannot be reasonably implemented as libraries. (Note: this makes FFI technically in scope, but unless a high-quality spec materializes there's no need to mention it...) -
    • -
    • Extensions that can be implemented as libraries, but are very much standard folklore, like with-gensyms. -
    • -

    CDR is one process for publishing proposed extensions.

    For user-space extensions, go and write a library.

      -
    • -Gray streams user-extensible streams

    • -
    • -simple-streams from Franz, which avoid some problems in Gray streams

    • -
    • User-extensible sequences. See Christophe Rhodes' presentation from ILC 2007: http://www.doc.gold.ac.uk/~mas01cr/talks/2007-04-03%20Cambridge/ilc-talk.pdf.

      From the paper, it seems like the protocol relies on CLOS in a way that makes this impossible to support structures in addition to classes. Which, for example, prevents SERIES in its present form from being upgraded to a user-defined sequence. Even though anything implemented as a structure can be ported to CLOS, I believe it's worth pointing out, since structures can be expected to be more efficient in general. — akater

    • -
    • Case-sensitive symbols. ACL and CLISP both have extensions to provide this (see https://franz.com/support/documentation/current/doc/case.htm and https://clisp.sourceforge.io/impnotes/package-case.html)

    • -
    • Add conformal displacement (array slices) for multidimensional arrays. The other side of the argument is to get rid of displaced arrays altogether, since they are rarely used and prevent certain optimizations. --Vladimir Sedach

    • -
    • Extend ARRAY, VECTOR, STRING, and related type specifiers so that other array attributes can be specified (that the object is/is not displaced, adjustable, or (for vectors) it does/does not have a fill pointer.)

    • -
    • Add weak-key hashtables for example by standardizing on the extensions of Franz -or Lispworks. trivial-garbage is a library that attempts to provide a portable interface to various implementations' weak hashtables. Weak-value hashtables and weak references should also be included. Finalizers are a very important feature. The extension should specify whether the finalizer can have access to the about-to-be-collected object to be able to "resurrect" it (currently some GCs run finalizers post-collection; the pros and cons of either approach should be examined). See Bruno Haible's writeup on weak references which examines the issues and state of various implementations as of 2005.

    • -
    • Have a way to weakly intern symbols in a package. The effect is that if nothing else refers to the symbol, the symbol can be gc-ed and removed from the package. Alternatively, allow gc of every unreferenced truly worthless symbol (that is, one on which BOUNDP, FBOUNDP, and SYMBOL-PLIST all return NIL) --John Cowan

    • -
    • Make WITH-GENSYMS or WITH-UNIQUE-NAMES macro part of the standard, since it is very widely re-implemented in libraries.

    • -
    • Specify, for lisps purporting to conform to :IEEE-FLOATING-POINT, the mechanism for enabling traps and clearing accrued exceptions, and for setting the rounding mode (and precision, where applicable), and how this interacts with standard CL functions such as FFLOOR and FCEILING.

    • -
    • Improve the support for floating-point and complex arithmetic as outlined in section C.9 of the draft version of ISO/IEC 10967-2 and section C.7 of the draft version of ISO/IEC CD 10967-3. (There may be other standards from ISO/IEC JTC1/SC22/WG11 that could be made normative.)

    • -
    • Add an ARGLIST function that, given a function designator, returns the argument list of the function. Suggested alternative name: FUNCTION-LAMBDA-LIST.

    • -
    • Define a way for macros to wrap a LOOP around the body without affecting LOOP-FINISH forms within it. This could be done by defining a new LOOP keyword FINISH-NAME. Then, (loop ... do (loop finish-name foo ... do (loop-finish))) would finish the outer loop directly. To finish just the inner loop, you'd have to use (loop-finish foo). Macros would use gensyms.

      Other possible syntaxes include (loop using (loop-finish foo) ...), which puns on for-as-hash; (loop unfinishable ...), which would be entirely invisible to LOOP-FINISH; and (loop fully named foo ...), which would require both (return-from foo ...) and (loop-finish foo).

      Would extending LOOP-FINISH to take the loop name as an argument be sufficient (exit from the innermost loop with the given name)? --Nikodemus - Not quite. Users of macros would often omit the argument of LOOP-FINISH, for the sake of clarity or compatibility with current CL. Implementors of macros would not be able to handle such cases transparently. If LOOP is extended too, then only macro implementors need be careful, like they already are with names of variables; users can ignore the whole issue. -Kalle Olavi Niemitalo

      I don't understand the need for this. However, LOOP already has a NAMED clause that could be used for LOOP-FINISH. It would overload its meaning, but it would reduce the number of changes needed. - Marco Antoniotti -

    • -
    • -(backquote ...) standard macro (like Scheme quasiquote) to allow for easier and scheme-like programmatic use of ` in constructs. I forget any arguments as to why it standardising it would not be good idea, but no doubt there are some. Constraining implementations seems unlikely as far as I can see. Morality-police discouraging its use, maybe, but I don't like that.

      If the semantics are going to match Scheme, then the name should too. Also, one cannot implement extensions such as `#C(,x ,y) if the ` reader macro is required to just read a form and put (backquote ...) around it. -Kalle Olavi Niemitalo

      Is that really so? I would think that changing #C to translate #C(,x ,y) to (unquote (complex x y)) would do the trick. -Dirk Gerrits

      This is a really, really bad idea; totally contrary to the meaning of backquote. Backquoted material should be handled by the reader (as in most CL implementations now). Turning it into a form is so bad, I'd seriously consider abandoning Lisp if it happened, I feel so strongly about that. -- AC

      No, it's a good idea. While most of the times it doesn't matter whether backquote is handled in the reader or not, there are times when it'd be really nice to know what the sexpression representation of '`(foo ,bar) is. Currently it's implementation defined which means that macro-writing macros can't take backquoted templates as input which they can then frob. A specific example: recently I was writing a mini-language and wanted to write two functions, one that compiled my intermediate representation for use in a macro and another that interpreted it. The compiler and interpreter were essentially identical except one generated code while the other executed it. If backquote templates were read into a specified sexpression form then I could have written a macro that took a list of backquoted templates and generated both functions. Instead I had to essentially implement my own backquote syntax that I could then take apart and put back together. -- Peter Seibel

      I don't claim to have thought this through, but requiring tighter binding of backquote/comma to the reader might let constructions such as #C`(,a ,b) fall -out without extra per-read-macro specifications. --nikodemus -

    • -
    • -Extend MAKE-HASH-TABLE to take any function as an equality predicate, and open it up so users can write their own hash functions. These will put CLOS objects on an equal footing with built-in objects.

      I'd rather see (DEFINE-HASH-TABLE-TEST test-function-name hash-function-designator), and making MAKE-HASH-TABLE accept any defined test in addition to #'eq.*. This way libraries can provide new hash-table types, and users of those libraries don't need to muck about with extra arguments to M-H-T. --Nikodemus --Why not test-function-designator, then? --John Cowan

      I like DEFINE-HASH-TABLE-TEST too. --sds -

    • -
    • -Extend the guaranteed behavior of SUBTYPEP, so that it must succeed in determining subtype relationships in more situations. In particular: -
        -
      • If SUBTYPEP can determine that A is (or is not) a subtype of B, then -it should determine that (NOT B) is (is not) a subtype of (NOT A).
      • -
      • (NOT (NOT A)) should have the same behavior as A.
      • -
      • If SUBTYPEP can determine that A is a subtype of B, and A is a subtype of C, -then it should be able to determine that A is a subtype of (AND B C).
      • -
      • If SUBTYPEP can determine that A is a subtype of C, and B is a subtype of C, -then it should be able to determine that (OR A B) is a subtype of C.
      • -
      • Better yet, require SUBTYPEP to succeed in all situations except those involving SATISFIES (which are undecidable), per Henry Baker's decision algorithm. --John Cowan
      • -
      -
    • -

    • Make more builtins be readably printable in some standard way. Alternately, allow users to define PRINT-OBJECT methods for builtin types on which the implementation does not provide a method.
    • Add an ELASTIC-NEWLINE function.
    • Franz's first-class environments proposal.

    • -
    • Eliminate holes in standardized exceptional situations (where the standard says something is undefined for certain arguments, etc.). The goal should be that safe code does not have undefined behaviors on erroneous arguments, since any such is a potential security hole.

    • -
    • A function to expand user-defined types into primitives. Does this mean a function that takes a type specifier and returns something implementation-specific? Or something else? I don't understand this or why it's needed. --Vladimir Sedach

    • -
    • Ability to efficiently list all specified readtable characters/dispatch-characters.

    • -
    • Custom CLOS specializers without rewriting that much of standard-class. How would this work? --Vladimir Sedach

    • -
    • Reader syntax for hash tables.

    • -
    • Turn COERCE into a generic function.

    • -
    • Add readers RESTART-TEST-FUNCTION, RESTART-INTERACTIVE-FUNCTION, RESTART-REPORT-FUNCTION, which will act analogous to RESTART-NAME. This will make the existing condition system introspection facilities (COMPUTE-RESTARTS and FIND-RESTART) more useful.

    • -
    • Add function SIGNALED-CONDITION to make the currently signaled condition easily accessible within restarts.

    • -
    • Add a dual to COMPUTE-RESTARTS that, given a restart, will return a list of the conditions currently associated with that restart (see CLHS section 9.1.4.2.4 Associating a Restart with a Condition: "A single restart may be associated with several conditions at the same time.")

    • -
    • Add an analogue of PROGV for RESTART-CASE. That is, make it possible to use the result of FIND-RESTART or COMPUTE-RESTARTS to introduce restart handlers in the current dynamic environment. Right now this is possible by constructing a RESTART-CASE expression based on examining restarts, and applying EVAL to that expression. This would extend the introspection facilities of the condition system.

    • -
    • Provide access to SAFETY OPTIMIZE declarations during macroexpansion time ala the Environments chapter of CLtL2. This will make it more convenient to write optimized code with optional type checks/assertions.

    • -
    • A standard way to figure out whether a setf expander has been defined (via either DEFSETF or DEFINE-SETF-EXPANDER) for a symbol FOO . See this mailing list thread for why this is problematic to do with GET-SETF-EXPANSION.

    • -


    -standards
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Protocol.html b/clones/lisp/www.cliki.net/Protocol.html deleted file mode 100644 index 65aa6fa4..00000000 --- a/clones/lisp/www.cliki.net/Protocol.html +++ /dev/null @@ -1,176 +0,0 @@ - - - - - CLiki: protocol - - - - - - - -
    protocol
    Networking and other RFC-defined protocols:

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/PseudoScheme.html b/clones/lisp/www.cliki.net/PseudoScheme.html deleted file mode 100644 index 21283414..00000000 --- a/clones/lisp/www.cliki.net/PseudoScheme.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: PseudoScheme - - - - - - - -
    PseudoScheme
    PseudoScheme is an implementation of the Scheme (R4RS) programming language in Common Lisp.

    License: BSD 2-Clause

    Homepage: http://mumble.net/~jar/pseudoscheme/

    Older versions available at the CMU AI repository: http://www.cs.cmu.edu/afs/cs/project/ai-repository/ai/lang/scheme/impl/pseudo/0.html

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Public Domain.html b/clones/lisp/www.cliki.net/Public Domain.html deleted file mode 100644 index 78af4aca..00000000 --- a/clones/lisp/www.cliki.net/Public Domain.html +++ /dev/null @@ -1,408 +0,0 @@ - - - - - CLiki: Public Domain - - - - - - - -
    Public Domain
    Works placed in the Public Domain are those to which the copyright has been relinquished.

    Approximately. No doubt it's actually more complex than that.

    A pertinent FAQ says: "Software placed in the public domain has all the freedoms required by the DFSG, and is free software."

    Public Domain Software

      -
    • -Alexandria - - Alexandria is a collection of portable public domain utilities -
    • -
    • -Alive - - An attempt to create a Common Lisp extension for VSCode -
    • -
    • -anaphoric-variants - - anaphoric-variants gives access to anaphoric variants of operators through one macro: anaphoric -
    • -
    • -Basic-English-Grammar - - Basic-English-Grammar is a lisp system for working with the English grammar data from the -
    • -
    • -bubble-operator-upwards - - bubble-operator-upwards is a function that "bubbles an operator upwards" in a form, demultiplexing all alternative branches by way of cartesian product -
    • -
    • -canonicalized-initargs - - canonicalized-initargs provides a :canonicalize slot option accepting an initarg canonicalization function -
    • -
    • -cartesian-product-switch - - cartesian-product-switch is a macro for choosing the appropriate form to execute according to the combined results of multiple tests -
    • -
    • -cesdi - - cesdi provides a compute-effective-slot-definition-initargs generic function that allows for more ergonomic initialization of effective slot definition objects -
    • -
    • -cl-collider - - cl-collider is an interface to the SuperCollider audio synthesis server -
    • -
    • -cl-competitive - - A code collection maintained mainly for competitive programming, and partly for just understanding algorithms -
    • -
    • -cl-ftgl - - cl-ftgl is a set of bindings to the FTGL OpenGL font rendering library -
    • -
    • -cl-glfw - - Is a public domain set of CFFI bindings for the GLFW OpenGL helper library -
    • -
    • -cl-menusystem - - cl-menusystem is a library for making pretty menus for controlling an application and editing the multitude of special variables which invariably exist to control an app's settings -
    • -
    • -cl-openbox - - cl-openbox provides and interface to the box.net file storage service web API -
    • -
    • -cl-perec - - cl-perec is a CLOS ORM based on cl-rdbms -
    • -
    • -cl-soil - - Common Lisp wrapper around the SOIL library -
    • -
    • -cl-sqlite - - cl-sqlite is a library for interacting with sqlite databases through SQL -
    • -
    • -cl-syntax-sugar - - cl-syntax-sugar is a convenience library of reader macros and of helper functions to create new syntax extensions and to use them with ASDF and Slime without enabling them in the global readtable -
    • -
    • -cl-tcod - - Common lisp bindings for the Doryen Library, a "free, fast, portable API for roguelike developers providing an advanced true color console, input, and lots of other utilities frequently used in roguelikes" -
    • -
    • -CL-TELNETD - - CL-TELNETD is a CL telnet networking server -
    • -
    • -cl-utilities - - A library of semi-standard utilities -
    • -
    • -class-options - - class-options provides easy access to the defining class and its options during initialization or reinitialization of its subcomponents -
    • -
    • -clim-chess - - clim-chess is a CLIM chess playing game -
    • -
    • -Clobber - - An ObjectStore which aims to be a simpler, more flexible, and more robust alternative to CommonLispPrevalence systems, especially cl-prevalence -
    • -
    • -compatible-metaclasses - - compatible-metaclasses validates superclasses according to a simple substitution model, thereby greatly simplifying the definition of class mixins -
    • -
    • -COMPOSE - - This is one of the hypothetical Common Lisp Utilities -
    • -
    • -DBC - - DBC is a library for doing Design by contract ala the Eiffel programming language in Common Lisp -
    • -
    • -Decimals - - A decimal number parser and formatting package for Common Lisp -
    • -
    • -definitions-systems - - definitions-systems provides a simple unified extensible way of processing named definitions -
    • -
    • -Enchant - - An interface for Enchant spell-checker library -
    • -
    • -enhanced-boolean - - enhanced-boolean provides a canonical way of converting generalized booleans to booleans -
    • -
    • -enhanced-defclass - - enhanced-defclass provides a truly extensible version of DEFCLASS that can accurately control the expansion according to the metaclass and automatically detect the suitable metaclass by analyzing the DEFCLASS form -
    • -
    • -enhanced-eval-when - - enhanced-eval-when provides an enhanced eval-when macro that supports (eval-when t ...) as a shorthand for (eval-when (:compile-toplevel :load-toplevel :execute) ...), addressing concerns about verbosity -
    • -
    • -enhanced-find-class - - enhanced-find-class provides a canonical way of converting class designators to classes -
    • -
    • -enhanced-multiple-value-bind - - enhanced-multiple-value-bind provides an enhanced multiple-value-bind macro that adds support for lambda list keywords by expanding to a multiple-value-call when necessary -
    • -
    • -enhanced-typep - - enhanced-typep obsoletes all TYPEP thin wrappers -
    • -
    • -evaled-when - - evaled-when provides a way of extracting and replicating the compile-time side-effects of forms -
    • -
    • -f-underscore - - F-underscore is a convenience library to make writing lambdas shorter without having to resort to special syntax like arc's square brackets -
    • -
    • -fakenil - - fakenil provides a canonical stand-in for NIL for contexts where NIL means "no value" -
    • -
    • -first-time-value - - first-time-value returns the result of evaluating a form in the current lexical and dynamic context the first time it's encountered, and the cached result of that computation on subsequent evaluations -
    • -
    • -General accumulator - - General accumulator is a general-purpose, extensible value accumulator library -
    • -
    • -incognito-keywords - - incognito-keywords introduces a new kind of keyword that looks just like any non-keyword symbol and allows safe usage of convenient but clashy symbol names by multiple libraries without conflicts through sharing -
    • -
    • -Infix - - The infix notation for arithmetic in Common Lisp -
    • -
    • -inheriting-readers - - inheriting-readers provides a simple yet powerful value inheritance scheme -
    • -
    • -its-library - - its provides convenient access to multiple values of an object in a concise, explicit and efficient way -
    • -
    • -Jean-Philippe Paradis - - Hello, I'm Hexstream and I've been doing Common Lisp related work intensively for 15 years, including more than a decade of Common Lisp Open Source -
    • -
    • -KR - - Knowledge Representation is a highly flexible and dynamic prototype-based object system for Common Lisp -
    • -
    • -Levenshtein - - The Levenshtein Distance algorithm finds the minimum number of operations needed to transform one string into the other, where an operation is an insertion, deletion, or substitution of a single character -
    • -
    • -Lispix - - Lispix is a public domain image analysis application for Windows, written and maintained by David Bright at NIST -
    • -
    • -LMud - - LMud is a MUD (Multi-User Dungeon) Game implementation written in Common Lisp with heavy use of CLOS and multiple inheritance -
    • -
    • -macro-level - - macro-level is an embarassingly trivial convenience macro that saves on indentation while being more concise and direct -
    • -
    • -macroexpand-dammit - - macroexpand-dammit is a code walker by John Fremlin -
    • -
    • -map-bind - - map-bind is a macro that allows visual grouping of variables with their corresponding values (not necessarily 1:1) in calls to mapping operators when using an inline LAMBDA -
    • -
    • -metering - - The Metering System is a portable Common Lisp code profiling tool -
    • -
    • -Misc-Extensions - - A convenience library containing a motley collection of macros and other extensions -
    • -
    • -multiple-value-variants - - multiple-value-variants gives access to multiple-value variants of operators through one macro: multiple-value -
    • -
    • -object-class - - object-class ensures that special subclasses of standard-object cluster right in front of standard-object in the class precedence list -
    • -
    • -parse-float - - A function to parse floating-point values from a string in Common Lisp -
    • -
    • -parse-number-range - - parse-number-range parses loop's convenient "for-as-arithmetic" syntax into 5 simple values -
    • -
    • -place-modifiers - - place-modifiers essentially gives access to hundreds of modify-macros through one single macro: modify -
    • -
    • -place-utils - - place-utils provides a few utilities relating to setfable places -
    • -
    • -PLisp - - PLisp is an s-exp syntax for generating PostScript files -
    • -
    • -positional-lambda - - positional-lambda is a concise, intuitive and flexible syntax (macro) for trivial lambdas that eschews explicit (and often contextually-redundant) naming of parameter variables in favor of positional references, with support for a used or ignored &rest parameter and automatic declaration of ignored parameters when logical "gaps" are left in the positional references -
    • -
    • -quid-pro-quo - - A contract programming library for Common Lisp in the style of Eiffel’s Design by contract -
    • -
    • -rip-l - - A CD audio ripper and encoder front-end application to paranoia and Ogg Vorbis -
    • -
    • -rtorrent-controller - - rtorrent-controller is an application to control rTorrent -
    • -
    • -sb-texinfo - - sb-texinfo was originally written for processing the SBCL docstrings by Rudi Sclatte in 2004, and has been maintained as part of SBCL since then -
    • -
    • -scalpl - - Market maker + APIs to several Bitcoin exchanges -
    • -
    • -shared-preferences - - shared-preferences notably allows flexible specification of package-local preferences -
    • -
    • -Sheafhom - - Sheafhom is a package by Mark McConnell for large sparse linear algebra computations over the integers and other exact number types -
    • -
    • -SHUT-IT-DOWN - - Exit the Common Lisp implementation -
    • -
    • -simple-guess - - simple-guess defines a simple extensible protocol for computing a guess using advisors -
    • -
    • -Soundex - - The Soundex algorithm indexes words by their sound when pronounced in English, for example to account for differences in spelling -
    • -
    • -spath - - SPath is a library for running search queries against s-expressions, intended to match parts of them that the user needs -
    • -
    • -SQLite Lisp interface - - SQLite Lisp interface is an interface to the SQL database SQLite library -
    • -
    • -stassats-inotify - - stassats-inotify is an interface to the Linux inotify facility for file change notifications -
    • -
    • -stassats-ogg - - stassats-ogg is an Ogg Vorbis container (metadata) reader/writer library -
    • -
    • -stassats-storage - - stassats-storage is a CLOS ObjectStore -
    • -
    • -stassats-subtitles - - stassats-subtitles is a movie subtitle editing library -
    • -
    • -symbol-namespaces - - symbol-namespaces defines a new kind of package that's named by a symbol rather than a string -
    • -
    • -Toadstool - - Toadstool is a library for pattern matching -
    • -
    • -trivial-garbage - - trivial-garbage provides a portable API to finalizers, weak hash-tables and weak pointers -
    • -
    • -trivial-jumptables - - trivial-jumptables provides efficient O(1) jump tables on supported Common Lisp implementations and falls back to O(log(n)) on others -
    • -
    • -trivial-package-local-nicknames - - This was done so there is a portability library for the PLN API not included in DEFPACKAGE -
    • -
    • -trivial-template - - Trivial Template is a really really trivial public domain templating hack -
    • -
    • -trivial-timers - - Trivial-timers is a minimally portable implementation of the SBCL timer extension using Bordeaux-Threads -
    • -
    • -with-output-to-stream - - with-output-to-stream provides a simple way of directing output to a stream according to the concise and intuitive semantics of format's stream argument -
    • -
    • -with-shadowed-bindings - - with-shadowed-bindings establishes a new lexical context within which specified bindings are explicitly shadowed, making it clear that they are not referenced within, thereby reducing cognitive load -
    • -
    • -WSCL - - This repository contains the TeX and plain-text source files for the “Well Specified Common Lisp” specification -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Pupeno.html b/clones/lisp/www.cliki.net/Pupeno.html deleted file mode 100644 index 894a6c99..00000000 --- a/clones/lisp/www.cliki.net/Pupeno.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Pupeno - - - - - - - -
    Pupeno
    Hello, I'm Pupeno. Some people would not consider that name real, for me, it's as real as it can be, I've been using it for years, people call me like that, I feel it like my name and it won't change. My official name is "José Pablo Ezequiel Fernández" on Argentina and "José Pablo Fernández Silva" on Spain/Europe (this difference is due to country rules), you can read more about my name if you want.

    I've started using Lisp very recently and I can't believe I was using other programming languages before, I don't want to go back. As I learn more and use it more, this page will grow, for now I can say that I like using Slime and my priorities are web programming, for which I'm choosing UCW. I'm also interested in GUI programming (I come from the KDE world) for which I'd use McClim.

    I recently started using Kubuntu (sorry Gentoo users) and since it doesn't provide the Lisp packages I want, I started to make them, you can find the announcement on my blog. In short, to use it, type:

    deb http://packages.pupeno.com/ubuntu/hoary ./
    in your sources.list.

    My web site is at http://pupeno.com/.

    person

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Puri.html b/clones/lisp/www.cliki.net/Puri.html deleted file mode 100644 index 703c7471..00000000 --- a/clones/lisp/www.cliki.net/Puri.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: puri - - - - - - - -
    puri
    puri, Portable Universal Resource Identifier, is a library for parsing and representing URIs.

    Current API documentation is available from Franz's Allegro CL documentation: https://franz.com/support/documentation/current/doc/uri.htm

    There is a fork that extends puri to support userinfo and specialized uri classes and re-implements the parser with cl-ppcre at https://github.com/lisp/com.b9.puri.ppcre

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Purity Test.html b/clones/lisp/www.cliki.net/Purity Test.html deleted file mode 100644 index 4b77146b..00000000 --- a/clones/lisp/www.cliki.net/Purity Test.html +++ /dev/null @@ -1,192 +0,0 @@ - - - - - CLiki: Purity Test - - - - - - - -
    Purity Test
    "Have you ever ..." : a Common Lisp Purity Test

    -A purity test attempts to gauge how "pure" you are within some realm of experience by having you answer a list of questions regarding which acts, etc. associated with the subject you have engaged in. Generally, for each "yes" answer you lose a purity point. The result is scaled to tell you what percentage of purity you still retain. - -http://www.armory.com/tests/purity.html -

    This is work in progress; collected from IRC. More entries welcomed (but -may be edited/removed). When the volume demands it we'll reorganise: probably using ANSI section headings

    So. Have you ever ...

    -
    -* Programming in Lisp
    -
    -  ... modified quoted structure?
    -      ... intentionally?
    -  ... rewritten more than five lines of code into a format string
    -      ... ten lines?
    -      ... twenty?
    -  ... written your own letf?
    -      ... and made it threadsafe?
    -  ... used a double nested backquote? 
    -      ... A triple nested backquote?
    -      ... a snail ,@'
    -  ... found a sensible use for PROGV
    -      ... for GENTEMP
    -  ... redefined FIND-PACKAGE
    -  ... written a macro with an expansion including EXPORT?
    -     ... DEFPACKAGE?
    -  ... created a logical pathname host with translations
    -      ... correctly
    -      ... and understood it
    -      ... without cut and pasting from another example
    -  ... reported a bug in the implementation you're using
    -      ... and argued with the authors when they claimed their current behaviour was correct
    -      ... and won ?
    -  ... used symbol properties?
    -      ... in a macro?
    -  ... optimized critical code with the aid of disassemble
    -      ... optimized noncritical code the same way for fun
    -  ... written code which uses nondeterministic evaluation?
    -     ... without using Screamer?
    -
    -* Programming Lisp
    -
    -  ... implemented a "purports to conform" Common Lisp system
    -      ... primarily in C (more than 90% by linecount)
    -      ... primarily in Lisp
    -      ... primarily in Java
    -      ... primarily in Forth
    -      ... in 500 lines or fewer
    -  ... ported an existing CL system to a new OS/CPU/architecture
    -
    -* Reinventing the wheel
    -
    -  ... written your own version of 
    -      ... defsys
    -      ... with-gensyms
    -      ... split
    -      ... collecting
    -      ... read
    -      ... compile-file
    -      ... uffi
    -      ... an XML parser
    -      ... an HTTP server
    -  ... and successfully rationalised it (other than as a learning exercise)
    -  ... rewritten a nontrivial program in lisp to avoid using FFI?
    -      ... made it faster than the C version?
    -  ... written a portability layer between two different Lisp implementations?
    -     ... three?
    -     ... and one of them was MACLISP?
    -     ... and gotten somebody else to use it?
    -     ... and then threw it away in disgust and used somebody else's?
    -
    -* The environment
    -
    -  ... installed a local copy of the hyperspec or equivalent?
    -      ... fixed the known bugs in it?
    -      ... with a lisp program?
    -      ... set your development environment up to refer to ANSi definitions 
    -          with simple keypress/menu selection?
    -  ... explained the history of your development environment by reference to
    -      ... GNU Emacs
    -      ... Spice Lisp/Hemlock
    -      ... the Lisp Machine
    -      ... Gosmacs
    -
    -* Kulchur
    -
    -  ... discussed lisp in a public forum with two or more Eri[ck]s?
    -  ... answered the "how do I generate a standalone executable" question?
    -      ... in a way that actually satisfied the questioner?
    -  ... helped someone with their ``lisp'' homework?
    -      ... in a way which was utterly unhelpful to their goal?
    -  ... thrown an indirect jab at a Schemer?
    -      ... and gotten away with it?
    -  ... given up reading comp.lang.lisp?
    -      ... after posting to say that you're not reading it any more?
    -      ... repeatedly?
    -  ... run a Lisp blog?
    -
    -  ... attended an ILC or ALU-organized LUGM?
    -      ... and presented a paper?
    -      ... and ragged on multiple inheritance?
    -
    -  ... gone to a conference and spent your time hacking Lisp exclusively?
    -      ... missed the talk by rms because of this?
    -
    -  ... been described as a Yabo?
    -  ... sidetracked an on-topic discussion on #lisp to politics?
    -      ...got it back on track?
    -  ... sidetracked an on-topic discussion on #lisp to lisp?
    -      ...got it back on track?
    -  ... written CL code to manage /ignore's?
    -
    -  ... mentioned the Schememonster two days in a row?
    -
    -* Employment
    -
    -  ... tried to illuminate cow-orker?
    -      ... and gave up in disgust?
    -          ... for good?
    -              ... posted to c.l.l about the experience?
    -      ... successfully?
    -
    -  ... written Lisp at work?
    -      ... without your manager's knowledge?
    -      ... against the direct orders of your manager?
    -      ... when you are the manager?
    -      ... and let the manager believe you were using Perl?
    -
    -      ... with managerial approval granted on the basis that it's a 
    -          prototype which will be rewritten in java?
    -          ... in Visual Basic?
    -          ... score one additional point for each subsequent project attempting to reimplement it in $other_language and failing
    -
    -  ... started your own company to do stuff in Lisp?
    -      ... is it still trading?
    -
    -
    -* Blue sky
    -
    -  ... started a LispOS project?
    -      ... started a wiki/cvs/web site/mailing list for it
    -  ... flamed someone else proposing a LispOS?
    -
    -

    Humor, if you have the appropriate implants

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Pyffi.html b/clones/lisp/www.cliki.net/Pyffi.html deleted file mode 100644 index c2aae733..00000000 --- a/clones/lisp/www.cliki.net/Pyffi.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Pyffi - - - - - - - -
    Pyffi
    Pyffi, inspired by Python-on-Lisp, is a Python programming language FFI for Common Lisp. So far tested with SBCL 1.0 and CLISP 2.41 (and python 2.5.1c1) on Ubuntu 7.04 (i386 and PowerPC). Included is a Lisp rewrite of PyUNO Hello, world.

    Start OpenOffice with soffice "-accept=socket,host=localhost,port=2002;urp;" and create new text document before testing.

    Piffy will evolve along with CL-UNO (my non-existent-yet library for office automation). And maybe CORBA-UNO bridge will appear this way.

    ..please document better or say it isn't for general use.. No readme, only .asd files say who you are, or what the license is, no exported symbols, no documentation strings. (The code looks good though)

    ..Thanks for the good words! Please consider this (unfinished) code public domain. Author.

    License: LGPL

    Source repository: http://www.common-lisp.ru/repos/pyffi/

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Python programming language.html b/clones/lisp/www.cliki.net/Python programming language.html deleted file mode 100644 index a2e0e698..00000000 --- a/clones/lisp/www.cliki.net/Python programming language.html +++ /dev/null @@ -1,68 +0,0 @@ - - - - - CLiki: Python programming language - - - - - - - -
    Python programming language
    Things related to interfacing the Python programming language and Common Lisp.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Python-On-Lisp.html b/clones/lisp/www.cliki.net/Python-On-Lisp.html deleted file mode 100644 index 477acce1..00000000 --- a/clones/lisp/www.cliki.net/Python-On-Lisp.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Python-On-Lisp - - - - - - - -
    Python-On-Lisp
    Python-On-Lisp is a Python programming language FFI for Common Lisp.

    License: ?

    Homepage: http://common-lisp.net/project/python-on-lisp/


    There is an actively developed (as of Feb 2010) fork of Python-On-Lisp called python-on-lisp-ex

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Python-on-Lisp.html b/clones/lisp/www.cliki.net/Python-on-Lisp.html deleted file mode 100644 index 477acce1..00000000 --- a/clones/lisp/www.cliki.net/Python-on-Lisp.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Python-On-Lisp - - - - - - - -
    Python-On-Lisp
    Python-On-Lisp is a Python programming language FFI for Common Lisp.

    License: ?

    Homepage: http://common-lisp.net/project/python-on-lisp/


    There is an actively developed (as of Feb 2010) fork of Python-On-Lisp called python-on-lisp-ex

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Python.html b/clones/lisp/www.cliki.net/Python.html deleted file mode 100644 index 6f036279..00000000 --- a/clones/lisp/www.cliki.net/Python.html +++ /dev/null @@ -1,68 +0,0 @@ - - - - - CLiki: Python - - - - - - - -
    Python
    Python is the name of a free high-performance compiler originally developed at Carnegie-Mellon University for CMU Common Lisp, it is now used by SBCL, Scieneer, and several other environments as well as CMUCL. Python's main feature is efficient native code compilation using powerful type inference, among other, techniques. It also supports block-compilation as well as the usual incremental.

    Python is also the name of a programming language that is not Lisp.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Q-THREAD-POOL.html b/clones/lisp/www.cliki.net/Q-THREAD-POOL.html deleted file mode 100644 index 32907e91..00000000 --- a/clones/lisp/www.cliki.net/Q-THREAD-POOL.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Q-THREAD-POOL - - - - - - - -
    Q-THREAD-POOL
    Q-THREAD-POOL is a very simple thread pool implementation based on JPL-QUEUES. Written by Max Rottenkolber.

    Repository: https://github.com/eugeneia/q-thread-pool

    License: AGPL

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/QITAB.html b/clones/lisp/www.cliki.net/QITAB.html deleted file mode 100644 index 5d7f6d7e..00000000 --- a/clones/lisp/www.cliki.net/QITAB.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: qitab - - - - - - - -
    qitab
    qitab is a collection of free software Lisp libraries originally published by ITA Software. See https://common-lisp.net/project/qitab/.

    Currently contains command-line-arguments, cl-protobufs, inferior-shell, poiu, quux-hunchentoot, quux-time, rpm, single-threaded-ccl.


    -MIT-LICENSE
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Qi.html b/clones/lisp/www.cliki.net/Qi.html deleted file mode 100644 index 2c8a5234..00000000 --- a/clones/lisp/www.cliki.net/Qi.html +++ /dev/null @@ -1,77 +0,0 @@ - - - - - CLiki: Qi - - - - - - - -
    Qi
    Qi is a functional programming language designed to run under Common Lisp. Qi provides type security and extra clarity to your Lisp application programs without heavy cost to portability or performance. It is particularly suited to the development of distributed reasoning programs or intelligent agents. The latest release, Qi 6.1, runs under CLisp. It is available under the GPL licence [GPL]. Here are some of the features of Qi. -
      -
    • Implemented in Common Lisp -
    • -
    • Inbuilt programmable inferencing engine -
    • -
    • Backtracking available -
    • -
    • Easy access to Common Lisp -
    • -
    • lambda calculus consistent -
    • -
    • Inbuilt Prolog engine. -
    • -
    • Inbuilt compiler-compiler. -
    • -
    • Online documentation. -
    • -
    • Optional static type checking -
    • -
    • Pattern matching -
    • -
    • Formal semantics provided -
    • -
    • Correctness proofs -
    • -

    Homepage: http://www.lambdassociates.org

    See Also: Qi for the Lisp Programmer at shenlanguage.org

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Qlot.html b/clones/lisp/www.cliki.net/Qlot.html deleted file mode 100644 index c972e626..00000000 --- a/clones/lisp/www.cliki.net/Qlot.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Qlot - - - - - - - -
    Qlot
    Qlot is a project-local library installer using Quicklisp facility. This aims to be like Bundler of Ruby or Carton of Perl.

    What qlot is trying to solve

    We have Quicklisp, the central library registry. It made installation of libraries damn easy.

    However, what only you can specify is the month of distribution. Which means you have to use all libraries of the same moment and you cannot use a newer/older version of a library for your project.

    "local-projects/" or ASDF configurations may be a solution to this problem, but there are a couple of problems.

    1) They are not project-local. If you have multiple projects that use the different version of the same library, it would be a problem.

    2) They are difficult to fix the version or to update them. If your project need to work on other than your machine, for instance on other people's machine or on servers, the version of depending libraries should be the same.

    This is what qlot is trying to solve.

    Installation

    (ql:quickload :qlot)

    or with Roswell:

    ros install qlot

    See the documentation !

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Qtools.html b/clones/lisp/www.cliki.net/Qtools.html deleted file mode 100644 index 28d61f3e..00000000 --- a/clones/lisp/www.cliki.net/Qtools.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: qtools - - - - - - - -
    qtools
    Qtools aims to be a toolkit to support development with CommonQt. This goes to the point of sporting a complete abstraction layer that makes writing Qt applications look like regular Lisp programs. Have a look at the documentation and examples to get an idea.

    The project can be found on github including a fully documented symbol index and a getting started tutorial.
    -As of November 2014, Qtools is on Quicklisp.

    Qtools is licensed under the Artistic License 2.0.


    -GUI
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Quantile estimator.html b/clones/lisp/www.cliki.net/Quantile estimator.html deleted file mode 100644 index 9a3e5979..00000000 --- a/clones/lisp/www.cliki.net/Quantile estimator.html +++ /dev/null @@ -1,62 +0,0 @@ - - - - - CLiki: Quantile estimator - - - - - - - -
    Quantile estimator
    Biased Quantiles over Data Streams

    Common Lisp Implementation of Graham Cormode and S. Muthukrishnan's Effective Computation of Biased Quantiles over Data Streams in ICDE’05.

    -

    (let ((estimator (make-estimator))) - (estimator.observe estimator 0.8) - (estimator.observe estimator 0.4) - (estimator.observe estimator 0.9) - (estimator.observe estimator 0.6) - - (is (estimator.query estimator 0.5) 0.6) - (is (estimator.query estimator 0.9) 0.8) - (is (estimator.query estimator 0.99) 0.8)) -
    -Github

    Mathematics

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Quick Arrays.html b/clones/lisp/www.cliki.net/Quick Arrays.html deleted file mode 100644 index 4cab512f..00000000 --- a/clones/lisp/www.cliki.net/Quick Arrays.html +++ /dev/null @@ -1,188 +0,0 @@ - - - - - CLiki: Quick Arrays - - - - - - - -
    Quick Arrays
    A re-run benchmark on original code by Ron Parr, with a couple of tweaks by David Mullen to run on CCL, figuring that the contrast between then and now (1996 versus 2020) might be interesting. The test involves arrays with double-float elements.

    README (1996) with links

    Welcome to Version 1.1 of Ron's Quick Arrays!

    The Quick Arrays package is a quick and dirty replacement for the -standard array data structure in Common Lisp. Like a lot of things in -Common Lisp, arrays have lots of fancy, often-unused features that -reduce performance considerably in many implementations especially MCL -3.9. While it is possible to achieve better performance in some cases -through typed arrays in some lisps, Quick Arrays, provides a -performance boost without hurting the readability or compactness of -your code and is much faster than any other approach for arrays of -mixed type and it is faster than typed arrays in MCL 3.9. See the -included document, Coding Tips, -for specific suggestions on writing fast lisp code using arrays.

    Quick Arrays represents arrays as vectors of vectors. This often -permits much faster array references at the expense of some -flexibility. Quick Arrays are not adjustable and many of the functions -that work with standard arrays have not been implemented for Quick -Arrays.

    The Quick Arrays package comes in two parts, quick-arrays.cl -and qtest.cl. The first contains the functions and macros that implement quick arrays. -The second file, qtest.cl, contains a simple test program to tell if Quick Arrays is faster -in your environment than standard arrays.

    Read the header of each file for more information.

    Thanks for trying Ron's Quick Arrays!

    MCL qtest (32-bit)

    These results are from MCL 3.9 on a PowerBook 5300. MCL was running in a 20 MB partition with no virtual memory.

    Running standard array implementation.
    -(MM A B C) took 25,211 milliseconds (25.211 seconds) to run.
    -Of that, 393 milliseconds (0.393 seconds) were spent in The Cooperative Multitasking Experience.
    -1,804 milliseconds (1.804 seconds) was spent in GC.
    - 32,000,016 bytes of memory allocated.
    -
    -
    -Running optimized standard array implementation.
    -(MMOPT A B CTEST) took 23,175 milliseconds (23.175 seconds) to run.
    -Of that, 1,969 milliseconds (1.969 seconds) were spent in The Cooperative Multitasking Experience.
    -1,786 milliseconds (1.786 seconds) was spent in GC.
    - 32,000,016 bytes of memory allocated.
    -
    -
    -Running optimized standard array implementation with typed arrays.
    -(MMOPT AT BT CT) took 27,042 milliseconds (27.042 seconds) to run.
    -Of that, 737 milliseconds (0.737 seconds) were spent in The Cooperative Multitasking Experience.
    -5,300 milliseconds (5.300 seconds) was spent in GC.
    - 80,000,048 bytes of memory allocated.
    -
    -Verifying Consistency...Check!
    -
    -Running quick arrays using qaref.
    -(QAMM QA QB QC) took 28,584 milliseconds (28.584 seconds) to run.
    -Of that, 385 milliseconds (0.385 seconds) were spent in The Cooperative Multitasking Experience.
    -7,111 milliseconds (7.111 seconds) was spent in GC.
    - 96,160,064 bytes of memory allocated.
    -
    -Verifying Consistency...Check!
    -
    -Running optimized quick arrays using qaref.
    -(QAMM-OPT QA QB QC) took 26,025 milliseconds (26.025 seconds) to run.
    -Of that, 361 milliseconds (0.361 seconds) were spent in The Cooperative Multitasking Experience.
    -6,228 milliseconds (6.228 seconds) was spent in GC.
    - 96,160,056 bytes of memory allocated.
    -
    -Verifying Consistency...Check!
    -
    -Running quick arrays using qref.
    -(QMM QA QB QC) took 13,831 milliseconds (13.831 seconds) to run.
    -Of that, 177 milliseconds (0.177 seconds) were spent in The Cooperative Multitasking Experience.
    -2,697 milliseconds (2.697 seconds) was spent in GC.
    - 32,000,024 bytes of memory allocated.
    -
    -Verifying Consistency...Check!
    -
    -Running optimized quick arrays using qref.
    -(QMMOPT QA QB QC) took 8,970 milliseconds (8.970 seconds) to run.
    -Of that, 103 milliseconds (0.103 seconds) were spent in The Cooperative Multitasking Experience.
    -1,811 milliseconds (1.811 seconds) was spent in GC.
    - 32,000,016 bytes of memory allocated.
    -
    -Verifying Consistency...Check!

    CCL qtest (64-bit)

    These results are from CCL 1.11.5 on a Lenovo IdeaPad.

    Running standard array implementation.
    -(MM A B C)
    -took 83,000 microseconds (0.083000 seconds) to run.
    -During that period, and with 4 available CPU cores,
    -     78,125 microseconds (0.078125 seconds) were spent in user mode
    -          0 microseconds (0.000000 seconds) were spent in system mode
    - 32,000,064 bytes of memory allocated.
    -
    -Running optimized standard array implementation.
    -(MMOPT A B CTEST)
    -took 77,000 microseconds (0.077000 seconds) to run.
    -      2,041 microseconds (0.002041 seconds, 2.65%) of which was spent in GC.
    -During that period, and with 4 available CPU cores,
    -     62,500 microseconds (0.062500 seconds) were spent in user mode
    -          0 microseconds (0.000000 seconds) were spent in system mode
    - 32,000,064 bytes of memory allocated.
    -
    -
    -Running optimized standard array implementation with typed arrays.
    -(MMOPT-TYPE AT BT CT)
    -took 17,000 microseconds (0.017000 seconds) to run.
    -During that period, and with 4 available CPU cores,
    -     31,250 microseconds (0.031250 seconds) were spent in user mode
    -          0 microseconds (0.000000 seconds) were spent in system mode
    - 64 bytes of memory allocated.
    -
    -Verifying Consistency...Check!
    -
    -Running quick arrays using qaref.
    -(QAMM QA QB QC)
    -took 225,000 microseconds (0.225000 seconds) to run.
    -       2,161 microseconds (0.002161 seconds, 0.96%) of which was spent in GC.
    -During that period, and with 4 available CPU cores,
    -      62,500 microseconds (0.062500 seconds) were spent in user mode
    -      15,625 microseconds (0.015625 seconds) were spent in system mode
    - 160,000,064 bytes of memory allocated.
    -
    -Verifying Consistency...Check!
    -
    -Running optimized quick arrays using qaref.
    -(QAMM-OPT QA QB QC)
    -took 208,000 microseconds (0.208000 seconds) to run.
    -       1,192 microseconds (0.001192 seconds, 0.57%) of which was spent in GC.
    -During that period, and with 4 available CPU cores,
    -     125,000 microseconds (0.125000 seconds) were spent in user mode
    -           0 microseconds (0.000000 seconds) were spent in system mode
    - 144,000,064 bytes of memory allocated.
    -
    -Verifying Consistency...Check!
    -
    -Running quick arrays using qref.
    -(QMM QA QB QC)
    -took 77,000 microseconds (0.077000 seconds) to run.
    -During that period, and with 4 available CPU cores,
    -     62,500 microseconds (0.062500 seconds) were spent in user mode
    -          0 microseconds (0.000000 seconds) were spent in system mode
    - 32,000,064 bytes of memory allocated.
    -
    -Verifying Consistency...Check!
    -
    -Running optimized quick arrays using qref.
    -(QMMOPT QA QB QC)
    -took 46,000 microseconds (0.046000 seconds) to run.
    -During that period, and with 4 available CPU cores,
    -     31,250 microseconds (0.031250 seconds) were spent in user mode
    -     15,625 microseconds (0.015625 seconds) were spent in system mode
    - 16,000,064 bytes of memory allocated.
    -
    -Verifying Consistency...Check!
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/QuickLisp.html b/clones/lisp/www.cliki.net/QuickLisp.html deleted file mode 100644 index a22812fb..00000000 --- a/clones/lisp/www.cliki.net/QuickLisp.html +++ /dev/null @@ -1,65 +0,0 @@ - - - - - CLiki: Quicklisp - - - - - - - -
    Quicklisp
    Quicklisp aims to make it easy to get started with a rich set of community-developed Common Lisp libraries.

    It is currently (2014-10-07) available as a public beta.

    Quicklisp is developed by Zach Beane, and released under an MIT-style license.

    Resources: -

    For a list of libraries that may be installed via Quicklisp, see the Quicklisp releases page.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/QuickProject.html b/clones/lisp/www.cliki.net/QuickProject.html deleted file mode 100644 index 9168e768..00000000 --- a/clones/lisp/www.cliki.net/QuickProject.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Quickproject - - - - - - - -
    Quickproject
    Quickproject is a library for creating a Common Lisp project skeleton.

    Depends on: cl-fad, html-template

    Repository: https://github.com/xach/quickproject


    -MIT-License, Development
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Quicklisp tutorial.html b/clones/lisp/www.cliki.net/Quicklisp tutorial.html deleted file mode 100644 index 414e4a18..00000000 --- a/clones/lisp/www.cliki.net/Quicklisp tutorial.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Quicklisp tutorial - - - - - - - -
    Quicklisp tutorial
    ql:quickload is the Quicklisp command to download and install a library that is part of Quicklisp. Create an Issue for quicklisp-projects on Github to request inclusion of a new project in Quicklisp. The inclusion policy is quite inclusive. Perhaps the only two hard requirements are ASDF compatibility and a free (ex: Public Domain, MIT, BSD or similar) license. It's also strongly recommended to supply at least :author (ex: :author "Full Name or Nickname <email@address.tld>"), :license and :description options in the ASDF system.

    The following invocation would attempt to download and install a library named "foo" from/with Quicklisp (note that the Quicklisp and ASDF system names for a project might differ):

    (ql:quickload "foo")

    It's of course necessary to install Quicklisp and load it in your Common Lisp environment, first. Fortunately, this is very easy to do.

    Another thing: you might need to invoke (ql:update-dist "quicklisp") before ql:quickload to ensure you get the latest quicklisp version of libraries. A new Quicklisp dist is typically released (very) approximately once a month, at which point it's a good idea to run the ql:update-dist. In the unlikely event that the dist upgrade causes problems for you, it's always possible to go back in dist time.

    If you tried to ql:quickload a library but did not ql:update-dist since a library was included in Quicklisp, then Quicklisp would report that the library was not found.

    A related command is (ql:update-client). New versions of the Quicklisp client (the "core" of Quicklisp that downloads dists and releases) are released infrequently.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Quicklisp.html b/clones/lisp/www.cliki.net/Quicklisp.html deleted file mode 100644 index a22812fb..00000000 --- a/clones/lisp/www.cliki.net/Quicklisp.html +++ /dev/null @@ -1,65 +0,0 @@ - - - - - CLiki: Quicklisp - - - - - - - -
    Quicklisp
    Quicklisp aims to make it easy to get started with a rich set of community-developed Common Lisp libraries.

    It is currently (2014-10-07) available as a public beta.

    Quicklisp is developed by Zach Beane, and released under an MIT-style license.

    Resources: -

    For a list of libraries that may be installed via Quicklisp, see the Quicklisp releases page.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Quickproject.html b/clones/lisp/www.cliki.net/Quickproject.html deleted file mode 100644 index 9168e768..00000000 --- a/clones/lisp/www.cliki.net/Quickproject.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Quickproject - - - - - - - -
    Quickproject
    Quickproject is a library for creating a Common Lisp project skeleton.

    Depends on: cl-fad, html-template

    Repository: https://github.com/xach/quickproject


    -MIT-License, Development
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Quickref.html b/clones/lisp/www.cliki.net/Quickref.html deleted file mode 100644 index 4eb00979..00000000 --- a/clones/lisp/www.cliki.net/Quickref.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Quickref - - - - - - - -
    Quickref
    Quickref is a global documentation project for Common Lisp. It automatically builds a website aggregating reference manuals for all Quicklisp libraries. The manuals are generated with Declt in Texinfo format, and then processed to HTML with Makeinfo.

    Depends on: quicklisp, cl-ppcre, 3bmd, declt

    Repository: https://gitlab.common-lisp.net/quickref/quickref

    License: ISC


    -document preparation
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/R Scott McIntire.html b/clones/lisp/www.cliki.net/R Scott McIntire.html deleted file mode 100644 index 131c9235..00000000 --- a/clones/lisp/www.cliki.net/R Scott McIntire.html +++ /dev/null @@ -1,107 +0,0 @@ - - - - - CLiki: R Scott McIntire - - - - - - - -
    R Scott McIntire
    I, Person Scott McIntire, do solemnly offer these my responses to The Road to Lisp Survey:

    When did you first try Lisp (meaning here and throughout the survey "any member of the Lisp family") seriously, and which Lisp family member was it?

    I became quite interested in Lisp around 96 when Graham's book came out. -A few years before that I had descovered Scheme and thought it was the most -beautiful language in the world. Since it was related, I looked at Common Lisp -but it looked ugly by comparison. It took more experience developing -software before I realized the error of my ways. I don't think I used a Lisp -system until 2000 which was MCL. Since then I have used LispWorks and Allegro.

    What led you to try Lisp?

    Two things:
    -1). I wanted a language that I could use to investigate ideas - and algorithms that wouldn't get in the way.

    2). I had been developing commercial software using the hybrid approach - of an interpreted interactive language with an interface to C for - speed. From this experience, I wanted a language that could be as - interactive as a scripting language, but generate compiled code - when I was done. I came across Paul Graham's books and realized - that this Holy Grail had been realized, it was called Common - Lisp. Graham's discussion of how software development is really - more experimental than people want to admit really struck a chord. - I was also dissatisfied with the state of the single dispatch - object systems. This is also fixed by Common Lisp.

    Along the way I've looked at most of the popular languages as well as -functional languages like SML, OCaml, and Haskell. As Graham mentions, -static typing is great if you're translating a spec into code. That's not -what happens in practice when developing software.

    If you were trying Lisp out of unhappiness with another language, what was that other language and what did you not like about it, or what were you hoping to find different in Lisp?

    I was unhappy with scripting languages as they lacked speed and expressive power. -I was unhappy with languages like C++ that are, basically, a nightmare. -In the case of C++ things like:
    -1). Memory management - can we say "what century is this?"
    -2). Memory fragmentation - can we say 24x7 - not!
    -3). The problems with the classic diamond object diagram. - Yeah, let me see, which order are the constructors called - when I have a virtual base class...
    -4). No reasonable mixins.
    -5). Oh silly me, I forgot to declare my destructor virtual.

    As far as other OO languages like Java, I find that the focus on -a single dispatch OO as the be-all end-all is quite annoying. Design patterns were suppose to be the next -level in working with objects; but, it seems clear that they are -mainly used to fix up the problems with method ownership and single -dispatch.

    Of course, one can always argue C++ is getting better and java is -improving. C++ now has the STL, Java always has something new. To -me, this is similar to the way XML has developed. What you end up -with is "We'll just add layer N of this new framajama technology to -fix the problems in layer N-1, then everything will be fine."

    How far have you gotten in your study of Lisp? (I know, that is hard to measure)

    I have been writing Lisp programs for my self on and off (more on than -off lately) for about 3 years. I think I am getting a better sense of -what I can do. I've written a number of utilities and done a few medium size -projects.

    What do you think of Lisp so far?

    It gets better every day. It's interesting how you change your -approach to problems with Lisp. For instance, a few years back I wrote -some code in C++ to work with Fuzzy logic systems. After a month of -coding in my spare nights and weekends I had code that read in a spec -for a fuzzy system which could "fire" fuzzy rules. This amounted to -building a parse tree and walking over it to evaluate the rules.

    Level I Lisp: While learing Common Lisp, I wrote the same thing over - a weekend. I didn't have to write a parser for a spec, I - used the Lisp reader - DONE. I then walked over a rule tree - to "fire" the fuzzy rules.

    Level II Lisp: I later realized that I could define a new macro that had - the form of the spec and let it create all the data objects - in the background. I could use the macro to also carefully check - the arguements to the spec as well as any constraints that - a collection of arguments might need to staisfy. - I could also call the compiler and - get RULES THAT WERE COMPILED - ding!

    Is an intepreter written in C++ (or C for that matter) as fast as -compiled Common Lisp code? This example has given me a new -perspective about performance comparisons.


    -Switch Date 2000
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/R.html b/clones/lisp/www.cliki.net/R.html deleted file mode 100644 index 3955b587..00000000 --- a/clones/lisp/www.cliki.net/R.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: R - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/RCL.html b/clones/lisp/www.cliki.net/RCL.html deleted file mode 100644 index d4acd636..00000000 --- a/clones/lisp/www.cliki.net/RCL.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: RCL - - - - - - - -
    RCL
    RCL is an FFI to communicate with the R statistics environment. RCLmath links with libRmath and makes some functions accessible in a much simpler way.

    Note that there is another project working on communication between Common Lisp and R: RCLG.

    Homepage: http://common-lisp.net/project/rcl/

    License: MIT

    See Also: cl-rmath, rclg

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/RCLG.html b/clones/lisp/www.cliki.net/RCLG.html deleted file mode 100644 index 354cd98b..00000000 --- a/clones/lisp/www.cliki.net/RCLG.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: rclg - - - - - - - -
    rclg
    An R (statistics programming language) FFI for Common Lisp.

    Homepage: GitHub

    License: BSD

    See Also: cl-rmath, RCL

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/RDF.html b/clones/lisp/www.cliki.net/RDF.html deleted file mode 100644 index 75cbafc1..00000000 --- a/clones/lisp/www.cliki.net/RDF.html +++ /dev/null @@ -1,105 +0,0 @@ - - - - - CLiki: RDF - - - - - - - -
    RDF
    The Resource Description Framework (RDF) is a framework for representing information in the Web. Resource Description Framework (RDF): Concepts and Abstract Syntax

    RDF is one of the technologies underlying the Semantic Web. More information on RDF can be found on the W3C Semantic Web Activity page.

    Projects: -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/RDNZL.html b/clones/lisp/www.cliki.net/RDNZL.html deleted file mode 100644 index 4e75a276..00000000 --- a/clones/lisp/www.cliki.net/RDNZL.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: RDNZL - - - - - - - -
    RDNZL
    RDNZL (pronounced "Redunzl") enables Common Lisp applications to interact with dot-NET libraries. It's more or less a foreign function interface for .NET languages like C# built atop the C foreign function interface.

    Homepage: https://common-lisp.net/~loliveira/ediware/rdnzl/

    License: BSD


    -From 2010. Is this obsolete or still functional?
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/RE.html b/clones/lisp/www.cliki.net/RE.html deleted file mode 100644 index d1befd83..00000000 --- a/clones/lisp/www.cliki.net/RE.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: re - - - - - - - -
    re
    The re package is a small, portable, lightweight, and quick, regular expression library for Common Lisp. It is a non-recursive, backtracing VM. The syntax is similar to Lua-style pattern patching (found here), but has added support for additional regex features. It's certainly not the fastest, but is very easy to understand and extend.

    Depends on: parse

    Repository: https://github.com/massung/re

    License: Apache 2

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/READ-DELIMITED.html b/clones/lisp/www.cliki.net/READ-DELIMITED.html deleted file mode 100644 index 5a2fbb61..00000000 --- a/clones/lisp/www.cliki.net/READ-DELIMITED.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: READ-DELIMITED - - - - - - - -
    READ-DELIMITED
    READ-DELIMITED (proposed by Jochen Schmidt) is a member of the Common Lisp Utilities family of programs, designed by community consensus.

    Function READ-DELIMITED

    Syntax:

    read-delimited sequence stream &key start end delimiter test key => position, delimited-p

    Arguments and Values:

    sequence---a sequence.

    stream---an input stream.

    start, end---bounding index designators of sequence. The defaults for start and end are 0 and nil, respectively.

    delimiter---a character. It defaults to #\newline.

    test---a designator for a function of two arguments that returns a generalized boolean.

    key---a designator for a function of one argument, or nil.

    position---an integer greater than or equal to zero, and less than or equal to the length of the sequence.

    delimited-p---the result of the last invokation of test

    Description:

    Destructively modifies sequence by replacing elements of sequence bounded by start and end with elements read from stream.

    Test is called with the actual read character, converted by applying key to it, as the first and delimiter as the second argument.

    If a character is read for which (funcall test (funcall key char) delimiter) is non-nil, read-delimited terminates the copying even before reaching end of file or the end of the bounding designator.

    read-delimited returns the index of the first element of sequence that was not updated as the first and the result of the last invokation of test as the second value.

    Sequence is destructively modified by copying successive elements into it from stream. If the end of file for stream is reached before copying all elements of the subsequence, then the extra elements near the end of sequence are not updated.

    Exceptional situations:

    If start and/or end are out of bounds, or if start > end, then a read-delimited-bounds-error error is signalled. This error is passed the values of start, end, and sequence, which can be read with read-delimited-bounds-error-start, read-delimited-bounds-error-end, and read-delimited-bounds-error-sequence, respectively.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/REGEX.html b/clones/lisp/www.cliki.net/REGEX.html deleted file mode 100644 index 93122874..00000000 --- a/clones/lisp/www.cliki.net/REGEX.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Regex - - - - - - - -
    Regex
    Regex is a full-featured regular expression compiler and matching engine written by Michael Parker. If you're one of those who believe that Lisp is slow, note that this regex engine is roughly 5x-20x times faster than the GNU regex matcher (which is obviously written in C).

    Homepage: at foldr.org

    Repository: GitHub

    License: BSD

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/REPL.html b/clones/lisp/www.cliki.net/REPL.html deleted file mode 100644 index a3e465f7..00000000 --- a/clones/lisp/www.cliki.net/REPL.html +++ /dev/null @@ -1,202 +0,0 @@ - - - - - CLiki: REPL - - - - - - - -
    REPL
    The Read Eval Print Loop of a Lisp listener.

    Implementation of a REPL in Common Lisp

    The most basic REPL implementation is just what it says:

    NOTE: the code presented here lacks flushing (call to finish-output). It'll have to be updated

    Given the order of evaluation imposed by the parentheses, READ is -evaluated first, then EVAL, then PRINT, then LOOP. Hence REPL.

    -cl-user> (Loop (Print (Eval (Read))))
    -(+ 2 3)
    -
    -5 (list 1 'apple 2 'orange)
    -
    -(1 apple 2 orange) ; Evaluation aborted on #<com.informatimago.signal:user-interrupt #x302004E56F0D>.
    -cl-user> 
    -

    -A more sophisticated REPL (conforming to the ANSI Common Lisp -specification) could be:

    (defmacro handling-errors (&body body) - `(handler-case (progn ,@body) - (simple-condition (err) - (format *error-output* "~&~A: ~%" (class-name (class-of err))) - (apply (function format) *error-output* - (simple-condition-format-control err) - (simple-condition-format-arguments err)) - (format *error-output* "~&")) - (condition (err) - (format *error-output* "~&~A: ~% ~S~%" - (class-name (class-of err)) err)))) - -(defun repl () - (do ((+eof+ (gensym)) - (hist 1 (1+ hist))) - (nil) - (format t "~%~A[~D]> " (package-name *package*) hist) - (handling-errors - (setf +++ ++ ++ + + - - (read *standard-input* nil +eof+)) - (when (or (eq - +eof+) - (member - '((quit)(exit)(continue)) :test (function equal))) - (return-from repl)) - (setf /// // // / / (multiple-value-list (eval -))) - (setf *** ** ** * * (first /)) - (format t "~& --> ~{~S~^ ;~% ~}~%" /))))

    It provides the standard REPL variables, -, +, ++, +++, *, **, ***, /, -// and ///, and handle errors reporting a message. In CL -implementations, the debugger would be invoked upon errors.

    -cl-user> (repl)
    -
    -COMMON-LISP-USER[1]> (* 3 4)
    -
    - --> 12
    -
    -COMMON-LISP-USER[2]> (/ 1 0)
    -
    -division-by-zero: 
    -  #<division-by-zero #x302004F8497D>
    -
    -COMMON-LISP-USER[3]> (quit)
    -nil
    -cl-user> 
    -

    -

    Examples and Comparison of REPL

    Here are two examples of REPL interaction.

    The first is with an ANSI Common Lisp implementation; all Common Lisp -implementations have similar REPL, but they differ in the set of -command they offer in the debugger. slime covers the differences -with a common layer.

    The second is with an ANSI C implementation. C implementations don't -often provide a REPL, having an heritage of batch processing much more -than interactive development, but there are a few C implementations -that provide more or less limited REPL.

    Langage: ANSI Common Lisp; Implementation: clisp

    -[pjb@kuiper :0 ~]$ clisp -ansi -norc
    -  i i i i i i i       ooooo    o        ooooooo   ooooo   ooooo
    -  I I I I I I I      8     8   8           8     8     o  8    8
    -  I  \ `+' /  I      8         8           8     8        8    8
    -   \  `-+-'  /       8         8           8      ooooo   8oooo
    -    `-__|__-'        8         8           8           8  8
    -        |            8     o   8           8     o     8  8
    -  ------+------       ooooo    8oooooo  ooo8ooo   ooooo   8
    -
    -Welcome to GNU CLISP 2.49+ (2010-07-17) <http://clisp.org/>
    -
    -Copyright (c) Bruno Haible, Michael Stoll 1992, 1993
    -Copyright (c) Bruno Haible, Marcus Daniels 1994-1997
    -Copyright (c) Bruno Haible, Pierpaolo Bernardi, Sam Steingold 1998
    -Copyright (c) Bruno Haible, Sam Steingold 1999-2000
    -Copyright (c) Sam Steingold, Bruno Haible 2001-2010
    -
    -Type :h and hit Enter for context help.
    -
    -[1]> (defun f (x) (if (< x 1) 1 (* x (f (1- x)))))
    -F
    -[2]> (f 5)
    -120
    -[3]> (defparameter *s* 0)
    -*S*
    -[4]> (loop for i from 0 to 5 do (incf *s* (f i)))
    -NIL
    -[5]> *s*
    -154
    -[6]> (loop for i from 0 to 5 do (incf *s* (f (/ i))))
    -
    -*** - /: division by zero
    -The following restarts are available:
    -ABORT          :R1      Abort main loop
    -Break 1 [7]> :bt 4 1
    -<1/246> #<SYSTEM-FUNCTION SHOW-STACK> 3
    -<2/239> #<COMPILED-FUNCTION SYSTEM::PRINT-BACKTRACE>
    -<3/233> #<COMPILED-FUNCTION SYSTEM::DEBUG-BACKTRACE>
    -<4/224> #<SYSTEM-FUNCTION SYSTEM::READ-EVAL-PRINT> 2
    -<5/221> #<COMPILED-FUNCTION SYSTEM::BREAK-LOOP-2-3>
    -<6/217> #<SYSTEM-FUNCTION SYSTEM::SAME-ENV-AS> 2
    -<7/203> #<COMPILED-FUNCTION SYSTEM::BREAK-LOOP-2>
    -<8/201> #<SYSTEM-FUNCTION SYSTEM::DRIVER>
    -<9/161> #<COMPILED-FUNCTION SYSTEM::BREAK-LOOP>
    -<10/158> #<SYSTEM-FUNCTION INVOKE-DEBUGGER> 1
    -<11/147> #<SYSTEM-FUNCTION /> 1
    -[146] EVAL frame for form (/ I)
    -Printed 11 frames
    -Break 1 [7]> i
    -0
    -Break 1 [7]> :q
    -[8]> (loop for i from 0 to 5 do (incf *s* (f (/ (1+ i)))))
    -NIL
    -[9]> *s*
    -160
    -[10]> (setf *s* 0)
    -0
    -[11]> (loop for i from 0 to 5 do (incf *s* (f (/ (1+ i)))))
    -NIL
    -[12]> *s*
    -6
    -[13]> (f (/ 1 5))
    -1
    -[14]> (f 30)
    -265252859812191058636308480000000
    -[15]> (quit)
    -Bye.
    -[pjb@kuiper :0 ~]$ 
    -

    Langage: ANSI C; Implementation: ch

    -[pjb@kuiper :0 ~]$ ch
    -                              Ch (64-bit)
    -                  Standard edition, version 7.0.0.15151 
    -              Copyright (C) SoftIntegration, Inc. 2001-2011
    -                     http://www.softintegration.com
    -/home/pjb> int f(int x){ return x<1?1:x*f(x-1); }
    -int f(int x){ return x<1?1:x*f(x-1); }
    -/home/pjb> f(5)
    -f(5)
    -120 
    -/home/pjb> int s=0;
    -int s=0;
    -/home/pjb> {int i; for(i=0;i<=5;i++){ s+=f(i); }}
    -{int i; for(i=0;i<=5;i++){ s+=f(i); }}
    -/home/pjb> s
    -s
    -154 
    -/home/pjb> {int i; for(i=0;i<=5;i++){ s+=f(1/i); }}
    -{int i; for(i=0;i<=5;i++){ s+=f(1/i); }}
    -WARNING: integer divide by zero 
    -Segmentation fault
    -[pjb@kuiper :0 ~]$ 
    -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/RESOURCE-UTILIZATION.html b/clones/lisp/www.cliki.net/RESOURCE-UTILIZATION.html deleted file mode 100644 index dbfee69d..00000000 --- a/clones/lisp/www.cliki.net/RESOURCE-UTILIZATION.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: RESOURCE-UTILIZATION - - - - - - - -
    RESOURCE-UTILIZATION
    RESOURCE-UTILIZATION gathers and displays resource utilization statistics from Linux's /proc interface.

    Homepage: http://informatimago.com/develop/lisp/index.html

    Source: http://informatimago.com/develop/lisp/com/informatimago/clmisc/resource-utilization.lisp

    License: AGPL


    -Topics: system programming, Unix
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/RESTAS.html b/clones/lisp/www.cliki.net/RESTAS.html deleted file mode 100644 index 459738ff..00000000 --- a/clones/lisp/www.cliki.net/RESTAS.html +++ /dev/null @@ -1,71 +0,0 @@ - - - - - CLiki: RESTAS - - - - - - - -
    RESTAS
    RESTAS is a web framework, used to develop the site lisper.ru

    Homepage: RESTAS

    Documentation: http://restas.lisper.ru/en/

    Source code: https://github.com/archimag/restas

    Features

      -
    • Based on Hunchentoot -
    • -
    • Uses cl-routes for mapping URL (without MVC)
    • -
    • Supports the reuse of web applications as plug-ins
    • -
    • Pure lisp daemonization with SBCL on GNU/Linux without of GNU Screen or detachtty (tested on Gentoo and Debian)
    • -

    Very simple examples

    Screencast -http://www.youtube.com/watch?v=bxnwe16Bqyk

    Currently available restas-plugins

    For Gentoo-users is available of fork gentoo-lisp-overlay, which contains ebuild-files for RESTAS and some plugins: https://github.com/archimag/archimag-lisp-overlay

    Evaluation, 20100901

    A very brief assessment of all web frameworks listed in cliki was carried out in September 2010. This assessment comprised: check websites, download source if available, attempt to compile, review documentation.

    The review found that RESTAS was under active development. Documentation was mainly in Russian.

    Evaluation, 20140602

    -The latest commit to the code repository dates back 7 months.

    The documentation is out to date, by an author's own statement.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/RFC.html b/clones/lisp/www.cliki.net/RFC.html deleted file mode 100644 index aa3573fb..00000000 --- a/clones/lisp/www.cliki.net/RFC.html +++ /dev/null @@ -1,180 +0,0 @@ - - - - - CLiki: RFC - - - - - - - -
    RFC
    RFCs are standards documents maintained by the Internet Engineering Task Force. They specify protocols that make the Internet run. This is a topic page for Common Lisp libraries that implement various RFCs.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/RIFF-WAVE.html b/clones/lisp/www.cliki.net/RIFF-WAVE.html deleted file mode 100644 index 4c90d03d..00000000 --- a/clones/lisp/www.cliki.net/RIFF-WAVE.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: RIFF-WAVE - - - - - - - -
    RIFF-WAVE
    riff-wave provides functions to read and write WAVE files.

    Written by Max Rottenkolber.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/RLX.html b/clones/lisp/www.cliki.net/RLX.html deleted file mode 100644 index 35776de8..00000000 --- a/clones/lisp/www.cliki.net/RLX.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: RLX - - - - - - - -
    RLX
    RLX is a game engine for roguelike games written in Common Lisp.

    RLX homepage

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ROTATE-BYTE.html b/clones/lisp/www.cliki.net/ROTATE-BYTE.html deleted file mode 100644 index 5c54f6cb..00000000 --- a/clones/lisp/www.cliki.net/ROTATE-BYTE.html +++ /dev/null @@ -1,78 +0,0 @@ - - - - - CLiki: ROTATE-BYTE - - - - - - - -
    ROTATE-BYTE
    Function ROTATE-BYTE

    Syntax:

    rotate-byte count bytespec integer => result-integer

    Arguments and Values:

    count---an integer.

    bytespec---a byte specifier.

    integer---an integer.

    result-integer---an integer.

    Description:

    Rotates a field of bits within integer; specifically, returns an -integer that contains the bits of integer rotated count times -leftwards within the byte specified by bytespec, and elsewhere -contains the bits of integer.

    Examples: -

    -(rotate-byte 3 (byte 32 0) 3) => 24
    -(rotate-byte 3 (byte 5 5) 3) => 3
    -(rotate-byte 6 (byte 8 0) -3) => -129
    -

    Side Effects: None.

    Affected By: None.

    Exceptional Situations: None.

    See Also:

    byte, dpb, ldb

    Reference implementation: -

    -(defun rotate-byte (count bytespec integer)
    -  (let ((size (byte-size bytespec)))
    -    (when (= size 0)
    -      (return-from rotate-byte integer))
    -    (let ((count (mod count size)))
    -      (labels ((rotate-byte-from-0 (count size integer)
    -                 (let ((bytespec (byte size 0)))
    -                   (if (> count 0)
    -                       (logior (ldb bytespec (ash integer count))
    -                               (ldb bytespec (ash integer (- count size))))
    -                       (logior (ldb bytespec (ash integer count))
    -                               (ldb bytespec (ash integer (+ count size))))))))
    -        (dpb (rotate-byte-from-0 count size (ldb bytespec integer))
    -             bytespec
    -             integer)))))
    -
    -

    [Peter Scott] SBCL's SB-ROTATE-BYTE contrib module implements this efficiently.


    -Document
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/RSS.html b/clones/lisp/www.cliki.net/RSS.html deleted file mode 100644 index 1441ce38..00000000 --- a/clones/lisp/www.cliki.net/RSS.html +++ /dev/null @@ -1,73 +0,0 @@ - - - - - CLiki: RSS - - - - - - - -
    RSS
    alimenta is a RSS/Atom parsing and generating library. The library implements most of the elements in the RSS and Atom specs and handles feed discovery, feed type detection and feed pulling as well as feed generation. It is also fairly easy to extend by subclassing the appropriate classes and specializing the generic functions %to-feed, make-item, %get-items and generate-xml.

    Other RSS libraries

      -
    • -cl-rss - - This package provides a Common Lisp library for fetching and parsing Remote Site Summary data via HTTP -
    • -
    • -cl-rss-gen - - cl-rss-gen is a tiny Common Lisp library that generates RSS (RDF Site Summary) -
    • -
    • -RSSParser - - A Web-to-RSS parser in Common Lisp -
    • -
    • -trivial-feed - - Parse syndication feeds such as RSS and ATOM to a canonical form -
    • -
    • -xml-emitter - - Often, programs have to generate XML output -
    • -


    -protocol
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/RSSParser.html b/clones/lisp/www.cliki.net/RSSParser.html deleted file mode 100644 index 8dab65ec..00000000 --- a/clones/lisp/www.cliki.net/RSSParser.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: RSSParser - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Raffaele Arecchi.html b/clones/lisp/www.cliki.net/Raffaele Arecchi.html deleted file mode 100644 index 141e2c09..00000000 --- a/clones/lisp/www.cliki.net/Raffaele Arecchi.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Raffaele Arecchi - - - - - - - -
    Raffaele Arecchi
    I am an experienced programmer living in Dublin, Ireland.

    Person

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Rahul Jain.html b/clones/lisp/www.cliki.net/Rahul Jain.html deleted file mode 100644 index 5e69c264..00000000 --- a/clones/lisp/www.cliki.net/Rahul Jain.html +++ /dev/null @@ -1,57 +0,0 @@ - - - - - CLiki: Rahul Jain - - - - - - - -
    Rahul Jain
    Sometimes a Person. also known as rahul on the #lisp IRC channel.

    Has websites at: -

    -Is a weirdo, if it wasn't obvious already.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Ralph Möritz.html b/clones/lisp/www.cliki.net/Ralph Möritz.html deleted file mode 100644 index 64db0304..00000000 --- a/clones/lisp/www.cliki.net/Ralph Möritz.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Ralph Möritz - - - - - - - -
    Ralph Möritz
    Person, father, husband, chess novice, occasional Lisp hacker. I have a blog and a few small projects on GitHub.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Reactive.html b/clones/lisp/www.cliki.net/Reactive.html deleted file mode 100644 index db43f9fa..00000000 --- a/clones/lisp/www.cliki.net/Reactive.html +++ /dev/null @@ -1,60 +0,0 @@ - - - - - CLiki: Reactive - - - - - - - -
    Reactive
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Red-Black-trees.html b/clones/lisp/www.cliki.net/Red-Black-trees.html deleted file mode 100644 index 87476b38..00000000 --- a/clones/lisp/www.cliki.net/Red-Black-trees.html +++ /dev/null @@ -1,56 +0,0 @@ - - - - - CLiki: Red-Black-trees - - - - - - - -
    Red-Black-trees
    Red-Black-trees is an implementation of red-black-trees (a data structure). It comprises the following functions

    • Insertion of an item

    • -
    • Finding an item by key

    • -
    • Deleting a node

    • -

    It can be downloaded as *Program B* on -this page.

    There is a source repository with some small fixes available at: https://github.com/jwiegley/red-black -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/RegEx.html b/clones/lisp/www.cliki.net/RegEx.html deleted file mode 100644 index 93122874..00000000 --- a/clones/lisp/www.cliki.net/RegEx.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Regex - - - - - - - -
    Regex
    Regex is a full-featured regular expression compiler and matching engine written by Michael Parker. If you're one of those who believe that Lisp is slow, note that this regex engine is roughly 5x-20x times faster than the GNU regex matcher (which is obviously written in C).

    Homepage: at foldr.org

    Repository: GitHub

    License: BSD

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Regex.html b/clones/lisp/www.cliki.net/Regex.html deleted file mode 100644 index 93122874..00000000 --- a/clones/lisp/www.cliki.net/Regex.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Regex - - - - - - - -
    Regex
    Regex is a full-featured regular expression compiler and matching engine written by Michael Parker. If you're one of those who believe that Lisp is slow, note that this regex engine is roughly 5x-20x times faster than the GNU regex matcher (which is obviously written in C).

    Homepage: at foldr.org

    Repository: GitHub

    License: BSD

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Regional Lisp groups.html b/clones/lisp/www.cliki.net/Regional Lisp groups.html deleted file mode 100644 index 889861fd..00000000 --- a/clones/lisp/www.cliki.net/Regional Lisp groups.html +++ /dev/null @@ -1,66 +0,0 @@ - - - - - CLiki: Regional Lisp groups - - - - - - - -
    Regional Lisp groups

    Hungary

    - -

    Poland

    -
      -
    • #lisp-pl on Freenode -
    • -
    • (kraklisp) - a Common Lisp group with meetings Friday, 16:00 -
    • -
    • Mailing list: lisp-pl@listy.slimak.matinf.uj.edu.pl -
    • -
    -
    -Community
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Regular Expression.html b/clones/lisp/www.cliki.net/Regular Expression.html deleted file mode 100644 index ebdcc6fe..00000000 --- a/clones/lisp/www.cliki.net/Regular Expression.html +++ /dev/null @@ -1,96 +0,0 @@ - - - - - CLiki: Regular Expression - - - - - - - -
    Regular Expression
    Regular Expression (regexp) libraries

      -
    • -cl-irregsexp - - A fast regular expression library with a lispy alternative to traditional syntax for text matching -
    • -
    • -cl-ppcre - - A portable, Perl-compatible regular expression library by Edi Weitz -
    • -
    • -cl-string-match - - Provides substring (subsequence) search and text processing algorithms implementations including regular expression, prefix/suffix tree data structures, etc -
    • -
    • -lol-re - - Tiny wrapper around CL-PPCRE, inspired by #~M and #~S read-macro from Let Over Lambda, making use of regular expressions more perly -
    • -
    • -pregexp - - Portable Regular Expressions for Scheme and Common Lisp -
    • -
    • -re - - The re package is a small, portable, lightweight, and quick, regular expression library for Common Lisp -
    • -
    • -recursive-regex - - A library to extend CL-PPCRE to make regular expression named capture groups dispatch to custom matcher functions and named-expression patterns -
    • -
    • -Regex - - Regex is a full-featured regular expression compiler and matching engine written by Michael Parker -
    • -
    • -regex (library by asciian) - - A relatively incomplete (as of Jan 2018) relatively concise backtracking POSIX compatible regular expression library -
    • -
    • -terse-ppcre - - TERSE-PPCRE aims to make manipulating CL-PPCRE regular expression parse trees easier and more succinct -
    • -
    • -The Regex Coach - - A graphical Common Lisp application which can be used to experiment with (Perl-compatible) regular expressions interactively -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Regular expression.html b/clones/lisp/www.cliki.net/Regular expression.html deleted file mode 100644 index ebdcc6fe..00000000 --- a/clones/lisp/www.cliki.net/Regular expression.html +++ /dev/null @@ -1,96 +0,0 @@ - - - - - CLiki: Regular Expression - - - - - - - -
    Regular Expression
    Regular Expression (regexp) libraries

      -
    • -cl-irregsexp - - A fast regular expression library with a lispy alternative to traditional syntax for text matching -
    • -
    • -cl-ppcre - - A portable, Perl-compatible regular expression library by Edi Weitz -
    • -
    • -cl-string-match - - Provides substring (subsequence) search and text processing algorithms implementations including regular expression, prefix/suffix tree data structures, etc -
    • -
    • -lol-re - - Tiny wrapper around CL-PPCRE, inspired by #~M and #~S read-macro from Let Over Lambda, making use of regular expressions more perly -
    • -
    • -pregexp - - Portable Regular Expressions for Scheme and Common Lisp -
    • -
    • -re - - The re package is a small, portable, lightweight, and quick, regular expression library for Common Lisp -
    • -
    • -recursive-regex - - A library to extend CL-PPCRE to make regular expression named capture groups dispatch to custom matcher functions and named-expression patterns -
    • -
    • -Regex - - Regex is a full-featured regular expression compiler and matching engine written by Michael Parker -
    • -
    • -regex (library by asciian) - - A relatively incomplete (as of Jan 2018) relatively concise backtracking POSIX compatible regular expression library -
    • -
    • -terse-ppcre - - TERSE-PPCRE aims to make manipulating CL-PPCRE regular expression parse trees easier and more succinct -
    • -
    • -The Regex Coach - - A graphical Common Lisp application which can be used to experiment with (Perl-compatible) regular expressions interactively -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Reini Urban.html b/clones/lisp/www.cliki.net/Reini Urban.html deleted file mode 100644 index 73282d9b..00000000 --- a/clones/lisp/www.cliki.net/Reini Urban.html +++ /dev/null @@ -1,62 +0,0 @@ - - - - - CLiki: Reini Urban - - - - - - - -
    Reini Urban


    -Ran the AcadWiki.

    Does some Common Lisp on Corman Lisp and clisp (Win32), formerly mostly AutoLisp. Does also maintain phpwiki and a lot of cygwin (e.g. clisp, scsh, postgresql, ...) and some perl modules.
    -Ran a constantly swapping cl-http webserver on CMUCL on a 386dx with 8MB RAM.

    Some people linked to his ffi survey.

    He is no Person in the CLiki Content sense.

    His response to The Road to Lisp Survey:

    When did you first try Lisp seriously, and which Lisp family member was it?
    -Autocad AutoLISP in 1984 or so.

    What led you to try Lisp?
    -Autocad AutoLISP

    Where did your road originate?

    Basic, Pascal, C and Prolog.

    How far have you gotten in your study of Lisp?

    Master in AutoLisp (faq author and stdlib maintainer), for the others just lurker. -Wrote some (X)Emacs modules. -Read and know all books, did some patches for Corman Lisp. -Installed all other lisps.

    What do you think of Lisp so far?

    Truly the best language, but the libraries are hard to install and -get used to. I still work with perl, php and C most of my time.


    -Switch Date 1980s -
    -RtL Autocad Autolisp | RtL Emacs Elisp
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ReiniUrban.html b/clones/lisp/www.cliki.net/ReiniUrban.html deleted file mode 100644 index ba156868..00000000 --- a/clones/lisp/www.cliki.net/ReiniUrban.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: ReiniUrban - - - - - - - -
    ReiniUrban
    I used to have a homepage, but after a serious harddisc crash I don't bother to update it anymore

    I'm a Person.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Relational.html b/clones/lisp/www.cliki.net/Relational.html deleted file mode 100644 index e8a0e334..00000000 --- a/clones/lisp/www.cliki.net/Relational.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: Relational - - - - - - - -
    Relational
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Repo.html b/clones/lisp/www.cliki.net/Repo.html deleted file mode 100644 index 9a1d031e..00000000 --- a/clones/lisp/www.cliki.net/Repo.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Repo - - - - - - - -
    Repo
    repo is a Common Lisp package manager building from sources.

    https://github.com/thodg/repo

    repo supports git and github

    Amazingly most projects are stable through master git branches.

    Maintainers : thodg.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Reticule.html b/clones/lisp/www.cliki.net/Reticule.html deleted file mode 100644 index 6b6c04ad..00000000 --- a/clones/lisp/www.cliki.net/Reticule.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Reticule - - - - - - - -
    Reticule
    Reticule is an NNTP server written in Common Lisp by Lars Magne Ingebrigtsen. It is implemented using CMUCL and will eventually become the news server to be used by Gmane.


    -obsolete, long untouched but of historical interest
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Riastradh's Lisp Style Rules [for Common Lisp].html b/clones/lisp/www.cliki.net/Riastradh's Lisp Style Rules [for Common Lisp].html deleted file mode 100644 index 3e7034d1..00000000 --- a/clones/lisp/www.cliki.net/Riastradh's Lisp Style Rules [for Common Lisp].html +++ /dev/null @@ -1,588 +0,0 @@ - - - - - CLiki: Riastradh's Lisp Style Rules [for Common Lisp] - - - - - - - -
    Riastradh's Lisp Style Rules [for Common Lisp]
    Taylor R. Campbell wrote a style guide for Scheme code (link). The Common Lisp-relevant sections are reposted below:

    Copyright (C) 2007 Taylor R. Campbell
    -All rights reserved.
    -Copies and quotations of this document are freely permitted, provided
    -that this copyright notice is preserved in copies and that the author
    -is cited in quotations.

    *** Spacing

    If any text precedes an opening bracket or follows a closing bracket, -separate that text from that bracket with a space. Conversely, leave -no space after an opening bracket and before following text, or after -preceding text and before a closing bracket.

    -  Unacceptable:
    -
    -    (foo(bar baz)quux)
    -    (foo ( bar baz ) quux)
    -
    -  Acceptable:
    -
    -    (foo (bar baz) quux)
    -
    - Rationale: This is the same spacing found in standard typography of - European text. It is more aesthetically pleasing.

    *** Line Separation

    Absolutely do *not* place closing brackets on their own lines. -

    -  Unacceptable:
    -
    -    (define (factorial x)
    -      (if (< x 2)
    -          1
    -          (* x (factorial (- x 1
    -                          )
    -               )
    -          )
    -      )
    -    )
    -
    -  Acceptable:
    -
    -    (define (factorial x)
    -      (if (< x 2)
    -          1
    -          (* x (factorial (- x 1)))))
    -
    - Rationale: The parentheses grow lonely if their closing brackets are - all kept separated and segregated.

    **** Exceptions to the Above Rule Concerning Line Separation

    Do not heed this section unless you know what you are doing. Its title -does *not* make the unacceptable example above acceptable.

    When commenting out fragments of expressions with line comments, it may -be necessary to break a line before a sequence of closing brackets: -

    -  (define (foo bar)
    -    (list (frob bar)
    -          (zork bar)
    -          ;; (zap bar)
    -          ))
    -
    -This is acceptable, but there are other alternatives. In Common Lisp, -one can use the read-time conditional syntax, `#+' or `#-', with a -feature conditional that is guaranteed to be false or true -- `#+(OR)' -or `#-(AND)' --; for example, -
    -  (define (foo bar)
    -    (list (frob bar)
    -          (zork bar)
    -          #+(or) (zap bar)))
    -
    -Finally, it is acceptable to break a line immediately after an opening -bracket and immediately before a closing bracket for very long lists, -especially in files under version control. This eases the maintenance -of the lists and clarifies version diffs. Example: -
    -  (define colour-names         ;Add more colour names to this list!
    -    '(
    -      blue
    -      cerulean
    -      green
    -      magenta
    -      purple
    -      red
    -      scarlet
    -      turquoise
    -      ))
    -
    -** Indentation and Alignment

    The operator of any form, i.e. the first subform following the opening -round bracket, determines the rules for indenting or aligning the -remaining forms. Many names in this position indicate special -alignment or indentation rules; these are special operators, macros, or -procedures that have certain parameter structures.

    If the first subform is a non-special name, however, then if the second -subform is on the same line, align the starting column of all following -subforms with that of the second subform. If the second subform is on -the following line, align its starting column with that of the first -subform, and do the same for all remaining subforms.

    In general, Emacs will indent Lisp code correctly. Run `C-M-q' -(indent-sexp) on any code to ensure that it is indented correctly, and -configure Emacs so that any non-standard forms are indented -appropriately. -

    -  Unacceptable:
    -
    -    (+ (sqrt -1)
    -      (* x y)
    -      (+ p q))
    -
    -    (+
    -       (sqrt -1)
    -       (* x y)
    -       (+ p q))
    -
    -  Acceptable:
    -
    -    (+ (sqrt -1)
    -       (* x y)
    -       (+ p q))
    -
    -    (+
    -     (sqrt -1)
    -     (* x y)
    -     (+ p q))
    -
    - Rationale: The columnar alignment allows the reader to follow the - operands of any operation straightforwardly, simply by scanning - downward or upward to match a common column. Indentation dictates - structure; confusing indentation is a burden on the reader who wishes - to derive structure without matching parentheses manually.

    *** Non-Symbol Indentation and Alignment

    The above rules are not exhaustive; some cases may arise with strange -data in operator positions.

    **** Lists

    Unfortunately, style varies here from person to person and from editor -to editor. Here are some examples of possible ways to indent lists -whose operators are lists: -

    -  Questionable:
    -
    -    ((car x)                            ;Requires hand indentation.
    -       (cdr x)
    -       foo)
    -
    -    ((car x) (cdr x)                    ;GNU Emacs
    -     foo)
    -
    -  Preferable:
    -
    -    ((car x)                            ;Any Emacs
    -     (cdr x)
    -     foo)
    -
    -    ((car x) (cdr x)                    ;Edwin
    -             foo)
    -
    - Rationale: The operands should be aligned, as if it were any other - procedure call with a name in the operator position; anything other - than this is confusing because it gives some operands greater visual - distinction, allowing others to hide from the viewer's sight. For - example, the questionable indentation -
    -    ((car x) (cdr x)
    -     foo)
    -
    - can make it hard to see that FOO and (CDR X) are both operands here - at the same level. However, GNU Emacs will generate that indentation - by default. (Edwin will not.)

    **** Strings

    If the form in question is meant to be simply a list of literal data, -all of the subforms should be aligned to the same column, irrespective -of the first subform. -

    -  Unacceptable:
    -
    -    ("foo" "bar" "baz" "quux" "zot"
    -           "mumble" "frotz" "gargle" "mumph")
    -
    -  Questionable, but acceptable:
    -
    -    (3 1 4 1 5 9 2 6 5 3 5 8 9 7 9 3 2 3 8 4 6 2 6 4
    -       3 3 8 3 2 7 9 5 0 2 8 8 4 1 9 7 1 6 9 3 9 9 3)
    -
    -  Acceptable:
    -
    -    ("foo" "bar" "baz" "quux" "zot"
    -     "mumble" "frotz" "gargle" "mumph")
    -
    -    ("foo"
    -     "bar" "baz" "quux" "zot"
    -     "mumble" "frotz" "gargle" "mumph")
    -
    - Rationale: Seldom is the first subform distinguished for any reason, - if it is a literal; usually in this case it indicates pure data, not - code. Some editors and pretty-printers, however, will indent - unacceptably in the example given unless the second subform is on the - next line anyway, which is why the last way to write the fragment is - usually best.

    ** Names

    Naming is subtle and elusive. Bizarrely, it is simultaneously -insignificant, because an object is independent of and unaffected by -the many names by which we refer to it, and also of supreme -importance, because it is what programming -- and, indeed, almost -everything that we humans deal with -- is all about. A full -discussion of the concept of name lies far outside the scope of this -document, and could surely fill not even a book but a library.

    Symbolic names are written with English words separated by hyphens. -Scheme and Common Lisp both fold the case of names in programs; -consequently, camel case is frowned upon, and not merely because it is -ugly. Underscores are unacceptable separators except for names that -were derived directly from a foreign language without translation. -

    -  Unacceptable:
    -
    -    XMLHttpRequest
    -    foreach
    -    append_map
    -
    -  Acceptable:
    -
    -    xml-http-request
    -    for-each
    -    append-map
    -
    -*** Funny Characters

    There are several different conventions in different Lisps for the use -of non-alphanumeric characters in names.

    **** Scheme

    ***** Question Marks: Predicates

    Affix a question mark to the end of a name for a procedure whose -purpose is to ask a question of an object and to yield a boolean -answer. Such procedures are called `predicates'. Do not use a -question mark if the procedure may return any object other than a -boolean.

    Examples: pair? procedure? proper-list? - Non-examples: member assoc any every

    Pronounce the question mark as if it were the isolated letter `p'. For -example, to read the fragment (PAIR? OBJECT) aloud, say: `pair-pee -object.'

    ***** Exclamation Marks: Destructive Operations

    Affix an exclamation mark to the end of a name for a procedure (or -macro) whose primary purpose is to modify an object. Such procedures -are called `destructive'.

    Examples: set-car! append!

    Avoid using the exclamation mark willy nilly for just *any* procedure -whose operation involves any kind of mutation or side effect; instead, -use the exclamation mark to identify procedures that exist *solely* for -the purpose of destructive update (e.g., SET-CAR!), or to distinguish a -destructive, or potentially destructive (in the case of linear-update -operations such as APPEND!), variant of a procedure of which there also -exists a purely functional variant (e.g., APPEND).

    Pronounce the exclamation mark as `bang'. For example, to read the -fragment (APPEND! LIST TAIL) aloud, say: `append-bang list tail.'

    ***** Asterisks: Variants, Internal Routines, Mutable Globals

    Affix an asterisk to the end of a name to make a variation on a theme -of the original name.

    Example: let -> let*

    Prefer a meaningful name over an asterisk; the asterisk does not -explain what variation on the theme the name means.

    Affix an asterisk to the beginning of a name to make an internal -routine for that name. Again, prefer a meaningful name over an -asterisk.

    Affix asterisks to the beginning and end of a globally mutable -variable. This allows the reader of the program to recognize very -easily that it is badly written!

    ***** `WITH-' and `CALL-WITH-': Dynamic State and Cleanup

    Prefix `WITH-' to any procedure that establishes dynamic state and -calls a nullary procedure, which should be the last (required) -argument. The dynamic state should be established for the extent of -the nullary procedure, and should be returned to its original state -after that procedure returns.

    Examples: with-input-from-file with-output-to-file

    Exception: Some systems provide a procedure (WITH-CONTINUATION - ), which calls in the given - continuation, using that continuation's dynamic state. If - returns, it will return to , not to the continuation - of the call to WITH-CONTINUATION. This is acceptable, although the - name WITHIN-CONTINUATION (which one finds in MIT Scheme) is better.

    Prefix `CALL-WITH-' to any procedure that calls a procedure, which -should be its last argument, with some arguments, and is either somehow -dependent upon the dynamic state or continuation of the program, or -will perform some action to clean up data after the procedure argument -returns. Generally, `CALL-WITH-' procedures should return the values -that the procedure argument returns, after performing the cleaning -action.

    Examples:

    - CALL-WITH-INPUT-FILE and CALL-WITH-OUTPUT-FILE both accept a - pathname and a procedure as an argument, open that pathname (for - input or output, respectively), and call the procedure with one - argument, a port corresponding with the file named by the given - pathname. After the procedure returns, CALL-WITH-INPUT-FILE and - CALL-WITH-OUTPUT-FILE close the file that they opened, and return - whatever the procedure returned.

    - CALL-WITH-CURRENT-CONTINUATION is dependent on the continuation - with which it was called, and passes as an argument an escape - procedure corresponding with that continuation.

    - CALL-WITH-OUTPUT-STRING, a common but non-standard procedure - definable in terms of OPEN-OUTPUT-STRING and GET-OUTPUT-STRING from - SRFI 6 (Basic String Ports), calls its procedure argument with an - output port, and returns a string of all of the output written to - that port. Note that it does not return what the procedure - argument returns, which is an exception to the above rule.

    Generally, the distinction between these two classes of procedures is -that `CALL-WITH-...' procedures should not establish fresh dynamic -state and instead pass explicit arguments to their procedure arguments, -whereas `WITH-...' should do the opposite and establish dynamic state -while passing zero arguments to their procedure arguments.

    ** Comments

    Write heading comments with at least four semicolons; see also the -section below titled `Outline Headings'.

    Write top-level comments with three semicolons.

    Write comments on a particular fragment of code before that fragment -and aligned with it, using two semicolons.

    Write margin comments with one semicolon.

    The only comments in which omission of a space between the semicolon -and the text is acceptable are margin comments. -

    -  Examples:
    -
    -    ;;;; Frob Grovel
    -
    -    ;;; This section of code has some important implications:
    -    ;;;   1. Foo.
    -    ;;;   2. Bar.
    -    ;;;   3. Baz.
    -
    -    (define (fnord zarquon)
    -      ;; If zob, then veeblefitz.
    -      (quux zot
    -            mumble             ;Zibblefrotz.
    -            frotz))
    -
    -** General Layout

    This section contains rules that the author has found generally helpful -in keeping his programs clean and presentable, though they are not -especially philosophically interesting.

    Contained in the rationale for some of the following rules are -references to historical limitations of terminals and printers, which -are now considered aging cruft of no further relevance to today's -computers. Such references are made only to explain specific measures -chosen for some of the rules, such as a limit of eighty columns per -line, or sixty-six lines per page. There is a real reason for each of -the rules, and this real reason is not intrinsically related to the -historical measures, which are mentioned only for the sake of -providing some arbitrary measure for the limit.

    *** File Length

    If a file exceeds five hundred twelve lines, begin to consider -splitting it into multiple files. Do not write program files that -exceed one thousand twenty-four lines. Write a concise but -descriptive title at the top of each file, and include no content in -the file that is unrelated to its title.

    Rationale: Files that are any larger should generally be factored - into smaller parts. (One thousand twenty-four is a nicer number than - one thousand.) Identifying the purpose of the file helps to break it - into parts if necessary and to ensure that nothing unrelated is - included accidentally.

    *** Top-Level Form Length

    Do not write top-level forms that exceed twenty-one lines, except for -top-level forms that serve only the purpose of listing large sets of -data. If a procedure exceeds this length, split it apart and give -names to its parts. Avoid names formed simply by appending a number -to the original procedure's name; give meaningful names to the parts.

    Rationale: Top-level forms, especially procedure definitions, that - exceed this length usually combine too many concepts under one name. - Readers of the code are likely to more easily understand the code if - it is composed of separately named parts. Simply appending a number - to the original procedure's name can help only the letter of the - rule, not the spirit, however, even if the procedure was taken from a - standard algorithm description. Using comments to mark the code with - its corresponding place in the algorithm's description is acceptable, - but the algorithm should be split up in meaningful fragments anyway.

    Rationale for the number twenty-one: Twenty-one lines, at a maximum - of eighty columns per line, fits in a GNU Emacs instance running in a - 24x80 terminal. Although the terminal may have twenty-four lines, - three of the lines are occupied by GNU Emacs: one for the menu bar - (which the author of this guide never uses, but which occupies a line - nevertheless in a vanilla GNU Emacs installation), one for the mode - line, and one for the minibuffer's window. The writer of some code - may not be limited to such a terminal, but the author of this style - guide often finds it helpful to have at least four such terminals or - Emacs windows open simultaneously, spread across a twelve-inch laptop - screen, to view multiple code fragments.

    *** Line Length

    Do not write lines that exceed eighty columns, or if possible -seventy-two.

    Rationale: Following multiple lines that span more columns is - difficult for humans, who must remember the line of focus and scan - right to left from the end of the previous line to the beginning of - the next line; the more columns there are, the harder this is to do. - Sticking to a fixed limit helps to improve readability.

    Rationale for the numbers eighty and seventy-two: It is true that we - have very wide screens these days, and we are no longer limited to - eighty-column terminals; however, we ought to exploit our wide - screens not by writing long lines, but by viewing multiple fragments - of code in parallel, something that the author of this guide does - very often. Seventy-two columns leave room for several nested layers - of quotation in email messages before the code reaches eighty - columns. Also, a fixed column limit yields nicer printed output, - especially in conjunction with pagination; see the section - `Pagination' below.

    *** Blank Lines

    Separate each adjacent top-level form with a single blank line (i.e. -two line breaks). If two blank lines seem more appropriate, break the -page instead. Do not place blank lines in the middle of a procedure -body, except to separate internal definitions; if there is a blank -line for any other reason, split the top-level form up into multiple -ones.

    Rationale: More than one blank line is distracting and sloppy. If - the two concepts that are separated by multiple blank lines are - really so distinct that such a wide separator is warranted, then - they are probably better placed on separate pages anyway; see the - next section, `Pagination'.

    *** Pagination

    Separate each file into pages of no more than sixty-six lines and no -fewer than forty lines with form feeds (ASCII #x0C, or ^L, written in -Emacs with `C-q C-l'), on either side of which is a single line break -(but not a blank line).

    Rationale: Keeping distinct concepts laid out on separate pages - helps to keep them straight. This is helpful not only for the - writer of the code, but also for the reader. It also allows readers - of the code to print it onto paper without fiddling with printer - settings to permit pages of more than sixty-six lines (which is the - default number for many printers), and pagination also makes the - code easier to navigate in Emacs, with the `C-x [' and `C-x ]' keys - (`backward-page' and `forward-page', respectively). To avoid - excessively small increments of page-by-page navigation, and to - avoid wasting paper, each page should generally exceed forty lines.

    `C-x l' in Emacs will report the number of lines in the page on which - the point lies; this is useful for finding where pagination is - necessary.

    *** Outline Headings

    Use Emacs's Outline Mode to give titles to the pages, and if -appropriate a hierarchical structure. Set `outline-regexp' (or -`outline-pattern' in Edwin) to "\f\n;;;;+ ", so that each form feed -followed by an line break followed by at least four semicolons and a -space indicates an outline heading to Emacs. Use four semicolons for -the highest level of headings in the hierarchy, and one more for each -successively nested level of hierarchy.

    Rationale: Not only does this clarify the organization of the code, - but readers of the code can then navigate the code's structure with - Outline Mode commands such as `C-c C-f', `C-c C-b', `C-c C-u', and - `C-c C-d' (forward, backward, up, down, respectively, headings).

    *** Dependencies

    When writing a file or module, minimize its dependencies. If there are -too many dependencies, consider breaking the module up into several -parts, and writing another module that is the sum of the parts and that -depends only on the parts, not their dependencies.

    Rationale: A fragment of a program with fewer dependencies is less - of a burden on the reader's cognition. The reader can more easily - understand the fragment in isolation; humans are very good at local - analyses, and terrible at global ones.

    ** Naming

    This section requires an elaborate philosophical discussion which the -author is too ill to have the energy to write at this moment.

    Compose concise but meaningful names. Do not cheat by abbreviating -words or using contractions.

    Rationale: Abbreviating words in names does not make them shorter; - it only makes them occupy less screen space. The reader still must - understand the whole long name. This does not mean, however, that - names should necessarily be long; they should be descriptive. Some - long names are more descriptive than some short names, but there are - also descriptive names that are not long and long names that are not - descriptive. Here is an example of a long name that is not - descriptive, from SchMUSE, a multi-user simulation environment - written in MIT Scheme:

    frisk-descriptor-recursive-subexpr-descender-for-frisk-descr-env

    Not only is it long (sixty-four characters) and completely - impenetrable, but halfway through its author decided to abbreviate - some words as well!

    Do not write single-letter variable names. Give local variables -meaningful names composed from complete English words.

    Rationale: It is tempting to reason that local variables are - invisible to other code, so it is OK to be messy with their names. - This is faulty reasoning: although the next person to come along and - use a library may not care about anything but the top-level - definitions that it exports, this is not the only audience of the - code. Someone will also want to read the code later on, and if it is - full of impenetrably terse variable names without meaning, that - someone will have a hard time reading the code.

    Give names to intermediate values where their expressions do not -adequately describe them.

    Rationale: An `expression' is a term that expresses some value. - Although a machine needs no higher meaning for this value, and - although it should be written to be sufficiently clear for a human to - understand what it means, the expression might mean something more - than just what it says where it is used. Consequently, it is helpful - for humans to see names given to expressions.

    Example: A hash table HASH-TABLE maps foos to bars; (HASH-TABLE/GET - HASH-TABLE FOO #F) expresses the datum that HASH-TABLE maps FOO to, - but that expression gives the reader no hint of any information - concerning that datum. (LET ((BAR (HASH-TABLE/GET FOO #F))) ...) - gives a helpful name for the reader to understand the code without - having to find the definition of HASH-TABLE.

    Index variables such as i and j, or variables such as A and D naming - the car and cdr of a pair, are acceptable only if they are completely - unambiguous in the scope. For example,

        (do ((i 0 (+ i 1)))
    -        ((= i (vector-length vector)))
    -      (frobnicate (vector-ref vector i)))

    is acceptable because the scope of i is very clearly limited to a - single vector. However, if more vectors are involved, using more - index variables such as j and k will obscure the program further.

    Avoid functional combinators, or, worse, the point-free (or -`point-less') style of code that is popular in the Haskell world. At -most, use function composition only where the composition of functions -is the crux of the idea being expressed, rather than simply a procedure -that happens to be a composition of two others.

    Rationale: Tempting as it may be to recognize patterns that can be - structured as combinations of functional combinators -- say, `compose - this procedure with the projection of the second argument of that - other one', or (COMPOSE FOO (PROJECT 2 BAR)) --, the reader of the - code must subsequently examine the elaborate structure that has been - built up to obscure the underlying purpose. The previous fragment - could have been written (LAMBDA (A B) (FOO (BAR B))), which is in - fact shorter, and which tells the reader directly what argument is - being passed on to what, and what argument is being ignored, without - forcing the reader to search for the definitions of FOO and BAR or - the call site of the final composition. The explicit fragment - contains substantially more information when intermediate values are - named, which is very helpful for understanding it and especially for - modifying it later on.

    The screen space that can be potentially saved by using functional - combinators is made up for by the cognitive effort on the part of the - reader. The reader should not be asked to search globally for usage - sites in order to understand a local fragment. Only if the structure - of the composition really is central to the point of the narrative - should it be written as such. For example, in a symbolic integrator - or differentiator, composition is an important concept, but in most - code the structure of the composition is completely irrelevant to the - real point of the code.

    If a parameter is ignored, give it a meaningful name nevertheless and -say that it is ignored; do not simply call it `ignored'.

    In Common Lisp, variables can be ignored with (DECLARE (IGNORE ...)). -Some Scheme systems have similar declarations, but the portable way to -ignore variables is just to write them in a command context, where -their values will be discarded, preferably with a comment indicating -this purpose:

      (define (foo x y z)
    -    x z                         ;ignore
    -    (frobnitz y))

    Rationale: As with using functional combinators to hide names, - avoiding meaningful names for ignored parameters only obscures the - purpose of the program. It is helpful for a reader to understand - what parameters a procedure is independent of, or if someone wishes - to change the procedure later on, it is helpful to know what other - parameters are available. If the ignored parameters were named - meaninglessly, then these people would be forced to search for call - sites of the procedure in order to get a rough idea of what - parameters might be passed here.

    When naming top-level bindings, assume namespace partitions unless in a -context where they are certain to be absent. Do not write explicit -namespace prefixes, such as FOO:BAR for an operation BAR in a module -FOO, unless the names will be used in a context known not to have any -kind of namespace partitions.

    Rationale: Explicit namespace prefixes are ugly, and lengthen names - without adding much semantic content. Common Lisp has its package - system to separate the namespaces of symbols; most Schemes have - mechanisms to do so as well, even if the RnRS do not specify any. It - is better to write clear names which can be disambiguated if - necessary, rather than to write names that assume some kind of - disambiguation to be necessary to begin with. Furthermore, explicit - namespace prefixes are inadequate to cover name clashes anyway: - someone else might choose the same namespace prefix. Relegating this - issue to a module system removes it from the content of the program, - where it is uninteresting.

    ** Comments

    Write comments only where the code is incapable of explaining itself. -Prefer self-explanatory code over explanatory comments. Avoid -`literate programming' like the plague.

    Rationale: If the code is often incapable of explaining itself, then - perhaps it should be written in a more expressive language. This may - mean using a different programming language altogether, or, since we - are talking about Lisp, it may mean simply building a combinator - language or a macro language for the purpose. `Literate programming' - is the logical conclusion of languages incapable of explaining - themselves; it is a direct concession of the inexpressiveness of the - computer language implementing the program, to the extent that the - only way a human can understand the program is by having it rewritten - in a human language.

    Do not write interface documentation in the comments for the -implementation of the interface. Explain the interface at the top of -the file if it is a single-file library, or put that documentation in -another file altogether. (See the `Documentation' section below if the -interface documentation comments grow too large for a file.)

    Rationale: A reader who is interested only in the interface really - should not need to read through the implementation to pick out its - interface; by putting the interface documentation at the top, not - only is such a reader's task of identifying the interface made - easier, but the implementation code can be more liberally commented - without fear of distracting this reader. To a reader who is - interested in the implementation as well, the interface is still - useful in order to understand what concepts the implementation is - implementing.

    Example:

    In this example of a single-file library implementing the skip list - data structure, the first page explains the purpose and dependencies - of the file (which are useful for anyone who intends to use it, even - though dependencies are really implementation details), and the next - few pages explain the usage of skip lists as implemented in that - file. On the first page of implementation, `Skip List Structure', - there are some comments of interest only to a reader who wishes to - understand the implementation; the same goes for the rest of the - file, none of which must a reader read whose interest is only in the - usage of the library.

    Avoid block comments (i.e. #| ... |#). Use S-expression comments (`#;' -in Scheme, with the expression to comment on the next line; `#+(OR)' or -`#-(AND)' in Common Lisp) to comment out whole expressions. Use blocks -of line comments for text.

    Rationale: Editor support for block comments is weak, because it - requires keeping a detailed intermediate parse state of the whole - buffer, which most Emacsen do not do. At the very least, #|| ... ||# - is better, because most Emacsen will see vertical bars as symbol - delimiters, and lose trying to read a very, very long symbol, if they - try to parse #| ... |#, whereas they will just see two empty symbols - and otherwise innocuous text between them if they try to parse #|| - ... ||#. In any case, in Emacs, `M-x comment-region RET', or `M-;' - (comment-dwim), is trivial to type.

    The only standard comments in Scheme are line comments. There are - SRFIs for block comments and S-expression comments, but support for - them varies from system to system. Expression comments are not hard - for editors to deal with because it is safe not to deal with them at - all; however, in Scheme S-expression comments, which are written by - prefixing an expression with `#;', the expression to be commented - should be placed on the next line. This is because editors that do - not deal with them at all may see the semicolon as the start of a - line comment, which will throw them off. Expression comments in - Common Lisp, however, are always safe.

    In Common Lisp, the two read-time conditionals that are guaranteed to - ignore any form following them are `#+(OR)' and `#-(AND)'. `#+NIL' - is sometimes used in their stead, but, while it may appear to be an - obviously false conditional, it actually is not. The feature - expressions are read in the KEYWORD package, so NIL is read not as - CL:NIL, i.e. the boolean false value, but as :NIL, a keyword symbol - whose name happens to be `NIL'. Not only is it not read as the - boolean false value, but it has historically been used to indicate a - feature that might be enabled -- in JonL White's New Implementation - of Lisp! However, the New Implementation of Lisp is rather old these - days, and unlikely to matter much...until Alastair Bridgewater writes - Nyef's Implementation of Lisp.

    ** Documentation

    On-line references and documentation/manuals are both useful for -independent purposes, but there is a very fine distinction between -them. Do not generate documentation or manuals automatically from the -text of on-line references.

    Rationale: /On-line references/ are quick blurbs associated with - objects in a running Lisp image, such as documentation strings in - Common Lisp or Emacs Lisp. These assume that the reader is familiar - with the gist of the surrounding context, but unclear on details; - on-line references specify the details of individual objects.

    /Documentation/ and /manuals/ are fuller, organized, and cohesive - documents that explain the surrounding context to readers who are - unfamiliar with it. A reader should be able to pick a manual up and - begin reading it at some definite point, perusing it linearly to - acquire an understanding of the subject. Although manuals may be - dominated by reference sections, they should still have sections that - are linearly readable to acquaint the reader with context.


    -Document
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Richard Newman.html b/clones/lisp/www.cliki.net/Richard Newman.html deleted file mode 100644 index 07e1360f..00000000 --- a/clones/lisp/www.cliki.net/Richard Newman.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Richard Newman - - - - - - - -
    Richard Newman
    Richard Newman uses Common Lisp, and has implemented a bunch of libraries for Wilbur.

    person

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Rick Taube.html b/clones/lisp/www.cliki.net/Rick Taube.html deleted file mode 100644 index 59020c36..00000000 --- a/clones/lisp/www.cliki.net/Rick Taube.html +++ /dev/null @@ -1,73 +0,0 @@ - - - - - CLiki: Rick Taube - - - - - - - -
    Rick Taube
    Associate Professor, Composition/Theory
    -School of Music, -University of Illinois Urbana, -IL 61801 USA
    -Net: taube (a) uiuc edu
    -Fax: 1 217 244-4585
    -Vox: 1 217 244-2684


    -person
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Rob Linwood.html b/clones/lisp/www.cliki.net/Rob Linwood.html deleted file mode 100644 index bc8fcdf3..00000000 --- a/clones/lisp/www.cliki.net/Rob Linwood.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Rob Linwood - - - - - - - -
    Rob Linwood
    Rob Linwood is a Person who lives in Brooklyn, New York City. I am a professional programmer, though not in Lisp. I'm also a language person - one of the reasons I like CL so much, no doubt.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Robert Church.html b/clones/lisp/www.cliki.net/Robert Church.html deleted file mode 100644 index 40539459..00000000 --- a/clones/lisp/www.cliki.net/Robert Church.html +++ /dev/null @@ -1,63 +0,0 @@ - - - - - CLiki: Robert Church - - - - - - - -
    Robert Church
    Describe Robert Church here

    He is a Person. He's kind of new to Lisp, so he hangs out in #lisp a lot.

    This is a utility he wrote:

    -(defconstant +MAGICCONST+ (/ (* 4 (exp 0.5)) (sqrt 2.0)))
    -
    -(defun random-normalvariate (mean stddev)
    -  (let* ((u1 (random 1.0))
    -         (u2 (random 1.0))
    -         (z (/ (* +MAGICCONST+ (- u1 0.5)) u2))
    -         (zz (/ (* z z) 4.0)))
    -    (if (<= zz (- (log u2)))
    -        (+ mean (* z stddev))
    -      (random-normalvariate mean stddev))))
    -
    -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Robert Goldman.html b/clones/lisp/www.cliki.net/Robert Goldman.html deleted file mode 100644 index 3461df42..00000000 --- a/clones/lisp/www.cliki.net/Robert Goldman.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: Robert Goldman - - - - - - - -
    Robert Goldman
    Describe Robert Goldman here: -"Tall, suave, and a deadly hand with parentheses."

    Oh, come on, what should I say? See my web page.

    If you care.

    You can find my GPG public key on the pgp.mit.edu keyserver.


    -Person
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Robert Marlow.html b/clones/lisp/www.cliki.net/Robert Marlow.html deleted file mode 100644 index 0467d75d..00000000 --- a/clones/lisp/www.cliki.net/Robert Marlow.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Robert Marlow - - - - - - - -
    Robert Marlow
    Robert Marlow is just this Person, you know?

    Also known by some to go by the pseudonym of Bobstopper. Probably easier to find on the 'net that way.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Robert Smith.html b/clones/lisp/www.cliki.net/Robert Smith.html deleted file mode 100644 index 6d52ce75..00000000 --- a/clones/lisp/www.cliki.net/Robert Smith.html +++ /dev/null @@ -1,62 +0,0 @@ - - - - - CLiki: Robert Smith - - - - - - - -
    Robert Smith
    Robert Smith is a Person who programs in Common Lisp as a hobby and professionally.

    His website is here which has a blog, usually about Lisp.

    He has written many libraries, big and small, including

      -
    • cl-permutation
    • -
    • cl-young-tableaux
    • -
    • cl-continued-fraction
    • -
    • cl-gap-buffer
    • -
    • cl-string-complete
    • -
    • cl-stopwatch
    • -
    • qtility
    • -
    • cl-generic-arithmetic
    • -
    • recur
    • -
    • letrec
    • -

    and more, which can be found on BitBucket here and here. Some of them are Quicklispable. He also maintains COMPUTABLE-REALS.

    Robert Smith owns two Lisp Machines and enjoys occasional hacking on them.

    He can be contacted by putting the concatenation ofstrings "quad", "@", "symbo1ics", and ".com" into your mail program.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Robert Strandh.html b/clones/lisp/www.cliki.net/Robert Strandh.html deleted file mode 100644 index 57b84bd8..00000000 --- a/clones/lisp/www.cliki.net/Robert Strandh.html +++ /dev/null @@ -1,93 +0,0 @@ - - - - - CLiki: Robert Strandh - - - - - - - -
    Robert Strandh
    A Person with several programming projects in Common Lisp.

    Currently, my main project is Gsharp, but in the past, I have -also worked on McCLIM.

    Some other large projects I am somewhat involved in and some -minor projects of my own are:

      -
    • Portable Hemlock. I would like to replace the current - buffer implementation with one based on Flexichain (below). -
    • -
    • Flexichain, an attempt to implement a very efficient gap buffer - which also has a well-defined external protocol. -
    • -
    • An Earley parser with some interesting generalizations that make - it useful for processing natural langages. -
    • -
    • Rotatable skiplist implementation that I needed for Flexichain. -
    • -
    • A library for reading and writing MIDI files (part of Gsharp). -
    • -
    • A library to divide a sequence of objects into subsequences in an - optimal way, where optimal is externally defined (but with some - restrictions), and incrementally so that after the sequence has - been edited, only a constant-time computation is necessary in order to - recompute the new optimal subsequences. I use this to divide a music - score into pages and systems in Gsharp essentially after each key - stroke. It could also be used in a word processor such as Texmacs, or - in Closure. This library is part of the Gsharp distribution. -
    • -
    • -SICL is an attempt to re-implement Common Lisp from scratch, hopefully using improved programming and bootstrapping techniques, and providing clearly separated, reusable modules, which may be used by other Lisp implementors. It is a work in progress, not considered to be usable yet. Also see the Common-Lisp.Net page. -
    • -

    Here are some projects that I have not yet started, but that I am -thinking of:

      -
    • A near-real-time, generational, SMP-aware garbage collector for - some current implementation such as SBCL. -
    • -
    • A very fast FFT implementation to be used with current free - implementations of Common Lisp. -
    • -
    • A library for analysis, manipulation, and synthesis of sound (this - is actually being worked on). -
    • -

    My home page is at (dangling link) the -laboratory of computer science (LaBRI) at the university of -Bordeaux where I work. -Staff Profile at The University of Auckland NZ

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Robotics.html b/clones/lisp/www.cliki.net/Robotics.html deleted file mode 100644 index 12646e88..00000000 --- a/clones/lisp/www.cliki.net/Robotics.html +++ /dev/null @@ -1,57 +0,0 @@ - - - - - CLiki: robotics - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Roger Barraud.html b/clones/lisp/www.cliki.net/Roger Barraud.html deleted file mode 100644 index 7e6e45c5..00000000 --- a/clones/lisp/www.cliki.net/Roger Barraud.html +++ /dev/null @@ -1,62 +0,0 @@ - - - - - CLiki: Roger Barraud - - - - - - - -
    Roger Barraud
    Is a Person of Hypereclectic tendencies who is also familiar enough with everything from apps down to atoms that he now considers himself a Recurssance Man. Your Miley May Vary.

    He is: -

      -
    • also known as rbarraud (or variations thereof)
    • -
    • interested in, and regularly uses, various lisp languages including Common Lisp and Clojure
    • -
    • on the web
    • -
    • in New Zealand
    • -
    • @rbarraud on Twitter
    • -

    He has: -

      -
    • written a *very* little about lisp (see website)
    • -
    • used Lisp since around 2010
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Roland Kaufmann.html b/clones/lisp/www.cliki.net/Roland Kaufmann.html deleted file mode 100644 index 8bd0cb84..00000000 --- a/clones/lisp/www.cliki.net/Roland Kaufmann.html +++ /dev/null @@ -1,82 +0,0 @@ - - - - - CLiki: Roland Kaufmann - - - - - - - -
    Roland Kaufmann
    I am an electronics engineer and wish I could use Common Lisp for more than -just playing. Since I did some minor edits, I created a personal page. At work, I use Matlab, VHDL, C(++), assembly. I also did -some literate programming with moderate success (one colleague got hooked on it). -I am hosting two small programs, Datoura and ulimyhmpqs written by others.

    TO DO: -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/RossLonstein.html b/clones/lisp/www.cliki.net/RossLonstein.html deleted file mode 100644 index 87b5ae0f..00000000 --- a/clones/lisp/www.cliki.net/RossLonstein.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: RossLonstein - - - - - - - -
    RossLonstein
    Ross is a Person. He writes code in Perl, C and Java and administers systems for a living but learned Lisp just for himself. You can find his homepage here and as a user of the one true editor, his emacswiki link


    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Roswell.html b/clones/lisp/www.cliki.net/Roswell.html deleted file mode 100644 index 00db3c90..00000000 --- a/clones/lisp/www.cliki.net/Roswell.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Roswell - - - - - - - -
    Roswell
    Roswell is a Lisp implementation installer/manager, launcher, and much more!

    Roswell started out as a command-line tool with the aim to make installing and managing Common Lisp implementations really simple and easy.

    Roswell has now evolved into a full-stack environment for Common Lisp development, and has many features that makes it easy to test, share, and distribute your Lisp applications. With Roswell, we aim to push the Common Lisp community to a whole new level of productivity.

    Roswell is still in beta. Despite this, the basic interfaces are stable and not likely to change. Roswell currently works well on Unix-like platforms such as Linux, Mac OS X and FreeBSD. Roswell also works on other operating systems, but currently some parts or features might be missing or unstable.

    Check out the issues list if you are interested in what's lacking.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Ruby-objects.html b/clones/lisp/www.cliki.net/Ruby-objects.html deleted file mode 100644 index df240aae..00000000 --- a/clones/lisp/www.cliki.net/Ruby-objects.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Ruby-objects - - - - - - - -
    Ruby-objects
    Ruby objects for Common Lisp

    https://github.com/thodg/ruby-objects

    Maintainers : thodg.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Rucksack.html b/clones/lisp/www.cliki.net/Rucksack.html deleted file mode 100644 index 1c6fa8a2..00000000 --- a/clones/lisp/www.cliki.net/Rucksack.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Rucksack - - - - - - - -
    Rucksack
    Rucksack is a persistence (embedded database) library for Common Lisp.

    Here's an overview of Rucksack from the European Common Lisp Meeting 2006.

    The present GitLab repository used by Quicklisp for distribution.

    License: MIT


    -database ObjectStore
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Ryszard Szopa.html b/clones/lisp/www.cliki.net/Ryszard Szopa.html deleted file mode 100644 index 8719c860..00000000 --- a/clones/lisp/www.cliki.net/Ryszard Szopa.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: Ryszard Szopa - - - - - - - -
    Ryszard Szopa
    Yet another Lisp hacker.

    Ryszard Szopa's webpage is http://szopa.tasak.gda.pl/. He is the author of Submarine. His e-mail address and jabber id is ryszard.szopa@gmail.com.

    -


    -Person Submarine
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/S-PROTOBUF.html b/clones/lisp/www.cliki.net/S-PROTOBUF.html deleted file mode 100644 index 4dc1b7a7..00000000 --- a/clones/lisp/www.cliki.net/S-PROTOBUF.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: S-PROTOBUF - - - - - - - -
    S-PROTOBUF
    S-PROTOBUF is a library to encode data in the Google Protocol Buffers wire format.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/S-XML-RPC.html b/clones/lisp/www.cliki.net/S-XML-RPC.html deleted file mode 100644 index 9065b1ad..00000000 --- a/clones/lisp/www.cliki.net/S-XML-RPC.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: s-xml-rpc - - - - - - - -
    s-xml-rpc
    s-xml-rpc (https://common-lisp.net/project/s-xml-rpc) is an implementation of the XML-RPC protocol in Common Lisp for both client -and server.

    Originally it was written by Sven Van Caekenberghe. It is now being maintained by Sven Van Caekenberghe, Rudi Schlatte and Brian Mastenbrook.

    Repository: https://gitlab.com/ambrevar/s-xml-rpc

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/S-XML.html b/clones/lisp/www.cliki.net/S-XML.html deleted file mode 100644 index df930df3..00000000 --- a/clones/lisp/www.cliki.net/S-XML.html +++ /dev/null @@ -1,61 +0,0 @@ - - - - - CLiki: s-xml - - - - - - - -
    s-xml
    S-XML is a simple basic XML parser with both a function and (S)SAX like event interface as well as a DOM interface with LXML, SXML and an XML-ELEMENT struct DOM representation.

    See also web, for other tools.

    This XML parser implementation has the following features: -

      -
    • It works (handling many common XML usages).
    • -
    • It is very small (the core is about 700 lines of code, including comments and whitespace).
    • -
    • It has a core API that is simple, efficient and pure functional, much like that from SSAX.
    • -
    • It supports different DOM models: an XSML-based one, an LXML-based one and a classic xml-element struct based one.
    • -
    • It is reasonably time and space efficient (internally avoiding garbage generation as much as possible).
    • -
    • It does support CDATA.
    • -
    • It should support the same character sets as your Common Lisp implementation.
    • -
    • It does support XML name spaces.
    • -

    Originally it was written by Sven Van Caekenberghe. It is now being maintained by Sven Van Caekenberghe, Rudi Schlatte and Brian Mastenbrook.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/S-exp syntax.html b/clones/lisp/www.cliki.net/S-exp syntax.html deleted file mode 100644 index ec4294fd..00000000 --- a/clones/lisp/www.cliki.net/S-exp syntax.html +++ /dev/null @@ -1,124 +0,0 @@ - - - - - CLiki: s-exp syntax - - - - - - - -
    s-exp syntax
    S-exp syntax is a topic for programs that let you translate s-expressions to other grammars. Things that let you write C with s-exps qualify, as do many markup libraries. Some markup libraries with a lot of implementations, like HTML generators, get their own topic, and shouldn't use this one.

      -
    • -AWK Lisp - - AWK Lisp is a A Common Lisp interpreter implemented in Awk and written by Roger Rohrbach -
    • -
    • -c-amplify - - c-amplify is an s-exp syntax for writing C code -
    • -
    • -C-Mera - - C-Mera is a very simple source-to-source compiler that utilizes Lisp's macro system for meta programming of C-like languages -
    • -
    • -cl-larval - - S-Exp syntax to write assembler for AVR microcontrollers -
    • -
    • -css-lite - - css-lite is a library for generating CSS from an s-exp syntax -
    • -
    • -lfe - - LFE, Lisp Flavoured Erlang, is a lisp s-exp syntax front-end to the Erlang compiler -
    • -
    • -LinJ - - Linj is a Common Lisp-like language that tries to be as similar to -
    • -
    • -Liskell - - Liskell is a s-exp syntax for Haskell -
    • -
    • -ltd - - ltd is a Common Lisp to Dylan translator -
    • -
    • -Meta - - A recursive-descent parser DSL that is a simpler alternative to parser generators -
    • -
    • -NPG - - NPG is a Naïve Parser Generator -
    • -
    • -parenscript - - Parenscript is a translator from an extended subset of Common Lisp to JavaScript -
    • -
    • -PLisp - - PLisp is an s-exp syntax for generating PostScript files -
    • -
    • -readable - - readable adds additional abbreviations in the sexp reader; supports infix, optional standard function call notation, optional indentation -
    • -
    • -SC Language - - Tasuku Hiraishi's SC is an s-exp syntax (Scheme-like) for writing C code, implemented in Common Lisp -
    • -
    • -sml - - S-expression-based markup language -
    • -
    • -sst - - SST (SQL Schema Transformer) is a Common Lisp program that transforms an s-expression based database schema format medium into appropriate SQL commands for specified RDBMS -
    • -
    • -SxQL - - An SQL generator for Common Lisp -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/SAFER.html b/clones/lisp/www.cliki.net/SAFER.html deleted file mode 100644 index 2db9ca25..00000000 --- a/clones/lisp/www.cliki.net/SAFER.html +++ /dev/null @@ -1,366 +0,0 @@ - - - - - CLiki: SAFER - - - - - - - -
    SAFER
    SAFER (Secure And Fast Encryption Routine) is a block cipher that was first published in 1993, followed by later variants. SK-128, meaning "Strengthened Key schedule" with 128-bit key size, is shown here as another example of bit-twiddling in ANSI Common Lisp. SAFER is a byte-oriented cipher that operates on a 64-bit block. Contrast this with XXTEA, which has variable-sized blocks with a granularity of 32 bits per element. Another difference is that SAFER's key scheduling is much more complex. It also uses S-boxes based on discrete powers and logarithms.

    SAFER SK-128

    This implementation of SAFER SK-128 encryption (by David Mullen) gives the same results as the original Turbo Pascal implementation (from 1995) and may be easier to follow, depending on one's preference for zero-based or one-based array indexing. Real Programmers may dislike Pascal and Common Lisp equally. In any event, all code on this page is licensed under Apache 2.

    (eval-when (:compile-toplevel :load-toplevel :execute) - ;; James L. Massey: "For SAFER SK-128, we keep the previous - ;; recommendation of 10 rounds with a maximum of 12 rounds." - (defconstant +safer-rounds+ 10)) - -(defmacro define-octet-vector (constant-name &body contents) - (let ((vector (coerce contents '(vector (unsigned-byte 8))))) - `(progn (define-symbol-macro ,constant-name ,vector) - (declaim (type ,(type-of vector) ,constant-name)) - ',constant-name))) - -(define-octet-vector +regular-s-box+ - 1 45 226 147 190 69 21 174 - 120 3 135 164 184 56 207 63 - 8 103 9 148 235 38 168 107 - 189 24 52 27 187 191 114 247 - 64 53 72 156 81 47 59 85 - 227 192 159 216 211 243 141 177 - 255 167 62 220 134 119 215 166 - 17 251 244 186 146 145 100 131 - 241 51 239 218 44 181 178 43 - 136 209 153 203 140 132 29 20 - 129 151 113 202 95 163 139 87 - 60 130 196 82 92 28 232 160 - 4 180 133 74 246 19 84 182 - 223 12 26 142 222 224 57 252 - 32 155 36 78 169 152 158 171 - 242 96 208 108 234 250 199 217 - 0 212 31 110 67 188 236 83 - 137 254 122 93 73 201 50 194 - 249 154 248 109 22 219 89 150 - 68 233 205 230 70 66 143 10 - 193 204 185 101 176 210 198 172 - 30 65 98 41 46 14 116 80 - 2 90 195 37 123 138 42 91 - 240 6 13 71 111 112 157 126 - 16 206 18 39 213 76 79 214 - 121 48 104 54 117 125 228 237 - 128 106 144 55 162 94 118 170 - 197 127 61 175 165 229 25 97 - 253 77 124 183 11 238 173 75 - 34 245 231 115 35 33 200 5 - 225 102 221 179 88 105 99 86 - 15 161 49 149 23 7 58 40) - -(define-octet-vector +inverse-s-box+ - 128 0 176 9 96 239 185 253 - 16 18 159 228 105 186 173 248 - 192 56 194 101 79 6 148 252 - 25 222 106 27 93 78 168 130 - 112 237 232 236 114 179 21 195 - 255 171 182 71 68 1 172 37 - 201 250 142 65 26 33 203 211 - 13 110 254 38 88 218 50 15 - 32 169 157 132 152 5 156 187 - 34 140 99 231 197 225 115 198 - 175 36 91 135 102 39 247 87 - 244 150 177 183 92 139 213 84 - 121 223 170 246 62 163 241 17 - 202 245 209 23 123 147 131 188 - 189 82 30 235 174 204 214 53 - 8 200 138 180 226 205 191 217 - 208 80 89 63 77 98 52 10 - 72 136 181 86 76 46 107 158 - 210 61 60 3 19 251 151 81 - 117 74 145 113 35 190 118 42 - 95 249 212 85 11 220 55 49 - 22 116 215 119 167 230 7 219 - 164 47 70 243 97 69 103 227 - 12 162 59 28 133 24 4 29 - 41 160 143 178 90 216 166 126 - 238 141 83 75 161 154 193 14 - 122 73 165 44 129 196 199 54 - 43 127 67 149 51 242 108 104 - 109 240 2 40 206 221 155 234 - 94 153 124 20 134 207 229 66 - 184 64 120 45 58 233 100 31 - 146 144 125 57 111 224 137 48) - -(defun make-block (&optional (size 8) (element-type '(unsigned-byte 8)) initial-element) - (make-array size :element-type element-type :initial-element (or initial-element 0))) - -(defparameter +additive-key-biases+ - (loop with bias-rows = (+ 2 (* 2 +safer-rounds+)) - with array-dimensions = `(,bias-rows 8) - with array = (make-block array-dimensions) - finally (return array) ; 22x8 octet array. - for i fixnum from 2 below bias-rows - do (loop for j fixnum from 1 to 8 - do (setf (aref array i (1- j)) - (aref +regular-s-box+ - (aref +regular-s-box+ - (+ (* 9 i) j))))))) - -(defmacro octet+ (octet-1 octet-2) - (let* ((octet-1 `(the (unsigned-byte 8) ,octet-1)) - (octet-2 `(the (unsigned-byte 8) ,octet-2)) - (result `(the fixnum (+ ,octet-1 ,octet-2)))) - ;; Addition modulo 256. - `(the (unsigned-byte 8) - (logand ,result #xFF)))) - -(defun %set-parity-byte (expanded-key) - "Set the extra byte of EXPANDED-KEY to the result of XOR'ing together the original eight bytes." - (declare (optimize (safety 0) (speed 3)) (type (simple-array (unsigned-byte 8) (9)) expanded-key)) - (loop with parity of-type (unsigned-byte 8) = (aref expanded-key 0) for i of-type fixnum from 1 to 7 - do (setq parity (logxor parity (aref expanded-key i))) finally (setf (aref expanded-key 8) parity))) - -(defmacro %left-rotate-3 (octet) - `(let* ((octet.tmp ,octet) (octet.hi (ash octet.tmp -5))) - (declare (type (unsigned-byte 8) octet.tmp octet.hi)) - (let ((octet.lo (logand (ash octet.tmp 3) #xFF))) - (declare (type (unsigned-byte 8) octet.lo)) - (the (unsigned-byte 8) (logior octet.lo - octet.hi))))) - -(defun make-key-schedule (key) - "SAFER SK-128 turns a 128-bit key into 64-bit subkeys." - (check-type key (simple-array (unsigned-byte 8) (16))) - (let ((left-key (make-block 9)) - (right-key (make-block 9)) - (biases +additive-key-biases+)) - (declare (type (simple-array (unsigned-byte 8) (9)) left-key)) - (declare (type (simple-array (unsigned-byte 8) (9)) right-key)) - (declare (type (simple-array (unsigned-byte 8) (22 8)) biases)) - (declare (optimize (safety 0) (speed 3))) - (loop for i of-type fixnum from 0 below 8 - for j of-type fixnum from 8 below 16 - do (setf (aref left-key i) (aref key i)) - (setf (aref right-key i) (aref key j)) - finally (%set-parity-byte left-key) - (%set-parity-byte right-key)) - ;; Each round uses two subkeys, and an extra - ;; subkey is used after the end of the rounds. - ;; Subkeys alternate between the left and right - ;; half of the key (the first key uses the right). - (loop with subkey-count = (1+ (* 2 +safer-rounds+)) - with subkeys = (make-array subkey-count) - initially (setf (svref subkeys 0) (subseq right-key 0 8)) - for i of-type (unsigned-byte 16) from 1 below subkey-count - finally (return subkeys) - do (let ((key-half (if (oddp i) left-key right-key)) - (subkey (setf (svref subkeys i) (make-block)))) - (declare (type (simple-array (unsigned-byte 8) (9)) key-half)) - (declare (type (simple-array (unsigned-byte 8) (8)) subkey)) - (dotimes (j 9) - (setf (aref left-key j) (%left-rotate-3 (aref left-key j))) - (setf (aref right-key j) (%left-rotate-3 (aref right-key j)))) - (loop for j of-type (unsigned-byte 4) below 8 - for position of-type fixnum = (mod (the fixnum (+ i j)) 9) - for octet of-type (unsigned-byte 8) = (aref key-half position) - do (setf (aref subkey j) (octet+ octet (aref biases (1+ i) j)))))))) - -(defmacro apply-safer-s-boxes (block) - `(setf (aref ,block 0) (aref +regular-s-box+ (aref ,block 0)) - (aref ,block 1) (aref +inverse-s-box+ (aref ,block 1)) - (aref ,block 2) (aref +inverse-s-box+ (aref ,block 2)) - (aref ,block 3) (aref +regular-s-box+ (aref ,block 3)) - (aref ,block 4) (aref +regular-s-box+ (aref ,block 4)) - (aref ,block 5) (aref +inverse-s-box+ (aref ,block 5)) - (aref ,block 6) (aref +inverse-s-box+ (aref ,block 6)) - (aref ,block 7) (aref +regular-s-box+ (aref ,block 7)))) - -(defmacro apply-subkey-1 (block subkey) - `(setf (aref ,block 0) (logxor (aref ,block 0) (aref ,subkey 0)) - (aref ,block 1) (octet+ (aref ,block 1) (aref ,subkey 1)) - (aref ,block 2) (octet+ (aref ,block 2) (aref ,subkey 2)) - (aref ,block 3) (logxor (aref ,block 3) (aref ,subkey 3)) - (aref ,block 4) (logxor (aref ,block 4) (aref ,subkey 4)) - (aref ,block 5) (octet+ (aref ,block 5) (aref ,subkey 5)) - (aref ,block 6) (octet+ (aref ,block 6) (aref ,subkey 6)) - (aref ,block 7) (logxor (aref ,block 7) (aref ,subkey 7)))) - -(defmacro apply-subkey-2 (block subkey) - `(setf (aref ,block 0) (octet+ (aref ,block 0) (aref ,subkey 0)) - (aref ,block 1) (logxor (aref ,block 1) (aref ,subkey 1)) - (aref ,block 2) (logxor (aref ,block 2) (aref ,subkey 2)) - (aref ,block 3) (octet+ (aref ,block 3) (aref ,subkey 3)) - (aref ,block 4) (octet+ (aref ,block 4) (aref ,subkey 4)) - (aref ,block 5) (logxor (aref ,block 5) (aref ,subkey 5)) - (aref ,block 6) (logxor (aref ,block 6) (aref ,subkey 6)) - (aref ,block 7) (octet+ (aref ,block 7) (aref ,subkey 7)))) - -(defmacro %safer-f (left right &optional (left-place left) (right-place right)) - "The SAFER algorithm uses f(L, R) = (2L + R, L + R), with addition mod 256." - (let ((2*left `(octet+ ,left ,left))) - `(psetf ,left-place (octet+ ,2*left ,right) - ,right-place (octet+ ,left ,right)))) - -(defmacro interchange-and-mix (block output) - `(progn (%safer-f (aref ,block 0) (aref ,block 2) (aref ,output 0) (aref ,output 1)) - (%safer-f (aref ,block 4) (aref ,block 6) (aref ,output 2) (aref ,output 3)) - (%safer-f (aref ,block 1) (aref ,block 3) (aref ,output 4) (aref ,output 5)) - (%safer-f (aref ,block 5) (aref ,block 7) (aref ,output 6) (aref ,output 7)) - (replace ,block ,output))) - -(deftype safer-block () - "Data block type for SAFER SK algorithm." - '(simple-array (unsigned-byte 8) (8))) - -(deftype safer-subkey () - "Element type produced by MAKE-KEY-SCHEDULE." - '(simple-array (unsigned-byte 8) (8))) - -(defun check-key-schedule (key-schedule) - (check-type key-schedule (simple-vector #.(1+ (* 2 +safer-rounds+)))) - (loop for subkey across key-schedule do (check-type subkey safer-subkey)) - key-schedule) - -(defparameter *default-key* - (map '(vector (unsigned-byte 8) 16) - #'char-code "The Unsecret Key")) - -(defun safer-encrypt (block &optional (key *default-key*)) - (let* ((pre-scheduled-key-p (simple-vector-p key)) - (subkeys (if pre-scheduled-key-p - (check-key-schedule key) - (make-key-schedule key)))) - (check-type block safer-block) - (let ((temporary-data (make-block 8)) - (even-subkey (svref subkeys 0)) - (odd-subkey (svref subkeys 1)) - (extra-subkey (svref subkeys (* 2 +safer-rounds+)))) - (declare (type safer-block block temporary-data)) - (declare (type safer-subkey even-subkey odd-subkey)) - (declare (type safer-subkey extra-subkey)) - (declare (optimize (safety 0) (speed 3))) - (loop for r of-type (unsigned-byte 16) = 0 then (1+ r) - ;; Each round uses two subkeys. The odd and even - ;; subkeys are applied differently, so that one - ;; has XOR where the other has modular addition. - do (apply-subkey-1 block even-subkey) - (apply-safer-s-boxes block) - (apply-subkey-2 block odd-subkey) - ;; The linear layer has three levels; - ;; the latter two interchange bytes. - (%safer-f (aref block 0) (aref block 1)) - (%safer-f (aref block 2) (aref block 3)) - (%safer-f (aref block 4) (aref block 5)) - (%safer-f (aref block 6) (aref block 7)) - (interchange-and-mix block temporary-data) - (interchange-and-mix block temporary-data) - (let ((next-round (1+ r))) - (if (< next-round +safer-rounds+) - (let ((next-subkey-index (* 2 next-round))) - (declare (type (unsigned-byte 16) next-subkey-index)) - (setq even-subkey (svref subkeys next-subkey-index)) - (setq odd-subkey (svref subkeys (1+ next-subkey-index)))) - ;; In the final output transformation, the extra - ;; subkey is applied like the first (even) subkey. - (progn (apply-subkey-1 block extra-subkey) - (return-from safer-encrypt block))))))))

    Counter (CTR) mode

    The basic idea of CTR mode is that an ever-changing block is encrypted to provide a stream of effectively random data that can be XORed with an arbitrary input. As XOR is trivially reversible, this provides both encryption and decryption. A requirement is that the same IV block is not encrypted twice under the same key (or at least not any time soon). In other words, a predictable keystream isn't acceptable. This quick implementation of a keystream uses the universal time as the nonce.

    (defstruct keystream - (schedule (make-key-schedule *default-key*)) - (nonce (ldb (byte 32 0) (get-universal-time))) - (block (make-block 8) :type safer-block) - (counter -1 :type fixnum) - (position 8 :type fixnum)) - -(defun keystream-next (keystream) - (let ((iv-block (keystream-block keystream)) - (nonce (keystream-nonce keystream))) - (declare (type safer-block iv-block)) - (check-type nonce (unsigned-byte 32)) - (with-accessors ((key-schedule keystream-schedule)) keystream - (with-accessors ((position keystream-position)) keystream - (cond ((< position 7) (aref iv-block (incf position))) - (t (let ((counter (incf (keystream-counter keystream)))) - (declare (type (unsigned-byte 32) nonce counter)) - (setf (aref iv-block 0) (ldb (byte 8 0) nonce)) - (setf (aref iv-block 1) (ldb (byte 8 8) nonce)) - (setf (aref iv-block 2) (ldb (byte 8 16) nonce)) - (setf (aref iv-block 3) (ldb (byte 8 24) nonce)) - (setf (aref iv-block 4) (ldb (byte 8 0) counter)) - (setf (aref iv-block 5) (ldb (byte 8 8) counter)) - (setf (aref iv-block 6) (ldb (byte 8 16) counter)) - (setf (aref iv-block 7) (ldb (byte 8 24) counter)) - (safer-encrypt iv-block key-schedule) - (aref iv-block (setq position 0)))))))))

    Now we can write a simple test to get an idea of how "random" (or pseudo-random, technically) the stream is. The safer-random function consumes bytes from the keystream in order to produce a random integer (like the built-in random function). The initial state is based on the *default-key* defined above. For test-random we should find that the average bit has about a fifty/fifty chance of being one or zero (analogously to a fair coin).

    (defvar *safer-random-state* (make-keystream) - "State for PRNG based on SAFER SK-128.") - -(defun safer-random (limit &optional (random-state *safer-random-state*)) - (loop with integer = 0 for position of-type fixnum = 0 then (+ position 8) - repeat (ceiling (log limit 2) 8) finally (return (mod integer limit)) - do (setf (ldb (byte 8 position) integer) (keystream-next random-state)))) - -(defun test-random (function bits &optional (test-count 10000)) - (loop initially (format t "Itr. ~:D~%" test-count) with limit = (expt 2 bits) - with integers = (loop repeat test-count collect (funcall function limit)) - with counts = (make-array bits :initial-element 0) for bit of-type fixnum below bits - do (loop for integer in integers when (logbitp bit integer) do (incf (svref counts bit))) - finally (let ((1-probability-for-average-bit (/ (/ (reduce #'+ counts) bits) test-count))) - (format t "Min. ~A%~%" (* 100.0 (/ (reduce #'min counts) test-count))) - (format t "Max. ~A%~%" (* 100.0 (/ (reduce #'max counts) test-count))) - (format t "Avg. ~A%~%" (* 100.0 1-probability-for-average-bit)))))

    A test run looks like this:

    ? (test-random #'safer-random 1024) -Itr. 10,000 -Min. 48.46% -Max. 51.36% -Avg. 50.00765%

    And with the built-in random function:

    ? (test-random #'random 1024) -Itr. 10,000 -Min. 48.44% -Max. 51.64% -Avg. 50.026344%

    We can see that the results are roughly the same for both the safer-random and random functions. Now, in practice, a good cryptographic PRNG (such as in OpenSSL) will have both a way of reseeding from an external source of entropy (that is: something more random than get-universal-time), as well as a way of rekeying periodically; and definitely before the counter wraps around. This is often called key erasure, because the old key is no longer part of the generator state.

    Related reading


    -Cryptography
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/SB-HEAPDUMP.html b/clones/lisp/www.cliki.net/SB-HEAPDUMP.html deleted file mode 100644 index 22d78e50..00000000 --- a/clones/lisp/www.cliki.net/SB-HEAPDUMP.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: sb-heapdump - - - - - - - -
    sb-heapdump
    sb-heapdump is a library for SBCL which writes graphs of Lisp objects to -disk in the same format SBCL normally uses in memory.

    It is available from https://repo.or.cz/w/sbcl/lichteblau.git, branch master

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/SB-X86-PORTIO.html b/clones/lisp/www.cliki.net/SB-X86-PORTIO.html deleted file mode 100644 index 35ad12c3..00000000 --- a/clones/lisp/www.cliki.net/SB-X86-PORTIO.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: SB-X86-PORTIO - - - - - - - -
    SB-X86-PORTIO
    SB-X86-PORTIO is a module for doing raw port I/O on SBCL/x86/x86-64.

    Technically, this is accomplished by adding VOPs for port I/O instructions, and then wrapping these into functions.

    99% of the research and code on this project is due to Alistair Bridgewater (aka nyef).

    Repository: https://github.com/deepfire/sb-x86-portio

    License: ???


    -Topics: system programming
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/SBCL Internals.html b/clones/lisp/www.cliki.net/SBCL Internals.html deleted file mode 100644 index 1eadbaa5..00000000 --- a/clones/lisp/www.cliki.net/SBCL Internals.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: SBCL Internals - - - - - - - -
    SBCL Internals
    SBCL Internals was another CLiki installation for SBCL hackers to document bits of the internals of said CL implementation. It often has news of various SBCL projects.

    Unfortunately the original pages for the SBCL Internals cliki were lost.

    The last snapshot of SBCL Internals is available on the Internet Archive Wayback Machine: https://web.archive.org/web/20120814000933/http://sbcl-internals.cliki.net/index

    See Also: SBCL-wiki at GitHub by Masataro Asai

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/SBCL.html b/clones/lisp/www.cliki.net/SBCL.html deleted file mode 100644 index 5ea92ff9..00000000 --- a/clones/lisp/www.cliki.net/SBCL.html +++ /dev/null @@ -1,171 +0,0 @@ - - - - - CLiki: SBCL - - - - - - - -
    SBCL
    Steel Bank Common Lisp is an open source / free software Common Lisp implementation. It provides an integrated native compiler, -interpreter, and debugger.

    SBCL is a fork off of the main branch of CMUCL. SBCL is -distinguished from CMUCL by a greater emphasis on maintainability. -In particular, the SBCL system can be built directly from its -source code, so that the output corresponds to the source code in -a controlled, verifiable way, and arbitrary changes can be made to -the system without causing bootstrapping problems. SBCL also -places less emphasis than CMU CL does on new non-ANSI -extensions, or on backward compatibility with old non-ANSI -features.

    More information at the project page at http://sbcl.sourceforge.net/, -and on the SBCL Internals CLiki

    Common-Lisp-Controller-compatible SBCL Debian (.deb) packages are -part of Debian GNU/Linux 3.0/Woody and Debian GNU/Linux 3.1/Sarge for Alpha, x86, PPC, and SPARC. Later releases -will include more architectures.

    Local pages

    Building 0.8.4 on SPARC

    The Sun's assembler doesn't like the GNU syntax used in the SBCL assembler sources, so something like the following is required:

    $ ln -s `which gcc` ~/bin/gcc
    -$ ln -s `which gas` ~/bin/as
    -$ export COMPILER_PATH=~/bin

    Also, when building from CMUCL you need to add the following stanza to src/cold/ansify.lisp:

    #+(and cmu sparc) 
    -(ext:set-floating-point-modes :traps '(:overflow :invalid :divide-by-zero))

    SBCL Advocacy Haiku

    (unless (equalp
    -         (lisp-implementation-type)
    -         "SBCL") (quit))

    #-sbcl(quit)

    Scripts

    -As of SBCL 1.0.22, shebang-scripts are supported via the --script option (add #!/usr/bin/sbcl --script as the first line). However, --script option changes the way initialization is performed (no sysinit (/etc/sbclrc) and no userinit (~/.sbclrc)).

    Older versions of SBCL don't tolerate shebang lines (CLISP does). To create an SBCL script, -manual/Shebang-Scripts.html -suggests using an external trampoline or init hair. That's silly. -An executable file without a shebang line defaults to sh. So an SBCL script is simply -

    $ cat foo
    -#|
    -exec sbcl --noinform --load $0 --end-toplevel-options "$@"
    -|#
    -(format t "hi~%")
    -(quit)
    -$ chmod a+x foo
    -$ ./foo
    -hi
    -$ 
    -To compile, simply -
    #|
    -fasl=`dirname $0`/`basename $0 .lisp`.fasl
    -[ $fasl -ot $0 ] && sbcl --noinform --eval "(compile-file \"$0\")" --eval "(quit)" > /dev/null
    -exec sbcl --noinform --load $fasl --end-toplevel-options "$@"
    -|#

    Installing SBCL from source not in /usr/local

    Unpack the source tarball.

    Set INSTALL_ROOT to where you want it to go.

    - export INSTALL_ROOT=$HOME
    -

    Now use this hack so it will look for the core file in the right place

    -  export CC="cc '-DSBCL_HOME=\"$INSTALL_ROOT/lib/sbcl/\"'"
    -  sh make.sh
    -  sh install.sh
    -

    -

    Using Common Lisp Controller with a self installed SBCL

    Put this in your .sbclrc

    -
    -(require 'sb-bsd-sockets) ; needed now because it does not gel well with the path munging by the common-lisp-controller
    -
    -(load "/usr/share/common-lisp/source/common-lisp-controller/common-lisp-controller.lisp")
    -(common-lisp-controller:init-common-lisp-controller-v4 "sbcl")
    -

    Adding GNU Readline support

    -Evgeniy Zhemchugov has written a GNU readline loader to get uparrow history and tab completion like in CLISP. Download or clone and load it from your ~/.sbclrc

    http://jini-zh.org/sbcl-readline/sbcl-readline.html

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/SC Language.html b/clones/lisp/www.cliki.net/SC Language.html deleted file mode 100644 index 3eb1cb0b..00000000 --- a/clones/lisp/www.cliki.net/SC Language.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: SC Language - - - - - - - -
    SC Language
    Tasuku Hiraishi's SC is an s-exp syntax (Scheme-like) for writing C code, implemented in Common Lisp.

    Papers: ILC 2005, -ILC 2007 and the -source repository.

    License: BSD 2-Clause

    There is also a thesis by THIRAISHI Tasuku. See his web page about the SC language.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/SCLF.html b/clones/lisp/www.cliki.net/SCLF.html deleted file mode 100644 index 7dbc5a71..00000000 --- a/clones/lisp/www.cliki.net/SCLF.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: SCLF - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/SCOLI.html b/clones/lisp/www.cliki.net/SCOLI.html deleted file mode 100644 index 7dbac846..00000000 --- a/clones/lisp/www.cliki.net/SCOLI.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: SCOLI - - - - - - - -
    SCOLI
    SCOLI is an interface to the Sesame triple store. It operates on Sesame's REST API. This software is under development to support the implementation of CL-Wise, a semantic wiki, also under development. It is being implemented as a reusable tool to support semantic web oriented applications.

    SCOLI is authored by Sunil Mishra. It depends on CL-RDFXML and DRAKMA.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/SDL.html b/clones/lisp/www.cliki.net/SDL.html deleted file mode 100644 index 2f178dfe..00000000 --- a/clones/lisp/www.cliki.net/SDL.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: SDL - - - - - - - -
    SDL
    Simple DirectMedia Library. A cross-platform multimedia library (buzz buzz).

    Represented on Linux (so far) by CL-SDL and lispbuilder-sdl.

    Represented in Win32 by lispbuilder-sdl.

    With Corman Lisp, use (require 'sdl)

    The homepage is at http://www.libsdl.org/.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/SEMI-PRECIOUS.html b/clones/lisp/www.cliki.net/SEMI-PRECIOUS.html deleted file mode 100644 index acc92356..00000000 --- a/clones/lisp/www.cliki.net/SEMI-PRECIOUS.html +++ /dev/null @@ -1,64 +0,0 @@ - - - - - CLiki: SEMI-PRECIOUS - - - - - - - -
    SEMI-PRECIOUS
    SEMI-PRECIOUS is a library of algorithms/data structures.

    Currently includes: -

      -
    • a dependency graph mechanism, DEPSOLVER -
    • -
    • a discrimination tree implementation, DISCRIMINATION -
    • -
    • a state machine, STATE -
    • -
    • a circular list, Peter Norvig-style, CIRCULAR -
    • -
    • an early evaluator, EARLY-EVAL -
    • -

    Homepage: https://github.com/deepfire/semi-precious

    -License: LGPL

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/SERIES.html b/clones/lisp/www.cliki.net/SERIES.html deleted file mode 100644 index 27492af5..00000000 --- a/clones/lisp/www.cliki.net/SERIES.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - CLiki: Series - - - - - - - -
    Series
    A library providing data structure that combines aspects of sequences, (lazy) streams and loops, using a technique known as “fusion” or “deforestation”. Unlike sequences, in most cases operations on series may be composed functionally but execute iteratively without generating intermediate values. So series offer both the expressiveness of functional programming and the efficiency of iterative programming.

    Series is in Quicklisp:

    - (ql:quickload :series)
    - (in-package :series)
    -

    The library was originally developed by Richard C. Waters, and a description of it appeared in 1990 as Appendix A of the second edition of the book Common Lisp - The Language by Guy L. Steele. More docs and examples can be found in AIM 1082 and AIM 1083 from MIT.

    The project (SourceForge) is now maintained by Fernando D. Mato Mira. It has a git repo at SourceForge and an unofficial GitHub mirror.

    Series is available for SBCL, CMUCL, CLISP and some commercial Common Lisp implementations. It is distributed under the terms of the MIT license.

    Documentation

    There are more user doc and links on the github mirror's wiki.

    Many examples in the iteration page of the CL Cookbook.

    Related projects

    See taps, a library that offers conveniences to work with Series (take, tail, any, contains?, drop, filter, …)

    Articles

    See http://malisper.me/2016/04/13/loops-in-lisp-part-4-series/.


    -data structure, language extension
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/SHA1.html b/clones/lisp/www.cliki.net/SHA1.html deleted file mode 100644 index 84fa1efa..00000000 --- a/clones/lisp/www.cliki.net/SHA1.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: SHA1 - - - - - - - -
    SHA1
    Secure Hash Algorithm 1 (SHA1) is defined in RFC 3174, and therefore more-or-less counts as a protocol.

    Ironclad includes a portable and tuned implementation of SHA1.

    SHA1 Digest and HMAC for Common Lisp

    A very simple implementation of SHA1 and HMAC-SHA1 for Common Lisp. The code is intended to be easy to follow and is therefore a little slower than it could be.

    Depends on: base64

    Repository: https://github.com/massung/sha1

    License: Apache 2


    -cryptography
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/SHALLOW-COPY-ARRAY.html b/clones/lisp/www.cliki.net/SHALLOW-COPY-ARRAY.html deleted file mode 100644 index abe6a738..00000000 --- a/clones/lisp/www.cliki.net/SHALLOW-COPY-ARRAY.html +++ /dev/null @@ -1,108 +0,0 @@ - - - - - CLiki: shallow-copy-array - - - - - - - -
    shallow-copy-array
    SHALLOW-COPY-ARRAY is a member of the Common Lisp Utilities -family of programs.

    (defun shallow-copy-array (array &key (undisplace-array nil)) - "Shallow copies the contents of any array into another array with -equivalent properties. If array is displaced, then this function -will normally create another displaced array with similar properties, -unless UNDISPLACE-ARRAY is non-NIL, in which case the contents of the -array will be copied into a completely new, not displaced, array." - (check-type array array) - (multiple-value-bind (displaced-to displaced-index-offset) - (array-displacement array) - (let ((dimensions (array-dimensions array)) - (element-type (array-element-type array)) - (adjustable (adjustable-array-p array)) - (fill-pointer (when (array-has-fill-pointer-p array) - (fill-pointer array)))) - (when undisplace-array - (setf displaced-to nil)) - (let ((new-array - (apply #'make-array - (list* dimensions - :element-type element-type - :adjustable adjustable - :fill-pointer fill-pointer - :displaced-to displaced-to - (if displaced-to - (list :displaced-index-offset - displaced-index-offset) - nil))))) - (unless displaced-to - (dotimes (i (array-total-size array)) - (setf (row-major-aref new-array i) - (row-major-aref array i)))) - new-array))))


    This is quite similar to a copy-array I wrote recently. I find mine a bit easier to read, but on the other hand I am new at lisp; Do you see any problems with the following?

    (defun copy-array (array &key (undisplace nil)) - "Performs a shallow copy of array. If array is displaced, -the copy is also, unless undisplace is non-nil." - (declare (type array array)) - (let ((copy - (apply #'make-array - (list* (array-dimensions array) - :element-type (array-element-type array) - :adjustable (adjustable-array-p array) - :fill-pointer (when (array-has-fill-pointer-p array) - (fill-pointer array)) - (multiple-value-bind (displacement offset) - (array-displacement array) - (when (and displacement (not undisplace)) - (list :displaced-to displacement - :displaced-index-offset offset))))))) - (unless (array-displacement copy) - (dotimes (n (array-total-size copy)) - (setf (row-major-aref copy n) (row-major-aref array n)))) - copy))

    Looks almost exactly the same, except that I explicitly bound all the values in a let first.


    Two belated points (Nikodemus Siivola): -

      -
    1. Why the SHALLOW-prefix? COPY-SEQ, COPY-LIST, COPY-STRUCTURE are all shallow as well. COPY-ARRAY would imo be clear enough and less ugly as well. -
    2. -
    3. There's a portable trick to do this without iteration. If don't know it and you like puzzles, try to figure it out from the Array chapter in CLHS, and read how once you fail. -
    4. -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/SHCL.html b/clones/lisp/www.cliki.net/SHCL.html deleted file mode 100644 index 7bb4b3c5..00000000 --- a/clones/lisp/www.cliki.net/SHCL.html +++ /dev/null @@ -1,57 +0,0 @@ - - - - - CLiki: SHCL - - - - - - - -
    SHCL
    SHCL is

      -
    1. a very customizable shell made with secret alien technology, and -
    2. -
    3. an unholy union of POSIX Shell and Common Lisp. -
    4. -
    -Repository: https://github.com/SquircleSpace/shcl

    License: Apache 2

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/SHUT-IT-DOWN.html b/clones/lisp/www.cliki.net/SHUT-IT-DOWN.html deleted file mode 100644 index ad42d663..00000000 --- a/clones/lisp/www.cliki.net/SHUT-IT-DOWN.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: SHUT-IT-DOWN - - - - - - - -
    SHUT-IT-DOWN
    Exit the Common Lisp implementation.

    Similarly to networking, multiple threads of program execution, user-defined streams, among other features, Common Lisp requires non-portable code for exiting the Common Lisp implementation, if possible. This library is a reasonably comprehensive solution and interface to this.

    The SHUT-IT-DOWN library was created to serve the author's needs when writing an interactive program that needed to be able to exit.

    The design disregards return values for the Lisp process on platforms that have such.

    There is no argument and QUIT either succeeds or fails, then returning no value.

    Here is the page dedicated to this program. -


    -library system programming Public Domain
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/SICL.html b/clones/lisp/www.cliki.net/SICL.html deleted file mode 100644 index 943f83de..00000000 --- a/clones/lisp/www.cliki.net/SICL.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: SICL - - - - - - - -
    SICL

    Sources

    https://github.com/robert-strandh/SICL

    Description

    Quoting Robert Strandh from IRC:

    Basically, I think of SICL as a collection of modules, implementing various parts of the Common Lisp standard. The difference between those modules and existing modules in other implementations has to do with modern programming practice, test, documentation, and especially implementation-independence. The `modern programming practice' part involves using the full Common Lisp language, and especially more generic functions that most equivalent existing modules do. -Now, some people have interpreted this collection of "modules" to mean that they can write a primitive Common Lisp in (say) C, and then start loading SICL modules to obtain a complete implementation. That is not the case.

    A large part of SICL is Cleavir, an implementation-independent framework for writing Common Lisp compilers. It uses CLOS to allow implementations to customize it for their needs. And I plan to implement a bunch of standard compiler-optimization techniques on intermediate code, plus some of my own. I don't think it has ever been attempted before to write an implementation-independent compiler for Common Lisp. The compiler is a big, customizable module though. The word "framework" is more appropriate. And it exists. Clasp is using it for its good compiler.

    So, one example that appears to baffle people is that SICL LOOP uses LOOP for its implementation. But there is no contradiction here, because the LOOP macroexpander runs at, well, macroexpansion time, which will happen in the host Common Lisp system during bootstrapping. After that, there is no trace of the LOOP macro.

    One of the first modules I started was the "sequence functions" module. It has taken me three attempts to finally have an acceptable strategy for how to do it. And I haven't even finished implementing the module according to that strategy (which is in the ELS paper this year).

    My secret hope is that the SICL modules will be better than the native ones in many respects, so that implementations would prefer the SICL ones. The net result would be that we can cut down on total maintenance of all Common Lisp implementations. The only remaining part is that, once I have all the modules (I pretty much do), there would be no reason to refrain from creating a complete Common Lisp implementation out of them.

    I think in SICL, because I have faster generic dispatch, fewer things would be made out of ordinary functions and built-in classes, and more things out of generic functions and standard classes. That way, it would be easier to create subclasses, or entirely different classes participating in the same protocol.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/SICP.html b/clones/lisp/www.cliki.net/SICP.html deleted file mode 100644 index 32e779b6..00000000 --- a/clones/lisp/www.cliki.net/SICP.html +++ /dev/null @@ -1,72 +0,0 @@ - - - - - CLiki: SICP - - - - - - - -
    SICP

    Structure and Interpretation of Computer Programs

    You come in with a mind full of mush,
    -and you leave thinking like a computer scientist.

    The famous Wizard Book by Harold Abelson and Gerald Jay Sussman with Julie Sussman. The text of this book is available for free:

    - - - - - - - - - - - - - - - -

    There's a pdf here. -There should also be a copy at -archive.org.

    HTML (official)http://mitpress.mit.edu/sicp/
    PDFhttp://deptinfo.unice.fr/~roy/sicp.pdf
    PDF with vector graphicshttp://sicpebook.wordpress.com/
    Texinfo -http://www.neilvandyke.org/sicp-texi/

    A series of video lectures taught by two of the authors is also available for free, filmed at Hewlett-Packard in July 1986.

    Another set of video lectures at Ars Digita University.

    A torrent for the lectures http://www.ciz.fi/~oherrala/sicp-lecture-videos.torrent

    A course at Berkeley CS61A: Structure and Interpretation of Computer Programs.

    Although the book uses Scheme, it is certainly one of the great lisp books.

    - http://eli.thegreenplace.net/tag/sicp Exercises done in Common Lisp

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/SLIK.html b/clones/lisp/www.cliki.net/SLIK.html deleted file mode 100644 index 434ff800..00000000 --- a/clones/lisp/www.cliki.net/SLIK.html +++ /dev/null @@ -1,66 +0,0 @@ - - - - - CLiki: SLIK - - - - - - - -
    SLIK
    SLIK (Simple Lisp Interface Kit) is a CLOS-based GUI toolkit that provides a thin abstraction layer over CLX. SLIK is part of PRISM, a radiation therapy planning system developed at Radiation Oncology Department, University of Washington, Seattle.

    Both source code and documentation are available. You can also download the entire PRISM system, which includes SLIK, and of course includes lots of examples.

    Although it was originally developed for Allegro CL, SLIK also compiles and runs with CMUCL. There seem to be problems that prevent SLIK from running with CLISP, but more investigation is needed.

    N.B. The latest version no longer uses OpenGL and does not require the Mesa3D libraries. It will work with CLISP provided the CLX symbols are exported from the XLIB package.

    The main advantages of SLIK are: -

      -
    • ease of use -
    • -
    • limited footprint -
    • -
    • since the removal of OpenGL code, the entire remaining code is available under the Lisp Lesser GNU Public License (LLGPL). -
    • -
    -A few disadvantages: -
      -
    • widgets have a simple look more similar to that of a control panel rather than that of modern user interface toolkits. However, the look and feel of the widgets can be somewhat customised with parameter changes. -
    • -
    • only basic widgets are available (add more and send the code back to UW - they will add it in) -
    • -

    Bugs in the demos

    The previously noted bug concerning the handling of graphic contexts in the demos has been fixed, and the manual now explains how graphic contexts are obtained from named colors.

    The sample2 demo has another bug with CMUCL: when the needle of the dialbox is turned to an angle greater than 90 degrees, the program crashes. This is due to a wrong declaration statement [which declaration?] in the drawing function. Commenting out the declaration should fix the bug.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/SLIMA.html b/clones/lisp/www.cliki.net/SLIMA.html deleted file mode 100644 index 9acfb0bb..00000000 --- a/clones/lisp/www.cliki.net/SLIMA.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: SLIMA - - - - - - - -
    SLIMA
    SLIMA is an Atom plugin for interactive Common Lisp development. It supports most of the major features of SLIME, including an interactive debugger and object inspector. SLIMA was forked from atom-slime for maintenance purposes.

    Repository: https://github.com/neil-lindquist/SLIMA


    -IDE, MIT-LICENSE
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/SLIME Features.html b/clones/lisp/www.cliki.net/SLIME Features.html deleted file mode 100644 index afcdec0d..00000000 --- a/clones/lisp/www.cliki.net/SLIME Features.html +++ /dev/null @@ -1,253 +0,0 @@ - - - - - CLiki: SLIME Features - - - - - - - -
    SLIME Features
    This is an evolving description of the features available in SLIME. This screenshot (follow link for larger image) shows a visual overview. We'll refer to it in the detailed descriptions:

    -
    SLIME Screenshot on OSX -

    In standard good community spirit, everyone is invited to make corrections and improvements to the text below. When the rate of change dies down a little this page will be converted into a texinfo manual.

    Read-Eval-Print-Loop (REPL)

    The SLIME Read-Eval-Print-Loop pops up in a buffer called *slime-repl* as soon as Emacs connects to Lisp. The REPL buffer is like the traditional *inferior-lisp* buffer, but with tighter integration between Emacs and Lisp. Parts of the top-level are written in Emacs Lisp, so Emacs always knows where the prompt is and it can tell the difference between return values and printed output. The REPL also uses the SLIME debugger automatically.

    You can see the REPL in the top-right quarter of the screenshot (below the debugger). Note that separate pretty colours are used for the prompt, user input, printed output, and the results of expressions you enter.

    The *slime-repl* buffer has most of the slime-mode keybindings, plus these additional ones:

      -
    • -Return - Either sends the current line to Lisp for evaluation or, if the line isn't complete (unmatched parens), open and indent a new line.
    • -
    • -Control-Return - Close any unmatched parenthesis and then send the current line to Lisp for evaluation.
    • -
    • -C-c C-c - Interrupt the Lisp process with SIGINT. This typically signals a condition and pops you into the SLIME debugger. It does not appear to work reliably with multithreaded Lisps due to signaling ambiguity.
    • -
    • -TAB - Complete the Lisp symbol at point.
    • -

    Debugger

    SLIME has its own custom Emacs-integrated debugger. Any time Lisp is evaluating a request for Emacs the *DEBUGGER-HOOK* is bound such that the Emacs debugger will be used for any errors. When the debugger is triggered an Emacs buffer pops up saying what the error is, which restarts are available, and displaying a part of the backtrace. You can see the debugger in the top-right corner of the screenshot above.

    Initially only a single line from the backtrace is shown. You can fetch more blocks of frames just by moving the point down onto --more-- at the end of the buffer.

    The debugger remains active until a restart provokes it to return. However, it is possible to use regular SLIME commands from inside the debugger, and any errors in these commands will cause the debugger to be entered recursively.

    The following commands invoke restarts:

      -
    • -0 .. 9 - Invoke a restart by number.
    • -
    • -q - Throw to the top-level.
    • -
    • -a - Invoke the ABORT restart.
    • -
    • -c - Invoke the CONTINUE restart.
    • -

    There are also commands for poking around in the frame at point:

      -
    • -v - Show the current frame's source expression in a buffer.
    • -
    • -t - Toggle verbose display of the frame at point. The verbose version includes all local variables and CATCH tags.
    • -
    • -l - Show local variables.
    • -
    • -e - Evaluate an expression from inside a frame.
    • -
    • -d - Evaluate an expression and display the result in -an extra buffer.
    • -
    • -i - Evaluate an expression and inspect the -result.
    • -
    • -: - Evaluate an expression (in the global environment).
    • -
    • -D - Disassemble the code of the current frame.
    • -
    • -r - Restart execution of the frame with -the same arguments as it was called originally. (Not supported by -all backends.) -
    • -
    • -R - Return a value from the current frame. (Not supported by -all backends.) -
    • -

    Motion between frames:

      -
    • -n - Move to the next frame.
    • -
    • -p - Move to the previous frame.
    • -
    • -M-n - Detail-move to the next frame. This switches the current frame to a one-line summary, then moves to the next frame, displays it verbosely in the backtrace (as with t), and shows the corresponding source expression (as with v).
    • -
    • -M-p - Detail-move to the previous frame.
    • -

    Edit Definition

    Many Lisps save the source location for functions. SLIME uses this -information to find the definition of a specific symbol. You don't -need to maintain a separate "tags table" for this feature.

    -
    M-.
    -
    Jump to the definition of the symbol at point.
    -
    M-,
    -
    Jump back from a function definition.
    -

    SLIME pushes the current position to a stack before jumping to the -definition. M-, pops the top element of this stack and -jumps to the saved position.

    It is recommended that you install the source code of your -implementation (you can learn many tricks by reading the source). For -CMUCL you should set the target search list in your .cmucl-init.lisp -to tell CMUCL where you installed the source, e.g.: -

    (setf (search-list "target:") '("/opt/cmucl/src/"))

    For SBCL you should define the corresponding logical pathname -translations, e.g.: -

    (setf (logical-pathname-translations "SYS") - '(("SYS:SRC;**;*.*.*" #P"/opt/sbcl/src/**/*.*") - ("SYS:CONTRIB;**;*.*.*" #P"/opt/sbcl/contrib/**/*.*")))

    Documentation

    SLIME, like ILISP, has a version of Erik Naggum's Common Lisp Hyperspec access package. Out of box, it points to an online version of the HyperSpec. If for some reason you wish to use a locally downloaded copy of the HyperSpec, you can. Place in your .emacs: -(setq common-lisp-hyperspec-root "file:/usr/local/lisp/CLHS6/HyperSpec/") -replacing the local file URL with the appropriate local file URL of the downloaded and uncompressed HyperSpec for your system. -[The package now picks up Map_Sym.txt location automatically, AFAIK?]

    [strictly speaking, a wider emacs feature] -You may or may not like the built in emacs web browser. If you wish to use an alternative one to read the HyperSpec, then the emacs customisation setting "Browse Url Browser Function" lets you pick which browser to open.

    Compilation

    SLIME provides commands for compiling files, definitions, buffers, -regions, and systems. When compiling files and systems the compiled -code is stored in fasl files on disk. When compiling definitions, -buffers, or regions the code is only kept in memory and not written to -files.

    -
    C-c C-c
    -
    Compile the current toplevel form.
    -
    M-x slime-compile-region
    -
    Compile the region.
    -
    C-c C-k
    -
    Compile the current buffer's file and load the resulting fasl file. - The fasl file is only loaded if the compilation was successful.
    -
    C-c M-k
    -
    Compile (but not load) the current buffer's file.
    -
    C-c C-l
    -
    Load buffer's file.
    -
    M-x slime-load-system
    -
    Ask for the name of a system, compile the modified files and load - the system.
    -

    Compiler Warnings Commands

    SLIME collects the warnings generated by the compiler and provides -commands to find the corresponding source location and to display the -compiler messages. SLIME annotates the source code corresponding to -warnings with mouse sensitive overlays. The message for the overlay -is displayed in the minibuffer when the mouse pointer is above the -overlay.

    -
    M-n
    -
    Go to and describe the next compiler warning in the buffer.
    -
    M-p
    -
    Goto the previous form with a compiler note.
    -
    M-x slime-list-compiler-notes
    -
    Display all compiler warnings of the last compilation in a - separate buffer. The warnings in this buffer are clickable and - pressing RET highlights the corresponding source form.
    -

    Evaluation

    -Evaluation commands are useful for testing small parts of Lisp -programs, without the need to type them into the REPL.

    -
    C-c :
    -
    Read a single Lisp expression in the minibuffer, evaluate it, - and print the value in the echo area (slime-interactive-eval). -
    -
    C-x C-e
    -
    Evaluate the Lisp expression before point, and print the value in - the echo area (slime-eval-last-sexp').
    -
    C-M-x
    -
    Evaluate the toplevel form containing or after point, and print - the value in the echo area (slime-eval-defun).
    -
    C-c C-p
    -
    Evaluate the Lisp expression before point, and pretty-print the - value(s) into a new display buffer - (slime-pprint-eval-last-expression).
    -
    M-x slime-eval-region
    -
    Evaluate all the Lisp expressions in the region.
    -
    M-x slime-eval-buffer
    -
    Evaluate all the Lisp expressions in the buffer.
    -
    C-x M-e
    -
    Evaluate the Lisp expression before point, print the value in - the echo area and display the output buffer - (slime-eval-last-expression-display-output).
    -
    C-c C-u
    -
    Remove the function binding for the symbol at point - (slime-undefine-function).
    -

    C-c : is the most basic command for evaluating a Lisp -expression interactively. Emacs reads the expression as string from -the minibuffer and sends it together with the value of -slime-buffer-package (the Lisp package associated with -the current buffer) to Lisp. Lisp reads the string in the package, -evaluates the form and sends the printed result as string back to -Emacs and Emacs displays the result in the echo area.

    slime-buffer-package is a buffer local variable and -contains the name found in the nearest in-package form. If -the buffer contains no in-package form, Lisp uses the current -package (*package*).

    The C-x C-e and C-M-x commands are -similar to C-c :, but don't read the expression from the -minibuffer. C-x C-e uses the sexp before point and -C-M-x the toplevel form after or around point. A -toplevel form is a sexp with the opening paren in the first -column.

    Defvar Hack: C-M-x treats forms starting -with defvar specially. The variable is reset, if it is -already bound. So C-M-x turns a defvar -effectively into a defparameter. C-x C-e does -not treat defvar specially.

    Tip: slime-complete-symbol can be used to complete -the symbol around point. It is bound to M-TAB in Lisp -buffers and to TAB in the minibuffer.

    Inspector

    -

    slime-mode keybindings overview

    Here is the summary of keybindings in slime-mode offered by C-h m (describe-mode). A sensible subset of these commands is also available in the *slime-repl* buffer.

    -SLIME: The Superior Lisp Interaction Mode for Emacs (minor-mode).
    -
    -Commands to compile the current buffer's source file and visually
    -highlight any resulting compiler notes and warnings:
    -C-c C-k	- Compile and load the current buffer's file.
    -C-c M-k	- Compile (but not load) the current buffer's file.
    -C-c C-c	- Compile the top-level form at point.
    -
    -Commands for visiting compiler notes:
    -M-n	- Goto the next form with a compiler note.
    -M-p	- Goto the previous form with a compiler note.
    -C-c M-c	- Remove compiler-note annotations in buffer.
    -
    -Finding definitions:
    -M-.	- Edit the definition of the function called at point.
    -M-,	- Pop the definition stack to go back from a definition.
    -
    -Programming aids:
    -C-c TAB	- Complete the Lisp symbol at point. (Also M-TAB.)
    -C-c RET	- Macroexpand once.
    -C-c M-m	- Macroexpand all.
    -
    -Cross-referencing (see CMUCL manual):
    -C-c C-w c	- WHO-CALLS a function.
    -C-c C-w r	- WHO-REFERENCES a global variable.
    -C-c C-w s	- WHO-SETS a global variable.
    -C-c C-w b	- WHO-BINDS a global variable.
    -C-c C-w m	- WHO-MACROEXPANDS a macro.
    -C-M-.		- Goto the next reference source location. (Also C-c C-SPC)
    -
    -Documentation commands:
    -C-c C-d	- Describe symbol.
    -C-c C-a	- Apropos search.
    -C-c M-d	- Disassemble a function.
    -
    -Evaluation commands:
    -C-M-x	- Evaluate top-level from containing point.
    -C-x C-e	- Evaluate sexp before point.
    -C-c C-p	- Evaluate sexp before point, pretty-print result.
    -

    Documentation

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/SLIME Tips.html b/clones/lisp/www.cliki.net/SLIME Tips.html deleted file mode 100644 index 9fccf1dc..00000000 --- a/clones/lisp/www.cliki.net/SLIME Tips.html +++ /dev/null @@ -1,120 +0,0 @@ - - - - - CLiki: SLIME Tips - - - - - - - -
    SLIME Tips
    This page is for collecting tips for avoiding problems with and making the best use of SLIME, the Emacs-based Lisp development environment

      -
    • -No REPL by default: Slime no longer gives you a REPL by default, as you can use slime without a REPL. To specify that you want one (see file NEWS): -
      -(slime-setup '(slime-repl))
      -
      -
    • -Connecting automatically: Making slime connect to your lisp automatically when you open a lisp file. -
      -(defun cliki:start-slime ()
      -  (unless (slime-connected-p)
      -    (save-excursion (slime))))

      (add-hook 'slime-mode-hook 'cliki:start-slime) -

    • -
    • -Multiple sessions: By using C-u M-x slime you are given the option of starting additional Lisp processes and connecting to them, resulting in multiple REPL buffers. The lisp-mode buffers will use the most recently opened connection, unless you cycle to another with M-x slime-cycle-connection -
    • -CLISP: When using SLIME with CLISP, be sure to invoke the Lisp process (using C-u M-x slime) as "clisp -K full" to include the full linking set. The default base linking set does not include the REGEXP module, upon which SLIME depends. Failure to use a linking set including the REGEXP module causes SLIME to complain about the missing REGEXP package.

      Alternatively, you can set inferior-lisp-program in your .emacs file to the correct executable and args: -

      -(setq inferior-lisp-program "clisp -K full")
      -
      -
    • -FAIRLY-STABLE: Sometimes the current version of SLIME in CVS is broken. If your copy doesn't work, it's recommended that you update to the FAIRLY-STABLE CVS tag. The CVS incantation is: -
      -cvs update -r FAIRLY-STABLE .
      -
      -Generally speaking the FAIRLY-STABLE tag is set immediately before some dangerous changes are being made. Thus during periods of general stability it may be quite out-of-date and less featureful than the current version. -
    • -Cygwin: . Starting an inferior lisp in Windows NT Emacs and using Cygwin (e.g., starting the CLisp that comes with Cygwin) may produce errors of this sort: -
      -...A file with name /c/cygwin/usr/share/emacs/site-lisp/slime/swank-loader does not exist...
      -
      -One easy fix is to mount the Windows volume under the Cygwin root: -
      -mkdir /c
      -touch /c/NOT_MOUNTED
      -mount C:\\ /c
      -
      -
    • -Indentation: If your emacs indents Common Lisp code in Emacs Lisp style (i.e. "if" has the then-form and else-form in different columns), add something like this to your ~/.emacs:

      -(add-hook 'lisp-mode-hook
      -          (defun my-lisp-mode-hook ()
      -            (set (make-local-variable 'lisp-indent-function)
      -                 'common-lisp-indent-function)))
      -

      Alternatively, try adding the following in your ~/.emacs: -

      -(slime-setup)
      -
      -
    • -Styled SLDB: If you're feeling artistic you can use M-x customize-group slime-debugger to make the debugger pretty.
    • -CL-SDL: If you are experiencing nasty freezes and errors with CL-SDL OpenGL programs and Nvidia proprietary binary linux opengl drivers with SLIME on CMUCL, place (defparameter swank:*communication-style* :spawn) in ~/.swank.lisp to switch away from the :SIGIO SWANK communication method to avoid hairy signal handling problems.

    • -
    • -Unicode: If pain results when you try entering nice Unicode symbols, try something like the following your .emacs:

      -(set-language-environment "UTF-8")
      -(setq slime-net-coding-system 'utf-8-unix)
      -

      (This is taken from a blog entry, where he goes on to say: A Unicode aware Lisp implementation such as Clisp or SBCL and Emacs version 21.4 or greater. I won't go into setting those up here, but in Gentoo you'll need to be sure SBCL is emerged with the "unicode" USE flag, and Emacs with the "leim" use flag and some tweaking to the ebuild.) -

    • -Restoring clobbered user keybindings: In its default configuration, slime clobbers the keybinding C-c x which is supposed to be reserved for the user according to official guidelines. You can workaround this, by adding the following snippet to your .emacs file: -
      (defun slime-sanitize-bindings ()
      -  "Removes SLIME's keybinding on C-c x"
      -  (cond ((boundp 'slime-mode-map)
      -         (define-key slime-mode-map (kbd "C-c x") nil)
      -         (message "slime keybinding C-c x has been sanitized"))
      -        ('t (message "slime keybindings not sanitized"))))
      -(add-hook 'slime-mode-hook 'slime-sanitize-bindings)
      -
      -
    • -Tramp connection to another computer: You can use tramp to edit lisp files on a remote server. When you tell slime to compile-and-load or go to definition slime will automatically translate the filename between the workstation and the lisp server. This is setup with the slime-create-filename-translator function. For an example of all you can do with this, see http://paste.lisp.org/display/17592 -
    • -


    -Can anyone say whether it's possible to use SLIME in conjunction with attachtty? In particular, I'm wanting to connect to a Linux box running CMUCL/detachtty from my Mac running OS X. attachtty from the command line works fine, but that's not terribly useful. :-) Trying to use SLIME just specifying inferior-lisp-mode as the attachtty command line results in numerous errors which appear to be from SLIME trying to load its files (locally in /Users/me/whatever) on the Linux box (obviously they aren't there).

    Actually, you don't even need detachtty. But still I prefer to use it, so that I can attach back to it if something breaks even the swank server (e.g. entering the debugger). You have to add something like the following to your application:

    (swank:create-server)

    Then you can use SLIME's slime-connect command.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/SLIME-HOWTO.html b/clones/lisp/www.cliki.net/SLIME-HOWTO.html deleted file mode 100644 index ce30d548..00000000 --- a/clones/lisp/www.cliki.net/SLIME-HOWTO.html +++ /dev/null @@ -1,92 +0,0 @@ - - - - - CLiki: SLIME-HOWTO - - - - - - - -
    SLIME-HOWTO
    This is a collection of information about using SLIME - a proto-manual.

    Getting SLIME

    SLIME is available in GNU/Linux distributions (see below) and from version control ( github link ). It works with GNU Emacs version 20+ and XEmacs 21, and with CMUCL 18e+, recent SBCLs, OpenMCL 0.14, and recent LispWorks. The fundamental features work with all Lisp backends, though for overall featurefulness CMUCL > SBCL > OpenMCL ~= LispWorks at present.

    A manual for SLIME is available. In html or format.

    The commands to paste are:

    -cvs -d :pserver:anonymous@common-lisp.net:/project/slime/cvsroot login
    -# Password is "anonymous"
    -cvs -d :pserver:anonymous@common-lisp.net:/project/slime/cvsroot checkout slime
    -

    The current CVS sources are usually reasonably stable. During times of heavy hacking, the tag FAIRLY-STABLE is set to a reasonably up-to-date working copy. If you hit troubles, you may want to fall back to this version for a while. -To get the FAIRLY-STABLE version, type:

    -cvs -d :pserver:anonymous@common-lisp.net:/project/slime/cvsroot checkout -r FAIRLY-STABLE slime

    -

    Installation

    Installing SLIME just means putting it into your Emacs load-path and enabling it when you enter lisp-mode. Once the Emacs code is loaded, the Common Lisp code is compiled and loaded automatically and on-demand.

    Here is the Elisp code. You can paste this into your ~/.emacs after changing the path on the first line to suit your installation.

    -(add-to-list 'load-path "/the/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)))
    -;; Optionally, specify the lisp program you are using. Default is "lisp"
    -(setq inferior-lisp-program "yourlisp") 
    -

    Starting SLIME

    The easiest way to start is M-x slime. This starts a Lisp process in *inferior-lisp* and has it compile and start the SLIME server ("Swank"). Emacs then automatically connects to Lisp with a TCP socket. If you give a prefix argument (C-u M-x slime) then SLIME will prompt for the command to start Lisp (otherwise it uses inferior-lisp-program).

    Alternatively, it is possible to start Lisp however you like and then later start the server manually. Load swank-loader.lisp, which will automatically load the other files (and recompile them if necessary), and initialize Swank:

    - (load "/path/to/swank-loader.lisp")
    - (swank-loader:init)
    -
    - -Then you can start the server on (for example) port 4005 like this:

    -(swank:create-server :port 4005)
    -

    If you need the swank server to stay running then use this command instead:

    -(swank:create-server :port 4005 :style :spawn :dont-close t)
    -

    The server will listen for one connection from Emacs. To make that connection, use M-x slime-connect.

    Note: Although it is possible to connect to a Lisp on a remote machine, we haven't yet figured out what does and doesn't work without a shared filesystem.

    Note: If you don't get *slime-repl* buffer and only *inferior-lisp* buffer after starting slime, probably you should check if localhost is set correctly. Also see here.

    Using SLIME

    One you're up and running, you can start exploring the SLIME Features.

    SLIME Distributions

    On Debian Linux you can install SLIME through apt-get install slime. Note that you will still have to apt-get install an emacs of your choice to make it work. On Gentoo GNU/Linux you can install SLIME via the command emerge slime-cvs. This will install a SLIME integrated nicely with the rest of the Emacs and Common Lisp infrastructure.

    Other "Getting Started with SLIME" Guides

    The Common Lisp Cookbook – Getting started
    - -SLIME & OpenMCL & OS X by David Steuber.
    - -SLIME & Allegro & Windows by Bill Clementson.
    - -SLIME with 3 Windows CL Implementations by Bill Clementson.
    - -SLIME with LispWorks Personal on Windows by Bill Clementson.
    - -Reconnecting to a running Lisp with SLIME by Bill Clementson.
    - -Reconnecting to a Lisp running in a remote FreeBSD jail with SLIME via ssh by Ng Pheng Siong.
    -Some undocumented SLIME features by Bill Clementson.
    -SLIME & SBCL & Windows Vista.
    -Installing CLISP, Emacs, and SLIME on Windows XP by Peter Christensen
    -Installing SBCL, Emacs, and SLIME on Windows XP by Peter Christensen
    -Using Slime over SSH by Any Sloane


    -Getting Started Documentation
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/SLIME.html b/clones/lisp/www.cliki.net/SLIME.html deleted file mode 100644 index ac24a608..00000000 --- a/clones/lisp/www.cliki.net/SLIME.html +++ /dev/null @@ -1,88 +0,0 @@ - - - - - CLiki: SLIME - - - - - - - -
    SLIME
    SLIME is the Superior Lisp Interaction Mode for Emacs. This is an ILISP-like development environment intended for maximum integration with CMUCL (also works with SBCL, OpenMCL and work is ongoing on Lispworks and current version of CLISP and CLISP 2.32 on Linux; there is also support packaged separately for Scheme48, called SLIME48).

    SLIME is now stable and released. Please download the latest version from its home page. Documentation is included there. -NOTE: slime-2.0 is too old for use with current versions of SBCL. Fetch slime from CVS.

    Want to try SLIME? Check out the SLIME-HOWTO or read about the SLIME Features. You can also check out some SLIME Tips.

    Users are invited to post feature suggestions on this page.

      -
    • Ability to pin certain things (arglist info, debugger, repl) into dedicated frames for nice multi-window operation -- Zach -
    • -
    • Make the slime faces inherit from the standard font-lock faces when appropriate (eg making the REPL output face inherit from font-lock-comment-face) -- Brian -
    • -
    • -Note: Although it is possible to connect to a Lisp on a remote machine, we haven't yet figured out what does and doesn't work without a shared filesystem. Maybe this can be made tramp-aware? -- Rahul Jain Clear *use-dedicated-output-stream* before connecting works for me so far. -- ngps -
    • -
    • Autodetection of LINEDIT (or other random REPL wrappers) and calling LINEDIT's UNINSTALL-REPL before running SWANK. I tried to add something in slime-maybe-start-lisp in slime.el to do so, but comint-proc-query was uncooperative and kept hanging. -- James A. Crippen -
    • -
    • Some REPL conveniences, such as ILISP's C-z P (set package).
      -The SLIME equivalent of the latter is SLIME-REPL-SET-PACKAGE, anything else?
    • -
    • Some way to get a REPL in the current debugger frame, for more serious -playing around
      I second the motion. It would be very useful to keep a record - of what was evaluated and what printed, sort of like a - ... read-eval-print loop! It's amazing that this crucial feature of - Lisp was discarded in the SLIME model; its absence really detracts from - usability. - Drew McDermott -- 2005-12-09.
      -I would also very much like this feature! -Lars Rune Nøstdal -
    • -
    • Working symbol-completion when you enter expressions in the mini-buffer
    • -
    • "Getting ILISP working was a nightmare. Getting SLIME working was a breeze, even though I had to check it out of CVS" (Steve Jenson, saladwithsteve.com) -
    • -
    • If your connection to ssh forwarded swank server doesnt work, try to (setf swank::*use-dedicated-output-stream* nil) -
    • -
    • Maybe: Visit a file "through" the lisp process: slime instructs lisp process to open the file and squirt it across connection back to an emacs buffer. When buffer is saved in emacs, squirt back to lisp process. Potentially very nice for long-lived lisp server processes (provided your slimeswank is a secure channel!), and skirts the whole path-translations thing: the only correct path is the path the lisp process uses i.e. you're not doing C-xC-f emacs-file-path, you're doing C-cC-xC-f (or something saner) CL-file-path. (obviously, you'd provide tab completion for CL-file-path, too ;-) ) See the variable `file-name-handler-alist' for how you might want to do this. -
    • -
    • How about unified directory access! I know there are some packages out there, but it would be wonderful to have this come with slime. It would be nice to have it as a part of the development environment. It's hard for me to switch between different implementations of CL otherwise. (for example, (:cd "dir") doesn't work when using SLIME with OpenMCL...) Update: I found directory functionality by typing a comma then entering 'cd' into the minibuffer. SLIME RULES! -
    • -
    • It would be nice if I could have fixed Emacs windows for different SLIME buffers. Like, if I evaluate something and the debugger pops up, I never know where it's going to be (I usually have several Emacs frames and windows open). I would like to say "this will be the REPL window, and I want nothing else there" -- another window for the debugger, another for Lisp code etc. - You can kind of do this with the Emacs Code Browser, if you tell it the repl is a compilation window. It provides a fixed and togglable compilation window at the bottom of the first frame.
    • -

    To add a note about using the standard font-lock faces, the keywords from the appropriate mode should also be used. That is, SLIME should use the lisp-mode-font-lock-keywords-... variables. I have diffrerent ones for Common Lisp, Scheme, and Emacs Lisp, so it would be nice to have this customizable for SLIME. Or better yet, since Emacs's default keywords for Lisp are pretty ELisp-centric maybe SLIME should provide its own set of Common Lisp--centric font-lock keywords, leaving the user to decide whether to copy those for Emacs's Lisp-mode or not. -- James A. Crippen

    Sounds a good idea to me. Can you post the code you use somewhere so we can use it as a basis? -- Luke Gorrie

    Some responses..

    A "Recent Changes" popup: Can you elaborate a bit? The ChangeLog file + the mailing list is supposed to fill this role, but feedback about the effectiveness would be appreciated. -- Luke Gorrie

    It might be nice to just add a link to the latest ChangeLog in CVS, like so -Latest ChangeLog. Stick that on the project home page. -- James A. Crippen Good idea. ChangeLog and mailing lists are now linked.

    Re: "Recent Changes Popup": Especially with the daily ChangeLog diff on the list, this is a solved problem for me at least. I suspect that people following -the CVS, but not the list deserve to lose (like I did...). OTOH: I can imagine having a busy month, then updating SLIME, and not noticing all the new goodies. ;) So in the bells and whistles department, SLIME offering to show it's own ChangeLog since last update would be kind of neat -- but definitely not a priority.

    As far as using slime remotely: if you have a shared filesystem but not with identical mountpoints, the patch included in this mail provides you with a M-x slime-replace-prefix function which causes a few uses of filenames to be translated (but only in the emacs->lisp direction).

    The full cygwin-windows cycle is translated by these hooks, working for any cygwin mountpoint. --ReiniUrban

    There is the beginnings of MP (threading) support in SLIME CVS. See the mailing list for details

    Slime Distributions

    Information, for fetching the source distribution, is available at the Slime homepage.

    For fetching Slime via cvs, information is available, also, at the Slime homepage.

    Debian packages

    Slime has got an -official Debian package.

    It is under the non-free section of Debian mostly because of the license of one -file (xref.lisp). So, should it stay on CLiki.net? -- alceste@NOSPAM.muvara.org

    Mac OS X

    -A fink package for Mac OS X (10.3) is also available in fink's unstable tree.

    Slime is available in MacPorts, current port is based on 20110419 CVS snapshot.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/SLUG.html b/clones/lisp/www.cliki.net/SLUG.html deleted file mode 100644 index 5032daa2..00000000 --- a/clones/lisp/www.cliki.net/SLUG.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: SLUG - - - - - - - -
    SLUG
    The Symbolics Lisp Users Group (SLUG) was the precursor to the ALU. It was founded by Symbolics (a company that manufactured Lisp Machines), and was primarily their way to help their customers come together and share success and war stories. Symbolics covered the vast majority of expenses in running the group.


    -Community
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/SNARK.html b/clones/lisp/www.cliki.net/SNARK.html deleted file mode 100644 index 16454a3e..00000000 --- a/clones/lisp/www.cliki.net/SNARK.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: SNARK - - - - - - - -
    SNARK
    SNARK (SRI's New Automated Reasoning Kit) is described as "an automated theorem-proving program" being developed in Common Lisp. Its principal inference rules are resolution and paramodulation. SNARK's style of theorem proving is similar to Otter's."

    SNARK is available here under the Mozilla Public License.

    Application Theorem Provers

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/SNMP.html b/clones/lisp/www.cliki.net/SNMP.html deleted file mode 100644 index bf7dfe16..00000000 --- a/clones/lisp/www.cliki.net/SNMP.html +++ /dev/null @@ -1,60 +0,0 @@ - - - - - CLiki: SNMP - - - - - - - -
    SNMP
    Simple Network Management Protocol

      -
    • -cl-net-snmp - - cl-net-snmp is an SNMP library for Common Lisp -
    • -
    • -Lisp-SNMP - - Lisp-SNMP is a library for remote system and network administration that uses the Simple Network Management Protocol (SNMP) -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/SNePS.html b/clones/lisp/www.cliki.net/SNePS.html deleted file mode 100644 index f16e5e69..00000000 --- a/clones/lisp/www.cliki.net/SNePS.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: SNePS - - - - - - - -
    SNePS
    SNePS (Semantic Network Processing System) is an AI system for building, using and retrieving information from propositional semantic networks. It includes an inference package (SNIP), a belief revision system (SNeBR), a natural language processing system (SNaLPS), a command language (SNePSUL), and a graphical editing and display environment for semantic networks (XGinseng).

    The project page provides the source code, which is distributed under the terms of the GPL. SNePS is known to run on a number of Lisp implementations including CLISP and CMUCL. Its GUI is based on Garnet.


    -Knowledge Representation Systems
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/SOUNDLAB.html b/clones/lisp/www.cliki.net/SOUNDLAB.html deleted file mode 100644 index 6a6ee4c3..00000000 --- a/clones/lisp/www.cliki.net/SOUNDLAB.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: SOUNDLAB - - - - - - - -
    SOUNDLAB
    Lazy signal synthesis based on combinators. Soundlab provides a language embedded in Common Lisp to synthesize and modulate signals from scratch.

    Written by Max Rottenkolber.


    -audio signal processing
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/SPLASH.html b/clones/lisp/www.cliki.net/SPLASH.html deleted file mode 100644 index def123bd..00000000 --- a/clones/lisp/www.cliki.net/SPLASH.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: SPLASH - - - - - - - -
    SPLASH
    SPLASH is a library for displaying interactive splash screens containing warnings, notices and other information. It currently runs under CLISP but it should be easy to port. A screen shot is available.

    The SPLASH site is http://quadium.net/code/splash/ and the package is distributed under the terms of the GPL.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/SPLIT-SEQUENCE.html b/clones/lisp/www.cliki.net/SPLIT-SEQUENCE.html deleted file mode 100644 index a11bb1f9..00000000 --- a/clones/lisp/www.cliki.net/SPLIT-SEQUENCE.html +++ /dev/null @@ -1,84 +0,0 @@ - - - - - CLiki: SPLIT-SEQUENCE - - - - - - - -
    SPLIT-SEQUENCE
    SPLIT-SEQUENCE (formerly known as PARTITION) is a member of the Common Lisp Utilities family of programs, designed by community consensus.

    See also cl-ppcre:split.

    Function SPLIT-SEQUENCE, SPLIT-SEQUENCE-IF, SPLIT-SEQUENCE-IF-NOT

    Syntax:

    split-sequence delimiter sequence &key count remove-empty-subseqs from-end start end test test-not key => list, index

    split-sequence-if predicate sequence &key count remove-empty-subseqs from-end start end key => list, index

    split-sequence-if-not predicate sequence &key count remove-empty-subseqs from-end start end key => list, index

    Arguments and Values:

    -
    delimiter
    -
    an object.
    -
    predicate
    -
    a designator for a function of one argument that returns a generalized boolean.
    -
    sequence
    -
    a proper sequence.
    -
    count
    -
    an integer or nil. The default is nil.
    -
    remove-empty-subseqs
    -
    a generalized boolean. The default is false.
    -
    from-end
    -
    a generalized boolean. The default is false.
    -
    start, end
    -
    -bounding index designators of sequence. The defaults for start and end are 0 and nil, respectively.
    -
    test
    -
    a designator for a function of two arguments that returns a generalized boolean.
    -
    test-not
    -
    a designator for a function of two arguments that returns a generalized boolean.
    -
    key
    -
    a designator for a function of one argument, or nil.
    -
    list
    -
    a proper sequence.
    -
    index
    -
    an integer greater than or equal to zero, and less than or equal to the length of the sequence.
    -

    Description:

    Splits sequence into a list of subsequences delimited by objects satisfying the test.

    List is a list of sequences of the same kind as sequence that has elements consisting of subsequences of sequence that were delimited in the argument by elements satisfying the test. Index is an index into sequence indicating the unprocessed region, suitable as an argument to subseq to continue processing in the same manner if desired.

    The count argument, if supplied, limits the number of subsequences in the first return value; if more than count delimited subsequences exist in sequence, the count leftmost delimited subsequences will be in order in the first return value, and the second return value will be the index into sequence at which processing stopped.

    If from-end is non-null, sequence is conceptually processed from right to left, accumulating the subsequences in reverse order; from-end only makes a difference in the case of a non-null count argument. In the presence of from-end, the count rightmost delimited subsequences will be in the order that they are in sequence in the first return value, and the sec­ond is the index indicating the end of the unprocessed region.

    The start and end keyword arguments permit a certain subsequence of the sequence to be processed without the need for a copying stage; their use is conceptually equivalent to partitioning the subsequence delimited by start and end, only without the need for copying.

    If remove-empty-subseqs is null (the default), then empty subsequences will be included in the result.

    In all cases, the subsequences in the first return value will be in the order that they appeared in sequence.

    It should be noted that in Common Lisp, strings are sequences and therefore split-sequence can also be used to split strings, and splitting strings is one of the most common use of split-sequence. Notably, newbies often ask about split-string or some other wait to split strings. Split-sequence is the answer to the Common Lisp split string quest.

    Examples:

    - (split-sequence:SPLIT-SEQUENCE #\Space "A stitch in time saves nine.")
    -=>  ("A" "stitch" "in" "time" "saves" "nine.")
    -    28
    - (split-sequence:SPLIT-SEQUENCE #\, "foo,bar ,baz, foobar , barbaz,")
    -=>  ("foo" "bar " "baz" " foobar " " barbaz" "")
    -    30
    -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/SPath.html b/clones/lisp/www.cliki.net/SPath.html deleted file mode 100644 index a1cbfc2b..00000000 --- a/clones/lisp/www.cliki.net/SPath.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: spath - - - - - - - -
    spath
    SPath is a library for running search queries against s-expressions, intended to match parts of them that the user needs. It is inspired by s-query, the syntax of LOOP, and loosely by XPath; not that it has the full expressive power of XPath, but some of the stylistic choices and ideas were taken from there. In particular, SPath finds all instances of a match in the same sort of way as XPath.

    In other words, it's a DSL for pulling bits out of lists.

    The goal of SPath, like s-query, was to provide a means to easily dig around in XML structures when represented as s-expressions, but unlike s-query I tried to do it in a fashion agnostic to the XML generation system in question. I also consider it of general utility, because I get sick of writing nests of list operations.

    It was created by Robin Lee Powell, and is in the public domain.

    SPath requires Heresy.

    Documentation, such as it is, can be found at the SPath readme. The SPath test suite should also effectively document everything SPath can do, albeit not in a very readable fashion.


    -Topics: pattern matching
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/SQL.html b/clones/lisp/www.cliki.net/SQL.html deleted file mode 100644 index 6a1a6979..00000000 --- a/clones/lisp/www.cliki.net/SQL.html +++ /dev/null @@ -1,175 +0,0 @@ - - - - - CLiki: SQL - - - - - - - -
    SQL
    SQL (Structured Query Language) is a language for describing queries and updates against a relational database.

    See also Database and ORM.

    List of interface libraries to SQL databases: -

    List of CLOS ORM libraries: -

      -
    • -cl-perec - - cl-perec is a CLOS ORM based on cl-rdbms -
    • -
    • -CLSQL - - CLSQL is a Database interface that can access a number of different SQL database engines -
    • -
    • -CLSQL-ORM - - CLSQL-ORM is an library to generate clsql view-classes from existing databases, by introspecting on the "information_schema" of the running database -
    • -
    • -Mito - - An ORM for Common Lisp with migrations, relationships and PostgreSQL support -
    • -
    • -Submarine - - Submarine is a Common Lisp library that's somewhere between a PostgreSQL library and an object persistence system -
    • -
    • -YstokSQL - - YstokSQL is a Common Lisp library for interfacing relational Database via ODBC -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/SQLite Lisp interface.html b/clones/lisp/www.cliki.net/SQLite Lisp interface.html deleted file mode 100644 index 09823d46..00000000 --- a/clones/lisp/www.cliki.net/SQLite Lisp interface.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - CLiki: SQLite Lisp interface - - - - - - - -
    SQLite Lisp interface
    SQLite Lisp interface is an interface to the SQL database SQLite library. -It currently only works under Lispworks, and -can be found at http://members.optusnet.com.au/apicard/cl-sqlite-0.2.tar.gz

    Another SQLite interface, which works with version 3 and is CMUCL specific, can be -found at -http://www.randallsquared.com/download/sqlite/cmucl-sqlite3/ . It's in the Public Domain.

    CLSQL claims to support SQLite 2, and has some level of support for SQLite 3.

    clisp-sqlite is a clisp-specific binding for sqlite, with some extra sugar.

    cl-sqlite is a portable binding to SQLite3 (using CFFI).

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/SRFI.html b/clones/lisp/www.cliki.net/SRFI.html deleted file mode 100644 index 39772b0a..00000000 --- a/clones/lisp/www.cliki.net/SRFI.html +++ /dev/null @@ -1,138 +0,0 @@ - - - - - CLiki: SRFI - - - - - - - -
    SRFI
    Scheme Requests for Implementation (SRFI) are proposed language extensions to Scheme, but that doesn't stop people from implementing them for Common Lisp.

    Currently someone known as g000001 on github has implemented many dozens of SRFIs in Common Lisp. The projects are available at: https://github.com/g000001 under an MIT-style license.

    -

    SRFI-110 is implemented by readable.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/SSL-CMUCL.html b/clones/lisp/www.cliki.net/SSL-CMUCL.html deleted file mode 100644 index b21e6f88..00000000 --- a/clones/lisp/www.cliki.net/SSL-CMUCL.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: SSL-CMUCL - - - - - - - -
    SSL-CMUCL
    SSL-CMUCL is an interface to SSL streams for CMUCL. It uses FFI calls to the OpenSSL Cryptography libraries, and is based on the CMUCL fd-stream implementation. Read and write operations are dispatched to SSL_read and SSL_write instead of UNIX-READ and UNIX-WRITE. Both client and server support (using PEM-encoded X.509 certificates) is included, and there is support for SSLv2, SSLv3 and TLSv1.

    The code works with Mozilla, Firebird, Safari, and all tested versions of IE. Performance is quite reasonable: around 60 HTTPS transactions per second between two 1GHz i686 machines running Linux on FastEthernet, according to the siege benchmarking program.

    Also see the more portable CL-SSL bindings (using gray streams) by Jochen Schmidt, which are distributed as a component of the ACL-COMPAT library.

    SSL-CMUCL is available under GNU LGPL from www.chez.com/emarsden/downloads.

    networking

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/SWANK.html b/clones/lisp/www.cliki.net/SWANK.html deleted file mode 100644 index 26ba1768..00000000 --- a/clones/lisp/www.cliki.net/SWANK.html +++ /dev/null @@ -1,74 +0,0 @@ - - - - - CLiki: Swank - - - - - - - -
    Swank
    Swank is distributed as part of SLIME.

    It implements a wire protocol to access host lisp functionalities in a semi-portable way (it provides a portability layer for many useful bits missing in ANSI standard). Main library client is SLIME – an emacs mode for interacting with Common Lisp. Other library clients and forks include:

    Clients in Common Lisp: -

    Forks: -


    -wire format
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/SWIG.html b/clones/lisp/www.cliki.net/SWIG.html deleted file mode 100644 index 5de89490..00000000 --- a/clones/lisp/www.cliki.net/SWIG.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: SWIG - - - - - - - -
    SWIG
    SWIG is a (non-CL) tool that can generate FFI binding code from C/C++ header file declarations.

    SWIG can generate bindings for CFFI, UFFI, CLISP and ACL: http://www.swig.org/Doc2.0/Lisp.html

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/SWINE.html b/clones/lisp/www.cliki.net/SWINE.html deleted file mode 100644 index f77b520b..00000000 --- a/clones/lisp/www.cliki.net/SWINE.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: SWINE - - - - - - - -
    SWINE
    Swine is the addition of Slime editing commands to Climacs using Slime's SWANK backend.

    Hence the name: Slime + Swank = Swine.

    Swine was originally written by David Murray (Splittist) and is now being worked on by Dwight Holman.

    Swine is included with clim-desktop, which aims to make a complete Common Lisp environment.

    -


    -Swine is a Development tool.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/SYMTABLE.html b/clones/lisp/www.cliki.net/SYMTABLE.html deleted file mode 100644 index 2e49d720..00000000 --- a/clones/lisp/www.cliki.net/SYMTABLE.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: SYMTABLE - - - - - - - -
    SYMTABLE
    SYMTABLE is a simplistic symbol-table abstraction.

    Source repository: https://github.com/deepfire/symtable

    License: LGPL


    -Topics: machine code
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Sacla.html b/clones/lisp/www.cliki.net/Sacla.html deleted file mode 100644 index 51564ffa..00000000 --- a/clones/lisp/www.cliki.net/Sacla.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Sacla - - - - - - - -
    Sacla
    A partial metacircular Common Lisp implementation (Common Lisp written in portable Common Lisp) by Yuji Minejima.

    License: BSD

    Homepage: http://minejima.jp/lisp/sacla/index-en.html

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Saluto.html b/clones/lisp/www.cliki.net/Saluto.html deleted file mode 100644 index b7aae6d4..00000000 --- a/clones/lisp/www.cliki.net/Saluto.html +++ /dev/null @@ -1,109 +0,0 @@ - - - - - CLiki: Saluto - - - - - - - -
    Saluto
    Saluto is a submodule for RESTAS web-framework, which allow web-site users to be authorized with OAuth 2.0 protocol.

    Source code: https://github.com/dmitrys99/saluto

    Currently implemented OAuth 2.0 providers:

      -
    • Facebook -
    • -
    • VK.com -
    • -
    • OK.ru -
    • -
    • Github.com -
    • -
    • Google.com -
    • -
    • Mail.ru -
    • -

    Example usage:

    -(defun do-init-site () - (init-cache) - (init-db) - - (restas:mount-module saluto (#:saluto) - (:url "auth/") - (:inherit-parent-context t) - (saluto:*providers* (list - (make-instance 'saluto:oauth2-facebook.com - :name "facebook.com" - :app-id "<app-id>" - :app-private-key "<app-key>") - (make-instance 'saluto:oauth2-vk.com - :name "vk.com" - :app-id "<app-id>" - :app-private-key "<app-key>") - (make-instance 'saluto:oauth2-ok.ru - :name "odnoklassniki.ru" - :app-id "<app-id>" - :app-public-key "<app-key>" - :app-private-key "<app-private>"))) - (saluto:*store-userinfo-fun* - (lambda (info) - (when info - ;; Process user info, returned by OAuth provider, like this: - ;; (maybe-save-user info :cache-user t :session (session-identifier)) - ;; - ;; Structure of user info: - ;; '(:first-name <first name> - ;; :last-name <last-name> - ;; :email <email> - ;; :uid <user id at provider level> - ;; :avatar <user avatar URI> - ;; :provider <provider name>) - ))) - (saluto:*logged-in-p-fun* - ;; function, called to check if user logged or not - (lambda ())) - (saluto:*logout-fun* - ;; function, called on logout - (lambda (session) - ;; - ;; (delete-userauth-from-cache session) - )))) -

    To start login process point user to URI /auth/goto/provider, ex.: http://localhost:8080/auth/goto/vk.com/

    Topics: networking web API

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Salza.html b/clones/lisp/www.cliki.net/Salza.html deleted file mode 100644 index 757fef0a..00000000 --- a/clones/lisp/www.cliki.net/Salza.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: Salza - - - - - - - -
    Salza
    If you're writing new code, you probably want to check out Salza2, which is a from-scratch reimplementation, and is much faster and simpler (and maintained).

    Salza is a Common Lisp compression library that provides an FFI-less interface to the ZLIB and DEFLATE compressed data formats.

    Currently, Salza only compresses data, decompression is not implemented.

    Salza's PNG functionality is one of the backends of Yannick Gingras's Fract -fractal explorer. CL-PDF also uses this library for compression of pdf files.

    Salza is licensed under a BSD/MIT/X11-ish license.

    Download: http://www.xach.com/lisp/salza/salza-0.7.4.tar.gz


    -obsolete
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Salza2.html b/clones/lisp/www.cliki.net/Salza2.html deleted file mode 100644 index c9957cec..00000000 --- a/clones/lisp/www.cliki.net/Salza2.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Salza2 - - - - - - - -
    Salza2
    Salza2 is a native Common Lisp compression library for creating data in the DEFLATE, ZLIB, or GZIP compression formats. It does not yet support decompression. Take a look at chipz for a native Common Lisp library providing DEFLATE/ZLIB decompression.

    It is a from-scratch reimplementation of Salza, which suffered from some design mistakes that made it slower and harder to maintain than it needed to be.

    It is available under a BSD-style license. Full documentation is available on the Salza2 home page.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Sbcl.html b/clones/lisp/www.cliki.net/Sbcl.html deleted file mode 100644 index 5ea92ff9..00000000 --- a/clones/lisp/www.cliki.net/Sbcl.html +++ /dev/null @@ -1,171 +0,0 @@ - - - - - CLiki: SBCL - - - - - - - -
    SBCL
    Steel Bank Common Lisp is an open source / free software Common Lisp implementation. It provides an integrated native compiler, -interpreter, and debugger.

    SBCL is a fork off of the main branch of CMUCL. SBCL is -distinguished from CMUCL by a greater emphasis on maintainability. -In particular, the SBCL system can be built directly from its -source code, so that the output corresponds to the source code in -a controlled, verifiable way, and arbitrary changes can be made to -the system without causing bootstrapping problems. SBCL also -places less emphasis than CMU CL does on new non-ANSI -extensions, or on backward compatibility with old non-ANSI -features.

    More information at the project page at http://sbcl.sourceforge.net/, -and on the SBCL Internals CLiki

    Common-Lisp-Controller-compatible SBCL Debian (.deb) packages are -part of Debian GNU/Linux 3.0/Woody and Debian GNU/Linux 3.1/Sarge for Alpha, x86, PPC, and SPARC. Later releases -will include more architectures.

    Local pages

    Building 0.8.4 on SPARC

    The Sun's assembler doesn't like the GNU syntax used in the SBCL assembler sources, so something like the following is required:

    $ ln -s `which gcc` ~/bin/gcc
    -$ ln -s `which gas` ~/bin/as
    -$ export COMPILER_PATH=~/bin

    Also, when building from CMUCL you need to add the following stanza to src/cold/ansify.lisp:

    #+(and cmu sparc) 
    -(ext:set-floating-point-modes :traps '(:overflow :invalid :divide-by-zero))

    SBCL Advocacy Haiku

    (unless (equalp
    -         (lisp-implementation-type)
    -         "SBCL") (quit))

    #-sbcl(quit)

    Scripts

    -As of SBCL 1.0.22, shebang-scripts are supported via the --script option (add #!/usr/bin/sbcl --script as the first line). However, --script option changes the way initialization is performed (no sysinit (/etc/sbclrc) and no userinit (~/.sbclrc)).

    Older versions of SBCL don't tolerate shebang lines (CLISP does). To create an SBCL script, -manual/Shebang-Scripts.html -suggests using an external trampoline or init hair. That's silly. -An executable file without a shebang line defaults to sh. So an SBCL script is simply -

    $ cat foo
    -#|
    -exec sbcl --noinform --load $0 --end-toplevel-options "$@"
    -|#
    -(format t "hi~%")
    -(quit)
    -$ chmod a+x foo
    -$ ./foo
    -hi
    -$ 
    -To compile, simply -
    #|
    -fasl=`dirname $0`/`basename $0 .lisp`.fasl
    -[ $fasl -ot $0 ] && sbcl --noinform --eval "(compile-file \"$0\")" --eval "(quit)" > /dev/null
    -exec sbcl --noinform --load $fasl --end-toplevel-options "$@"
    -|#

    Installing SBCL from source not in /usr/local

    Unpack the source tarball.

    Set INSTALL_ROOT to where you want it to go.

    - export INSTALL_ROOT=$HOME
    -

    Now use this hack so it will look for the core file in the right place

    -  export CC="cc '-DSBCL_HOME=\"$INSTALL_ROOT/lib/sbcl/\"'"
    -  sh make.sh
    -  sh install.sh
    -

    -

    Using Common Lisp Controller with a self installed SBCL

    Put this in your .sbclrc

    -
    -(require 'sb-bsd-sockets) ; needed now because it does not gel well with the path munging by the common-lisp-controller
    -
    -(load "/usr/share/common-lisp/source/common-lisp-controller/common-lisp-controller.lisp")
    -(common-lisp-controller:init-common-lisp-controller-v4 "sbcl")
    -

    Adding GNU Readline support

    -Evgeniy Zhemchugov has written a GNU readline loader to get uparrow history and tab completion like in CLISP. Download or clone and load it from your ~/.sbclrc

    http://jini-zh.org/sbcl-readline/sbcl-readline.html

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Schedulers.html b/clones/lisp/www.cliki.net/Schedulers.html deleted file mode 100644 index 63009723..00000000 --- a/clones/lisp/www.cliki.net/Schedulers.html +++ /dev/null @@ -1,61 +0,0 @@ - - - - - CLiki: Schedulers - - - - - - - -
    Schedulers
    Scheduling of events/tasks/..., cron-like functionality, etc.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Scheme.html b/clones/lisp/www.cliki.net/Scheme.html deleted file mode 100644 index c0fd5aed..00000000 --- a/clones/lisp/www.cliki.net/Scheme.html +++ /dev/null @@ -1,70 +0,0 @@ - - - - - CLiki: Scheme - - - - - - - -
    Scheme
    Scheme is a statically scoped and properly tail-recursive dialect of the Lisp programming language designed by Guy Lewis Steele Jr. and Gerald Jay Sussman.

    Scheme and Common Lisp are the two main Lisp dialects in use today. They represent two opposite examples of how a language can evolve. Both Lisps look very much alike, especially if you are approaching them from the Java or C++ worlds. They are strangely full of parenthesis, for example. But they also have important differences, mainly as a result of their design philosophy. The more visible is their size. The main objective of the CL committee was to incorporate in the new language most of the features of the preceding Lisp dialects (a one and only, a 'Common' Lisp). In contrast, Scheme designers removed everything considered superfluous from the core (and left a core, with no standard libraries).

      -
    • Scheme doesn't have a specification for structures with named fields or object oriented programming, while there are some language implementations and libraries (non standardized) that include these and more. A macro facility was incorporated later to the standard, but it is not identical to its Common Lisp counterpart. Considered safer but more restrictive, Scheme macros are known as Hygienic Macros. -
    • -
    • -Scheme is a dialect of Lisp that stresses conceptual elegance and simplicity. It was also one of the first and few programming languages to fully support continuations. It is much smaller than Common Lisp; the language specification is about 50 pages, compared to Common Lisp's 1300 page draft standard. Advocates of Scheme often find it amusing that the entire Scheme standard is shorter than the index to Guy Steele's Common Lisp: the Language, 2nd Edition. Unlike the Scheme standard, the Common Lisp standard has a large library of utility functions, a standard object-oriented programming facility (CLOS), and a sophisticated condition handling system. -
    • -
    • Scheme was the first dialect of Lisp to use lexical variable scoping (or "static scoping"). -
    • -
    -Precisely because of these characteristics, Scheme has been used successfully in computer science courses. The SICP book of Abelson, Sussman and Sussman, and their courses at MIT, are the best example. There are few "real world use" examples of Scheme. Nevertheless, being small and clear, it can be very well used as an embedded language (as intended by the GNU Guile project). Certainly, good compilers can be found, including some in Java, but Scheme shines as a very efficient interpreted language.

    There has been some buzz recently about the benefits of using Continuation Passing Style (CPS) to facilitate user interaction in Web applications. UnCommon Web (UCW) is an example of how this can be done in Common Lisp. The acknowledged lisp writer and programmer Paul Graham is known to have applied a similar approach (using lexical closures to simulate subroutine-like behavior), among other many advantages given by Lisp, to program important parts of his successful web startup Viaweb (now Yahoo! Store). Considering that Scheme shares most of the benefits of Lisp and supports continuations natively, it clearly is a strong candidate for a continuation-based Web Framework.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Scheme88.html b/clones/lisp/www.cliki.net/Scheme88.html deleted file mode 100644 index 1782f447..00000000 --- a/clones/lisp/www.cliki.net/Scheme88.html +++ /dev/null @@ -1,91 +0,0 @@ - - - - - CLiki: Scheme88 - - - - - - - -
    Scheme88
    Scheme88 is a re-implementation of Indiana University's Scheme84 programming language to run in Common Lisp.

    Homepage: http://www.cs.cmu.edu/afs/cs/project/ai-repository/ai/lang/scheme/impl/scheme88/0.html

    License and copyright notice

    Copyright (c) 1985 Indiana University
    -
    -This material was developed by the Scheme Group at Indiana University
    -Department of Computer Science.  Permission to copy this software, to
    -redistribute it, and to use it for any purpose is granted, subject to
    -the following restrictions and understandings.
    -
    -1.  Any copy of this software must include this copyright notice in full.
    -
    -2.  Users of this software agree to make their best eforts (a) to return 
    -to Indiana University Computer Science Department Scheme Group any
    -improvements or extensions that they make, so that these may be included
    -in future releases; and (b) to inform Indiana University Computer Science
    -Department Scheme Group of noteworthy uses of this software.  
    -
    -3.  All materials developed as a consequence of the use of this software
    -shall duly acknowledge such use, in accordance with the usual standards
    -of acknowledging credit in academic research.
    -
    -4.  Indiana University has made no warrantee or representation that the
    -operation of this software will be error-free, and Indiana University
    -is under no obligation to provide any services, by way of maintenance,
    -update, or otherwise.
    -
    -5.  In conjuction with products arising from the use of this material,
    -there shall be no use of the name of Indiana University nor any adaptation
    -thereof in advertising, promotional, or sales literature without prior
    -written consent from Indiana University Computer Science
    -Department Scheme Group.
    -
    ---------------------------------------------------------------------------
    -
    -This version  was developed at Rice University Department of Computer
    -Science.  All guidelines and understandings above should apply in relation to
    -use and distribution of this material, in relation to the Rice University
    -Computer Science Department.
    -
    -Rice University has made no warrantee or representation that the operation
    -of this software will be error-free, nor will be fully compatible with
    -existing source code.  Rice University is under no obligation to provide
    -any services:  maintenance, update, or otherwise.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Science.html b/clones/lisp/www.cliki.net/Science.html deleted file mode 100644 index 357a8322..00000000 --- a/clones/lisp/www.cliki.net/Science.html +++ /dev/null @@ -1,72 +0,0 @@ - - - - - CLiki: Science - - - - - - - -
    Science
    Natural Science libraries:

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Scone.html b/clones/lisp/www.cliki.net/Scone.html deleted file mode 100644 index 79d35650..00000000 --- a/clones/lisp/www.cliki.net/Scone.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Scone - - - - - - - -
    Scone
    Scone is a high-performance, open-source knowledge-base (KB) system intended for use as a component in many different software applications.

    Home page: http://www.cs.cmu.edu/~sef/scone/

    User's manual: http://www.cs.cmu.edu/~sef/scone/Scone-User.pdf

    Repository: https://github.com/sfahlman/scone

    License: Apache 2


    -Knowledge Representation Systems
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Scott L. Burson.html b/clones/lisp/www.cliki.net/Scott L. Burson.html deleted file mode 100644 index 2b2b7e38..00000000 --- a/clones/lisp/www.cliki.net/Scott L. Burson.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Scott L. Burson - - - - - - - -
    Scott L. Burson
    Scott L Burson is a Lisp hacker who wrote Zeta-C and FSet.

    person

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Scott Williams.html b/clones/lisp/www.cliki.net/Scott Williams.html deleted file mode 100644 index 78e38c91..00000000 --- a/clones/lisp/www.cliki.net/Scott Williams.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Scott Williams - - - - - - - -
    Scott Williams
    A computer science student at the University of Colorado at Boulder, working towards a BS, and doing a thesis in natural language processing. See relatively inactive (barely breathing) blog at http://ortmage.blogspot.com/. I work for Creole West Productions as a designer (not one of my fortes, really), web programmer, and occasional copy editor.

    person

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Screamer.html b/clones/lisp/www.cliki.net/Screamer.html deleted file mode 100644 index c538218c..00000000 --- a/clones/lisp/www.cliki.net/Screamer.html +++ /dev/null @@ -1,141 +0,0 @@ - - - - - CLiki: screamer - - - - - - - -
    screamer
    Screamer adds support for nondeterministic and constraint programming, including backtracking and undoable side-effects.

    Screamer was originally written by Jeffrey Mark Siskind and David Allen McAllester, and released under an non-DFSG-free "old school" license in 1991. It has since then been released with permission under at least GPL and MIT-licenses.

    Probably the most alive version of Screamer is an MIT-licensed copy on Github, which should run on any ANSI Common Lisp and can be installed using Quicklisp.

    -

    The following Screamer code finds a 3x3 matrix of the integers between 1 and 9, such that the sums of the verticals, horizontals, and diagonals are equal.

    (defun 3X3 () - (let ((a (an-integer-betweenv 1 9)) - (b (an-integer-betweenv 1 9)) - (c (an-integer-betweenv 1 9)) - (d (an-integer-betweenv 1 9)) - (e (an-integer-betweenv 1 9)) - (f (an-integer-betweenv 1 9)) - (g (an-integer-betweenv 1 9)) - (h (an-integer-betweenv 1 9)) - (i (an-integer-betweenv 1 9))) - ;; make sure they all different - (assert! (/=v a b c d e f g h i)) - - ;; make sure the various directions add up - (assert! (=v (+v a b c) (+v d e f) (+v g h i) - (+v a d g) (+v b e h) (+v c f i) - (+v a e i) (+v c e g))) - (apply #'format (append (list t "Solution: ~%~d ~d ~d~%~d ~d ~d~%~d ~d ~d") - (one-value (solution (list a b c d e f g h i) - (static-ordering #'linear-force))))))) - -SCREAMER-USER 4 > (3X3) -Solution: -2 7 6 -9 5 1 -4 3 8 -NIL

    There is also an extension to Screamer, called Screamer+, described in the paper Constraint Handling in Common LISP. A copy of the source code that "may be used cost-free for non-commercial use" can be found here.


    Notes

    Install

    Buried at the bottom of screamer/README, it says you need a certain "preamble" at the top of a file in which you use it. Something like:

    (IN-PACKAGE :CL-USER) -(SCREAMER:DEFINE-SCREAMER-PACKAGE :MY-PACKAGE - ;; ...optional defpackage arguments... - ) -(IN-PACKAGE :MY-PACKAGE)

    Trace weirdness

    I could be somehow mistaken, but it seems that TRACEing a nondeterministic function (Screamer seems to replace normal DEFUN with its own) may not be completely reliable. Here's something from my code where I don't expect SOLVE-ONCE's trace to show that it returns different things:

    (in-package :cl-user) -(screamer:define-screamer-package :blah - (:export :solve-once - :with-indices - :eltv - :mid)) -(in-package :blah) - -;;; Utilities - -(defun solve-once (&rest things) - (one-value (solution things (static-ordering #'linear-force)))) - -(defmacro with-indices (indices &body body) - `(let* ,(loop with last-index = (1- (length indices)) - for i in indices - collect `(,i (an-integer-betweenv 0 ,last-index))) - (assert! (/=v ,@indices)) - ,@body)) - -(defun eltv (&rest rest) - (applyv #'elt rest)) - -;;; Example - -(defun mid (n1 n2 n3) - (let ((numbers (vector n1 n2 n3))) - (with-indices (min mid max) - (assert! (<=v (eltv numbers min) - (eltv numbers mid) - (eltv numbers max))) - (elt numbers (first (solve-once mid min max)))))) - - -(trace solve-once) - -(mid 0 1 2) -;; Trace: -;; 0: (SOLVE-ONCE [1168 integer 0:2 enumerated-domain: (0 1 2)] -;; [1165 integer 0:2 enumerated-domain: (0 1 2)] -;; [1171 integer 0:2 enumerated-domain: (0 1 2)]) -;; 0: SOLVE-ONCE returned (1 0 2) - -(mid 1 2 0) -;; Trace: -;; 0: (SOLVE-ONCE [1180 integer 0:2 enumerated-domain: (0 1 2)] -;; [1177 integer 0:2 enumerated-domain: (0 1 2)] -;; [1183 integer 0:2 enumerated-domain: (0 1 2)]) -;; 0: SOLVE-ONCE returned (0 2 1)


    -Topics: pattern matching, language extension
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Scribble.html b/clones/lisp/www.cliki.net/Scribble.html deleted file mode 100644 index f1a926c3..00000000 --- a/clones/lisp/www.cliki.net/Scribble.html +++ /dev/null @@ -1,79 +0,0 @@ - - - - - CLiki: Scribble - - - - - - - -
    Scribble
    Scribble extends the Common Lisp reader with the text markup syntax of Scribe/Skribe and Scribble document preparation systems.

    The Scribe being discussed is the Scheme-based document preparation system by Manuel Serrano, the author of Bigloo. It is not the antique system of same name that inspired LaTeX and was used in early CMUCL documentation. Its successor is named Skribe. Scribble is a syntax extension for the Racket system, developed by Eli Barzilay. It was named Scribble independently from the first version of this library, that predated it, and initially only supported an extension of the Skribe syntax.

    In Skribe mode, Scribble defines #\[ as a macro-character that reads a Lisp-extended markup language. -Scribble may be useful to you if like Skribe's syntax and want to use it in Common Lisp application. At one point, my documents could compile on both Manuel Serrano's Bigloo-based Scribe and my own CL-based Exscribe, though support for this may have bitrotten.

    The Skribe syntax is a markup syntax that allows to develop documents in a programmatic way. -The syntax integrates very nicely with the LISP syntax; -it is infinitely nicer than XML (easy thing to do); -and it is noticeably shorter than the equivalent SEXP it produces. -

      -
    • [foo ,(bar [baz]) quux] is read as (LIST "foo " (bar "baz") " quux") -
    • -
    -Scribble also contains some extensions to the Scribe syntax: -
      -
    • [:emph foo] is read as (emph "foo") -
    • -
    • [: (font :size 1) bar] is read as (font :size 1 "bar") -
    • -
    • [foo ,[:emph bar] baz] is (list "foo" (emph "bar") "baz") -
    • -
    • [\:\\\[\]] is read as ":\[]" (well, actually that's ":\\[]") -
    • -
    -The actual result is configurable, and configurations already exist for several html generation backends (see below).

    Scribble also features an optional extension to Scribe's semantics: [foo] can be actually read as (pp "foo") rather than "foo", so you can wrap or preprocess strings. You can for instance (with-preprocessor #'string-upcase [foo]). This applies to the strings in the cases demonstrated above; they have been shown with this extension disabled for the sake of simplicity.

    Scribble source code is at: - https://gitlab.common-lisp.net/frideau/scribble

    Scribble depends on Meta by Jochen Schmidt, version 1.0.0 or later, that implements the famous META parsing technique as documented by Henry Baker.

    Mind that this package emphatically does not implement any of Skribe's semantics. -It only implements the reader. -In particular, it doesn't include an implementation of Skribe's semantics for keyword arguments, and it doesn't include any infrastructure to output HTML, LaTeX, info, Text, etc., from Scribe documents. -Instead, Scribble will be a nice front-end for your usual CL Web infrastructure or Lisp Markup Languages, if only customized with the proper setf. -The html generation backends from the following packages are already supported in version 1.18: -lml2, htmlgen from allegroserve, and also araneida (with a patch); -should work but untested: cl-who, htout, yaclml.

    However, for HTML-producing semantics, see Exscribe, -that uses Scribble as its default syntax reader.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Sean Champ.html b/clones/lisp/www.cliki.net/Sean Champ.html deleted file mode 100644 index 7b9ff6d2..00000000 --- a/clones/lisp/www.cliki.net/Sean Champ.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Sean Champ - - - - - - - -
    Sean Champ
    Sean Champ is a person.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/SeanRoss.html b/clones/lisp/www.cliki.net/SeanRoss.html deleted file mode 100644 index c328adc8..00000000 --- a/clones/lisp/www.cliki.net/SeanRoss.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: SeanRoss - - - - - - - -
    SeanRoss
    Sean is a part time Lisper from South Africa.

    Spends his spare time working on cl-store.

    Also rumoured to be a Person.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Self-Generation.html b/clones/lisp/www.cliki.net/Self-Generation.html deleted file mode 100644 index f0dd2020..00000000 --- a/clones/lisp/www.cliki.net/Self-Generation.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - CLiki: Self-Generation - - - - - - - -
    Self-Generation
    An expression that evaluates to itself.

    (let ((let '`(let ((let ',let)) - ,let))) - `(let ((let ',let)) - ,let))

    Credited to Mike McMahon, in the paper Quasiquotation in Lisp by Alan Bawden.


    -Lisp
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Semantic Web.html b/clones/lisp/www.cliki.net/Semantic Web.html deleted file mode 100644 index 91675e3e..00000000 --- a/clones/lisp/www.cliki.net/Semantic Web.html +++ /dev/null @@ -1,108 +0,0 @@ - - - - - CLiki: Semantic Web - - - - - - - -
    Semantic Web
    The Semantic Web provides a common framework that allows data to be shared and reused across application, enterprise, and community boundaries. It is a collaborative effort led by W3C with participation from a large number of researchers and industrial partners. It is based on the Resource Description Framework (RDF). W3C Semantic Web Activity

    See Also: RDF, Knowledge Representation Systems

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Serapeum.html b/clones/lisp/www.cliki.net/Serapeum.html deleted file mode 100644 index 9c90ae76..00000000 --- a/clones/lisp/www.cliki.net/Serapeum.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Serapeum - - - - - - - -
    Serapeum
    Serapeum is a utility library, which can be used as a supplement to Alexandria.

    There is a function reference.

    Utilities

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Serialization.html b/clones/lisp/www.cliki.net/Serialization.html deleted file mode 100644 index 44bc9b4e..00000000 --- a/clones/lisp/www.cliki.net/Serialization.html +++ /dev/null @@ -1,113 +0,0 @@ - - - - - CLiki: serialization - - - - - - - -
    serialization
    Libraries to translate data structures to/from a format which can be stored/retrieved. See also ObjectStore and database. -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Series.html b/clones/lisp/www.cliki.net/Series.html deleted file mode 100644 index 27492af5..00000000 --- a/clones/lisp/www.cliki.net/Series.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - CLiki: Series - - - - - - - -
    Series
    A library providing data structure that combines aspects of sequences, (lazy) streams and loops, using a technique known as “fusion” or “deforestation”. Unlike sequences, in most cases operations on series may be composed functionally but execute iteratively without generating intermediate values. So series offer both the expressiveness of functional programming and the efficiency of iterative programming.

    Series is in Quicklisp:

    - (ql:quickload :series)
    - (in-package :series)
    -

    The library was originally developed by Richard C. Waters, and a description of it appeared in 1990 as Appendix A of the second edition of the book Common Lisp - The Language by Guy L. Steele. More docs and examples can be found in AIM 1082 and AIM 1083 from MIT.

    The project (SourceForge) is now maintained by Fernando D. Mato Mira. It has a git repo at SourceForge and an unofficial GitHub mirror.

    Series is available for SBCL, CMUCL, CLISP and some commercial Common Lisp implementations. It is distributed under the terms of the MIT license.

    Documentation

    There are more user doc and links on the github mirror's wiki.

    Many examples in the iteration page of the CL Cookbook.

    Related projects

    See taps, a library that offers conveniences to work with Series (take, tail, any, contains?, drop, filter, …)

    Articles

    See http://malisper.me/2016/04/13/loops-in-lisp-part-4-series/.


    -data structure, language extension
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Shawn Betts.html b/clones/lisp/www.cliki.net/Shawn Betts.html deleted file mode 100644 index 395bdd34..00000000 --- a/clones/lisp/www.cliki.net/Shawn Betts.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Shawn Betts - - - - - - - -
    Shawn Betts
    Shawn Betts is a person who has never found a language that is as fun to code in as Common Lisp. He is the creator and maintainer of Stumpwm.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Sheafhom.html b/clones/lisp/www.cliki.net/Sheafhom.html deleted file mode 100644 index 9e098acb..00000000 --- a/clones/lisp/www.cliki.net/Sheafhom.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Sheafhom - - - - - - - -
    Sheafhom
    Sheafhom is a package by Mark McConnell for large sparse linear algebra computations over the integers and other exact number types. It includes graphs and windows to show the progress of the computation in real time. The package is motivated by algebraic topology and number theory.

    License: public domain

    Author: Mark McConnell

    Homepage (archived)

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Sheeple.html b/clones/lisp/www.cliki.net/Sheeple.html deleted file mode 100644 index 0793fd39..00000000 --- a/clones/lisp/www.cliki.net/Sheeple.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Sheeple - - - - - - - -
    Sheeple
    Sheeple is a delegative prototype-based object system inspired by CLOS.

    It is designed with the purpose of providing the goodies of CLOS programming, but in an object-based environment. As such, it shares a lot of syntax and semantics with CLOS, including multiple delegation (similar to multiple inheritance) and multiply-dispatched functions (similar to generic functions).

    Homepage: http://redmine.sykosomatic.org/projects/show/sheeple

    Source repository: http://github.com/sykopomp/sheeple/


    -language extension, MIT-LICENSE
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Shinmera.html b/clones/lisp/www.cliki.net/Shinmera.html deleted file mode 100644 index 67aa0025..00000000 --- a/clones/lisp/www.cliki.net/Shinmera.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Shinmera - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Shuffletron.html b/clones/lisp/www.cliki.net/Shuffletron.html deleted file mode 100644 index 5102d751..00000000 --- a/clones/lisp/www.cliki.net/Shuffletron.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Shuffletron - - - - - - - -
    Shuffletron
    Shuffletron is an MP3 audio player application running on Linux and Mac OS X systems (and possibly elsewhere). It uses Mixalot for file decoding and output.

    Screenshots and binaries are available at http://vintage-digital.com/hefner/software/shuffletron/, and the latest development version can be obtained from github.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/SimLab.html b/clones/lisp/www.cliki.net/SimLab.html deleted file mode 100644 index f2320828..00000000 --- a/clones/lisp/www.cliki.net/SimLab.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: SimLab - - - - - - - -
    SimLab
    SimLab Is a scientific simulation and analysis tool that uses the weyl computer algebra system.

    Weyl has a nice Mathematics substrate for modern algebra. It can be found at http://www.cs.cornell.edu/Info/Projects/SimLab/releases/release-1-0.html -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/SimpSamp.html b/clones/lisp/www.cliki.net/SimpSamp.html deleted file mode 100644 index 511aa696..00000000 --- a/clones/lisp/www.cliki.net/SimpSamp.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: SimpSamp - - - - - - - -
    SimpSamp
    SimpSamp is a statistics library for simple random sampling without replacement. In English, that means it will return a requested number of random elements from a set, without duplicating any of the elements.

    For instance, if you have a list of 1,000,000 elements and want 1,000 unique random elements from the list, SimpSamp will do the trick.

    SimpSamp implements two algorithms: selection sampling and reservoir sampling, both described in The Art of Computer Programming.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Simple 3D viewing.html b/clones/lisp/www.cliki.net/Simple 3D viewing.html deleted file mode 100644 index a49336c2..00000000 --- a/clones/lisp/www.cliki.net/Simple 3D viewing.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Simple 3D viewing - - - - - - - -
    Simple 3D viewing
    Simple 3D viewing is a Graphics library for 3D wireframe drawing based on RenderMan's conventions.

    The code runs under CMUCL, CLISP, ACL 5.0.1 and MCL and is in the public domain. It should work on other Common Lisp systems with CLX. The project, by R. Matthew Emerson, has its own home page.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Simple-Finalizer.html b/clones/lisp/www.cliki.net/Simple-Finalizer.html deleted file mode 100644 index a5c3d751..00000000 --- a/clones/lisp/www.cliki.net/Simple-Finalizer.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Simple-Finalizer - - - - - - - -
    Simple-Finalizer
    Simple finalizer is a package used (at least) in Lispbuilder-openrm.


    -trivial
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Skippy.html b/clones/lisp/www.cliki.net/Skippy.html deleted file mode 100644 index a68c7787..00000000 --- a/clones/lisp/www.cliki.net/Skippy.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Skippy - - - - - - - -
    Skippy
    Skippy reads and writes GIF image files. It is pure Common Lisp. It supports normal GIFs and animated GIFs.

    It is available under a BSD-like license.

    See also

    * Skippy home page

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Slime.html b/clones/lisp/www.cliki.net/Slime.html deleted file mode 100644 index ac24a608..00000000 --- a/clones/lisp/www.cliki.net/Slime.html +++ /dev/null @@ -1,88 +0,0 @@ - - - - - CLiki: SLIME - - - - - - - -
    SLIME
    SLIME is the Superior Lisp Interaction Mode for Emacs. This is an ILISP-like development environment intended for maximum integration with CMUCL (also works with SBCL, OpenMCL and work is ongoing on Lispworks and current version of CLISP and CLISP 2.32 on Linux; there is also support packaged separately for Scheme48, called SLIME48).

    SLIME is now stable and released. Please download the latest version from its home page. Documentation is included there. -NOTE: slime-2.0 is too old for use with current versions of SBCL. Fetch slime from CVS.

    Want to try SLIME? Check out the SLIME-HOWTO or read about the SLIME Features. You can also check out some SLIME Tips.

    Users are invited to post feature suggestions on this page.

      -
    • Ability to pin certain things (arglist info, debugger, repl) into dedicated frames for nice multi-window operation -- Zach -
    • -
    • Make the slime faces inherit from the standard font-lock faces when appropriate (eg making the REPL output face inherit from font-lock-comment-face) -- Brian -
    • -
    • -Note: Although it is possible to connect to a Lisp on a remote machine, we haven't yet figured out what does and doesn't work without a shared filesystem. Maybe this can be made tramp-aware? -- Rahul Jain Clear *use-dedicated-output-stream* before connecting works for me so far. -- ngps -
    • -
    • Autodetection of LINEDIT (or other random REPL wrappers) and calling LINEDIT's UNINSTALL-REPL before running SWANK. I tried to add something in slime-maybe-start-lisp in slime.el to do so, but comint-proc-query was uncooperative and kept hanging. -- James A. Crippen -
    • -
    • Some REPL conveniences, such as ILISP's C-z P (set package).
      -The SLIME equivalent of the latter is SLIME-REPL-SET-PACKAGE, anything else?
    • -
    • Some way to get a REPL in the current debugger frame, for more serious -playing around
      I second the motion. It would be very useful to keep a record - of what was evaluated and what printed, sort of like a - ... read-eval-print loop! It's amazing that this crucial feature of - Lisp was discarded in the SLIME model; its absence really detracts from - usability. - Drew McDermott -- 2005-12-09.
      -I would also very much like this feature! -Lars Rune Nøstdal -
    • -
    • Working symbol-completion when you enter expressions in the mini-buffer
    • -
    • "Getting ILISP working was a nightmare. Getting SLIME working was a breeze, even though I had to check it out of CVS" (Steve Jenson, saladwithsteve.com) -
    • -
    • If your connection to ssh forwarded swank server doesnt work, try to (setf swank::*use-dedicated-output-stream* nil) -
    • -
    • Maybe: Visit a file "through" the lisp process: slime instructs lisp process to open the file and squirt it across connection back to an emacs buffer. When buffer is saved in emacs, squirt back to lisp process. Potentially very nice for long-lived lisp server processes (provided your slimeswank is a secure channel!), and skirts the whole path-translations thing: the only correct path is the path the lisp process uses i.e. you're not doing C-xC-f emacs-file-path, you're doing C-cC-xC-f (or something saner) CL-file-path. (obviously, you'd provide tab completion for CL-file-path, too ;-) ) See the variable `file-name-handler-alist' for how you might want to do this. -
    • -
    • How about unified directory access! I know there are some packages out there, but it would be wonderful to have this come with slime. It would be nice to have it as a part of the development environment. It's hard for me to switch between different implementations of CL otherwise. (for example, (:cd "dir") doesn't work when using SLIME with OpenMCL...) Update: I found directory functionality by typing a comma then entering 'cd' into the minibuffer. SLIME RULES! -
    • -
    • It would be nice if I could have fixed Emacs windows for different SLIME buffers. Like, if I evaluate something and the debugger pops up, I never know where it's going to be (I usually have several Emacs frames and windows open). I would like to say "this will be the REPL window, and I want nothing else there" -- another window for the debugger, another for Lisp code etc. - You can kind of do this with the Emacs Code Browser, if you tell it the repl is a compilation window. It provides a fixed and togglable compilation window at the bottom of the first frame.
    • -

    To add a note about using the standard font-lock faces, the keywords from the appropriate mode should also be used. That is, SLIME should use the lisp-mode-font-lock-keywords-... variables. I have diffrerent ones for Common Lisp, Scheme, and Emacs Lisp, so it would be nice to have this customizable for SLIME. Or better yet, since Emacs's default keywords for Lisp are pretty ELisp-centric maybe SLIME should provide its own set of Common Lisp--centric font-lock keywords, leaving the user to decide whether to copy those for Emacs's Lisp-mode or not. -- James A. Crippen

    Sounds a good idea to me. Can you post the code you use somewhere so we can use it as a basis? -- Luke Gorrie

    Some responses..

    A "Recent Changes" popup: Can you elaborate a bit? The ChangeLog file + the mailing list is supposed to fill this role, but feedback about the effectiveness would be appreciated. -- Luke Gorrie

    It might be nice to just add a link to the latest ChangeLog in CVS, like so -Latest ChangeLog. Stick that on the project home page. -- James A. Crippen Good idea. ChangeLog and mailing lists are now linked.

    Re: "Recent Changes Popup": Especially with the daily ChangeLog diff on the list, this is a solved problem for me at least. I suspect that people following -the CVS, but not the list deserve to lose (like I did...). OTOH: I can imagine having a busy month, then updating SLIME, and not noticing all the new goodies. ;) So in the bells and whistles department, SLIME offering to show it's own ChangeLog since last update would be kind of neat -- but definitely not a priority.

    As far as using slime remotely: if you have a shared filesystem but not with identical mountpoints, the patch included in this mail provides you with a M-x slime-replace-prefix function which causes a few uses of filenames to be translated (but only in the emacs->lisp direction).

    The full cygwin-windows cycle is translated by these hooks, working for any cygwin mountpoint. --ReiniUrban

    There is the beginnings of MP (threading) support in SLIME CVS. See the mailing list for details

    Slime Distributions

    Information, for fetching the source distribution, is available at the Slime homepage.

    For fetching Slime via cvs, information is available, also, at the Slime homepage.

    Debian packages

    Slime has got an -official Debian package.

    It is under the non-free section of Debian mostly because of the license of one -file (xref.lisp). So, should it stay on CLiki.net? -- alceste@NOSPAM.muvara.org

    Mac OS X

    -A fink package for Mac OS X (10.3) is also available in fink's unstable tree.

    Slime is available in MacPorts, current port is based on 20110419 CVS snapshot.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Slitch.html b/clones/lisp/www.cliki.net/Slitch.html deleted file mode 100644 index 62f45036..00000000 --- a/clones/lisp/www.cliki.net/Slitch.html +++ /dev/null @@ -1,71 +0,0 @@ - - - - - CLiki: Slitch - - - - - - - -
    Slitch
    A not-very-under-development-lately-but-will-get-back-to-it-some-day-soon TCP/IP networking stack in CMU Common Lisp (CMUCL).

    Repository: https://github.com/sharplispers/slitch

    Screenshot:

    -* (netstat)
    -lisp0  UP    Type:TAP  HWaddr 00:FF:C5:50:B6:E4
    -       Inet addr:192.168.43.10/255.255.255.0  Bcast:192.168.43.255
    -       RX bytes:196325 (196.3KiB)  TX bytes:190508 (190.5KiB)>
    - 
    -lisp1  DOWN  Type:TAP  HWaddr 00:FF:6B:5D:36:60
    -       Inet addr:0.0.0.0/0.0.0.0  Bcast:0.0.0.0
    -       RX bytes:0 (0 b)  TX bytes:0 (0 b)>
    - 
    -* (show-tcp-connections)
    -TCP Stream 192.168.43.10:80 / 192.168.43.1:33398: ESTABLISHED
    -TCP Stream 192.168.43.10:80 / 192.168.43.1:33400: ESTABLISHED
    - 
    -* (routes)
    -Destination      Gateway          Netmask          Interface
    -192.168.128.43   0.0.0.0          255.255.255.255  lisp0
    -192.168.43.0     0.0.0.0          255.255.255.0    lisp0
    -192.168.128.0    192.168.43.1     255.255.255.0    lisp0
    -

    Slitch uses Linux 'tap' devices to communicate with the host operating system at ethernet level.


    -sharplispers
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/SmackJack.html b/clones/lisp/www.cliki.net/SmackJack.html deleted file mode 100644 index 747a2af0..00000000 --- a/clones/lisp/www.cliki.net/SmackJack.html +++ /dev/null @@ -1,62 +0,0 @@ - - - - - CLiki: SmackJack - - - - - - - -
    SmackJack
    Smackjack is a small AJAX web framework written in Common Lisp. Basically Smackjack allows browser code call lisp functions via ajax and get a return value. Currently runs under Hunchentoot web server but there are plans to allow other web servers. It was a fork of HT-SIMPLE-AJAX and -inspires to be a replacement to the unmaintained and out of date -HT-AJAX.

    Differently than those two libraries, this one depends on PARENSCRIPT to generate client-side javascript and allows greater flexibility in -generated javascript. Current version is compatible with HT-SIMPLE-AJAX but it lacks some features of HT-AJAX . The following features are addition to those available in HT-SIMPLE-AJAX:

      -
    • AJAX via Post as well as Get
    • -
    • response can be text, xml or json.
    • -
    • optional javascript namespaces to encapsulate generated javascript -functions.
    • - -
    • The arguments of the functions can be treated by cl-json before - calling the function.
    • -

    The code also contains a "pusher" subclass. This allows a lisp function call indirectly a javascript function defined in your lisp code by parenscript but runs in the browser. Basically the opposite of SmackJack. This is achieved by adding a simple polling mechanism. Future development may include long polling.

    Source Code: https://github.com/aarvid/SmackJack.

    Documentation: http://htmlpreview.github.io/?https://github.com/aarvid/SmackJack/blob/master/docs/smackjack.html.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Smart cards.html b/clones/lisp/www.cliki.net/Smart cards.html deleted file mode 100644 index e9b0b9c9..00000000 --- a/clones/lisp/www.cliki.net/Smart cards.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: Smart cards - - - - - - - -
    Smart cards
    Free software related to integrated chip cards (ICC) with contacts (ISO/IEC 7816) or contactless (ISO/IEC 14443). Also code for interaction to magnetic stripe cards and barcode hardware.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Snooze.html b/clones/lisp/www.cliki.net/Snooze.html deleted file mode 100644 index 6715951c..00000000 --- a/clones/lisp/www.cliki.net/Snooze.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Snooze - - - - - - - -
    Snooze
    Snooze is an URL router for Common Lisp designed around REST web services.

    Depends on: alexandria, cl-ppcre, closer-mop, quri, uiop, parse-float, rfc2388

    Repository: https://github.com/joaotavora/snooze

    License: LLGPL


    -URI
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Solaris.html b/clones/lisp/www.cliki.net/Solaris.html deleted file mode 100644 index b54760db..00000000 --- a/clones/lisp/www.cliki.net/Solaris.html +++ /dev/null @@ -1,58 +0,0 @@ - - - - - CLiki: Solaris - - - - - - - -
    Solaris
    Sun's Unix platform, based on UNIX System V. Also known as SunOS, although SunOS is normally used to refer to the System without X11.

    While mostly run on Sun hardware, there are versions for x86.

    Free Lisp implementations available include:

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Solid-engine.html b/clones/lisp/www.cliki.net/Solid-engine.html deleted file mode 100644 index 8fc30684..00000000 --- a/clones/lisp/www.cliki.net/Solid-engine.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Solid-engine - - - - - - - -
    Solid-engine
    The Common Lisp stack-based application controller (web framework)

    Source code and documentation: https://bitbucket.org/reginleif/solid-engine/src/master/

    Problems and solution concept

    HTTP-protocol is stateless. If we want to do complex actions, for example: wizard dialog on the series of pages or, more importantly, manage presentation from server, we must save intermediate state. For storing state can be used some techniques: storing session in database or server memory, storing some data on page by using async requests or by using cookies. All of that techniques have their drawback, storing data on client fraught with security breach, storing session in server memory imposes restrictions on the amount of memory and in addition there is a need to keep track of the lifetime of a session. Moreover, the user will not be able to visit the page after the expiration of the session. There is a need to restore the state by information available in the URL. In addition to this problems, an effective mechanism is needed to control the presentation from the server (application controller).

    Solid-engine is developed to solve this problems. What is a application controller you can read from Martin Fauler "Patterns of Enterprise Application Architecture". The idea of implementation is bored from SICP (amb-operator). As opposed to amb-operator, where choice controlled by amb-operator, in Solid-engine choice provided by user. In point of program view, selection also non-deterministic --- developer just place choice points in controller code. If we imagine user's work in web-application as process, then we can code user's workflow as program code with points of choice in some places. In that places we have information about objects that user must select (from set of objects) or provide (simple type values) to continue execution. Each choice point is place where user must provide values for variables. Variable values for choice points is stack up and client must send it to server for execution. The response from server contains other stack, that client must sent with some additional user's input values. Received client's stack on provide variable values for choice points. Process of executing program start on each request and lasts until the stack is empty. Thereafter variables binding form send return information about stack and presentation. Stack on client can be stored in URL and form fields. To avoid repeating of server side-effect actions returned to client stack didn't contain information for visited (side-effect) code branch. Additional advantages is preserving context of logic execution, any additional checking not needed. Call stack playback eliminates possibility of wrong logic execution.

    Implementation

    Solid-engine is developed for use with HTTP-protocol, but fits for use with any stateless-protocol. It presentation- and server-agnostic. You can freely choose (web-)server and presentation layer by implementing thin integration code. For http-protocol choice stack can be stored in URL (as query parameters and parts of path) and POST-parameters.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Soundex.html b/clones/lisp/www.cliki.net/Soundex.html deleted file mode 100644 index c79ebaef..00000000 --- a/clones/lisp/www.cliki.net/Soundex.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Soundex - - - - - - - -
    Soundex
    The Soundex algorithm indexes words by their sound when pronounced in English, for example to account for differences in spelling.

    This public domain Common Lisp implementation of Soundex (soundex-1.0.tgz) was originally in the JWZ archive of the CMU AI repository.

    Levenshtein also measures the distances between words, although it is not based on sound.


    -Natural Language Processing text
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/South.html b/clones/lisp/www.cliki.net/South.html deleted file mode 100644 index f8e425de..00000000 --- a/clones/lisp/www.cliki.net/South.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: South - - - - - - - -
    South
    South (Simple OaUTH) is a library aiming to provide a simple layer for interaction with oAuth 1.0a services. This library was split off from the Chirp twitter library to provide a more generalised access layer.

    The project can be found on github including a fully documented symbol index and a getting started tutorial.
    -As of July 2014, South is available on Quicklisp.

    South is licensed under the Artistic License 2.0.

    This library has been superseded by North


    -web web api
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Spam Reversion.html b/clones/lisp/www.cliki.net/Spam Reversion.html deleted file mode 100644 index cec143af..00000000 --- a/clones/lisp/www.cliki.net/Spam Reversion.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Spam Reversion - - - - - - - -
    Spam Reversion
    If you notice that some CLiki page has been vandalized by spammers, you can revert the page to a previous non-spam revision, or delete it if it was created by a spammer. It's generally a good idea to watch the Recent Changes page and look for spam edits; they typically have a URL in the change description or some other nonsense.

    To revert a page to a previous revision: use the revisions links at the bottom of the page to find the highest revision number that did not contain spam. Be careful, because sometimes the spammers will add spam links to a page instead of completely vandalizing it, so be sure to scroll down the page and look for any spam links that were added. Once you're at the last non-spam revision to the page, hit the "Edit" link at the bottom. Fill in some pithy diatribe against spam in the "Summary of changes" field, and put your name in the "Your name" field. Hit save, and all will be well.

    To delete a page which was created by spammers, edit the page and remove all the content. Deleted pages get put in the Deleted articles list with their history preserved, and can be restored later.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Special Slots.html b/clones/lisp/www.cliki.net/Special Slots.html deleted file mode 100644 index 04887cc4..00000000 --- a/clones/lisp/www.cliki.net/Special Slots.html +++ /dev/null @@ -1,99 +0,0 @@ - - - - - CLiki: Special Slots - - - - - - - -
    Special Slots
    A kind of pseudo-slot where the value is stored in a hidden symbol-value outside of the instance. This means the special slot can be dynamically bound (using progv) as a special variable would be. (The lets macro below is implemented with progv.) There's a generic function (like slot-unbound) that will be called if the special slot is not bound. It would also be nice to have a concise way to specify the initial value for a special slot. Note that this code uses ORF, another macro example.

    (defvar *special-slot-table* (make-hash-table) - "Map an instance to a plist of special slots.") - -(defun ensure-special-slot (instance accessor-name) - (let ((accessor-string (symbol-name accessor-name))) - (orf (getf (gethash instance *special-slot-table*) accessor-name) - (gensym (format nil "~A-~A" accessor-string (string 'variable)))))) - -(defgeneric special-slot-unbound (class instance accessor-name) - (:documentation "Called when a special slot is not BOUNDP.") - (:method ((class t) instance accessor-name) - (error 'unbound-special-slot - :instance instance - :name accessor-name))) - -(define-condition unbound-special-slot (cell-error) - ((instance :initarg :instance :reader unbound-special-slot-instance)) - (:report (lambda (condition stream &aux (accessor-name (cell-error-name condition))) - (let ((special-slot-instance (unbound-special-slot-instance condition))) - (format stream "The special slot ~S (associated with ~S) is unbound." - accessor-name special-slot-instance))))) - -(defmacro define-special-slot (class-name accessor-name &optional documentation) - "Define a special slot on a class, optionally with documentation on the function." - `(progn (defmethod ,accessor-name ((instance ,class-name)) - ,.(when (stringp documentation) (list documentation)) - (let ((special-variable-name (ensure-special-slot instance ',accessor-name))) - (cond ((boundp special-variable-name) (symbol-value special-variable-name)) - (t (special-slot-unbound (class-of instance) instance ',accessor-name))))) - ;; Writer method is simpler because no worries about BOUNDP-ness. - (defmethod (setf ,accessor-name) (new-value (instance ,class-name)) - (setf (symbol-value (ensure-special-slot instance ',accessor-name)) - new-value)))) - -(defun special-slot-makunbound (instance accessor-name) - (makunbound (ensure-special-slot instance accessor-name))) - -(defmacro lets ((&rest bindings) &body body) - (loop for ((accessor-name instance) value) in bindings - for symbol = `(ensure-special-slot ,instance ',accessor-name) - collect symbol into symbols collect value into values - finally (return `(progv (list ,.symbols) (list ,.values) - ,@body)))) - -(defmacro lets* ((&rest bindings) &body body) - (cond ((endp bindings) (list* 'progn body)) - ((destructuring-bind (first . rest) bindings - `(lets (,first) (lets* (,@rest) ,@body))))))

    ContextL has a more sophisticated (i.e. MOP-based) facility for special classes.

    fluids are a similar idea, except that a "fluid" is a CLOS object, not a symbol.


    -Apache 2
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Standards.html b/clones/lisp/www.cliki.net/Standards.html deleted file mode 100644 index 3e7b9b93..00000000 --- a/clones/lisp/www.cliki.net/Standards.html +++ /dev/null @@ -1,116 +0,0 @@ - - - - - CLiki: Standards - - - - - - - -
    Standards
    The wonderful thing about standards is that there are so many to choose from.-- Grace Hopper

    I thought that it was Andrew S. Tannenbaum who said this.--Roland Kaufmann

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Staple.html b/clones/lisp/www.cliki.net/Staple.html deleted file mode 100644 index b5e6396d..00000000 --- a/clones/lisp/www.cliki.net/Staple.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: Staple - - - - - - - -
    Staple
    A tool to generate documentation about Lisp projects through an HTML template.

    Staple is yet another Common Lisp documentation generation application. It uses Clip and lQuery to do most of the work. The main features include automatic package symbol index processing, documentation gathering from related files and generation through expressive templates.

    The project can be found on github including a fully documented symbol index and a getting started tutorial.
    -As of August 2014, Staple is available on Quicklisp.

    Staple is licensed under the Artistic License 2.0.


    -Documentation Tool
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Star Trek.html b/clones/lisp/www.cliki.net/Star Trek.html deleted file mode 100644 index 2a4145c7..00000000 --- a/clones/lisp/www.cliki.net/Star Trek.html +++ /dev/null @@ -1,178 +0,0 @@ - - - - - CLiki: Star Trek - - - - - - - -
    Star Trek
    Star Trek is a classic 1970s console game that originated on mainframes. The game is relatively simply by modern standards but still addictive. Many versions exist, most of them in BASIC, but there have also been ports to Common Lisp. The most famous variant of the game is David H. Ahl's Super Star Trek (1978), which became the basis for most later ports.

    The objective is to destroy all Klingon warships on the map within a given time limit. The map is divided into 8x8 quadrants, which are in turn divided into 8x8 sectors. UFP star bases provide supplies of photon torpedoes and navigation is manual, i.e. one must take care not to plot a course into a star accidentally.

    Sample gameplay (CLISP):

    -[1]> (load "trek.lsp")
    -;; Loading file trek.lsp ...
    -;; Loaded file trek.lsp     
    -T                           
    -[2]> (trek)                 
    -THE USS ENTERPRISE --- NCC-1701
    -                  ,------*------,
    -  ,-------------   '---  ------' 
    -   '-------- --'      / /        
    -       ,---' '-------/ /--,      
    -        '----------------'       
    -YOUR ORDERS ARE AS FOLLOWS:      
    ---------------------------       
    -   DESTROY THE 56 KLINGON WARSHIPS WHICH HAVE INVADED
    -   THE GALAXY BEFORE THEY CAN ATTACK FEDERATION HEADQUARTERS
    -   ON STARDATE 3857.00. THIS GIVES YOU 57 DAYS.             
    - THERE IS 1 STARBASE IN THE GALAXY FOR RESUPPLYING YOUR SHIP.
    -
    -ARE YOU READY TO ACCEPT COMMAND? ('N' FOR End)y
    -YOUR MISSION BEGINS WITH YOUR STARSHIP LOCATED 
    -IN THE GALACTIC QUADRANT, 'CANOPUS I'.         
    -  COMBAT AREA      CONDITION RED               
    -      SHIELDS DANGEROUSLY LOW                  
    -   +0-1-2-3-4-5-6-7-+                          
    -  0|. . . . . . . K |        STARDATE           3800.00
    -  1|. . . . . . * . |        CONDITION          *RED*  
    -  2|* . . . . . . . |        QUADRANT           4 0    
    -  3|. . . . . . . E |        SECTOR             3 7    
    -  4|. . . . . . . . |        PHOTON TORPEDOES   10     
    -  5|. . . . . . . . |        TOTAL ENERGY       3000.00
    -  6|. . . * * * . . |        SHIELDS             0.00  
    -  7|* . . . . . . . |        KLINGONS REMAINING 56     
    -
    -COMMAND
    -com    
    -ENTER ONE OF THE FOLLOWING:
    --------------------------- 
    -  W  (WARP)                
    -  S  (FOR SHORT RANGE SENSOR SCAN)
    -  L  (FOR LONG RANGE SENSOR SCAN) 
    -  P  (TO FIRE PHASERS)            
    -  T  (TO FIRE PHOTON TORPEDOES)   
    -  Z  (TO RAISE OR LOWER SHIELDS)  
    -  R  (FOR DAMAGE CONTROL REPORTS) 
    -  C  (TO CALL ON LIBRARY-COMPUTER)
    -  XXX  (TO RESIGN YOUR COMMAND)   
    -  (zzz  break for debug)          
    -
    -COMMANDc
    -COMPUTER ACTIVE AND AWAITING COMMAND
    -a                                   
    -FUNCTIONS AVAILABLE FROM LIBRARY-COMPUTER:
    ------------------------------------------ 
    -   G = CUMULATIVE GALACTIC RECORD           
    -   S = STATUS REPORT                      
    -   T = PHOTON TORPEDO DATA                
    -   B = STARBASE NAV DATA                  
    -   N = DIRECTION/DISTANCE CALCULATOR      
    -   Z = GALAXY 'REGION NAME' MAP           
    -
    -COMMANDc z
    -COMPUTER ACTIVE AND AWAITING COMMAND                        THE GALAXY
    -       0     1     2     3     4     5     6     7                    
    -    +-----+-----+-----+-----+-----+-----+-----+-----+                 
    -              ANTARES               SIRIUS                            
    -                RIGEL                DENEB                            
    -              PROCYON              CAPELLA                            
    -                 VEGA           BETELGEUSE                            
    -              CANOPUS            ALDEBARAN                            
    -               ALTAIR              REGULUS                            
    -          SAGITTARIUS             ARCTURUS                            
    -               POLLUX                SPICA                            
    -COMMANDL                                                              
    -LONG RANGE SCAN FOR QUADRANT 4,0                                      
    - *** 005 108                                                          
    - *** 106 102                                                          
    - *** 204 101                                                          
    -
    -COMMANDS
    -   +0-1-2-3-4-5-6-7-+
    -  0|. . . . . . . K |        STARDATE           3800.00
    -  1|. . . . . . * . |        CONDITION          *RED*  
    -  2|* . . . . . . . |        QUADRANT           4 0    
    -  3|. . . . . . . E |        SECTOR             3 7    
    -  4|. . . . . . . . |        PHOTON TORPEDOES   10     
    -  5|. . . . . . . . |        TOTAL ENERGY       3000.00
    -  6|. . . * * * . . |        SHIELDS             0.00  
    -  7|* . . . . . . . |        KLINGONS REMAINING 56     
    -
    -COMMANDz
    -ENERGY AVAILABLE =3000.  NUMBER OF UNITS TO SHIELDS ?1000
    -DEFLECTOR CONTROL ROOM:  'SHIELDS NOW AT 1000 UNITS PER YOUR COMMAND.'
    -
    -COMMANDw
    -COURSE (0-8, -1)0
    -WARP FACTOR (0-8).1
    -Klingon at 0,7 moves to 1,7
    -261 UNIT HIT ON ENTERPRISE FROM SECTOR 1,7 .
    -      <SHIELDS DOWN TO 739 UNITS>           
    -DAMAGE CONTROL: 'WARP ENGINES DAMAGED BY THE HIT'DAMAGE CONTROL REPORT:  WARP ENGINES REPAIR COMPLETED.
    -DAMAGE CONTROL REPORT:  SHIELD CONTROL DAMAGED                                                         
    -(2,7)                                                                                                  
    -   +0-1-2-3-4-5-6-7-+
    -  0|. . . . . . . . |        STARDATE           3800.00
    -  1|. . . . . . * K |        CONDITION          *RED*  
    -  2|* . . . . . . E |        QUADRANT           4 0    
    -  3|. . . . . . . . |        SECTOR             2 7    
    -  4|. . . . . . . . |        PHOTON TORPEDOES   10     
    -  5|. . . . . . . . |        TOTAL ENERGY       2728.00
    -  6|. . . * * * . . |        SHIELDS            739.00  
    -  7|* . . . . . . . |        KLINGONS REMAINING 56     
    -                                              
    -COMMANDT
    -PHOTON TORPEDO COURSE (0-8, -1)0
    -TORPEDO TRACK:                  
    -*** KLINGON DESTROYED ***       
    -

    Game

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Statistics.html b/clones/lisp/www.cliki.net/Statistics.html deleted file mode 100644 index f4d0a16b..00000000 --- a/clones/lisp/www.cliki.net/Statistics.html +++ /dev/null @@ -1,107 +0,0 @@ - - - - - CLiki: Statistics - - - - - - - -
    Statistics
    Statistics libraries/packages. See also mathematics. -
  • -Lisp-Stat - Lisp-Stat is an environment for statistical computing, similar in spirit to R and XLisp-Stat.
  • -
      -
    • -cl-ana - - cl-ana aims to provide the basic tools necessary to analyze large/medium-large datasets -
    • -
    • -cl-mathstats - - CL-MathStats is a set of miscellaneous Common Lisp mathematics and statistics utilities -
    • -
    • -cl-randist - - This package is a manual translation from C to common lisp of some random number generation functions of GSL library -
    • -
    • -cl-random - - [unmaintained, maintainers welcome] A library for uni- and multivariate probability distributions and statistics functions -
    • -
    • -CLLIB - - CLLIB is a varied collection of Common lisp tools and routines in CLOCC -
    • -
    • -common-lisp-stat - - Common Lisp Statistics -- based on LispStat but updated for Common Lisp and incorporating lessons from R -
    • -
    • -Mersenne Twister - - The Mersenne Twister is a pseudorandom number generation algorithm created by Makoto Matsumoto -
    • -
    • -py-random - - A translation of the random module in the Python standard library -
    • -
    • -RCL - - RCL is an FFI to communicate with the R statistics environment -
    • -
    • -rclg - - An R (statistics programming language) FFI for Common Lisp -
    • -
    • -sapaclisp - - sapaclisp is a collection of Common Lisp functions for spectral analysis -
    • -
    • -SimpSamp - - SimpSamp is a statistics library for simple random sampling without replacement -
    • -
    • -Stats - - Stats by Larry Hunter is a statistics library -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Stats.html b/clones/lisp/www.cliki.net/Stats.html deleted file mode 100644 index 2eaf6395..00000000 --- a/clones/lisp/www.cliki.net/Stats.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Stats - - - - - - - -
    Stats
    Stats by Larry Hunter is a statistics library. A fairly extensive set of statistical functions in Common Lisp.

    Original source: http://web.archive.org/web/20061013125819/http://nostoc.stanford.edu/jeff/cllib/lhstats.lisp

    As of 2011-12-03, Quicklisp uses this version on github, with patches for SBCL: https://github.com/mrc/lhstats

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Steeldump.html b/clones/lisp/www.cliki.net/Steeldump.html deleted file mode 100644 index 1a1c4dbe..00000000 --- a/clones/lisp/www.cliki.net/Steeldump.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: Steeldump - - - - - - - -
    Steeldump
    Steeldump is an unofficial APT repository for applications written in Common Lisp, providing binary packages based on SBCL.

    Steeldumped applications: -beirc, climacs, eclipse, gsharp, stumpwm

    Steeldumped libraries: -cl-fad, cl-irc, cl-ppcre, esa, clx, flexi-streams, flexichain, mcclim, spatial-trees, split-sequence, tab-layout, trivial-gray-streams, trivial-sockets

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Stefan Scholl.html b/clones/lisp/www.cliki.net/Stefan Scholl.html deleted file mode 100644 index 552f3544..00000000 --- a/clones/lisp/www.cliki.net/Stefan Scholl.html +++ /dev/null @@ -1,57 +0,0 @@ - - - - - CLiki: Stefan Scholl - - - - - - - -
    Stefan Scholl
    Just a Person.

    -E-mail: (format t "~A@~A.~A" "stesch" "no-spoon" "de")
    -Web: http://www.no-spoon.de/
    - - -I'm the author of CL-EMB and CL-WIKI. -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/StefanKamphausen.html b/clones/lisp/www.cliki.net/StefanKamphausen.html deleted file mode 100644 index 44b2ea7e..00000000 --- a/clones/lisp/www.cliki.net/StefanKamphausen.html +++ /dev/null @@ -1,56 +0,0 @@ - - - - - CLiki: StefanKamphausen - - - - - - - -
    StefanKamphausen
    I am ... Person, ....

      -
    • a long time XEmacs-User (and thus already tainted for CL ;-),
    • -
    • willing and eager to get into CL which will hopefully and probably be the last programming language I'll learn (at least this is my plan in early 2005),
    • -
    • a total rookie when it comes to CL,
    • -
    • virtually at home here.
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Stefil.html b/clones/lisp/www.cliki.net/Stefil.html deleted file mode 100644 index 65558ca4..00000000 --- a/clones/lisp/www.cliki.net/Stefil.html +++ /dev/null @@ -1,68 +0,0 @@ - - - - - CLiki: Stefil - - - - - - - -
    Stefil
    hu.dwim.stefil is an abandoned test framework with a living fork at fiasco, and its philosophy is to stay as transparent as possible, disrupting the normal Lisp application development process as little as possible.

    License: Public Domain / BSD

    What Stefil basically adds is that it quietly gathers extra runtime information and statistics (like a test backtraces, assertions, failures and/or errors), and introduces a wider range of ASSERT-like primitives to express the expected behavior of a program. It also integrates well with the Slime inspector, and provides useful restarts to achieve that goal.

    Unique Selling Points: -

      -
    • Non-intrusive to the normal development process (debugging a failed test is exactly the same experience as debugging your application)
    • -
    • Integrates well with Slime
    • -
    • Lets you run tests both in non-interactive and in interactive mode with useful restarts
    • -
    • Makes it trivial to invoke even only parts of the test suite: just call the DEFTEST (DEFUN) of your choice
    • -
    • Allows you to interactively skip parts of the test suite (e.g. to skip a long test (and remember that suite are also tests) you can abort with C-c C-c and select a restart)
    • -
    • Its fixture implementation allows invoking specific parts of the test suite without sacrificing performance
    • -

    Homepage: http://dwim.hu/darcsweb/darcsweb.cgi?r=HEAD%20hu.dwim.stefil;a=summary

    Maintainers: Levente Mészáros, Tamás Borbély and Attila Lendvai.

    Current darcs repository is available at: -http://dwim.hu/darcs/hu.dwim.stefil/

    Notable packages using stefil for testing include: -

    Old version called stefil

    Homepage, including some documentation: https://common-lisp.net/project/stefil/index-old.shtml

    Older version of stefil is hosted by Luís Oliveira and can be found at: https://common-lisp.net/~loliveira/tarballs/inofficial/stefil-2008-08-19.tar.gz

    Both new and old versions are Quicklisp installable using package names hu.dwim.stefil and stefil.


    -obsolete
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Stencl.html b/clones/lisp/www.cliki.net/Stencl.html deleted file mode 100644 index 6a606d84..00000000 --- a/clones/lisp/www.cliki.net/Stencl.html +++ /dev/null @@ -1,73 +0,0 @@ - - - - - CLiki: Stencl - - - - - - - -
    Stencl
    Stencl is a simple templating library loosely based on BRL (the Beautiful Report Language). It leverages the power of the lisp reader to create a dynamic templating system that is easy to understand and powerful enough for most applications.

    Downloading and Installation

    The official repository is currently at https://github.com/dlowe-net/stencl. Download the code, and place the directory with the asd file in ~/quicklisp/local-projects/ or somewhere in your asdf tree.

    Writing templates

    -Here is an example of a stencl template:

    <html><head><title>[#{title}]</title><body>
    -<ul>[(dolist (item #{list})
    -       (out ]
    -<li>[item]</li>[))]
    -</ul>
    -  <p>[#{footer}]</p>
    -</body></html>
    -

    and here's how you can get the template output:

    (stencl:to-string (stencl:from-string template) - :title "My title" - :list '("alpha" "beta" "gamma" "delta") - :footer "generated by stencl") -

    and here's the output:

    <html><head><title>My title</title><body>
    -<ul>
    -<li>alpha</li>
    -<li>beta</li>
    -<li>gamma</li>
    -<li>delta</li>
    -</ul>
    -<p>generated by stencl</p>
    -</body></html>
    -

    In this example, there's some HTML, with some Common Lisp code thrown in. The code is separated from the data with square brackets ([]), there's a stencl function in the middle, and there's a weird #{} notation. What is going on here?

    The OUT function is what generates the output of the template. It converts all of its arguments to strings automatically, then appends them to the output stream of the template. The entire template starts with an implicit stencl wrapper, so that everything inside is, by default, a string that is output.

    The square brackets are tricky, though. They delimit a string, but the open bracket ([) closes a string and the close bracket (]) starts a new string. So when you see [(out ]<p>[item]</p>[)], this will produce a form (internally) like (out "<p>" item "</p>"). This preserves the clarity of the template with a simple transformation, and was the central beautiful insight of the BRL language.

    The notation of #{foo} is a stencl innovation, and tells the stencl library that FOO should be a keyword parameter to the generated function.


    -HTML template
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Stephen De Gabrielle.html b/clones/lisp/www.cliki.net/Stephen De Gabrielle.html deleted file mode 100644 index 3a9c1a87..00000000 --- a/clones/lisp/www.cliki.net/Stephen De Gabrielle.html +++ /dev/null @@ -1,56 +0,0 @@ - - - - - CLiki: Stephen De Gabrielle - - - - - - - -
    Stephen De Gabrielle
    Useful pages: -

    email me at: -spdegabrielleatyahoo.com

    person

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Stephen Horner.html b/clones/lisp/www.cliki.net/Stephen Horner.html deleted file mode 100644 index 6608ec1a..00000000 --- a/clones/lisp/www.cliki.net/Stephen Horner.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Stephen Horner - - - - - - - -
    Stephen Horner
    Stephen Horner is a Person. He is a student of computer science, and develops in Common Lisp in his free time.

    Ok, enough with the third person. I've been programming for around 2 years now, and in Common Lisp for about 3 months. I've authored one package CL-MPD

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Steve Dunham.html b/clones/lisp/www.cliki.net/Steve Dunham.html deleted file mode 100644 index 508b5340..00000000 --- a/clones/lisp/www.cliki.net/Steve Dunham.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Steve Dunham - - - - - - - -
    Steve Dunham
    Steve Dunham is a Person who is trying to learn Common Lisp in his spare time because it sucks less. He most recently worked as a Software Engineer/Architect doing Java, Perl, and C++ work. (And lots of XSLT too which -is vaguely related to Lisp, except they don't bother to make the engines tail-recursive.)

    He also has been a Debian Developer (someone who packages software for Debian) since 1996.

    His home page can be found at http://www.cse.msu.edu/~dunham

    Steve lives near Las Vegas and works for SRD (non Lisp related).

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Steve Eichblatt.html b/clones/lisp/www.cliki.net/Steve Eichblatt.html deleted file mode 100644 index ef680b11..00000000 --- a/clones/lisp/www.cliki.net/Steve Eichblatt.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Steve Eichblatt - - - - - - - -
    Steve Eichblatt
    Steve Eichblatt, a Person, writes Lisp programs for fun. He is currently writing Datoura, a graphics application in Common Lisp. -You can reach him at eichblatt@member.fsf.org
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Stig E Sandø.html b/clones/lisp/www.cliki.net/Stig E Sandø.html deleted file mode 100644 index 8fe5ee92..00000000 --- a/clones/lisp/www.cliki.net/Stig E Sandø.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: Stig E Sandø - - - - - - - -
    Stig E Sandø
    Is a Person and drops by #lisp now and then as Fufie. -Does some work on Langband now and then. -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Storable Functions.html b/clones/lisp/www.cliki.net/Storable Functions.html deleted file mode 100644 index e53b556b..00000000 --- a/clones/lisp/www.cliki.net/Storable Functions.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Storable Functions - - - - - - - -
    Storable Functions
    Storable Functions implements transformations of functions (including closures) from and to CLOS instances of some specific classes. It contains a set of macros for making this transformation possible, and tools for actually doing the transformation. The goal is to provide a simple, portable way to serialize functions.

    It includes cl-store+functions, which implements the serialization for cl-store.

    License: MIT

    Homepage: https://github.com/gugamilare/storable-functions

    You may be interested in cl-walker which is a configurable full sexp → CLOS AST transformer.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/StructuredStorage.html b/clones/lisp/www.cliki.net/StructuredStorage.html deleted file mode 100644 index 6e8a6827..00000000 --- a/clones/lisp/www.cliki.net/StructuredStorage.html +++ /dev/null @@ -1,129 +0,0 @@ - - - - - CLiki: StructuredStorage - - - - - - - -
    StructuredStorage
    aka NOSQL

    -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/StudlyCaps.html b/clones/lisp/www.cliki.net/StudlyCaps.html deleted file mode 100644 index 649e5f93..00000000 --- a/clones/lisp/www.cliki.net/StudlyCaps.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: StudlyCaps - - - - - - - -
    StudlyCaps
    Please don't use StudlyCaps for page names. We're Lisp programmers, not JavaProgrammers. Since its inception cliki has had a free link syntax, so there's not even a historical reason for doing this.


    -This page is about CLiki
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/StumpWM.html b/clones/lisp/www.cliki.net/StumpWM.html deleted file mode 100644 index 9a87977c..00000000 --- a/clones/lisp/www.cliki.net/StumpWM.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: stumpwm - - - - - - - -
    stumpwm
    StumpWM is a tiling, keyboard driven X11 window manager application written entirely in Common Lisp.

    StumpWM attempts to be customizable yet visually minimal. There are -no window decorations, no icons, and no buttons. It does have various -hooks to attach your personal customizations, and variables to -tweak.

    The homepage is located at https://stumpwm.github.io/.

    Wiki has been moved to github.

    StumpWM's focus is on doing for windows what Emacs does for files and buffers: smooth customizable control. I find overlapping windows introduces needless clutter, which is why StumpWM tiles windows. Rather than flipping through a clutter of windows, StumpWM presents windows in a numbered list. Much more civilized. And finally, like Emacs, everything is done with keystrokes (yes Emacs does allow you to use the pointer, and perhaps if there is a need StumpWM will too) which allows for seamless task switching between file editing and window navigating.

    Male has put together a video featuring StumpWM's new features: https://archive.org/details/TheStumpWMExperience

    The StumpWM usage notes of Jean-Philippe Paradis are available.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Stumpwm.html b/clones/lisp/www.cliki.net/Stumpwm.html deleted file mode 100644 index 9a87977c..00000000 --- a/clones/lisp/www.cliki.net/Stumpwm.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: stumpwm - - - - - - - -
    stumpwm
    StumpWM is a tiling, keyboard driven X11 window manager application written entirely in Common Lisp.

    StumpWM attempts to be customizable yet visually minimal. There are -no window decorations, no icons, and no buttons. It does have various -hooks to attach your personal customizations, and variables to -tweak.

    The homepage is located at https://stumpwm.github.io/.

    Wiki has been moved to github.

    StumpWM's focus is on doing for windows what Emacs does for files and buffers: smooth customizable control. I find overlapping windows introduces needless clutter, which is why StumpWM tiles windows. Rather than flipping through a clutter of windows, StumpWM presents windows in a numbered list. Much more civilized. And finally, like Emacs, everything is done with keystrokes (yes Emacs does allow you to use the pointer, and perhaps if there is a need StumpWM will too) which allows for seamless task switching between file editing and window navigating.

    Male has put together a video featuring StumpWM's new features: https://archive.org/details/TheStumpWMExperience

    The StumpWM usage notes of Jean-Philippe Paradis are available.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Submarine.html b/clones/lisp/www.cliki.net/Submarine.html deleted file mode 100644 index ba940c6e..00000000 --- a/clones/lisp/www.cliki.net/Submarine.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Submarine - - - - - - - -
    Submarine
    Submarine is a Common Lisp library that's somewhere between a PostgreSQL library and an object persistence system. It uses Postmodern to communicate with the database. The basic idea is that you create your classes in the metaclass DB-CLASS and submarine cares about creating SQL tables or, if the tables already exist, checking if they conform to the provided specification. Moreover, Submarine supports an intuitive way of expressing both one-to-many and many-to-many relations.

    The author of Submarine is Ryszard Szopa.

    The common-lisp.net webpage of the project is https://common-lisp.net/project/submarine/.


    -ORM
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Sudhir Shenoy.html b/clones/lisp/www.cliki.net/Sudhir Shenoy.html deleted file mode 100644 index 726327a7..00000000 --- a/clones/lisp/www.cliki.net/Sudhir Shenoy.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Sudhir Shenoy - - - - - - - -
    Sudhir Shenoy
    Occasional Lisp programmer, non-religious, has been known to defend Perl on occasion.


    -person
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Suggested Programming Projects.html b/clones/lisp/www.cliki.net/Suggested Programming Projects.html deleted file mode 100644 index d8d746b4..00000000 --- a/clones/lisp/www.cliki.net/Suggested Programming Projects.html +++ /dev/null @@ -1,137 +0,0 @@ - - - - - CLiki: Suggested Programming Projects - - - - - - - -
    Suggested Programming Projects
    These projects are intended for those who feel they would like to make a contribution in the form of free Common Lisp code.

    Some of the projects in this list are old or no longer relevant. If you find a project where this is the case please remove it from the list

    Library quality

    -

    Libraries wanted

    Projects related to Common Lisp implementations

      -
    • Add a peephole optimizer phase to sbcl's compiler, and use it for microoptimizations on some sbcl platforms. -
    • -
    • Add some loop optimizations (such as invariant lifting, common subexpression elimination, ...) to sbcl's compiler. -
    • -
    • Write a real-time generational SMP-aware garbage collector for SBCL. -Contact Robert Strandh for more information. -
    • -
    • Make CLISP more easily embeddable in other (C) applications. -
    • -

    -Development tools

    -
      -
    • Write a Learnable Programming Environment for CL development. See for example Khan Academy environment Learnable Programming, or Chris Granger's LightTable IDE. We'd want that both to promote Lisp amongst youngsters and as a nice Lisp development IDE. Note: the examples are graphical for the quick feed back provided to newbies, but the same tools can also be applied to more "abstract" programs, either thru visualization modules, or just showing textually the state of the variables, etc. Such an environment would also include naturally Debugging Backward in Time. See also Harald Wertz papers on program understanding, etc. -
    • -
    • Port the Dylan editor Deuce (see CL-Emacs for info) to CL. We need a smaller/simpler/faster editor than Portable Hemlock or CLimacs to compete with GNU Emacs. -
    • -
    • Port GNU Emacs to run on Common Lisp as a back-end platform. Co-opt the GNU Emacs users. See Emacs to CL Porting Attempts. -
    • -
    • Enhance Climacs, for example in the areas of redisplay performance or (the lack of) ease of defining new syntaxes. A syntax for C would also be useful. -
    • -

    -CLX projects

      -
    • implement transparent (to the user) support for the BIG-REQUESTS X protocol extension. This allows more efficient support for other X extensions such as GLX and RENDER. -
    • -
    • implement transparent (to the user) support for the XKEYBOARD X extension; the protocol specification (dated 1994) provides enough information to how to do this. This would allow libraries such as McCLIM to provide better keyboard handling in their applications, dealing with confusions over whether modifiers such as the shift key are significant. -
    • -

    X11 projects

    -
      -
    • Work on the zen X11 server. Make it run on Wayland with hardware acceleration. -
    • -

    -McCLIM projects

    See also the McCLIM project page.

      -
    • Create a debugger pane and/or a debugger application to work with -the Listener and other CLIM applications. This is partially done. Contact -Robert Strandh for more information. -
    • -
    • Add "modern" panes and gadgets as extensions to McCLIM. -
    • -

    -Applications

      -
    • Make it possible to use Common Lisp as an extension language for -Texmacs. (a few weeks). -
    • -
    • Terminal emulator for Common Lisp. Port either Paddy Mullen's rxvt-js or the suckless st terminal emulator to CL. Use this to replace xterm on your *nix desktop, add terminal emulation to McCLIM, terminal emulation modes to Climacs and Portable Hemlock, and eventually as the terminal emulator in a Lisp OS. -
    • -
    • Port Tony Garnock-Jones' Racket-SSH to Common Lisp. Get a CL SSH client so you can talk to *nix servers securely, an SSH server so Lisp processes can talk to each other securely. Combine with terminal emulator above to get rid of your OpenSSH client. Will be needed for a Lisp OS. -
    • -

    -Closure web browser extensions

    -
      -
    • Integrate CL-JavaScript into the Closure web browser. -
    • -
    • Once Closure has JavaScript support, adapt rxvt-js (a JavaScript/DHTML port of urxvt) to run as a stand-alone native application (using Closure as a library), to serve as a replacement for xterm/rxvt. -
    • -
    • Add HTML5 support to the Closure web browser. -
    • -

    -Documentation projects

      -
    • Write a user manual for CLIM/McCLIM, including in particular -a Getting Started manual. -
    • -
    • Write a manual that explains the internals of SBCL. -
    • -
    • Convert the user's manual for Hemlock from Scribe to Texinfo. -
    • -
    • Convert the command implementer's guide for Hemlock from Scribe to -Texinfo. -
    • -
    • Convert section 2 of AMOP to Texinfo, TeX sources are available from ftp://parcftp.xerox.com/pub/pcl/mop/ -
    • -
    • Convert the final ANSI draft spec to Texinfo, obtaining also official clarification on its copyright status (a month). What's wrong with dpans2texi? *blush* -- I'd totally forgotten about it. Clarification on the copyright status of dpANS would still be good, though. Situation is murky.

      The situation with the draft spec is probably not improvable - there were too many authors and it was too long ago. Of course, given that the drafts have been publicly and freely downloadable for ten years, and Franz has a copy of dpANS2 on their website with a copyright notice concerning the presentation... The only other thing to do would be to try to track down all the authors/companies and get a statement from each of them. That's going to be tough, and even if they could all be located how does one sort out who wrote what? Also, even if someone had an objection to their part being free how would they demonstrate they are in fact the author of that part? With no copyright notices on the draft spec itself to identify authors of specific parts, the only way to be sure would be to identify the content in some other published work. Not that anyone would be likely to lie, granted... -

    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Sunil Mishra.html b/clones/lisp/www.cliki.net/Sunil Mishra.html deleted file mode 100644 index a721fdd2..00000000 --- a/clones/lisp/www.cliki.net/Sunil Mishra.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Sunil Mishra - - - - - - - -
    Sunil Mishra
    Sunil Mishra is a Lisp hacker interested in semantic web related applications.

    person

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Surendra Singhi.html b/clones/lisp/www.cliki.net/Surendra Singhi.html deleted file mode 100644 index 715f7cc6..00000000 --- a/clones/lisp/www.cliki.net/Surendra Singhi.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: Surendra Singhi - - - - - - - -
    Surendra Singhi
    Surendra Singhi is a lisper.

    Developer/maintainer of clisp module of SWIG. -

    Project Admin/developer/maintainer of wxCL. -It is an attempt to create lisp bindings for wxWidgets



    -I Am A Person, thank you.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Surf-Hippo.html b/clones/lisp/www.cliki.net/Surf-Hippo.html deleted file mode 100644 index 9922362c..00000000 --- a/clones/lisp/www.cliki.net/Surf-Hippo.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Surf-Hippo - - - - - - - -
    Surf-Hippo
    The Surf-Hippo Neuron Simulation System is an AI application for investigating models of single neurons and networks of neurons. It allows the construction of cells and networks, and the number of circuit nodes is limited only by available memory.

    Surf-Hippo runs under CMUCL and has a GUI based on Garnet, which, among other things, provides 3D views of dendritic trees and data plotting functionality. Source code and documentation are available at the Surf-Hippo Project site. The system is distributed under the terms of a license that seems DFSG-compatible.


    -Artificial Intelligence
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Susam.html b/clones/lisp/www.cliki.net/Susam.html deleted file mode 100644 index d7e0c054..00000000 --- a/clones/lisp/www.cliki.net/Susam.html +++ /dev/null @@ -1,70 +0,0 @@ - - - - - CLiki: Susam - - - - - - - -
    Susam
    Susam /suːsʌm/ is an open source developer. In the world of Common Lisp, he works on Common Lisp tooling to make Common Lisp more approachable for beginners. He has been a contributor to Superior Lisp Interaction Mode for Vim (SLIMV) and Portacle. He also maintains Emacs4CL, a tiny quick starter .emacs to quickly set up vanilla Emacs for Common Lisp programming.

    Susam began teaching himself Common Lisp using GNU CLISP 2.41 on Debian GNU/Linux 4.0 (Etch) at an airport during a long layover in 2007. Since then he has moved on to other implementations and uses SBCL primarily these days but keeps an instance of GNU CLISP around for nostalgia's sake. For others like him for whom the GNU CLISP welcome banner brings warm memories, here is a snapshot of it from version 2.41:

    -$ clisp
    -  i i i i i i i       ooooo    o        ooooooo   ooooo   ooooo
    -  I I I I I I I      8     8   8           8     8     o  8    8
    -  I  \ `+' /  I      8         8           8     8        8    8
    -   \  `-+-'  /       8         8           8      ooooo   8oooo
    -    `-__|__-'        8         8           8           8  8
    -        |            8     o   8           8     o     8  8
    -  ------+------       ooooo    8oooooo  ooo8ooo   ooooo   8
    -
    -Copyright (c) Bruno Haible, Michael Stoll 1992, 1993
    -Copyright (c) Bruno Haible, Marcus Daniels 1994-1997
    -Copyright (c) Bruno Haible, Pierpaolo Bernardi, Sam Steingold 1998
    -Copyright (c) Bruno Haible, Sam Steingold 1999-2000
    -Copyright (c) Sam Steingold, Bruno Haible 2001-2006
    -
    -[1]>
    -

    Susam is also an active IRCer and hangs out frequently on the IRC channels #commonlisp and #emacs on Libera Chat. Additionally, he operates the #algorithms and #offbeat channels on the same network. The last one is the official channel of the Offbeat Computation Club. The club members meet daily to read classic books on mathematics and computation. A good number of members of this community have a keen interest in Common Lisp and Emacs, so you are very welcome to join this channel if you would like to hang out with the community.

    -


    -Person
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Sven Van Caekenberghe.html b/clones/lisp/www.cliki.net/Sven Van Caekenberghe.html deleted file mode 100644 index 67a6ab03..00000000 --- a/clones/lisp/www.cliki.net/Sven Van Caekenberghe.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Sven Van Caekenberghe - - - - - - - -
    Sven Van Caekenberghe
    Sven Van Caekenberghe is a Lisp programmer/hacker/Person.

    See http://homepage.mac.com/svc for more info. -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Swank.html b/clones/lisp/www.cliki.net/Swank.html deleted file mode 100644 index 26ba1768..00000000 --- a/clones/lisp/www.cliki.net/Swank.html +++ /dev/null @@ -1,74 +0,0 @@ - - - - - CLiki: Swank - - - - - - - -
    Swank
    Swank is distributed as part of SLIME.

    It implements a wire protocol to access host lisp functionalities in a semi-portable way (it provides a portability layer for many useful bits missing in ANSI standard). Main library client is SLIME – an emacs mode for interacting with Common Lisp. Other library clients and forks include:

    Clients in Common Lisp: -

    Forks: -


    -wire format
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Swap-bytes.html b/clones/lisp/www.cliki.net/Swap-bytes.html deleted file mode 100644 index de5cde79..00000000 --- a/clones/lisp/www.cliki.net/Swap-bytes.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: swap-bytes - - - - - - - -
    swap-bytes
    swap-bytes is a library for efficient endianness conversion in SBCL and CCL.

    Homepage: https://github.com/sionescu/swap-bytes

    License: MIT

    Library Consolidation: you may want to use instead nibbles which is actively maintained.


    -Topics: binary format machine code
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Swine.html b/clones/lisp/www.cliki.net/Swine.html deleted file mode 100644 index f77b520b..00000000 --- a/clones/lisp/www.cliki.net/Swine.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: SWINE - - - - - - - -
    SWINE
    Swine is the addition of Slime editing commands to Climacs using Slime's SWANK backend.

    Hence the name: Slime + Swank = Swine.

    Swine was originally written by David Murray (Splittist) and is now being worked on by Dwight Holman.

    Swine is included with clim-desktop, which aims to make a complete Common Lisp environment.

    -


    -Swine is a Development tool.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Switch Date 1980s.html b/clones/lisp/www.cliki.net/Switch Date 1980s.html deleted file mode 100644 index 8b22c472..00000000 --- a/clones/lisp/www.cliki.net/Switch Date 1980s.html +++ /dev/null @@ -1,56 +0,0 @@ - - - - - CLiki: Switch Date 1980s - - - - - - - -
    Switch Date 1980s
    Just one category under The RtLS by Switch Year taxonomy of The Road to Lisp Survey found on The RtLS All-Kenny Page.
    - -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Switch Date 1990s.html b/clones/lisp/www.cliki.net/Switch Date 1990s.html deleted file mode 100644 index 8a2f7563..00000000 --- a/clones/lisp/www.cliki.net/Switch Date 1990s.html +++ /dev/null @@ -1,56 +0,0 @@ - - - - - CLiki: Switch Date 1990s - - - - - - - -
    Switch Date 1990s
    Just one category under The RtLS by Switch Year taxonomy of The Road to Lisp Survey found on The RtLS All-Kenny Page.
    - -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Switch Date 2000.html b/clones/lisp/www.cliki.net/Switch Date 2000.html deleted file mode 100644 index 3ebc99e6..00000000 --- a/clones/lisp/www.cliki.net/Switch Date 2000.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - CLiki: Switch Date 2000 - - - - - - - -
    Switch Date 2000
    Just one category under The RtLS by Switch Year taxonomy of The Road to Lisp Survey found on The RtLS All-Kenny Page.
    -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/SxQL.html b/clones/lisp/www.cliki.net/SxQL.html deleted file mode 100644 index 483b1631..00000000 --- a/clones/lisp/www.cliki.net/SxQL.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: SxQL - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Sycamore.html b/clones/lisp/www.cliki.net/Sycamore.html deleted file mode 100644 index 4ac10414..00000000 --- a/clones/lisp/www.cliki.net/Sycamore.html +++ /dev/null @@ -1,63 +0,0 @@ - - - - - CLiki: Sycamore - - - - - - - -
    Sycamore
    Sycamore implements several purely functional data structures in Common Lisp.

      -
    • Weight-balanced binary trees -
    • -
    • Ordered Sets -
    • -
    • Ordered Maps -
    • -
    • Paring Heaps -
    • -
    • Amortized Queues -
    • -

    Sycamore on GitHub


    -data structure
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Sykopomp.html b/clones/lisp/www.cliki.net/Sykopomp.html deleted file mode 100644 index 5f171d1e..00000000 --- a/clones/lisp/www.cliki.net/Sykopomp.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Sykopomp - - - - - - - -
    Sykopomp
    Some Persons believe Sykopomp to be a Person. When concerned about legal or social-acceptance issues, he chooses to go by the name Josh Marchan. He used to be a film student, and got a bachelor's in the field. Now, he is a lisp newbie that frequently lurks in #lisp@freenode. He likes good movies, good code, and pretending that programming is a form of self expression (with Sheeple, for example).

    His main projects are:

    Sheeple - What if CLOS were prototype-based?

    ChanL - A series of tubes.

    Sykosomatic - A lisp-based game engine designed to support MUD-like games.

    Sykopomp is pretty new to all this, and doesn't know what he's talking about most of the time. On the other hand, he really enjoys programming in lisp, and wants to help the (non-existent) Lisp community out however he can.

    His main development implementations are CCL and SBCL, although he also tests his code on CLISP. His reality runs on Linux x86-64.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Symbol-Munger.html b/clones/lisp/www.cliki.net/Symbol-Munger.html deleted file mode 100644 index 77285fce..00000000 --- a/clones/lisp/www.cliki.net/Symbol-Munger.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Symbol-Munger - - - - - - - -
    Symbol-Munger
    Symbol-Munger is a small library that provides functionality to ease conversion between the same symbol in different environments.

    For example, when generating common lisp classes from a database schema, I want to change column names into lisp slot / accessor names, and then later when I am displaying that common lisp slot on the screen I want to display its slot-name as an english column header. (EG: my_db_col > my-db-col > My Db Col)

    For more info see:

    Git Hub: https://github.com/AccelerationNet/symbol-munger


    -Topic: AccelerationNet
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/SymbolicWeb.html b/clones/lisp/www.cliki.net/SymbolicWeb.html deleted file mode 100644 index f415a0f8..00000000 --- a/clones/lisp/www.cliki.net/SymbolicWeb.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: SymbolicWeb - - - - - - - -
    SymbolicWeb
    SymbolicWeb is a GUI toolkit and web framework that uses the browser to render UI elements.

    Repository: http://github.com/lnostdal/SymbolicWeb (this repository is Clojure code)

    License: AGPLv3

    Evaluation, 20100901

    A very brief assessment of all web frameworks listed in cliki was carried out in September 2010. This assessment comprised: check websites, download source if available, attempt to compile, review documentation.

    The review found that SymbolicWeb looked interesting and was under active development; but as the README file says 'Alpha, and pretty much only interesting for developers of SW itself.'

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/System programming.html b/clones/lisp/www.cliki.net/System programming.html deleted file mode 100644 index 77380a7b..00000000 --- a/clones/lisp/www.cliki.net/System programming.html +++ /dev/null @@ -1,374 +0,0 @@ - - - - - CLiki: system programming - - - - - - - -
    system programming
    Libraries having to do with system programming - memory management, timers, system calls, etc. Anything to do with implementation or OS specifics also belongs here.

      -
    • -ACL-COMPAT - - ACL-COMPAT is a free set of compatibility layers for parts of Franz's ACL system programming API for several Common Lisp implementations -
    • -
    • -Bordeaux-Threads - - Bordeaux-Threads lets you write multi-threaded applications in a portable way -
    • -
    • -bt-semaphore - - simple semaphores for bordeaux-threads -
    • -
    • -cl-async - - Cl-async is a asynchronous I/O library wrapping the libuv C library -
    • -
    • -cl-daemonize - - cl-daemonize is a tool to daemonize a Lisp process without the need for screen/detachtty -
    • -
    • -cl-environment - - CL-ENVIRONMENT is a small library that tries to canonicalize access to some of the internals of different CL implementations -
    • -
    • -cl-event - - cl-event is a Lisp libevent wrapper -
    • -
    • -cl-fad - - CL-FAD is a portable pathname library based on code from Peter Seibel's book Practical Common Lisp, providing a way to work with files and directories -
    • -
    • -cl-fuse - - CL-FUSE provides Common Lisp bindings for FUSE (file system in user space) -
    • -
    • -cl-inotify - - cl-inotify is an interface to the Linux inotify facility for file change notifications -
    • -
    • -cl-libserialport - - cl-libserialport is a Common Lisp CFFI interface to the sigrok libserialport library, a cross-platform, minimal, C library for interfacing with serial ports -
    • -
    • -cl-libusb - - cl-libusb provides an interface to libusb, a library that provides access to USB devices across many different operating systems -
    • -
    • -CL-PACKAGE-LOCKS - - A unified way of dealing with package locks on those implementations that support them (or that's the eventual goal anyways) -
    • -
    • -cl-syslog - - Common Lisp interface to local and remote Syslog facilities -
    • -
    • -cl-win32ole - - Common Lisp OLE like Ruby's win32ole -
    • -
    • -closer-weak - - closer-weak provides CLisp-style weak objects support for CMUCL and SBCL -
    • -
    • -CLTIO - - CLTIO is a UFFI binding to the Unix termio library for raw serial/terminal I/O -
    • -
    • -clufs - - Common Lisp User Space File System -
    • -
    • -COM.INFORMATIMAGO.SUSV3 - - SUSV3 is an interface to the Single Unix Specification version 3 API -
    • -
    • -conium - - Conium is a portability library for debugger- and compiler-related -
    • -
    • -Creating Executables - - Most Common Lisp implementations support creating native-format executable files -
    • -
    • -cserial-port - - cserial-port is a Common Lisp library for interacting with serial ports -
    • -
    • -Cyclosis - - Cyclosis is a combined implementation of the functionality of the Common Lisp stream dictionary and that of the Gray streams proposal -
    • -
    • -do-backup - - do-backup is a tool for performing backups on some regular basis on unix systems -
    • -
    • -executor - - executor is a portability layer for external executable invocation -
    • -
    • -exit-hooks - - exit-hooks is a portable layer for calling given function when Lisp exit -
    • -
    • -external-program - - external-program provides a largely-portable wrapper for running programs external to the Lisp process -
    • -
    • -garbage-pools - - GARBAGE-POOLS is a Common Lisp re-implementation of the APR Pools for resource management -
    • -
    • -green-threads - - GREEN-THREADS is a portable library implementing green threads (lightweight, cooperatively multitasked, user threads) in Common Lisp -
    • -
    • -IOlib - - I/O(mainly networking) library containing: a BSD sockets library, a DNS resolver and an I/O multiplexer that supports select(2), epoll(4) and kqueue(2) -
    • -
    • -lh-usb - - lh-usb is a set of bindings for the Linux usbfs interface for writing usb device drivers from user-space Lisp code -
    • -
    • -Lisp as a shell - - See CLISP-Shell locally or the -
    • -
    • -nibbles - - Nibbles is a library for accessing octet-addressed blocks of data -
    • -
    • -Osicat - - Operating system interface library mainly for Unix -
    • -
    • -reserve-channel - - Simple routing daemons that checks reachability of packets to external host and switch routing to backup channels if needed -
    • -
    • -RESOURCE-UTILIZATION - - RESOURCE-UTILIZATION gathers and displays resource utilization statistics from Linux's /proc interface -
    • -
    • -s-sysdeps - - S-SYSDEPS is an abstraction layer over platform dependent functionality -
    • -
    • -sb-cpu-affinity - - sb-cpu-affinity lets you set Linux scheduler CPU affinity masks from SBCL -
    • -
    • -SB-X86-PORTIO - - SB-X86-PORTIO is a module for doing raw port I/O on SBCL/x86/x86-64 -
    • -
    • -shelisp - - Shelisp provides mechanisms for composing and running Unix shell (particularly bash) commands and constructs from Common Lisp -
    • -
    • -SHUT-IT-DOWN - - Exit the Common Lisp implementation -
    • -
    • -stassats-inotify - - stassats-inotify is an interface to the Linux inotify facility for file change notifications -
    • -
    • -static-vectors - - Allocate SIMPLE-ARRAYs in static memory -
    • -
    • -Terminfo - - A Common Lisp interface to the terminfo database by Paul Foley -
    • -
    • -thread-pool - - thread-pool is library that allows asynchronous function execution from a static thread pool -
    • -
    • -tmpdir - - tmpdir is a simple Common Lisp library that provides a simple function and a simple macro to manipulate temporary directories (using cl-fad) -
    • -
    • -trivial-clipboard - - trivial-clipboard provides access to the system clipboard -
    • -
    • -trivial-features - - trivial-features ensures consistent *FEATURES* across multiple Common -
    • -
    • -trivial-file-size - - This library exports a single function, file-size-in-octets -
    • -
    • -trivial-garbage - - trivial-garbage provides a portable API to finalizers, weak hash-tables and weak pointers -
    • -
    • -trivial-gray-streams - - trivial-gray-streams provides an extremely thin compatibility layer for Gray streams -
    • -
    • -trivial-mmap - - Trivial-MMAP is a Common Lisp library that aims to provide an easy-to-use API for working with memory-mapped files -
    • -
    • -trivial-raw-io - - trivial-raw-io provides access to raw serial/terminal I/O (termios) under Unix -
    • -
    • -unix-options - - unix-options is a library for processing Unix-style command-line arguments -
    • -
    • -unix-opts - - This is a minimalistic parser of command line options -
    • -
    • -ZACL - - ZACL is an ACL-like layer for running AllegroServe on non-Allegro Lisps -
    • -

    Tools for working with filesystem interfaces: (main topic: filesystem) -

      -
    • -cl-fswatch - - Wrapper for fswatch, a cross-platform file change monitor -
    • -
    • -cl-fuse - - CL-FUSE provides Common Lisp bindings for FUSE (file system in user space) -
    • -
    • -clufs - - Common Lisp User Space File System -
    • -
    • -query-fs - - Query-FS is a FUSE-based filesystem that presents database queries as filesystem trees -
    • -

    Tools for dealing with assembler/machine code: (main topic: machine code) -

      -
    • -Apple II archaeology - - Apple II archaeology is a collection of Lisp code useful for Apple II retrocomputing -
    • -
    • -armish - - Armish is an arm assembler -
    • -
    • -Assem - - Assem is an ISA-level code layer for Common Lisp -
    • -
    • -BITMOP - - BITMOP is a DSL for definition and manipulation of register sets, registers, bitfields and bitfield values, all of which are first-class objects -
    • -
    • -cl-comfy-arm - - cl-comfy-arm is an implementation by JosephOswald of Henry Baker's COMFY assembler for the ARM architecture -
    • -
    • -cl-elf - - cl-elf is a library for reading and writing the ELF executable file format -
    • -
    • -CL-IO-ELF - - CL-IO-ELF is a parser for ELF executable file format -
    • -
    • -cl-larval - - S-Exp syntax to write assembler for AVR microcontrollers -
    • -
    • -COMFY-6502 - - COMFY-6502 is a port by JosephOswald of Henry Baker's COMFY-6502 compiler to Common Lisp -
    • -
    • -LLVM - - LLVM stands for Low Level Virtual Machine -
    • -
    • -swap-bytes - - swap-bytes is a library for efficient endianness conversion in SBCL and CCL -
    • -
    • -SYMTABLE - - SYMTABLE is a simplistic symbol-table abstraction -
    • -

    Tools for working with embedded systems (Arduino, etc.): (main topic: embedded) -

      -
    • -Apple II archaeology - - Apple II archaeology is a collection of Lisp code useful for Apple II retrocomputing -
    • -
    • -Arduino Lisp - - Arduino Lisp is a compiler from a subset of Common Lisp to the subset of C++ used by the Arduino C++ compiler -
    • -
    • -arduino-experiments - - arduino-experiments is a library for interfacing to the Arduino embedded computer via serial I/O from Lisp -
    • -
    • -cl-larval - - S-Exp syntax to write assembler for AVR microcontrollers -
    • -
    • -cluck - - Cluck is a Common Lisp library written by Kevin Rosenberg for assisting in configuring timers on microcontroller chips -
    • -
    • -common-db - - common-db is a programmable debugging substrate, mostly geared to driving target devices by establishing control via on-chip debugging machinery through a JTAG (IEEE 1149.1) external port -
    • -
    • -uLisp - - uLisp is an embedded Lisp for microcontrollers, supporting Arduino, Adafruit M0/M4, Micro:bit, ESP8266/32, and RISC-V boards -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/TALCL.html b/clones/lisp/www.cliki.net/TALCL.html deleted file mode 100644 index 2b6599d1..00000000 --- a/clones/lisp/www.cliki.net/TALCL.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: TALCL - - - - - - - -
    TALCL
    TALCL is a templating library that implements XML templates and HTML templates.

    (Plain text templates can also be generated by putting template content inside a tal:tal tag). Templates created with this library can be integrated with CXML dom documents.

    This library is a significant branch of the TAL implementation found in arnesi / yaclml / ucw. TALCL is divorced entirely from the arnesi / yaclml / ucw stack and should be a usable choice for any templating need (though certainly specializing in XML templating).

    See the examples directory for runable lisp code and tal templates.

    For more info see:

    Git Hub: https://github.com/AccelerationNet/talcl


    Topic: AccelerationNet

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/TEXP.html b/clones/lisp/www.cliki.net/TEXP.html deleted file mode 100644 index ccbede28..00000000 --- a/clones/lisp/www.cliki.net/TEXP.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: TEXP - - - - - - - -
    TEXP
    texp is a thin domain specific language to generate TeX code from within Common Lisp.

    Written by Max Rottenkolber.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/TIMER.html b/clones/lisp/www.cliki.net/TIMER.html deleted file mode 100644 index 24e13e0e..00000000 --- a/clones/lisp/www.cliki.net/TIMER.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: TIMER - - - - - - - -
    TIMER
    An event scheduling library for SBCL by Zach Beane. It implements an interface similar to LispWorks' timer and scheduling functions.

    Documentation is here. There is also a ChangeLog.


    -obsolete
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/TODO List.html b/clones/lisp/www.cliki.net/TODO List.html deleted file mode 100644 index a8a21eca..00000000 --- a/clones/lisp/www.cliki.net/TODO List.html +++ /dev/null @@ -1,86 +0,0 @@ - - - - - CLiki: TODO List - - - - - - - -
    TODO List
    Things that need doing, and bugs that need fixing, in the CLiki software. These need prioritising. I have marked those implemented in CLiki2 with ☑--Roland Kaufmann

    -Proposed changes to the CLiki site content should be kept somewhere else - right now the debate is centered on the Uncategorized page

      -
    1. Page name synonyms: give the same page more than 1 title (for plurals, acronym expansions, etc)

    2. -
    3. Review behaviour with page caching to minimise need to click `reload' after edits, but preferably without sending uncachable documents every time

    4. -
    5. "Link guessing" - do multiple searches on the words in a document when it's edited, to suggest possible links to the user

    6. -
    7. Anon rsync configuration for remote sites to collect the content tarchive in bandwidth-friendly fashion. This would be more likely if any remote site expressed an interest in so doing

    8. -
    9. Recent Changes page to take a 'time since' parameter, e.g. http://www.cliki.net/recent-changes.sexp?3276683207 to get anything that's been added since now.

    10. -
    11. -Character encoding surprises, e.g. there is both HE&Lambda;P and HEΛP, and the first page can't be deleted without deleting the other page.

    12. -
    13. Having separate cookies for both cliki.net and www.cliki.net is a source of confusion at times. And often the sessions get cleared out before the cookies themselves expire (maybe because of the server restarting). -
    14. -

    Things that got done -

      -
    1. ☑ Anti-spam measures. This comp.lang.lisp thread has some discussion. Almost certainly an automated scheme will be needed.

    2. -
    3. ☑ Password-protected accounts. Using an account to make changes could be optional, but reporting who made a change should happen only with a protected account. Spammers are now signing with my name (David Owen).

    4. -
    5. ☑ Enhance versioning to display diffs to/from other versions

    6. -
    7. ☑ How about a preview button on the "edit" page. -- Peter

    8. -
    9. ☑ Convenient way of adding a link to an entry in the Hyperspec glossary.

    10. -
    11. ☑ When displaying times e.g., on the "Recent Changes" pages, also display a time zone. FWIW, all times should be UTC

    12. -
    13. ☑ Add support for code syntax highlighting. Maybe it can be borrowed from bknr or from lisppaste? -- 2004-07-28 Ivan Toshkov

    14. -
    15. ☑ A way to find CLiki links to a certain page: when deleting a page, I would like to see how many links point to it.--Roland Kaufmann -
    16. ☑ A way to find all topic markers, i.e. strings used in a /(topic) search.--Roland Kaufmann -
    17. -

    Things that aren't planned to get done -

      -
    1. An easier list/header/formatting system than html, like e.g MoinMoin has. -I think HTML is ok. Andrey and I tried Markdown when writing CLiki2. It didn't cover all use cases and there were a lot of problems. --Vladimir Sedach

    2. -
    3. Automatic link checker to annotate external links when they go 404. -There are a lot of third-party link validation tools. Checking links on every page load is too slow. Batch-checking them means false positives for whoever has to check the logs. And the important thing is you still need to decide what to do about the broken links (find a working one, archive.org, declare software dead, etc.). --Vladimir Sedach

    4. -
    5. -InterWiki links. -I can't figure out from that page what InterWiki links are or why anyone wants them. --Vladimir Sedach

    6. -
    7. Email integration: (a) Edit-by-email service, (b) notification when page changes. -Edit-by-email is an interesting project; I'm not sure how much precedent there is. Email notifications can be obtained by connecting the ATOM change feeds to a feed-to-email gateway. --Vladimir Sedach -
    8. -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/TPS.html b/clones/lisp/www.cliki.net/TPS.html deleted file mode 100644 index 63dbfe6c..00000000 --- a/clones/lisp/www.cliki.net/TPS.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: TPS - - - - - - - -
    TPS
    TPS, standing for Theorem Proving System, is a theorem prover for first-order logic and type theory. A restricted version, ETPS, is intended for students and contains only commands relevant to proving theorems interactively.

    TPS is available under a license that does not qualify as 'free'.

    Theorem Provers Application Mathematics

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/TREES.html b/clones/lisp/www.cliki.net/TREES.html deleted file mode 100644 index 91ccedc5..00000000 --- a/clones/lisp/www.cliki.net/TREES.html +++ /dev/null @@ -1,57 +0,0 @@ - - - - - CLiki: TREES - - - - - - - -
    TREES
    TREES provides several binary tree data structures exposed through a uniform CLOS interface. The flavors provided are:

      -
    • "Standard" binary trees
    • -
    • AVL trees
    • -
    • Red-black trees
    • -
    • AA trees (simpler variant of red-black trees)
    • -
    -Repository: https://github.com/froydnj/trees

    License: BSD

    Author: Nathan Froyd

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/TRIVIAL-HTTP.html b/clones/lisp/www.cliki.net/TRIVIAL-HTTP.html deleted file mode 100644 index 9c81505f..00000000 --- a/clones/lisp/www.cliki.net/TRIVIAL-HTTP.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: trivial-http - - - - - - - -
    trivial-http
    trivial-http is a simple HTTP client library.

    If you just need simple HTTP operations (no chunking, no flexi-streams, etc,) then trivial-http may be what you're looking for.

    Homepage: https://common-lisp.net/project/trivial-http/


    -trivial, MIT-LICENSE
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/TRIVIAL.html b/clones/lisp/www.cliki.net/TRIVIAL.html deleted file mode 100644 index a8562bc8..00000000 --- a/clones/lisp/www.cliki.net/TRIVIAL.html +++ /dev/null @@ -1,180 +0,0 @@ - - - - - CLiki: trivial - - - - - - - -
    trivial
    Trivial software is software which serves a purpose with the minimum amount of complexity, possibly at the expense of robustness. For example, where acl-compat emulates Allegro's streams on several Lisp implementations, trivial-sockets merely wraps the host lisp's socket interface.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Tagger.html b/clones/lisp/www.cliki.net/Tagger.html deleted file mode 100644 index c48517fc..00000000 --- a/clones/lisp/www.cliki.net/Tagger.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Tagger - - - - - - - -
    Tagger
    The Tagger project is a revival of the Xerox Part-of-Speech (POS) Tagger program released somewhere in 1993.

    It is based on the hidden Markov model and requires few resources to accurately tag words.


    -Natural Language Processing text
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Tail Recursion.html b/clones/lisp/www.cliki.net/Tail Recursion.html deleted file mode 100644 index 78f13031..00000000 --- a/clones/lisp/www.cliki.net/Tail Recursion.html +++ /dev/null @@ -1,81 +0,0 @@ - - - - - CLiki: Tail Recursion - - - - - - - -
    Tail Recursion
    "Proper" Tail Recursion as found in Scheme is a feature that some miss in CL. It means carefully written recursive function calls can execute in constant space.

    Most high-performance CL compilers can already do significant tail call elimination (see their respective manuals). In a thread -on c.l.l., a vague idea of pseudostandardising across implementations was raised. -To do this, some stuff would need to be defined.

    What would constitute a "tail context" in CL?

    It's all very well saying do tail "elimination where possible", but you'd -need a list of where, like in Scheme R5RS section 3.5, which defines where -tail contexts are in terms of a subset of rules of the scheme grammar. The -Scheme ones are pretty common-sense I guess, but in CL may not be just -"intuitively obvious" to everyone. Or maybe they would. The -CMUCL manual section 5.5 about tail recursion in CMUCL talks about "tail -recursive positions" - but AFAICS it does not exhaustively define what all -the "tail recursive positions" / "tail contexts" might be in CL.

    The CMUCL user manual explains in what situations tail-call elimination has -to be suppressed for other features' sake, at least in CMUCL. Various -dynamic binding issues mainly. These caveats are almost certainly not -"intuitively obvious" to someone freshly arriving in CL from Scheme.

    The major concern would be that an implementation with a feature of -:tail-whatever and providing a known declaration of (optimise -(tail-whatever 3)) to turn it on, would at minimum comply with a -particular list of valid tail contexts, provided the programmer bore in -mind the list of known caveats.

    So you could just #- and bomb out if you knew you were writing code that -pretty much depended on it - if a fellow with your source wanted to just -risk it on a non-compliant implementation, they'd have to make a conscious -decision to overrule your #-


    -So, we need:

    -A specification of tail contexts for all forms in CL

    TODO :-)

    A list of caveats

    See e.g. CMUCL User Manual, 5.5

    -A *features* entry

    :x-tail-rec or whatever.

    -A definition of a new declaration

    e.g. from Joe Marshall in c.l.l. thread.

    (declaim (optimize (dynamic-space 3))) - = Tail call elimination where possible

    (declaim (optimize (dynamic-space 2))) - = Tail call elimination (when possible) for self-calls and locally - defined (i.e. FLET or LABELS) functions only, no elimination on - non-self calls.

    (declaim (optimize (dynamic-space 1))) - = Tail call elimination (when possible) for self-calls only.

    (declaim (optimize (dynamic-space 0))) - = No tail call elimination anywhere.


    -programming tips
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Targa Image Loading for Common Lisp.html b/clones/lisp/www.cliki.net/Targa Image Loading for Common Lisp.html deleted file mode 100644 index 25b1ce24..00000000 --- a/clones/lisp/www.cliki.net/Targa Image Loading for Common Lisp.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Targa Image Loading for Common Lisp - - - - - - - -
    Targa Image Loading for Common Lisp
    Targa Image Loading for Common Lisp is a library for reading Truevision (TGA) images, authored by Jeffrey Massung.

    The library complies to the Apache License, Version 2.0.

    The source code is available under GitHub - massung/targa: Targa Image Loading for Common Lisp.

    Topics: graphics library, image file, Apache 2

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Tayssir John Gabbour.html b/clones/lisp/www.cliki.net/Tayssir John Gabbour.html deleted file mode 100644 index d9fa9e0c..00000000 --- a/clones/lisp/www.cliki.net/Tayssir John Gabbour.html +++ /dev/null @@ -1,92 +0,0 @@ - - - - - CLiki: Tayssir John Gabbour - - - - - - - -
    Tayssir John Gabbour
    person

    Here's some interesting lispish stuff I've been able to find, the things that aren't always talked about.

    I hadn't drunk for months before the Lispniks Cologne meeting. What a rowdy bunch; even the day after I was saying weird things.

    Python is the red pill. Lisp is Zion. If anyone has information on interesting things like the "limits of mathematics' power" link I mention below, please write it anywhere on this page or email me at (tjg-lisp at pentaside.org).

    Free - - - - - - - - - - -

    - - - - - - - - - - - -
    Using lisp to discover the limits of mathematics' power -http://www.cs.umaine.edu/~chaitin/lisp.html and http://www.cs.umaine.edu/~chaitin/ -
    Fast and furious presentation of λ calculushttp://www.mactech.com/articles/mactech/Vol.07/07.05/LambdaCalculus/
    Vid lectures of SICP -http://www.swiss.ai.mit.edu/classes/6.001/abelson-sussman-lectures/
    Vid lectures modelled on MIT's undergrad CS programhttp://aduni.org/courses/
    Game theoretic (fighting off drooling programmers!) view of OOhttp://www.paulgraham.com/reesoo.html
    Can programming be liberated from the von Neumann style?http://www.stanford.edu/class/cs242/readings/backus.pdf

    Pay as you go - - - - - - - - - - - - - -
    Whirlwind tour of CS, whipsmart and unassuminghttp://www.kokogiak.com/amazon/results.asp?field-keywords=turing+omnibus
    How programming languages workhttp://www.cs.rochester.edu/u/scott/pragmatics/home.html
    GC book recommended to mehttp://www.cs.princeton.edu/~appel/papers/gcreview.html
    -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Teemu Kalvas.html b/clones/lisp/www.cliki.net/Teemu Kalvas.html deleted file mode 100644 index eb4f7526..00000000 --- a/clones/lisp/www.cliki.net/Teemu Kalvas.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Teemu Kalvas - - - - - - - -
    Teemu Kalvas
    A part-time SBCL hacker. Also creator of silly lisp implementations like lisp500.

    Homepage.


    -Person
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Terminfo.html b/clones/lisp/www.cliki.net/Terminfo.html deleted file mode 100644 index e71d78a3..00000000 --- a/clones/lisp/www.cliki.net/Terminfo.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Terminfo - - - - - - - -
    Terminfo
    A Common Lisp interface to the terminfo database by Paul Foley.

    Source code: http://users.actrix.co.nz/mycroft/terminfo.lisp


    -Topics: system programming
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Test Framework.html b/clones/lisp/www.cliki.net/Test Framework.html deleted file mode 100644 index 544a3a78..00000000 --- a/clones/lisp/www.cliki.net/Test Framework.html +++ /dev/null @@ -1,201 +0,0 @@ - - - - - CLiki: Test Framework - - - - - - - -
    Test Framework
    Testing tools, libraries, and frameworks.

    Somebody once said that Lispniks have been the first agile developers, doing the stuff people now all go mad about decades ago without thinking twice. So maybe it isn't very surprising that there are quite a lot of tools that help with test driven development. There is a very comprehensive comparison of test frameworks available as of 2021-10-02.

    Recommended test frameworks: -

    Also active in 2020-2022 are:

      -
    • parachute
    • -
    • -Fiasco, a fork of Stefil (by Sly's author)
    • -
    • -rove, beta-quality warning in readme
    • -
    • -try, a comprehensive framework where tests are functions (also in the spirit of Stefil)
    • -

    Known Common Lisp Test Frameworks on CLiki include:

    Obsolete libraries:

    testbild is not a test framework but a library designed to be used by -the former that harmonizes test output styles and grants the powers of TAP.

    cl-travis lets you run your tests on Travis CI.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Text Formatting.html b/clones/lisp/www.cliki.net/Text Formatting.html deleted file mode 100644 index 87537a74..00000000 --- a/clones/lisp/www.cliki.net/Text Formatting.html +++ /dev/null @@ -1,98 +0,0 @@ - - - - - CLiki: Text Formatting - - - - - - - -
    Text Formatting
    CLiki pages consist of a whitelisted subset of HTML markup with a small set of special markup rules for CLiki-specific features.

    Two consecutive newlines in the body of an article are treated as the start of a new paragraph, and a <p> element is inserted in their place.

    The current list of allowed HTML elements and attributes can be viewed in the CLiki source code: https://gitlab.common-lisp.net/vsedach/cliki2/blob/master/src/markup.lisp

    Special CLiki Markup

      -
    • Internal links: _(Foo) renders as Foo. Cliki page titles aren't case-sensitive, but Cliki will remember the way the title was written when you first created the page, and formats it that way forevermore. So, please make some effort to use capitals where appropriate.

    • -
    • Topic markers: *(Foo) declares this page to be relevant to topic Foo. The page will then show up in any topic lists (see below) for Foo. Topic markers are the main tool to organize CLiki, and are critical to making your article easy to find. Usually there will be a topic page called Foo that contains a list of all the pages in topic Foo.

    • -
    • -CLHS references: _H(FOO), where FOO is a standard CL symbol, will expand into a link to the appropriate Hyperspec page. Thanks to Eric Marsden for the code that does this. For example _H(destructuring-bind) becomes a link to destructuring-bind.

    • -
    • Topic lists: /(SLIME) renders a list of all pages with the topic marker *(SLIME) as: -
        -
      • -ABCL - - Armed Bear Common Lisp (aka ABCL) is a -
      • -
      • -cl-syntax - - CL-SYNTAX provides Reader Syntax Conventions for Common Lisp and SLIME -
      • -
      • -Editing Lisp Code with Emacs - - Keyboard tips -
      • -
      • -Mark Davidson - - I have been working with these infernal machines for over 22 years, and have dabbled with Lisp over time.. -
      • -
      • -reattatchabe slime - - Here is a little makedef file to start/stop a lisp application and allow the developer to attach to the running process with attachtty or slime -
      • -
      • -SLIME Features - - This is an evolving description of the features available in SLIME -
      • -
      • -SLIME-HOWTO - - This is a collection of information about using SLIME - a proto-manual -
      • -
      • -Swank - - Swank is distributed as part of SLIME -
      • -
      -
    • -

    <pre> and <code> tags

    HTML <pre> and <code> tags are treated specially. All text occuring in these elements is treated literally, including any other HTML markup. So:

    <a href="foo.com">links</a> cannot be inserted in <pre> tags, for example

    <code> tags can be used to colorize code (via the colorize library) by providing the lang attribute, like so:

    <code lang="common-lisp"> ...code... </code>

    Some example code looks like:

    (defun foo (x y) - (expt x (mod x y))) -

    The currently supported language types are: lisp, scheme, elisp, common-lisp, basic-c, c, c++, java

    Escaping

    To escape the special CLiki markup, e.g., on this page when describing how to use the search tag, e.g.

    -  /(SLIME)
    -

    where we don't actually want the search results to be displayed, you must insert some text between the special markup character and the open paren. HTML comments work well. For example, the following:

    -  /<!-- -->(SLIME)
    -

    will be rendered as

    /(SLIME)

    Characters like ampersands and pointy brackets that have special meaning in HTML can be encoded using regular HTML escape codes: < is &lt; and & is &amp;. HTML pound-escaping is also supported: &#37; renders as %.

    Article conventions

    When linking to libraries and software packages, please specify the license under which the software is distributed using SPDX license identifiers.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Text.html b/clones/lisp/www.cliki.net/Text.html deleted file mode 100644 index b81ff038..00000000 --- a/clones/lisp/www.cliki.net/Text.html +++ /dev/null @@ -1,581 +0,0 @@ - - - - - CLiki: Text - - - - - - - -
    Text
    Text processing software - string splitters, parsers, and so on

    Regular expression libraries: (main topic: regular expression) -

      -
    • -cl-irregsexp - - A fast regular expression library with a lispy alternative to traditional syntax for text matching -
    • -
    • -cl-ppcre - - A portable, Perl-compatible regular expression library by Edi Weitz -
    • -
    • -cl-string-match - - Provides substring (subsequence) search and text processing algorithms implementations including regular expression, prefix/suffix tree data structures, etc -
    • -
    • -lol-re - - Tiny wrapper around CL-PPCRE, inspired by #~M and #~S read-macro from Let Over Lambda, making use of regular expressions more perly -
    • -
    • -pregexp - - Portable Regular Expressions for Scheme and Common Lisp -
    • -
    • -re - - The re package is a small, portable, lightweight, and quick, regular expression library for Common Lisp -
    • -
    • -recursive-regex - - A library to extend CL-PPCRE to make regular expression named capture groups dispatch to custom matcher functions and named-expression patterns -
    • -
    • -Regex - - Regex is a full-featured regular expression compiler and matching engine written by Michael Parker -
    • -
    • -regex (library by asciian) - - A relatively incomplete (as of Jan 2018) relatively concise backtracking POSIX compatible regular expression library -
    • -
    • -terse-ppcre - - TERSE-PPCRE aims to make manipulating CL-PPCRE regular expression parse trees easier and more succinct -
    • -
    • -The Regex Coach - - A graphical Common Lisp application which can be used to experiment with (Perl-compatible) regular expressions interactively -
    • -

    Parser generators: (main topic: parser generator) -

    Lexers: (main topic: lexer) -

      -
    • -cl-lex - - cl-lex is a set of Common Lisp macros for generating lexical analyzers automatically -
    • -
    • -DEFLEXER - - The LEXER package implements a lexical-analyzer-generator called DEFLEXER, which is built on top of both REGEX and CLAWK -
    • -
    • -dso-lex - - Allows lexers to be defined using regular expressions a la cl-ppcre -
    • -
    • -graylex - - graylex offers a means to do string operations on input streams without slurping all input at once by using Common Lisp Gray Streams, fixed-sized and flexible buffers -
    • -
    • -token-stream - - Lexer class for cl-stream -
    • -
    • -Zebu - - A Tool for Specifying Reversible LALR(1) Parsers -
    • -

    String processing: (main topic: string) -

      -
    • -B-Tries - - An implementation of the data structure described in the paper "B-tries for disk-based string management" (PDF) -
    • -
    • -bobbin - - Bobbin is a simple word-wrapping library for strings in Common Lisp -
    • -
    • -boxen - - Boxy string syntax for Common Lisp -
    • -
    • -charseq - - This package provides charseq structure which represents an efficient character sequence -
    • -
    • -cl-change-case - - cl-change-case is a library to convert strings between camelCase, param-case, snake_case and more -
    • -
    • -cl-cidr-notation - - cl-cidr-notation is a library for converting IP addresses and CIDR blocks from integer to string representations and vice versa -
    • -
    • -cl-date-time-parser - - Parse date-time-string, and return (as multiple values) universal-time and fraction -
    • -
    • -cl-interpol - - CL-INTERPOL modifies the reader so that you can have interpolation of strings similar to Perl or Unix Shell scripts -
    • -
    • -cl-string-complete - - A small library for string completion by Robert Smith -
    • -
    • -cl-string-match - - Provides substring (subsequence) search and text processing algorithms implementations including regular expression, prefix/suffix tree data structures, etc -
    • -
    • -cl-strings - - cl-strings is a portable, dependency-free set of utilities to manipulate strings in Common Lisp (split, join, replace, insert, clean, change case,…) -
    • -
    • -collapse-string - - A function to remove whitespace from a string, with the option of collapsing each "run" to a single character, while optionally ignoring whitespace on the left, right, or both ends of the string -
    • -
    • -diff-match-patch - - This is a Common Lisp port of Neil Fraser's Diff, Match and Patch -
    • -
    • -fuzzy-match - - fuzzy-match is a library to fuzzy search an input string against a set of candidates -
    • -
    • -Levenshtein - - The Levenshtein Distance algorithm finds the minimum number of operations needed to transform one string into the other, where an operation is an insertion, deletion, or substitution of a single character -
    • -
    • -lispbuilder-clawk - - Stub added for asdf-install see Lispbuilder site for more details -
    • -
    • -lispbuilder-lexer - - Stub added for asdf-install see Lispbuilder site for more details -
    • -
    • -lispbuilder-regex - - Stub added for asdf-install see Lispbuilder site for more details -
    • -
    • -meta-sexp - - meta-sexp is a META parser generator using LL(1) grammars with s-expressions -
    • -
    • -mk-string-metrics - - This library implements efficient algorithms that calculate various string metrics in Common Lisp: -
    • -
    • -parse-float - - A function to parse floating-point values from a string in Common Lisp -
    • -
    • -str - - str is a modern and consistent string manipulation library (split, join, concat, replace, blank-p,…) to install with (ql:quickload :str) -
    • -
    • -string-case - - A macro that generates specialised decision trees to dispatch on string equality -
    • -

    Text: (main topic: text) -

    Streams: (main topic: stream) can be useful for, but are not limited to text processing. -

    Misc: -

    See also the pages for Regular Expression, XML libraries, HTML Parsers, Lisp Markup Languages, document formats, Unicode support, Unicode and Lisp

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/The Dying Programmers.html b/clones/lisp/www.cliki.net/The Dying Programmers.html deleted file mode 100644 index f2c73495..00000000 --- a/clones/lisp/www.cliki.net/The Dying Programmers.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: The Dying Programmers - - - - - - - -
    The Dying Programmers
    One morning on #lisp we did some mental and creative warm-up by wondering -how programmers die in their respective programming languages.

    Alas, of course we know we are immortal, we can't DIE in that sense. But what -do we do instead when we shuffle off the mortal coil? Here are some hints:

    <emu> "Java programmers don't die. They just throw without catch."

    <Jabberwockey> C programmers don't die either. They segfault.

    C programmers don't die. They get cast into void.

    <dankna> Basic programmers gosub without return.

    <dankna> What do Lisp programmers do?

    <emu> unwind-protect

    <Jabberwockey> Basic. To boldly goto where no programmer has written code before...

    <emu> Lisp programmers never die; they just call a restart

    <Jabberwockey> APL users don't die either. They get mumified in case anyone ever needs to decipher their programs in the future...

    <emu> Jabberwockey: no that's perl

    <emu> Jabberwockey: actually, not even they could understand what they wrote

    <emu> APLers don't die; they just become another operator

    <Jabberwockey> emu: Haskell users don't die either. They get caught by a guard.

    <emu> nah, they're too lazy to die

    <emu> Lisp programmers get garbage collected...

    <emu> ML programmers are frozen

    <emu> haskellers get curried

    <emu> so do MLers tho

    <dankna> SQL programmers don't die, they just unwind the transaction.

    <Jabberwockey> Prolog users don't die, they get cut

    <emu> they backtrack

    <emu> C++ programmers don't die; they have to read template code forever

    <emu> so finally, Java programmers don't die; they just degenerate into primitive types

    <Jabberwockey> Visual Basic programmers don't die. That's what the MS API is for.

    <emu> Kernel hackers don't die; they panic

    <Jabberwockey> Mozilla programmers will die when they reach version 1.0. In other words: never.

    <Jabberwockey> IRC-using programmers don't die, they just QUIT

    <dankna> "... they just get lost in the netsplit.

    <kt> Bad programmers go on safari in flashy debuggers and are not seen again..

    Smalltalk programmers don't die, they walkback

    lispers don't die, for it takes eternity to understand the standard

    asm programmers can't die, it's not in the instruction set


    -humor
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/The Feebs War.html b/clones/lisp/www.cliki.net/The Feebs War.html deleted file mode 100644 index 745c6a8d..00000000 --- a/clones/lisp/www.cliki.net/The Feebs War.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: The Feebs War - - - - - - - -
    The Feebs War
    The Game The Feebs War is a new project based on Planet of the Feebs, with the intent to improve it, giving better support for lisp newbies and enhancing the features provided. The base idea of both projects is that the player must create a behavior function for a creature, called feeb, to survive inside a maze. In this maze the creature can find food or other feebs that kill each other.

    Source code of Planet of the Feebs was used for the creation of The Feebs War. It has been changed to an object-oriented approach, and now it is possible modify or add new rules by creating methods for some basic functions.

    The Feebs War has no graphics yet but is intended to run using lispbuilder-sdl library. The text-based version can be downloaded from the project home page. The source code and documentation can be browsed online. There is PDF documentation.


    -GPL3
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/The Great Macro Debate.html b/clones/lisp/www.cliki.net/The Great Macro Debate.html deleted file mode 100644 index b638aa42..00000000 --- a/clones/lisp/www.cliki.net/The Great Macro Debate.html +++ /dev/null @@ -1,57 +0,0 @@ - - - - - CLiki: The Great Macro Debate - - - - - - - -
    The Great Macro Debate
    The Great Macro Debate was a panel between Jeremy Brown and Richard Gabriel (on the side against macros) and Pascal Costanza and Guy Steele (for macros), moderated by Dan Weinreb, that took place at the 2009 International Lisp Conference.

    Thanks to Paul Graham, we all know that macros can be awesome. However, over-use of macros for defining new syntaxes can quickly lead to unmaintainable code. This was effectively parodied in the "Lisp at Light Speed" blog in 2005: http://web.archive.org/web/20070706135848/brucio.blogspot.com/2005/03/concision-is-equivalent-to.html.

    The debate continues, right here on CLiki! -


    Lisp macros are not syntactic extensions! They are a full-fledged metaprogramming facility. Don't use macros to make new, stupider ways of writing for loops, use them to express domain concepts. Here is how I like to think about macros: http://news.ycombinator.com/item?id=645338. Vladimir Sedach


    Vlad, I agree whole-heartedly. Lisp stands for LISt Processing, so it amazes me that LOOP is so needlessly confusing. LOOP should not be extended, rather, the collection itself should be extended. Ruby does it perfectly. -- Andrew Pennebaker


    Vladimir, -If you want to criticize macros then provide criticism. -What you're doing here is essentially knee-jerk reactionary propaganda. -Thanks, -The concerned public.

    I'm planning to write an inflammatory blog post that will name names and point fingers and hopefully have some coherent arguments and insightful criticism. Vladimir Sedach

    I should probably state what I want to get out of all this:

    A style guide to writing macros that explains what to do and not to do and why. It's quite obvious from all the "def" macro packages that people new to CL have a serious case of 1. NIH (Not Invented Here) and 2. NKWTWM (Not Knowing Why To Write Macros). Vladimir Sedach


    -Document
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/The Invaders.html b/clones/lisp/www.cliki.net/The Invaders.html deleted file mode 100644 index a947eba1..00000000 --- a/clones/lisp/www.cliki.net/The Invaders.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: The Invaders - - - - - - - -
    The Invaders
    The Invaders is a remake of the classic game Space Invaders.

    The game is played by moving a space ship horizontally at the bottom of the screen, while shooting the aliens that are descending to the bottom of the screen. Once all the aliens are destroyed a new wave of aliens begin their assault. The aliens attempt to destroy the space ship by firing at it while they approach. If they reach the bottom, the alien invasion is successful and the game ends.

    There is more information on its home page.

    You can download the source from github.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/The Old Cliki.html b/clones/lisp/www.cliki.net/The Old Cliki.html deleted file mode 100644 index 393e03da..00000000 --- a/clones/lisp/www.cliki.net/The Old Cliki.html +++ /dev/null @@ -1,73 +0,0 @@ - - - - - CLiki: The Old Cliki - - - - - - - -
    The Old Cliki

    This is a page about the old version of the wiki software that used to run cliki.net

    CLiki is a free collaborative hypertext authoring program, written in -Common Lisp. Modelled on Wiki, it's free software using the MIT license. See the end of this page for details on how to download the CLiki software. CLiki uses the Araneida web server, which is portable; however, CLiki itself has only been tested on SBCL Lisp.

    News

    CLiki 0.4.1 was released 30-Nov-2003: now works with latest version of Araneida and SBCL

    An article about CLiki, "CLiki Here," appeared in Linux User magazine in the summer of 2003.

    Cliki was presented at the International Lisp Conference 2002: slides and -the paper can be downloaded from here

    Content creation

    If you can edit HTML, you can create CLiki pages. Heck, if you can -edit text you stand a fair chance. Before you plunging in, read and absorb the CLiki Content and CLiki Style -guidelines, and the Text Formatting rules. You may want to play in -the CLiki Sandbox to get the hang of it before venturing out on the -road.

    Before contributing text to CLiki, please take a moment to familiarise yourself with the Privacy Statement

    If you dislike editing text in a stupid textarea window in your web -browser, you're not alone. Fortunately, wiki-remote.el -now works with CLiki. It is an Emacs extension which first -retrieves a page from the CLiki for you, and then, when you're done -editing, uploads it to the server.

    CLiki world view

    There are two basic models for Web information repositories: the -directory (classic example: Yahoo) and the stew with a search -interface (google). Hierarchies are for browsers - people who don't -already know what they're looking for, or who need to be convinced -that the repository contains any useful information about what they're -looking for. Stews are for searchers - people who know what they want -and who think we have it.

    The world is more of a Whole Sort Of General Mishmash than a -hierarchy, however, so we don't keep stuff in a hierarchy, we keep -it in a stew: arbitrary hierarchies composed of document searches can -be layered on top of it for a given purpose.

    So, the content of a document defines where and whether it appears in -a given hierarchy. See Text Formatting to find out how to do that.

    Downloading

    There is a fallback project for CLIKI on common-lisp.net.

    Note that you may also want to check out araneida.

    -

    Bugs/Feedback

    A list of bugs used to be on the page CLiki Bugs. Check the old versions of that page if you're interested in what they were (and there were a lot of them...).


    -obsolete
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/The Regex Coach.html b/clones/lisp/www.cliki.net/The Regex Coach.html deleted file mode 100644 index af099a2c..00000000 --- a/clones/lisp/www.cliki.net/The Regex Coach.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: The Regex Coach - - - - - - - -
    The Regex Coach
    A graphical Common Lisp application which can be used to experiment with (Perl-compatible) regular expressions interactively.

    It has been downloaded more than 500,000 times since 2003 and is thus probably one of the most widespread CL programs out there. The Regex Coach was written by Edi Weitz.

    Homepage: at weitz.de

    License: some restrictions on commercial use

    Topics: application, regular expression

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Theorem Provers.html b/clones/lisp/www.cliki.net/Theorem Provers.html deleted file mode 100644 index bd55ce9b..00000000 --- a/clones/lisp/www.cliki.net/Theorem Provers.html +++ /dev/null @@ -1,101 +0,0 @@ - - - - - CLiki: Theorem Provers - - - - - - - -
    Theorem Provers
    Theorem Provers is a subtopic of AI. Many theorem provers are available in Common Lisp. -An important subarea of AI is Knowledge Representation. Knowledge Representation Systems that utilize some form of logic as the representation itself will come with some kind of theorem prover to operate on the logic (generally performing backward or forward chaining inference).

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ThinLisp.html b/clones/lisp/www.cliki.net/ThinLisp.html deleted file mode 100644 index 3023c72d..00000000 --- a/clones/lisp/www.cliki.net/ThinLisp.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: ThinLisp - - - - - - - -
    ThinLisp
    ThinLisp is a Common Lisp implementation that translates a subset of Common Lisp to very efficient C code.

    Note: ThinLisp is not actively developed. ECL is an active and supported Common Lisp to C compiler.

    CLiCC is a similar system.

    Authors: Jim Allard and Ben Hyde

    Thinlisp is meant to allow deployment of Common Lisp applications as efficient C-compiled code, and thus includes notable restrictions as compared to full Common Lisp semantics. Most notably, Thinlisp does not have a garbage collector.

    Thinlisp is licensed under an Apache 1.0 style license. The Apache 1.0 license is incompatible with the GPL.

    The most up-to-date version of Thinlisp is available from https://gitlab.common-lisp.net/vsedach/Thinlisp-1.1.git. This version contains patches by Vladimir Sedach that fix build problems on SBCL and CLISP.

    The original Thinlisp project page can still be found on SourceForge at: http://sourceforge.net/projects/thinlisp/

    Tip: If the executables generated by ThinLisp are too large, try using strip. This shrinks the lecho demo binary from 555,893 to 119,020 bytes on a Red Hat Linux 6.2 system. If you compile it with make opt to use the C optimizer and then strip it, then the lecho binary size drops to 71,340.

    On modern GCC, it may be necessary to add -DNO_ADDRESS_CONSTANTS to generated makefiles -- Dmitri Hrapof, 2020

    On modern SBCL, it may be necessary to use CMUCL (due to constant "redefinition") -- Dmitri Hrapof, 2020

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Thinlisp.html b/clones/lisp/www.cliki.net/Thinlisp.html deleted file mode 100644 index 3023c72d..00000000 --- a/clones/lisp/www.cliki.net/Thinlisp.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: ThinLisp - - - - - - - -
    ThinLisp
    ThinLisp is a Common Lisp implementation that translates a subset of Common Lisp to very efficient C code.

    Note: ThinLisp is not actively developed. ECL is an active and supported Common Lisp to C compiler.

    CLiCC is a similar system.

    Authors: Jim Allard and Ben Hyde

    Thinlisp is meant to allow deployment of Common Lisp applications as efficient C-compiled code, and thus includes notable restrictions as compared to full Common Lisp semantics. Most notably, Thinlisp does not have a garbage collector.

    Thinlisp is licensed under an Apache 1.0 style license. The Apache 1.0 license is incompatible with the GPL.

    The most up-to-date version of Thinlisp is available from https://gitlab.common-lisp.net/vsedach/Thinlisp-1.1.git. This version contains patches by Vladimir Sedach that fix build problems on SBCL and CLISP.

    The original Thinlisp project page can still be found on SourceForge at: http://sourceforge.net/projects/thinlisp/

    Tip: If the executables generated by ThinLisp are too large, try using strip. This shrinks the lecho demo binary from 555,893 to 119,020 bytes on a Red Hat Linux 6.2 system. If you compile it with make opt to use the C optimizer and then strip it, then the lecho binary size drops to 71,340.

    On modern GCC, it may be necessary to add -DNO_ADDRESS_CONSTANTS to generated makefiles -- Dmitri Hrapof, 2020

    On modern SBCL, it may be necessary to use CMUCL (due to constant "redefinition") -- Dmitri Hrapof, 2020

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Thomas Atkins.html b/clones/lisp/www.cliki.net/Thomas Atkins.html deleted file mode 100644 index 3e4a8952..00000000 --- a/clones/lisp/www.cliki.net/Thomas Atkins.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Thomas Atkins - - - - - - - -
    Thomas Atkins
    I'm an amatuer common lisp game programmer Person. I'm the author of cl-ode and have a COLLADA loader in the works. When I'm not creating bugs, I'm learning to push electrons at deakin.edu.au, and making pizzas.I can be contacted through foobarbazqux at gmail dot com or on freenode known as Tomcat

    Person

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Thomas F. Burdick.html b/clones/lisp/www.cliki.net/Thomas F. Burdick.html deleted file mode 100644 index e4b8aa37..00000000 --- a/clones/lisp/www.cliki.net/Thomas F. Burdick.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Thomas F. Burdick - - - - - - - -
    Thomas F. Burdick
    He's like a riddle wrapped in an enigma wrapped in a vest.

    person

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Thomas Stenhaug.html b/clones/lisp/www.cliki.net/Thomas Stenhaug.html deleted file mode 100644 index 20dd7c8c..00000000 --- a/clones/lisp/www.cliki.net/Thomas Stenhaug.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Thomas Stenhaug - - - - - - - -
    Thomas Stenhaug
    This is another lisping Person

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Thot.html b/clones/lisp/www.cliki.net/Thot.html deleted file mode 100644 index 313b416d..00000000 --- a/clones/lisp/www.cliki.net/Thot.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Thot - - - - - - - -
    Thot
    Thot is a HTTP server written in portable Common Lisp.

    https://github.com/RailsOnLisp/thot

    It is currently tested on SBCL and CLISP.

    Thot uses cffi-posix to abstract sockets and files, -and cl-stream to abstract streams.

    It supports threads if THREAD-SUPPORT is in *FEATURES*.

    On Linux it also supports the EPOLL extension.

    Thot has the same double dispatching scheme as Hunchentoot.

    Maintainers : thodg.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Thread.html b/clones/lisp/www.cliki.net/Thread.html deleted file mode 100644 index e06c1667..00000000 --- a/clones/lisp/www.cliki.net/Thread.html +++ /dev/null @@ -1,153 +0,0 @@ - - - - - CLiki: thread - - - - - - - -
    thread
    Threads are a kind of concurrency.

    -Also, McCLIM provides a thread compatibility layer in the CLIM-SYS package.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Three Comma Programmer.html b/clones/lisp/www.cliki.net/Three Comma Programmer.html deleted file mode 100644 index 617be54b..00000000 --- a/clones/lisp/www.cliki.net/Three Comma Programmer.html +++ /dev/null @@ -1,60 +0,0 @@ - - - - - CLiki: Three Comma Programmer - - - - - - - -
    Three Comma Programmer
    A Three Comma Programmer is the Lisp version of the Three Star Programmer in C.

    From the Wiki Wiki: - - - - -
    -
    -A rating system for C-programmers. The more indirect your pointers are (i.e. the more "*" before your variables), the higher your reputation will be. No-star C-programmers are virtually non-existent, as virtually all non-trivial programs require use of pointers. Most are one-star programmers. In the old times (well, I'm young, so these look like old times to me at least), one would occasionally find a piece of code done by a three-star programmer and shiver with awe.

    Some people even claimed they'd seen three-star code with function pointers involved, on more than one level of indirection. Sounded as real as UFOs to me.

    Just to be clear: Being called a ThreeStarProgrammer is usually not a compliment. -

    -

    Well, a Three Comma Programmer writes macros with three levels of nested commas (and plenty of gensyms — or a dangerous lack thereof) instead of using call-with style and separating syntax-level computations from base-level computations.

    I once worked in a company (ITA) that at some point hired all the Lisp programmers it could. One who joined was a Three Comma Programmer. After the company lost its Big Customer to economic difficulties, it had to let its contractors go, and others had to maintain this Programmer's code. But his code was overly clever for what it was meant to do, with too many levels of infrastructure, and not enough documentation. That made it extremely hard to maintain. Not that it had a lot of bugs, but the few it had were a nightmare to unravel. And then, sometimes you had to add a feature or adapt the code to a modified specification... Thus, everyone rejoiced any time a colleague announced that he had deleted, replaced or rewritten one of the files authored by our Three Comma Programmer. Until it was all gone. Except for a free software library he had written that we were happily using, where he could keep his cleverness to himself. — Faré

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Tim Moore.html b/clones/lisp/www.cliki.net/Tim Moore.html deleted file mode 100644 index b850f893..00000000 --- a/clones/lisp/www.cliki.net/Tim Moore.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Tim Moore - - - - - - - -
    Tim Moore
    Old, yet young, Lisp Person. Sometime CMUCL contributor. comp.lang.lisp loudmouth. Author of cparse. Major contributor to McCLIM.

    I'll be at the International Lisp Conference 2002 presenting a paper that Robert Strandh and I wrote on McCLIM. Come see it on October 29th at 8:00 AM. Bring coffee.

    The paper is available. The slides don't seem to be.

    Contact me at (concatenate 'string "moore" (string (code-char 64)) -"bricoworks.com").

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Time management.html b/clones/lisp/www.cliki.net/Time management.html deleted file mode 100644 index 1cc973b8..00000000 --- a/clones/lisp/www.cliki.net/Time management.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: time management - - - - - - - -
    time management
    time management software - the one that helps you to organize your time. TODO lists, ticket-systems, etc.

    • -flexoplan - - Simple planner, TODO list and would-be ticket-system, written in CL -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Toadstool.html b/clones/lisp/www.cliki.net/Toadstool.html deleted file mode 100644 index 5283dc52..00000000 --- a/clones/lisp/www.cliki.net/Toadstool.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Toadstool - - - - - - - -
    Toadstool
    Toadstool is a library for pattern matching. The author is Stanisław Halik, and it is released to the public domain.

    Toadstool has been criticized for having an unlispy syntax, but that concern appears to have been rectified.

    Depends on: closer-mop and (for non-SBCL implementations) cl-walker

    Repository: https://github.com/kisp/toadstool

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Toplevel.html b/clones/lisp/www.cliki.net/Toplevel.html deleted file mode 100644 index 68b2bb9c..00000000 --- a/clones/lisp/www.cliki.net/Toplevel.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: Toplevel - - - - - - - -
    Toplevel
    A top-level command implementation vaguely reminiscent of Allegro CL's is available for CMUCL at Paul Foley's http://users.actrix.co.nz/mycroft/cl.html page.

    E.g., it lets you type things like :ld foo to load a file, :exit to quit Lisp, and so on.


    Peder Klingenberg has written a similar thing, at http://heim.ifi.uio.no/~pok/download/commands.lisp -and there's an ACL-compatible REPL for SBCL included in the contrib directory.


    -Development
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Torta.html b/clones/lisp/www.cliki.net/Torta.html deleted file mode 100644 index 0f82403a..00000000 --- a/clones/lisp/www.cliki.net/Torta.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Torta - - - - - - - -
    Torta
    Torta shows you where your disk space is going. It uses the graphical format used by the the awesome program filelight to represent disk usage. Unlike filelight, Torta can be run on a computer with no graphical environment: it generates a flash file that can be consulted, locally or remotelly, using any browser that has the flash plugin installed. Torta has been tested on SBCL, CMUCL and Clisp.

    Repostory: https://github.com/sgarciac/torta

    License: LGPL

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Towers of Hanoi.html b/clones/lisp/www.cliki.net/Towers of Hanoi.html deleted file mode 100644 index d2d8a7b6..00000000 --- a/clones/lisp/www.cliki.net/Towers of Hanoi.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Towers of Hanoi - - - - - - - -
    Towers of Hanoi
    Towers of Hanoi is a demo application - written in Common Lisp - for the well-known recursive algorithm of the same name. It was created by Edi Weitz.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Trent Buck's Emacs file.html b/clones/lisp/www.cliki.net/Trent Buck's Emacs file.html deleted file mode 100644 index 158ad58b..00000000 --- a/clones/lisp/www.cliki.net/Trent Buck's Emacs file.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Trent Buck's Emacs file - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Trivia.html b/clones/lisp/www.cliki.net/Trivia.html deleted file mode 100644 index ddb1e5b5..00000000 --- a/clones/lisp/www.cliki.net/Trivia.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Trivia - - - - - - - -
    Trivia
    Trivial pattern matching compiler.

    Trivia is a pattern matching compiler that is compatible with optima. It shares the same testing code with Optima and acts as a drop-in replacement.

    Trivia aims to supersede Optima. Patterns compiled with Trivia run faster than Optima.

    Homepage: GitHub

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Trivial-HTTP.html b/clones/lisp/www.cliki.net/Trivial-HTTP.html deleted file mode 100644 index 9c81505f..00000000 --- a/clones/lisp/www.cliki.net/Trivial-HTTP.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: trivial-http - - - - - - - -
    trivial-http
    trivial-http is a simple HTTP client library.

    If you just need simple HTTP operations (no chunking, no flexi-streams, etc,) then trivial-http may be what you're looking for.

    Homepage: https://common-lisp.net/project/trivial-http/


    -trivial, MIT-LICENSE
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Tunes.html b/clones/lisp/www.cliki.net/Tunes.html deleted file mode 100644 index a5b2f562..00000000 --- a/clones/lisp/www.cliki.net/Tunes.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Tunes - - - - - - - -
    Tunes
    A project for technological independence. TUNES is trying to build an operating system and a programming language, which will improve upon all that came before. The project has an interesting homepage with lots of links to existing operating systems and programming languages. Right now, its most populated section is the Review sub-project, whose goal is to find and evaluate every existing language and OS.


    -Vapourware
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/TutorialClispDebugger.html b/clones/lisp/www.cliki.net/TutorialClispDebugger.html deleted file mode 100644 index 0a3f8d74..00000000 --- a/clones/lisp/www.cliki.net/TutorialClispDebugger.html +++ /dev/null @@ -1,155 +0,0 @@ - - - - - CLiki: TutorialClispDebugger - - - - - - - -
    TutorialClispDebugger
    Small Clisp Debugger Tutorial

    -Debugging is implementation dependant.

    With clisp, debugging can only be done on interpreted functions. Too -little information remains in compiled functions to do any useful -debugging.

    So, let's take care not to compile our new functions: -

    -[221]> (defun fact (x) (if (< x 1) (/ 1 x) (* x (fact (1- x)))))
    -FACT
    -[222]> (defun pf (n) (loop :for i :from n :downto 1 :do (print `(,i ,(fact i)))))
    -PF
    -[223]> (pf 4)
    -
    -*** - division by zero
    -The following restarts are available:
    -ABORT          :R1      ABORT
    -Break 1 [224]> 
    -

    The first thing to do, is to dump the stack backtrace. Often, this is -all you'll have to do to identify and correct the bug, because clisp -displays a lot of information about non compiled functions:

    -Break 1 [224]> :bt
    -<1> #< SYSTEM-FUNCTION EXT:SHOW-STACK > 3            ; These frames correspond
    -<2> #< COMPILED-FUNCTION SYSTEM::PRINT-BACKTRACE >   ; to compiled functions
    -<3> #< COMPILED-FUNCTION SYSTEM::DEBUG-BACKTRACE >   ; belonging to the 
    -<4> #< SYSTEM-FUNCTION SYSTEM::READ-EVAL-PRINT > 2   ; debugged itself.
    -<5> #< COMPILED-FUNCTION SYSTEM::BREAK-LOOP-2-2 >    ; Notice how little
    -<6> #< SYSTEM-FUNCTION SYSTEM::SAME-ENV-AS > 2       ; information we have:
    -<7> #< COMPILED-FUNCTION SYSTEM::BREAK-LOOP-2 >      ; only the function name.
    -<8> #< SYSTEM-FUNCTION SYSTEM::DRIVER >              ; 
    -<9> #< COMPILED-FUNCTION SYSTEM::BREAK-LOOP >        ;
    -<10> #< SYSTEM-FUNCTION INVOKE-DEBUGGER > 1          ;
    -<11> #< SYSTEM-FUNCTION / > 2    ; the divide function call
    -                               ;  who raised the error.
    -<12> #< SPECIAL-OPERATOR IF >
    -                               ; And here we have the form from our code
    -                               ; who called / with a zero divisor.
    -                               ; Happily, it's the only division in the form
    -                               ; so we can identify it immediately.
    -EVAL frame for form (IF (< X 1) (/ 1 X) (* X (FACT (1- X))))
    -APPLY frame for call (FACT '0)
    -<13> 
    -#<F UNCTION FACT (X) (DECLARE (SYSTEM::IN-DEFUN FACT))
    -  (BLOCK FACT (IF (< X 1) (/ 1 X) (* X (FACT (1- X))))) > 1
    -EVAL frame for form (FACT (1- X))
    -EVAL frame for form (* X (FACT (1- X)))
    -<14> #< SPECIAL-OPERATOR IF >
    -EVAL frame for form (IF (< X 1) (/ 1 X) (* X (FACT (1- X))))
    -APPLY frame for call (FACT '1)
    -[...]
    -EVAL frame for form 
    -(LET ((I N))
    - (LET NIL
    -  (TAGBODY SYSTEM::BEGIN-LOOP (WHEN (< I 1) (GO SYSTEM::END-LOOP))
    -   (PRINT (LIST I (FACT I))) (PSETQ I (- I 1)) (GO SYSTEM::BEGIN-LOOP)
    -   SYSTEM::END-LOOP)))
    -APPLY frame for call (PF '4)
    -<25> 
    -#<F UNCTION PF (N) (DECLARE (SYSTEM::IN-DEFUN PF))
    -  (BLOCK PF (LOOP :FOR I :FROM N :DOWNTO 1 :DO (PRINT `(,I ,(FACT I))))) > 1
    -EVAL frame for form (PF 4)
    -Printed 25 frames
    -Break 1 [224]> 
    -

    But let's assume that there was another division in the other branch -of the IF. How could we know what branch was being executed? We -could re-evaluate the condition. First move up the frames to the EVAL -frame, were we'll have access to the lexical variables. Only one :u -command is needed because it skips over the compiled frames where we -cannot get at the lexical variables (they might be optimized out!).

    -Break 1 [224]> :u
    -<1> #< SPECIAL-OPERATOR IF >
    -EVAL frame for form (IF (< X 1) (/ 1 X) (* X (FACT (1- X))))
    -

    Then we can enter any lisp form, like the condition:

    -Break 1 [224]> (< X 1)
    -T
    -
    -and see that it's the "then" branch that was taken, and therefore it's -(/ 1 X) which raises the error. Let's check that X is

    -Break 1 [224]> x
    -0
    -

    Indeed.

    Now, we have the choice of aborting the debuging session and going -back to the source file to correct the bug, reload the file, or just -reevaluate the defun, and run it again, or try to correct the bug -inside the debugger, and proceed from there.

    In the first case, we can use :q to go back to the toplevel.

    In the second case, let's redefine fact:

    -Break 1 [224]> (defun fact (x) (if (< x 1) 1 (* x (fact (1- x)))))
    -FACT
    -

    then we return from the failed EVAL frame, giving the result it should -return:

    -Break 1 [224]> :rt
    -Values: 1
    -
    -(4 24) 
    -(3 6) 
    -(2 2) 
    -(1 1) 
    -NIL
    -[225]> 
    -

    And we see:

      -
    1. how the current call (fact 4) proceeds to completion, and
    2. -
    3. how the next calls (fact 3) ... (fact 1) invoke the new function.
    4. -

    Note that if the failed EVAL frame had been in a loop inside the -function, the loop would still call iteratively the wrong version. -The new version of the function is only taken into account for the new -function calls. To proceed in such a case, we would have to move up -the frames (:u) until we could return (:rt) from the whole function.

    Use also the :help command to get the list of debugger commands, -and see: CLISP Implementation Notes - Debugger Chapter


    -Categories: Online Tutorial CLISP Debugging -Keywords: debug debugger debugging tutorial clisp
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/TutorialDebuggingDeadLock.html b/clones/lisp/www.cliki.net/TutorialDebuggingDeadLock.html deleted file mode 100644 index d9ea6215..00000000 --- a/clones/lisp/www.cliki.net/TutorialDebuggingDeadLock.html +++ /dev/null @@ -1,162 +0,0 @@ - - - - - CLiki: TutorialDebuggingDeadLock - - - - - - - -
    TutorialDebuggingDeadLock
    Debugging a dead-lock in a program using bordeaux-threads in ccl.

    (Original in org-mode format from: gist bt-ccl-debug.org)

    We have a program with three threads:

    -cl-user> (list-threads)
    - 1) #<process Telnet REPL Client #1 DOWN LAYER(22) [semaphore wait] #x302002A4903D>
    - 2) #<process Telnet REPL Client #1(21) [semaphore wait] #x302002A469FD>
    - 3) #<process Telnet REPL Server(20) [Active] #x30200291EB5D>
    - 4) …
    -

    The server thread listens to connections and forks client threads for -accepted connections.

    The client thread forks a down layer thread that loops reading bytes -from the client socket, and forwarding them up the protocol layers, up -to a buffer in a TELNET-STREAM Gray stream.

    The client thread then goes on into a REPL loop using the -TELNET-STREAM Gray stream as *TERMINAL-IO*. Writing back to -*TERMINAL-IO* goes down to the client socket in this client thread.

    Unfortunately, when sending a byte to the upper layer, the down layer -thread hangs waiting for the stream-lock. Who has locked this stream?

    Neither ccl nor bordeaux-threads are very helpful in debugging that…

    Recording the thread and function that holds an lock

    What we'd want, is to know what thread are holding a lock. So we will -implement a macro shadowing BT:WITH-LOCK-HELD, to record that -information into a weak hash-table. Happily, ccl has native weak -hash-tables so we don't have to use -com.informatimago.clext.closer-weak.

    -#+(and ccl debug-condition-variables) -(defpackage "COM.INFORMATIMAGO.BORDEAUX-THREAD.PATCH" - (:use "COMMON-LISP" "BORDEAUX-THREADS") - (:shadow "MAKE-CONDITION-VARIABLE" "WITH-LOCK-HELD") - (:export "MAKE-CONDITION-VARIABLE" "WITH-LOCK-HELD") - (:documentation "Implements MAKE-CONDITION-VARIABLE on ccl to print the name, -and WITH-LOCK-HELD to record the locking thread.")) - -(defpackage "COM.INFORMATIMAGO.CLEXT.TELNET.STREAM" - (:use "COMMON-LISP" "BORDEAUX-THREADS") - #+(and ccl debug-condition-variables) - (:shadowing-import-from "COM.INFORMATIMAGO.BORDEAUX-THREAD.PATCH" - "MAKE-CONDITION-VARIABLE" "WITH-LOCK-HELD") - (:export "TELNET-STREAM")) - -(defpackage "COM.INFORMATIMAGO.CLEXT.TELNET.REPL" - (:use "COMMON-LISP" "BORDEAUX-THREADS") - #+(and ccl debug-condition-variables) - (:shadowing-import-from "COM.INFORMATIMAGO.BORDEAUX-THREAD.PATCH" - "MAKE-CONDITION-VARIABLE" "WITH-LOCK-HELD") - (:export "START-REPL-SERVER")) -

    -In addition to recording the current thread, we also get the name of -the caller function from ccl:backtrace-as-list.

    We use a PRINT-OBJECT :AROUND method to print the locking threads -when it's available

    -(in-package "COM.INFORMATIMAGO.BORDEAUX-THREAD.PATCH") - -(defvar *status* (make-hash-table :weak :key :test 'eq)) - -(defun caller () (third (ccl:backtrace-as-list))) - -(defmacro with-lock-held ((place) &body body) - (let ((vlock (gensym))) - `(let ((,vlock ,place)) - (ccl:with-lock-grabbed (,vlock) - (push (list :locking (caller) (bt:current-thread)) (gethash ,vlock *status* '())) - (unwind-protect - (progn ,@body) - (pop (gethash ,vlock *status* '()))))))) - -(defmethod print-object :around ((lock ccl::recursive-lock) stream) - (let ((status (gethash lock *status*))) - (if status - (print-unreadable-object (lock stream :identity t :type t) - (format stream "~S :status ~S" (ccl:lock-name lock) status)) - (call-next-method)))) -

    Then when the dead-lock occurs, we can have a look at the status of -the various locks, and notice immediately our culprit stream lock that -is held by not once but TWICE by the same thread! ccl only has -recursive locks, and bt:with-lock-held uses the native locking -mechanism, which is a recursive lock. But now, it is clear what -functions are involved in this double locking and the solution will be -obvious: split input-buffer-fetch-octet into an inner function that -assumes the lock is already held, and use this in %stream-read-char. -Problem solved.

    - (map nil 'print (com.informatimago.common-lisp.cesarum.utility:hash-table-entries *status*))
    -
    - (#<recursive-lock "down-layer" [ptr @ #x605080] #x3020028D45FD>) 
    - (#<recursive-lock "Telnet REPL Server Lock" [ptr @ #x10D880] #x30200279729D>) 
    - (#<recursive-lock "telnet-stream" :status ((:locking 
    -                                             (funcall "#<STANDARD-METHOD COM.INFORMATIMAGO.CLEXT.TELNET.STREAM::INPUT-BUFFER-FETCH-OCTET (COM.INFORMATIMAGO.CLEXT.TELNET.STREAM:TELNET-STREAM T)>" "#<TELNET-STREAM  #x3020028D75CD>" "NIL")
    -                                             #<process Telnet REPL Client #1(21) [semaphore wait] #x3020028D192D>)
    -                                            (:locking
    -                                             (com.informatimago.clext.telnet.stream::%stream-read-char "#<TELNET-STREAM #x3020028D75CD>" "NIL")
    -                                             #<process Telnet REPL Client #1(21) [semaphore wait] #x3020028D192D>)) #x3020028D74BD> 
    -                   (:locking
    -                    (funcall "#<STANDARD-METHOD COM.INFORMATIMAGO.CLEXT.TELNET.STREAM::INPUT-BUFFER-FETCH-OCTET (COM.INFORMATIMAGO.CLEXT.TELNET.STREAM:TELNET-STREAM T)>" "#<TELNET-STREAM #x3020028D75CD>" "NIL")
    -                    #<process Telnet REPL Client #1(21) [semaphore wait] #x3020028D192D>)
    -                   (:locking 
    -                    (com.informatimago.clext.telnet.stream::%stream-read-char "#<TELNET-STREAM #x3020028D75CD>" "NIL")
    -                    #<process Telnet REPL Client #1(21) [semaphore wait] #x3020028D192D>)) nil
    -

    Naming Condition Variables

    In addition, ccl condition-variables are not named; -bordeaux-threads ignores the name parameter. So we shadow -make-condition-variable and record the name of the condition -variables in a weak hash-table, and add a print-object :around -method to print this name when available. This is very convenient -when *inspecting* threads, to see on what condition variable they're -actually waiting.

    -(in-package "COM.INFORMATIMAGO.BORDEAUX-THREAD.PATCH") -(defvar *names* (make-hash-table :weak :key :test 'eq)) - -(defun make-condition-variable (&key name) - (let ((semaphore (ccl:make-semaphore))) - (setf (gethash semaphore *names*) name) - semaphore)) - -(defmethod print-object :around ((semaphore ccl:semaphore) stream) - (let ((name (gethash semaphore *names*))) - (if name - (print-unreadable-object (semaphore stream :identity t :type t) - (format stream ":NAME ~S" name)) - (call-next-method)))) -


    -Categories: Online Tutorial ccl Debugging Thread -Keywords: debug debugger debugging tutorial ccl bordeaux-thread thread
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/TutorialSpecialVariables.html b/clones/lisp/www.cliki.net/TutorialSpecialVariables.html deleted file mode 100644 index 75d4f50b..00000000 --- a/clones/lisp/www.cliki.net/TutorialSpecialVariables.html +++ /dev/null @@ -1,93 +0,0 @@ - - - - - CLiki: TutorialSpecialVariables - - - - - - - -
    TutorialSpecialVariables

    Mini Tutorial Special Variables

    A global (and special) variable is created with defvar or defparameter:

    (defvar *global-var-1*) -(defvar *global-var-2* 42 "With an initial value if it doesn't already have one and a docstring.") -(defparameter *global-var-3* 33 "Defparameter always assigns the value to the variables.") -

    To use them, just reference them in code:

    (defun g () (list *global-var-1* *global-var-2* *global-var-3*)) - -(defun f () - (setf *global-var-1* 1) ; set its value - (print *global-var-2*) ; get its value - (let ((*global-var-3* 0)) ; dynamically bind it (shadowing the global for the TIME being): - (g))) - -(f) -;; prints: 42 -;; returns: (1 42 0) - -(let ((*global-var-2* 22)) - (f)) -;; prints: 22 -;; returns: (1 22 0) -

    -But you can also have non-global dynamic variables:

    (defun h () - (declare (special zz)) - (list zz)) - -(h) -;; error: Unbound variable: zz - -(defun i () - (let ((zz 42)) - (declare (special zz)) - (h))) - -(i) -;; returns: (42) - -(let ((zz 33)) - (declare (special zz)) - (h)) -;; returns: (33) -

    defvar or defparameter have both compilation-time effects and load-time/execution effects. For their compilation-time effects to be visible, they must be written before the functions that use the variables, otherwise the compiler will signal a warning.

    -


    -Categories: Online Tutorial -Keywords: special variable dynamic binding
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Tyler Eaves.html b/clones/lisp/www.cliki.net/Tyler Eaves.html deleted file mode 100644 index f3d242ff..00000000 --- a/clones/lisp/www.cliki.net/Tyler Eaves.html +++ /dev/null @@ -1,109 +0,0 @@ - - - - - CLiki: Tyler Eaves - - - - - - - -
    Tyler Eaves
    Tyler Eaves is a Person who likes to mess around with computers, espeically those running various types of Unix. He is a bit of a newbie to lisp, but likes what he sees so far. Doesn't claim to be a guru, but done his share of coding over the years. As of now, my usual language when I want to code something is python. Hopefully this will become lisp in the near future as I become more skilled in the language.

    My OS of choice is Mac OS X (My primary desktop is an AMD64 running Gentoo Linux though), and my editor is emacs. As far as lisps, I run SBCL on the penguin, and OpenMCL on the Mac.

    Spent a year or two in part-time corporate IT. Never want to do it again. Still enjoy working with tech.

    Other Miscellaneous Information

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Homepage:cg2.org
    Hometown:Greenville, NC
    IRC Nick:tylere (not on that often though)
    Age:21
    Occupation:Student
    Major:Mechanical Engineering Technology
    Programming Languages of Choice:Python, Ruby, Lisp
    Other languages I know, and use from time to time:O'Caml, PHP
    Languages I know (to some extent) and never want to use:Perl, C, C++, Java
    Keyboard:1990 IBM Model M - THE ONE TRUE KEYBOARD!
    Hobbies:Music (listening and playing (guitar, bass, keyboards)), reading, film
    Favorite Bands/Performers:Warren Zevon, Rush, the Grateful Dead, the Doors, Janis Joplin, Cream
    Favorite Authors:Ayn Rand, Neal Stephenson, Asimov, the 3 B's (Greg Bear, Stephen Baxter, Greg Benford), Tolkein
    Favorite Films:Blues Brothers, Dr. Strangelove, Monty Python's Life of Brian, Ronin, Die Hard, Godfather I and II, Goodfellas. Actually, just about anything by Coppola, Kubrick, Scorcese, or Frankenheimer.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/TypeL.html b/clones/lisp/www.cliki.net/TypeL.html deleted file mode 100644 index 41fcc7ba..00000000 --- a/clones/lisp/www.cliki.net/TypeL.html +++ /dev/null @@ -1,70 +0,0 @@ - - - - - CLiki: TypeL - - - - - - - -
    TypeL
    TypeL is a Common Lisp sublanguage with strong typing and type -inference a la ML.

    This is the first version of TypeL, and it is very primitive. These -features are implemented:

      -
    1. Polymorphic type inference. -
    2. -
    3. Currying. -
    4. -
    5. TypeL is a Lisp-1. -
    6. -
    7. Arithmetic, boolean and list operations. -
    8. -

    Features that will be implemented in feature releases:

      -
    1. Algebraic types and pattern matching. -
    2. -
    3. Detailed error reporting. -
    4. -
    5. Code optimization based on type information and static analysis. -
    6. -

    TypeL is licensed under the terms of the MIT license since version 0.2.

    You can get TypeL at https://github.com/monoid/TypeL


    -programming language
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/UABCL.html b/clones/lisp/www.cliki.net/UABCL.html deleted file mode 100644 index c156776f..00000000 --- a/clones/lisp/www.cliki.net/UABCL.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: UABCL - - - - - - - -
    UABCL
    UABCL, a Common Lisp implementation, is a port of ABCL to dotNet and Mono.

    -UABCL home page.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/UCW Tricks and Cookbook.html b/clones/lisp/www.cliki.net/UCW Tricks and Cookbook.html deleted file mode 100644 index f9b9f429..00000000 --- a/clones/lisp/www.cliki.net/UCW Tricks and Cookbook.html +++ /dev/null @@ -1,61 +0,0 @@ - - - - - CLiki: UCW Tricks and Cookbook - - - - - - - -
    UCW Tricks and Cookbook

    Creating a "modal" component

    I would like to have the capability of creating a "modal" component, -one that would take over the entire browser window when called.

    The solution is:

    (defmacro takeover-entire-window (component-class &rest initargs) - `(call-component (context.window-component *context*) - (make-instance ,component-class ,@initargs)))

    Configuring Apache to access various applications in the same server

    If you want to run several applications from one UCW server, via mod_lisp via Apache, this can be done with the following Apache configuration (or check out the apache2 config for the UCW examples at the ucw/etc/ucw-examples.apache2):

    -<Location ~ "/app/(my-app|admin|example)">
    -  LispServer 127.0.0.1 3001 "my-server"
    -  SetHandler lisp-handler
    -</Location>
    -

    The trick is to use the form, and specify -a regexp matching all the roots of all the UCW applications.


    -UCW
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/UCW.html b/clones/lisp/www.cliki.net/UCW.html deleted file mode 100644 index c7351e4e..00000000 --- a/clones/lisp/www.cliki.net/UCW.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - CLiki: ucw - - - - - - - -
    ucw
    UnCommon Web is a web framework.

    License: https://github.com/juan-reynoso/ucw-core/blob/master/LICENCE

    Homepage: http://common-lisp.net/project/ucw

    The official repository is a Darcs one. Here's a github clone.

    UCW Documentation

    UCW documentation is available in the source repo.

    The documentation page on the UCW website has some background material.

    [2020-28-01] UCW demo with Bootstrap 4: https://www.huuii.com/people/juan/5403 It was announced by his maintainer on Twitter.
    -[2009-09-19] Blog post on preparing for UCW development
    -[2007-11-24] Blog post on trying out UCW

    WUI

    There's a similar and more recent effort called WUI: dwim.hu.

    [2019-06-19] "Obsolete! Was split into presentation and web-server."

    UCW Tricks

    UCW Tricks and Cookbook

    Evaluation, 20100901

    A very brief assessment of all web frameworks listed in cliki was carried out in September 2010. This assessment comprised: check websites, download source if available, attempt to compile, review documentation.

    The review found that UncommonWeb was well established. However, much of the documentation was stated to be out of date, which is off-putting but at least implies an evolving system. Some copyright dates as recent as 2009 indicate that it is still being developed.

    There were no obvious links to example live applications built with this kit.

    Where to find something new with UCW

    -If anyone is interested there is but one page about UCW which currently seems to be "supported"—head over to: -Currently running UCW stuff
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/UFFI.html b/clones/lisp/www.cliki.net/UFFI.html deleted file mode 100644 index 37a077b3..00000000 --- a/clones/lisp/www.cliki.net/UFFI.html +++ /dev/null @@ -1,67 +0,0 @@ - - - - - CLiki: uffi - - - - - - - -
    uffi
    CFFI is recommended as the replacement for UFFI.

    UFFI is the Common Lisp "Universal Foreign Function Interface" (FFI) package.

    The primary testing and development systems are:

      -
    • Allegro CL (ACL) v6.2 (Linux and Windows)
    • -
    • -Lispworks v4.2 (Linux and Windows)
    • -
    • -CMUCL v18e(Linux)
    • -
    • -SBCL 0.8.0 (Linux)
    • -
    • SCL 1.1 (Linux)
    • -
    • -OpenMCL 0.13
    • -
    • -MCL 4.3 (MacOS)
    • -

    Implementations including a foreign function interface compatible to UFFI are:

    CLISP support is still not yet within the UFFI distribution, but an independent file is available from Sourceforge's Patches section. It's good enough to run CLSQL with PostgreSQL and most of CL-SDL.

    Maybe better way to use uffi with CLisp is to use CFFI and its cffi-uffi-compat system. I tested it with CLSQL and it works fine. -- Marko Kocic

    UFFI is included in the Debian distributions of sarge and sid and Gentoo.

    There is experimental UFFI support in SWIG.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/UIOP.html b/clones/lisp/www.cliki.net/UIOP.html deleted file mode 100644 index 4b82f99f..00000000 --- a/clones/lisp/www.cliki.net/UIOP.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: uiop - - - - - - - -
    uiop
    UIOP, the Utilities for Implementation- and OS- Portability, is a portability layer and basic utility library that comes as part of ASDF 3.

    UIOP is a generalization and robustification of portability features previously found in ASDF 2, xcvb, trivial-backtrace, cl-launch, cl-fad, and more.

    Notable exported symbols (functions, variables, macros) include: -subpathname, run-program, getenv, getenv-pathname, call-function, parse-native-namestring, getcwd, chdir, register-image-restore-hook, *command-line-arguments*, *uninteresting-conditions*, define-package, with-temporary-file, with-output, if-let, uiop-debug.

    See the README file for a guide.

    Browse the source for more functions with appropriate docstrings or comments.

    How to run shell commands

    See run-program (synchronous) and launch-program (asynchronous)

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/UNIX.html b/clones/lisp/www.cliki.net/UNIX.html deleted file mode 100644 index 7c1ecf00..00000000 --- a/clones/lisp/www.cliki.net/UNIX.html +++ /dev/null @@ -1,168 +0,0 @@ - - - - - CLiki: Unix - - - - - - - -
    Unix
    Pages on CLiki that may help with closer integration of CL and Unix :

    You can make your .lisp files directly executable on Unix with CLISP, ECL, GCL, or SBCL. See the Unix shell scripting page for more information. See also wrapper script instructions in case you are using CMUCL.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/URI.html b/clones/lisp/www.cliki.net/URI.html deleted file mode 100644 index f1918d99..00000000 --- a/clones/lisp/www.cliki.net/URI.html +++ /dev/null @@ -1,120 +0,0 @@ - - - - - CLiki: URI - - - - - - - -
    URI
    Libraries for dealing with URIs. The newest URI standard is RFC3986.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/USN Journal.html b/clones/lisp/www.cliki.net/USN Journal.html deleted file mode 100644 index 7752c13d..00000000 --- a/clones/lisp/www.cliki.net/USN Journal.html +++ /dev/null @@ -1,180 +0,0 @@ - - - - - CLiki: USN Journal - - - - - - - -
    USN Journal
    The USN Journal keeps track of changes made to files and directories on an NTFS volume. This page contains notes and source code for reading the journal with CCL's foreign interface. An important requirement to note is that this only works if you run Clozure CL with administrative privileges. So select the "Run as administrator" option when starting Windows Terminal. Otherwise you'll get an ERROR_ACCESS_DENIED when trying to access the change journal.

    First, a primer on how pointers in Lisp work. In C, a pointer includes a type indicating what it points to. So it's common to cast a pointer from one type to another. But in Lisp, a pointer is just an encapsulated foreign address. In CCL, the encapsulation is called a MACPTR. (See Referencing and Using Foreign Memory Addresses for details.) In a way, this simplifies things, because you don't have to bother with casting. But in another way, it can make things more complicated, because it might be easier to forget what kind of data the pointer is pointing to (or where the end of it is). Incrementing a pointer is about as easy as incrementing an integer. The code below uses %incf-ptr and %inc-ptr, which are the destructive and non-destructive forms, respectively.

    So we have some preliminary helper definitions. One of these is a function for converting a Windows FILETIME into human-readable form. There's also a macro, with-heap-ivector, for allocating some foreign memory and later disposing of it. This is used to make a buffer for reading journal entries. The buffer is an (unsigned-byte 64) vector because when reading the journal, the first eight bytes are the next USN to start reading from. So it's expedient to just grab the first element of the vector. This works because USN records have 64-bit alignment.

    (defmacro bytes (foreign-type) - "Size in bytes of FOREIGN-TYPE (like sizeof in C)." - ;; The units here can be :BITS, :BYTES, or :WORDS. - `(ccl::foreign-size ,foreign-type :bytes)) - -;;; Update Sequence Number: a 64-bit integer. -(define-symbol-macro +usn-size+ (bytes #>USN)) - -(defmacro with-heap-ivector ((vector macptr size element-type) &body body) - `(multiple-value-bind (,vector ,macptr) (make-heap-ivector ,size ,element-type) - (unwind-protect (progn ,@body) (dispose-heap-ivector ,vector)))) - -(defun file-time-string (file-time) - (rlet ((system-time #>SYSTEMTIME)) - (when (zerop (#_FileTimeToSystemTime file-time system-time)) - (return-from file-time-string (values nil (#_GetLastError)))) - (format nil "~4,'0D-~2,'0D-~2,'0D ~2,'0D:~2,'0D:~2,'0D.~3,'0D" - (pref system-time #>SYSTEMTIME.wYear) - (pref system-time #>SYSTEMTIME.wMonth) - (pref system-time #>SYSTEMTIME.wDay) - (pref system-time #>SYSTEMTIME.wHour) - (pref system-time #>SYSTEMTIME.wMinute) - (pref system-time #>SYSTEMTIME.wSecond) - (pref system-time #>SYSTEMTIME.wMilliseconds)))) - -(defun usn-file-name (usn-record) - (get-encoded-string :utf-16le - (pref usn-record #>USN_RECORD.FileName) - (pref usn-record #>USN_RECORD.FileNameLength))) - -(defun %open-usn-journal (&optional (drive-letter "C")) - (let ((volume-name (format nil "\\\\.\\~A:" drive-letter))) - (with-cstrs ((volume-name-ptr volume-name)) - (#_CreateFileA volume-name-ptr - #$GENERIC_READ - ;; Has to be in shared read/write mode because - ;; the journal is (probably) being written to - ;; by other processes, but we're just reading. - (logior #$FILE_SHARE_READ #$FILE_SHARE_WRITE) - +null-ptr+ ; SECURITY_ATTRIBUTES - #$OPEN_EXISTING 0 +null-ptr+)))) - -(defun open-usn-journal (&optional (drive-letter "C")) - (let ((volume-handle (%open-usn-journal drive-letter))) - (if (eql volume-handle #$INVALID_HANDLE_VALUE) - (error "Couldn't open ~A." drive-letter) - volume-handle))) - -(defun close-usn-journal (volume-handle) - (when (eql volume-handle #$INVALID_HANDLE_VALUE) - (error "The volume handle isn't valid.")) - (#_CloseHandle volume-handle)) - -(defun %query-usn-journal (volume journal-data bytes-ptr) - (#_DeviceIoControl volume #$FSCTL_QUERY_USN_JOURNAL - +null-ptr+ 0 ; input buffer and size - journal-data (bytes #>USN_JOURNAL_DATA) - bytes-ptr ; output size - +null-ptr+)) ; OVERLAPPED - -(defun query-usn-journal-id (volume) - (rlet ((journal-data #>USN_JOURNAL_DATA) (bytes-ptr :unsigned-long)) - (when (plusp (%query-usn-journal volume journal-data bytes-ptr)) - (pref journal-data #>USN_JOURNAL_DATA.UsnJournalID)))) - -(defun %device-read-usn-journal (volume read-data buffer buffer-ptr) - ;; The buffer has an element type of (UNSIGNED-BYTE 64) in Lisp, - ;; but from a C vantage point it's an opaque pointer to bytes. - (let ((buffer-size (* (length buffer) 8))) - (rletz ((bytes-ptr :unsigned-long)) - (if (plusp (#_DeviceIoControl - volume #$FSCTL_READ_USN_JOURNAL - read-data (bytes #>READ_USN_JOURNAL_DATA) - buffer-ptr buffer-size bytes-ptr +null-ptr+)) - (%get-unsigned-long bytes-ptr) - (let ((device-error-code (#_GetLastError))) - (error "DeviceIoControl (FSCTL_READ_USN_JOURNAL) ~ - failed with error code: ~D." device-error-code)))))) - -(defun read-usn-journal (volume &optional journal-id (start-usn 0)) - (unless journal-id (setq journal-id (query-usn-journal-id volume))) - (rletz ((read-data #>READ_USN_JOURNAL_DATA)) - (setf (pref read-data #>READ_USN_JOURNAL_DATA.StartUsn) start-usn) - (setf (pref read-data #>READ_USN_JOURNAL_DATA.ReasonMask) #xFFFFFFFF) - (setf (pref read-data #>READ_USN_JOURNAL_DATA.UsnJournalID) journal-id) - (with-heap-ivector (buffer buffer-ptr (* +usn-size+ 1024) '(unsigned-byte 64)) - (let ((total-bytes (%device-read-usn-journal volume read-data buffer buffer-ptr)) - (usn-record (%inc-ptr buffer-ptr +usn-size+)) (next-usn (aref buffer 0))) - ;; Discounting NEXT-USN. - (decf total-bytes +usn-size+) - (values (loop while (plusp total-bytes) - collect (let* ((usn-record-name (usn-file-name usn-record)) - (usn-record-length (pref usn-record #>USN_RECORD.RecordLength)) - (usn-record-reason (pref usn-record #>USN_RECORD.Reason)) - (usn-record-time (pref usn-record #>USN_RECORD.TimeStamp)) - (usn-record-time-string (file-time-string usn-record-time))) - (%incf-ptr usn-record usn-record-length) - (decf total-bytes usn-record-length) - (list usn-record-name - usn-record-reason - usn-record-time-string))) - ;; JOURNAL-ID was either passed in or queried. - ;; NEXT-USN gives the START-USN for next call. - journal-id - next-usn))))) - -(defun select-usn-journal (wildcard volume) - (flet ((interesting-file-p (file-record) - (pathname-match-p (car file-record) - wildcard))) - ;; No NEXT-USN means the end of the journal. - (loop with file-records = nil and current-usn = 0 - with journal-id = (query-usn-journal-id volume) and next-usn - do (multiple-value-setq (file-records journal-id next-usn) - (read-usn-journal volume journal-id current-usn)) - nconc (delete-if-not #'interesting-file-p file-records) - while (> next-usn current-usn) - do (setq current-usn next-usn)))) - -(defun print-file-records (file-records &optional (stream t)) - (dolist (file-record file-records (list-length file-records)) - (destructuring-bind (file-name reason file-time) file-record - (format stream "~A [~8,'0X] ~A~%" file-time reason file-name))))

    To test this, we'll download a file and look for the resulting entries. Open the journal:

    (defvar *volume* (open-usn-journal))

    Then save the CLiki home page as a single file, and read the journal from the REPL:

    (print-file-records (select-usn-journal "*.mhtml" *volume*))

    Then the output will be something like:

    2022-03-15 01:51:52.729 [00000100] CLiki_ the common lisp wiki.mhtml
    -2022-03-15 01:51:52.738 [80000300] CLiki_ the common lisp wiki.mhtml
    -2022-03-15 01:51:53.252 [00000100] CLiki_ the common lisp wiki.mhtml
    -2022-03-15 01:51:53.310 [00000102] CLiki_ the common lisp wiki.mhtml
    -2022-03-15 01:51:53.311 [80000102] CLiki_ the common lisp wiki.mhtml
    -2022-03-15 01:51:53.903 [00080000] CLiki_ the common lisp wiki.mhtml
    -2022-03-15 01:51:53.915 [80080000] CLiki_ the common lisp wiki.mhtml

    So this covers a period of 1.186 seconds. The reason codes are a little hard to follow, partly because multiple "reasons" can be packed together into one 32-bit field. There's some creating, writing, and closing of the file going on here. Also note that the FileName is just that: it doesn't include the full pathname. For that, we would need to use the FileReferenceNumber.


    -Apache 2, Programming Tips
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/USOCKET.html b/clones/lisp/www.cliki.net/USOCKET.html deleted file mode 100644 index 08e4a57e..00000000 --- a/clones/lisp/www.cliki.net/USOCKET.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: usocket - - - - - - - -
    usocket
    USOCKET is a networking portability layer for BSD-style sockets.

    Homepage: http://common-lisp.net/project/usocket

    License: MIT

    USOCKET currently supports 10 CL implementations: ABCL, ACL, ECL, CLISP, CMUCL, LispWorks, MCL, CCL, SBCL, and SCL.

    See also: IOlib, another view point for portable networking library in Common Lisp.


    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/UUID.html b/clones/lisp/www.cliki.net/UUID.html deleted file mode 100644 index 01995f5d..00000000 --- a/clones/lisp/www.cliki.net/UUID.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: uuid - - - - - - - -
    uuid
    A library for generation of universally unique identifiers (UUIDs) as described by RFC 4122. UUID provides methods for the generation of uuids version 1 (time based), 3 (name based with MD5 hashing), 5 (name based with SHA1 hashing) and 4 (random uuids).

    Project page at https://github.com/dardoria/uuid

    License: LLGPL


    -Networking
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/UfasoftCommonLisp.html b/clones/lisp/www.cliki.net/UfasoftCommonLisp.html deleted file mode 100644 index afa913cc..00000000 --- a/clones/lisp/www.cliki.net/UfasoftCommonLisp.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: UfasoftCommonLisp - - - - - - - -
    UfasoftCommonLisp
    Ufasoft Common Lisp development system. Includes console and IDE Lisp interpreter and -compiler. Possibility of creating EXE-files. Supports CLOS. It is smallest implementation of standard Lisp, just 1MB of binary code.

    Is Ufasoft Common Lisp available for Unix-like systems?

    No.


    -Common Lisp implementation
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Unicode Support.html b/clones/lisp/www.cliki.net/Unicode Support.html deleted file mode 100644 index 5c547e70..00000000 --- a/clones/lisp/www.cliki.net/Unicode Support.html +++ /dev/null @@ -1,110 +0,0 @@ - - - - - CLiki: Unicode Support - - - - - - - -
    Unicode Support
    All contemporary Lisp implementations have reasonable Unicode support. In particular, all implementations are able to faithfully execute the following UTF-8 encoded piece of code:

    -(defmacro λ (&rest symbols-and-expr)
    -  `(lambda ,(butlast symbols-and-expr)
    -     ,@(last symbols-and-expr)))
    -
    -(mapcar (λ x (* x x)) '(1 2 3 4))
    -
    -;; other tremendously useful characters:
    -'|αβγδεζηθικλμνξοπρστυϕχψω|
    -'|ΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤΥϕΧΨΩ|
    -'|ℝℕℤℚ∥√∡∞∝ℵ∅∫|
    -'|¬∀∃∨∧⊥∈⊂∪∩⇐⇔⇒↦|
    -

    This means you can finally use fancy Greek and Logical symbols in your Lisp programs without sacrificing portability! However you should check with your coworkers first. Not everyone is comfortable producing such symbols on a computer (a terrible regression with respect to handwritten text). Practical mechanisms to enter Unicode symbols an a computer are:

      -
    • An extended keyboard layout like Neo.
    • -
    • Configure your editor to fold certain strings to Unicode symbols (e.g. abbrev-mode in Emacs).
    • -
    • Look up the character in a table, e.g. with C-x 8 RET in Emacs, or by copying it from Wikipedia. (This methods are quite annoying and should only be used in exceptional circumstances)
    • -

    Implementation Details

    While the core functionality is the same across all Lisp implementations --- Unicode characters are a subtype of CHARACTER --- no two implementations are alike when it comes to the details.


    ABCL

    -


    ACL

    -


    CCL

    -


    CMUCL

    -


    ECL

    -


    LispWorks

    -


    SBCL

    -
      -
    • First version with Unicode support: 0.8.17
    • -
    • Build-time option :SB-UNICODE (enabled by default) for building the system with support for the entire 21-bit character space defined by the Unicode consortium.
    • -
    • Has a build-time option (controlled by the :SB-UNICODE keyword feature, enabled by default) for building the system with support for the entire 21-bit character space defined by the Unicode consortium.
    • -
    • Details are explained on the sbcl-internals cliki, or this presentation from Christophe Rhodes, which he presented at the European Common Lisp Meeting, April 2005 -
    • -
    • Official Documentation -
    • -


    CLISP

    -
      -
    • First version with Unicode support: 2.31
    • -
    • Ability to pass multibyte encodings via FFI since version 2.35
    • -


    -programming tips
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Unicode and Lisp.html b/clones/lisp/www.cliki.net/Unicode and Lisp.html deleted file mode 100644 index bae42a69..00000000 --- a/clones/lisp/www.cliki.net/Unicode and Lisp.html +++ /dev/null @@ -1,63 +0,0 @@ - - - - - CLiki: Unicode and Lisp - - - - - - - -
    Unicode and Lisp
    Random ramblings on Unicode. Most Lisp implementations support Unicode, see: Unicode Support.

    In Common Lisp we have the nice 'feature' that characters are divided into sets. This is a legacy of the Symbolics Lisp Machines. In short there is CHARACTER that is all the characters an implementation can handle; and BASE-CHAR is a defined subset of CHARACTER that should contain the STANDARD-CHAR characters. Most implementations take ASCII-7 as BASE-CHAR. Implementations can have other subsets defined, so for instance they could have UNICODE-CHAR as another subset of CHARACTER.

    Now this doesn't really work well with unicode. The Unicode people seem to have the following idea: the implementation internally uses whatever it likes (of course they prefer that you use the ucs2 encoding [do they? "Unicode" now includes code-points beyond #xFFFF, going up to #x10FFFF; UCS-2 is only good for the so-called Basic Multilingual Plane, which is only a subset of Unicode. And ISO-10646 is a full 31 bits wide, requiring UCS-4]) and should support a whole host of external formats. clisp seems to follow this procedure best in my (Peter Van Eynde's opinion). UTF-8 is the recommended external format.

    Why is UTF-8 not good as internal representation? Mainly because it makes accesses to strings non-uniform in time, makes all strings immutable (you need to copy the string for every operation) and there is the extra load to normalise all characters (a character can have an infinite number of UTF-8 representations [No it can't; it can only have one, unless you mean that, e.g., accented characters can be a single character or a non-accented character and a combining accent, etc., in which case that's true of any encoding, including UCS-2/4]).

    In general I like clisp's solution a lot.


    -Common Lisp extensions might be able to adopt some techniques from Shiro Kawai's gauche implementation of scheme, which has excellent multibyte string support. I realize that may not the same as unicode support, but gauche does support utf-8. -Gauche has: -
      -
    • Multibyte string support: Strings are represented by multibyte string internally. You can use UTF-8, EUC-JP, Shift-JIS or no multibyte encoding by configure-time choice. Conversion between native coding system and external coding system is supported by port objects. -
    • -
    • Multibyte regexp: Regular expression matcher is aware of multibyte string; you can use multibyte characters both in patterns and matched strings. -
    • -
    • -BSD license. -
    • -


    -programming tips
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Unicode support.html b/clones/lisp/www.cliki.net/Unicode support.html deleted file mode 100644 index 5c547e70..00000000 --- a/clones/lisp/www.cliki.net/Unicode support.html +++ /dev/null @@ -1,110 +0,0 @@ - - - - - CLiki: Unicode Support - - - - - - - -
    Unicode Support
    All contemporary Lisp implementations have reasonable Unicode support. In particular, all implementations are able to faithfully execute the following UTF-8 encoded piece of code:

    -(defmacro λ (&rest symbols-and-expr)
    -  `(lambda ,(butlast symbols-and-expr)
    -     ,@(last symbols-and-expr)))
    -
    -(mapcar (λ x (* x x)) '(1 2 3 4))
    -
    -;; other tremendously useful characters:
    -'|αβγδεζηθικλμνξοπρστυϕχψω|
    -'|ΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤΥϕΧΨΩ|
    -'|ℝℕℤℚ∥√∡∞∝ℵ∅∫|
    -'|¬∀∃∨∧⊥∈⊂∪∩⇐⇔⇒↦|
    -

    This means you can finally use fancy Greek and Logical symbols in your Lisp programs without sacrificing portability! However you should check with your coworkers first. Not everyone is comfortable producing such symbols on a computer (a terrible regression with respect to handwritten text). Practical mechanisms to enter Unicode symbols an a computer are:

      -
    • An extended keyboard layout like Neo.
    • -
    • Configure your editor to fold certain strings to Unicode symbols (e.g. abbrev-mode in Emacs).
    • -
    • Look up the character in a table, e.g. with C-x 8 RET in Emacs, or by copying it from Wikipedia. (This methods are quite annoying and should only be used in exceptional circumstances)
    • -

    Implementation Details

    While the core functionality is the same across all Lisp implementations --- Unicode characters are a subtype of CHARACTER --- no two implementations are alike when it comes to the details.


    ABCL

    -


    ACL

    -


    CCL

    -


    CMUCL

    -


    ECL

    -


    LispWorks

    -


    SBCL

    -
      -
    • First version with Unicode support: 0.8.17
    • -
    • Build-time option :SB-UNICODE (enabled by default) for building the system with support for the entire 21-bit character space defined by the Unicode consortium.
    • -
    • Has a build-time option (controlled by the :SB-UNICODE keyword feature, enabled by default) for building the system with support for the entire 21-bit character space defined by the Unicode consortium.
    • -
    • Details are explained on the sbcl-internals cliki, or this presentation from Christophe Rhodes, which he presented at the European Common Lisp Meeting, April 2005 -
    • -
    • Official Documentation -
    • -


    CLISP

    -
      -
    • First version with Unicode support: 2.31
    • -
    • Ability to pass multibyte encodings via FFI since version 2.35
    • -


    -programming tips
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Units.html b/clones/lisp/www.cliki.net/Units.html deleted file mode 100644 index 4d81f437..00000000 --- a/clones/lisp/www.cliki.net/Units.html +++ /dev/null @@ -1,204 +0,0 @@ - - - - - CLiki: Units - - - - - - - -
    Units
    Things dealing with time, date, weight, currency, etc. and validation.

      -
    • -Acclimation - - This project is meant to provide tools for internationalizing Common -
    • -
    • -Antik - - A library for computational mathematics, science, and engineering -
    • -
    • -Chemboy - - Chemboy is an application to do basic chemistry calculations -
    • -
    • -cl-ana - - cl-ana aims to provide the basic tools necessary to analyze large/medium-large datasets -
    • -
    • -cl-iso3166 - - cl-iso3166 is a country units library providing data from ISO 3166 : Codes for the representation of names of countries and their subdivisions -
    • -
    • -cl-iso4217 - - cl-iso4217 is a currency units library providing data from ISO 4217 : Codes for the representation of currencies and funds -
    • -
    • -cl-weather-util - - Weather utilities for Common Lisp -
    • -
    • -CLLIB - - CLLIB is a varied collection of Common lisp tools and routines in CLOCC -
    • -
    • -currensea - - currensea is a currency conversion library based on AllegroServe -
    • -
    • -iso-2533 - - Library providing data from ISO 2533:1975 International Standard Atmosphere -
    • -
    • -Measures - - The Measures Package provides dimensioned numbers (i.e -
    • -
    • -physical-quantities - - A library for processing physical quantities: values, units, (and uncertainty) -
    • -
    • -simple-currency - - Simple-currency is a small library for converting between currencies using the public foreign exchange information posted daily by the European Central Bank -
    • -
    • -unit-conversion - - units is an extensive measuring unit (time/weight/distance/etc and many other physical units) conversion library -
    • -
    • -unit-formula - - unit-formula is a library for units conversions and defining formulas with automated unit consistency checking and conversions -
    • -

    Times and dates: (main topic: time) -

    Validation: (main topic: validation) -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Universal-Config.html b/clones/lisp/www.cliki.net/Universal-Config.html deleted file mode 100644 index 89c5fbe1..00000000 --- a/clones/lisp/www.cliki.net/Universal-Config.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Universal-Config - - - - - - - -
    Universal-Config
    This library tries to provide a layer for configuration files and storage that should be able to map any type of object to any configuration format and back.

    The project can be found on github including a fully documented symbol index and a getting started tutorial.
    -As of May 2014, Universal-Config is available on Quicklisp.

    Universal-Config is licensed under the Artistic License 2.0.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Unix shell scripting.html b/clones/lisp/www.cliki.net/Unix shell scripting.html deleted file mode 100644 index 4c9c0eba..00000000 --- a/clones/lisp/www.cliki.net/Unix shell scripting.html +++ /dev/null @@ -1,84 +0,0 @@ - - - - - CLiki: Unix shell scripting - - - - - - - -
    Unix shell scripting
    This is a guide for writing Unix shell scripts in various Common Lisp implementations.

    roswell is a Lisp implementation installer/manager, script launcher and more. It has many features that makes it easy to test, share, and distribute your Lisp applications.

    cl-launch is a self-contained shell-script that will abstract away the details of the underlying Lisp implementation by generating the proper Lisp and shell code. Access to command line arguments, quitting, etc., can then be done portably using uiop or clon. For instant startup of all your scripts, you'll probably want to dump a multicall binary image, which you can do using cl-launch and roswell. See Common Lisp as a Scripting Language, 2015 edition.

    -If you insist on doing things manually and not portably, here is some information for invoking Lisp source files as shell scripts for a few particular Common Lisp implementations: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    ImplementationShebang invocationCommand-line argumentsMore info
    CLISP#!/usr/local/bin/clispEXT:*ARGS*CLISP quickstart delivery
    ECL#!/usr/local/bin/ecl -q -norc -shell(si:argc), (si:argv N)ecl(1) manual page
    GCL#!/usr/local/bin/gcl -fsi:*command-args*gcl(1) manual page
    SBCL#!/usr/local/bin/sbcl --scriptsb-ext:*posix-argv*SBCL manual section 3.1.3

    Other topics: deployment

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Unix.html b/clones/lisp/www.cliki.net/Unix.html deleted file mode 100644 index 7c1ecf00..00000000 --- a/clones/lisp/www.cliki.net/Unix.html +++ /dev/null @@ -1,168 +0,0 @@ - - - - - CLiki: Unix - - - - - - - -
    Unix
    Pages on CLiki that may help with closer integration of CL and Unix :

    You can make your .lisp files directly executable on Unix with CLISP, ECL, GCL, or SBCL. See the Unix shell scripting page for more information. See also wrapper script instructions in case you are using CMUCL.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Unlicense.html b/clones/lisp/www.cliki.net/Unlicense.html deleted file mode 100644 index 58ec46cd..00000000 --- a/clones/lisp/www.cliki.net/Unlicense.html +++ /dev/null @@ -1,216 +0,0 @@ - - - - - CLiki: Unlicense - - - - - - - -
    Unlicense
    The Unlicense is a free public domain license.

      -
    • -actors - - Actors is an actors package for LispWorks -
    • -
    • -anaphoric-variants - - anaphoric-variants gives access to anaphoric variants of operators through one macro: anaphoric -
    • -
    • -bubble-operator-upwards - - bubble-operator-upwards is a function that "bubbles an operator upwards" in a form, demultiplexing all alternative branches by way of cartesian product -
    • -
    • -canonicalized-initargs - - canonicalized-initargs provides a :canonicalize slot option accepting an initarg canonicalization function -
    • -
    • -cartesian-product-switch - - cartesian-product-switch is a macro for choosing the appropriate form to execute according to the combined results of multiple tests -
    • -
    • -cesdi - - cesdi provides a compute-effective-slot-definition-initargs generic function that allows for more ergonomic initialization of effective slot definition objects -
    • -
    • -CL-REACTIVE - - Reactive programming at the variable/function level for Common Lisp -
    • -
    • -CL-SES4 - - AWS SES email sender using Signature Version 4 of Amazon's API -
    • -
    • -class-options - - class-options provides easy access to the defining class and its options during initialization or reinitialization of its subcomponents -
    • -
    • -compatible-metaclasses - - compatible-metaclasses validates superclasses according to a simple substitution model, thereby greatly simplifying the definition of class mixins -
    • -
    • -definitions-systems - - definitions-systems provides a simple unified extensible way of processing named definitions -
    • -
    • -enhanced-boolean - - enhanced-boolean provides a canonical way of converting generalized booleans to booleans -
    • -
    • -enhanced-defclass - - enhanced-defclass provides a truly extensible version of DEFCLASS that can accurately control the expansion according to the metaclass and automatically detect the suitable metaclass by analyzing the DEFCLASS form -
    • -
    • -enhanced-eval-when - - enhanced-eval-when provides an enhanced eval-when macro that supports (eval-when t ...) as a shorthand for (eval-when (:compile-toplevel :load-toplevel :execute) ...), addressing concerns about verbosity -
    • -
    • -enhanced-find-class - - enhanced-find-class provides a canonical way of converting class designators to classes -
    • -
    • -enhanced-multiple-value-bind - - enhanced-multiple-value-bind provides an enhanced multiple-value-bind macro that adds support for lambda list keywords by expanding to a multiple-value-call when necessary -
    • -
    • -enhanced-typep - - enhanced-typep obsoletes all TYPEP thin wrappers -
    • -
    • -evaled-when - - evaled-when provides a way of extracting and replicating the compile-time side-effects of forms -
    • -
    • -fakenil - - fakenil provides a canonical stand-in for NIL for contexts where NIL means "no value" -
    • -
    • -first-time-value - - first-time-value returns the result of evaluating a form in the current lexical and dynamic context the first time it's encountered, and the cached result of that computation on subsequent evaluations -
    • -
    • -incognito-keywords - - incognito-keywords introduces a new kind of keyword that looks just like any non-keyword symbol and allows safe usage of convenient but clashy symbol names by multiple libraries without conflicts through sharing -
    • -
    • -inheriting-readers - - inheriting-readers provides a simple yet powerful value inheritance scheme -
    • -
    • -its-library - - its provides convenient access to multiple values of an object in a concise, explicit and efficient way -
    • -
    • -macro-level - - macro-level is an embarassingly trivial convenience macro that saves on indentation while being more concise and direct -
    • -
    • -map-bind - - map-bind is a macro that allows visual grouping of variables with their corresponding values (not necessarily 1:1) in calls to mapping operators when using an inline LAMBDA -
    • -
    • -multiple-value-variants - - multiple-value-variants gives access to multiple-value variants of operators through one macro: multiple-value -
    • -
    • -object-class - - object-class ensures that special subclasses of standard-object cluster right in front of standard-object in the class precedence list -
    • -
    • -parse-number-range - - parse-number-range parses loop's convenient "for-as-arithmetic" syntax into 5 simple values -
    • -
    • -place-modifiers - - place-modifiers essentially gives access to hundreds of modify-macros through one single macro: modify -
    • -
    • -place-utils - - place-utils provides a few utilities relating to setfable places -
    • -
    • -positional-lambda - - positional-lambda is a concise, intuitive and flexible syntax (macro) for trivial lambdas that eschews explicit (and often contextually-redundant) naming of parameter variables in favor of positional references, with support for a used or ignored &rest parameter and automatic declaration of ignored parameters when logical "gaps" are left in the positional references -
    • -
    • -shared-preferences - - shared-preferences notably allows flexible specification of package-local preferences -
    • -
    • -simple-guess - - simple-guess defines a simple extensible protocol for computing a guess using advisors -
    • -
    • -sparse-streams - - Gray Streams for subsets of underlying streams -
    • -
    • -symbol-namespaces - - symbol-namespaces defines a new kind of package that's named by a symbol rather than a string -
    • -
    • -taglib - - A pure Lisp implementation for reading audio tags and audio information -
    • -
    • -trivial-jumptables - - trivial-jumptables provides efficient O(1) jump tables on supported Common Lisp implementations and falls back to O(log(n)) on others -
    • -
    • -trivial-macroexpand-all - - Provides a macroexpand-all function that calls the implementation-specific equivalent -
    • -
    • -trivial-mmap - - Trivial-MMAP is a Common Lisp library that aims to provide an easy-to-use API for working with memory-mapped files -
    • -
    • -with-output-to-stream - - with-output-to-stream provides a simple way of directing output to a stream according to the concise and intuitive semantics of format's stream argument -
    • -
    • -with-shadowed-bindings - - with-shadowed-bindings establishes a new lexical context within which specified bindings are explicitly shadowed, making it clear that they are not referenced within, thereby reducing cognitive load -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Usocket-UDP.html b/clones/lisp/www.cliki.net/Usocket-UDP.html deleted file mode 100644 index 95c386b8..00000000 --- a/clones/lisp/www.cliki.net/Usocket-UDP.html +++ /dev/null @@ -1,79 +0,0 @@ - - - - - CLiki: Usocket-UDP - - - - - - - -
    Usocket-UDP
    UDP networking patch for USOCKET.

    NOTE: USOCKET 0.5.0 has merged almost all code in USOCKET-UDP except the "Reliable UDP" part.

    Start from release 1.3 (2008-7-23), we support portable UDP server.

    Current supported platforms

      -
    • -LispWorks (depends on LispWorks-UDP by the same author) -
    • -
    • -CMUCL -
    • -
    • -SBCL -
    • -
    • -Clozure CL (aka OpenMCL) -
    • -
    • Allegro CL (start from usocket-udp 1.1) -
    • -
    • Scieneer CL (start from usocket-udp 2.3, need a udp-patch from SCL maintainer) -
    • -
    -

    Release

    Last release of USOCKET-UDP is 2.6 (usocket-udp_2.6.tar.gz) on Sep 24, 2010.

    API

    -socket-connect/udp (host port &key stream element-type local-address local-port)
    -
    -socket-send ((socket datagram-usocket) buffer length &key address port)
    -
    -socket-receive ((socket datagram-usocket) buffer length &key)
    -
    -socket-server (host port function &optional arguments
    -                          &key (element-type '(unsigned-byte 8))
    -                                    (timeout 1) (max-buffer-size 65536))
    -

    Contact Chun Tian (binghe) if you need any help on this package.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Utilities.html b/clones/lisp/www.cliki.net/Utilities.html deleted file mode 100644 index 928a02f3..00000000 --- a/clones/lisp/www.cliki.net/Utilities.html +++ /dev/null @@ -1,236 +0,0 @@ - - - - - CLiki: Utilities - - - - - - - -
    Utilities
    Everyone write their own! See also convenience library.

    No, seriously, don't write your own. The above list is comical. Nobody needs another "utility library" dependency.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Utopiah.html b/clones/lisp/www.cliki.net/Utopiah.html deleted file mode 100644 index 487e3e85..00000000 --- a/clones/lisp/www.cliki.net/Utopiah.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: Utopiah - - - - - - - -
    Utopiah
    Un electron libre tournant dans une etrange boucle creant son framework a meta-idees afin de pouvoir se retro-modifier.

    (initiated and monitoring webframeworkmatrix) -


    -Person
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/VECTO.html b/clones/lisp/www.cliki.net/VECTO.html deleted file mode 100644 index 60d4bd72..00000000 --- a/clones/lisp/www.cliki.net/VECTO.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Vecto - - - - - - - -
    Vecto
    Vecto is a graphics library that uses cl-vectors and Salza to draw vector graphics to PNG files.

    It is available under a BSD-like license.

    Full documentation is available on the Vecto web site.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/VLM_on_Linux.html b/clones/lisp/www.cliki.net/VLM_on_Linux.html deleted file mode 100644 index fabc246a..00000000 --- a/clones/lisp/www.cliki.net/VLM_on_Linux.html +++ /dev/null @@ -1,144 +0,0 @@ - - - - - CLiki: VLM_on_Linux - - - - - - - -
    VLM_on_Linux
    This page gives some additional hints on running the Symbolics Virtual Lisp Machine (VLM) port to -Linux/x86_64 by Brad Parker. I am running the VLM on a Ubuntu 6.06.1 host, so whatever I describe -here may not work with other distributions. My background is FreeBSD, so some things I describe may -be obvious to those with a Linux background. The configuration I describe in this file does not try to -provide "security", so by following it, you will potentially expose all files on your Linux host as well as -all passwords you may enter into this configuration to the Internet, and beyond.

    What is the VLM?

    The VLM is a development by Symbolics that, in a way, represents the last Lisp machine built before -Symbolics went bankrupt. It was originally written for the DEC Alpha processor, which was the first 64 -Bit CPU that was commercially available. A software implementation of the Lisp machine required a 64 -Bit CPU to attain acceptable performance. The VLM implements the full Lisp machine architecture, so it -is largely software compatible to the "real" Symbolics Lisp machines (36xx, Ivory).

    Brad Parker wrote an implementation of the VLM for Linux. It is based on the Symbolics software, and -there is some uncertainty about its legal status as well as the legal status of the rest of Symbolics -intellectual property. This seems to mean that redistribution of the software or using it in a commercial -context is not possible at the moment.

    The VLM program is an emulator, it implements the environment for the Lisp machine operating -system, Genera, that looks like real hardware from the Lisp side. It supports a virtual ethernet interface -and a console. The screen is implemented using the X Window System, so you need to have X11 -running on your host.

    Presently, the ethernet interface is hardwired to use the address 10.0.0.1 for the Linux host and -10.0.0.2 for the VLM. This cannot be changed. See the section on "Networking the VLM" in this file for -some information on how to work with this.

    Using the snap4 Port

    First of all, you need to get the VLM for Linux tar ball from -www.unlambda.com/download/genera/snap4.tar.gz. -There may be a newer version, so please check out the base directory and read this file with extra care if you are using a newer version. Unpack -the snap4 distribution on your Ubuntu host system. Make sure that you have read the README file in -the distribution, at least briefly. This file supplies additional information you'll need.

    You also want the OpenGenera 2.0 distribution tarball which includes the system sources as well as -additional software packages and example files. There is no official distribution site for this tar ball, so -you will have to ask around for this. If you have it, unpack it in a directory that you wish to be accessed -by the VLM, for example /vlm.

    My starting point is a plain Ubuntu installation from the 6.06.1 boot CD without any special options. A -few packages need to be added in order to make the Linux host system provide the necessary service -to the VLM. Some of these services are found in auxiliary package source which need to be enabled in -/etc/apt/sources.list (I uncommented all commented-out package sources).

    $ sudo apt-get update

    needs to be run after the sources have been enabled in order to refresh the local cache of package names.

    The following packages are required in addition to the base system:

    $ sudo apt-get install inetd nfs-common nfs-user-server

    If "inetd" doesn't work for you, try "netkit-inetd". If "nfs-user-server" doesn't work for you, you probably didn't uncomment the package sources in /etc/apt/sources.list as described above.

    inetd

    The Internet superserver is used to provide the VLM with the system date and time during startup. After -installation, the following entries in /etc/inetd.conf need to be added or uncommented:

    $ cat /etc/inetd.conf 
    -daytime stream  tcp     nowait  root    internal
    -daytime dgram   udp     wait    root    internal
    -time    stream  tcp     nowait  root    internal
    -time    dgram   udp     wait    root    internal

    After the file has been updated, restart inetd with

    $ sudo /etc/init.d/inetd restart

    nfs-user-server

    The NFS file server is used to give the VLM access to a file system. In theory, the kernel mode NFS server -should give better performance, but I had difficulties getting it to run. After installation, /etc/exports -needs to be updated in order to export the host's file system to the VLM by adding a line like:

    $ cat /etc/exports
    -/       10.0.0.2(rw,no_root_squash)

    Depending on NFS server flavor, you may want to add also the following options after the no_root_squash option to squelch some warnings

    sync,subtree_check

    After this has been done, restart the NFS server using

    $ sudo /etc/init.d/nfs-user-server restart

    Now verify that your file system is properly exported:

    $ showmount -e localhost

    Note that the VLM now has full access to the hosts' file system and can overwrite or delete any file. You -may restrict access by exporting only part file system, but I have not tried this. Also note that this -example exports the file system to 10.0.0.2, which is the compiled-in address of the VLM. Other -systems in the network have no access to the hosts' file system.

    If you access files from the VLM through NFS using "anonymous" access, the uid 4294967294 and gid -4294967294 will be used. These ids are presumably meant to mean "nobody". Add entries to -/etc/passwd and /etc/group for this uid and gid in order to have something better than the numeric uid -be displayed when listing files on the host system.

    $ grep lispm /etc/passwd /etc/group
    -/etc/passwd:lispm:x:4294967294:4294967294::/tmp:/bin/false
    -/etc/group:lispm:x:4294967294:

    You now have a basic setup that will allow you to start Genera. Skip to "Starting Genera and defining your site" if you are impatient.

    File Server authentication using the NIS

    If you want to set up log ins from the VLM to the NFS server on the host system, the VLM needs to get -access to the mapping from user ids and group ids to user names and vice versa. When Genera was -written, the NIS protocol was commonly used to provide this service within local networks. NIS basically -exports the authentication files in the traditional unix format to a local area network.

    To run NIS, you need the nis package:

    $ sudo apt-get install nis

    You need to decide what your NIS domain name will be. This domain name does not need to -correspond to your DNS domain name. My NIS domain name is the same as my Genera site name -("pharmacy"), but anything else could be used instead. The NIS domain name must be put into the file -/etc/defaultdomain:

    $ cat /etc/defaultdomain
    -pharmacy

    You need to set up your system as NIS master in the file /etc/default/nis:

    $ grep NISSERVER /etc/default/nis
    -NISSERVER=master

    Your password file needs to use "unix crypt" style passwords instead of the now-common md5 -passwords. On Ubuntu with the default installation I use, this is configured in the file -/etc/pam.d/common-password by commenting out the string "md5":

    $ grep md5 /etc/pam.d/common-password
    -password  required  pam_unix.so nullok obscure min=4 max=8 # md5

    Note that you will now have to re-set all passwords using the "passwd" command so that they appear in the correct format.

    The VLM does not support shadow passwords, so you need to convert your password database:

    $ sudo pwunconv
    -$ sudo grpunconv

    Once all this is done, you have to initialize your NIS database:

    $ cd /var/yp
    -$ sudo make

    This should leave you with a NIS server that can be used for authentication from the Lisp machine.

    Starting Genera and defining your site

    Once you have set up a suitable host environment, you need to configure the .VLM file in the snap4/ -directory. (Note: Make sure you are using the .VLM file and not the dot.VLM file!) As distributed, it -contains two wrong lines:

    genera.world: ../symbolics/MIT.vlod
    -genera.debugger: ../symbolics/VLM_debugger

    These should read

    genera.world: MIT.vlod
    -genera.debugger: VLM_debugger

    Fix the two lines and save the file. Now you are ready to start the VLM by changing your working -directory to the snap4/ directory and type:

    $ sudo ./genera

    The VLM should start and present you with a welcome screen that asks you to log in. You will then have -to define your site, please see the quickstart.text file in the OpenGenera distribution directory for -information how to do that.

    Once you have defined your site, save your world:

    Command: Reset Network
    -Command: Save World <your-host>:/tmp/my-genera.vlod

    Replace by the name of your Linux host, as defined in the Define Site process. The path -you specify needs to be writable from the VLM through NFS. If it is not writeable, the VLM will crash and -you'll loose the site definition.

    Networking the VLM

    As mentioned, the VLM has a fixed network configuration with a private IP address. In order to be able -to access hosts in the Internet, your Linux host needs to do network address translation. I used the -"firestarter" utility to get a basic configuration running, but this has the drawback that the firewall has -to be manually started after the VLM had come up. firestarter creates interface-dependent firewall rules -and the tun0 interface, which is used by the VLM, exists only while the VLM runs. I am sure that a -better setup can be created by someone who knows more about Linux firewalls, and the best way -would be to use a bridge interface in the VLM so that the Linux network stack would be fully -circumvented. Maybe in the next release.

    Getting a Meta Key

    Try

    $ xmodmap -e "keysym Alt_L = Meta_L Alt_L"
    -$ xmodmap -e "add mod1 = Meta_L"

    if your left Alt key does not act as a Meta key.

    (thanks to ecraven)

    Some Painfully Learned Facts

      -
    1. The world images that are included in the snap3 and 4 releases won't boot if the system date is after ~2000! y2k thing??

    2. -
    3. set genera.network ip in .VLM to 10.0.0.2 *

    4. -
    5. when defining world, set the ip address of yourhost to 10.0.0.1 *

    6. -
    7. xwindow events from the lvm come through on 10.0.0.1, so xhost +10.0.0.1 is usually needed *

    8. -
    9. genera pretty much has to run as root, ymmv but I was didn't figure out how to get it to work otherwise. *

    10. -
    11. Recent linux Xwindows implementations leave out some archaic functionality that the VLM requires -only when saving world. If you get everything else set up then find that the VLM hangs during a save -world, you may need to try using an older version of your host operating system (ouch!). *

    12. -
    13. If running your host OS in a virtual machine and having trouble getting a working meta key, -check that the virtualization software is not munging the keystrokes before they ever get to the X -server. (VMware default key-mappings can be a problem on a Mac keyboard.) -
    14. -

    Tested/working configurations:

      -
    • Pentium D system with 2 gig of memory running ubuntu 7.04 64 bit desktop -
    • -
    • VMware fusion on Mac Pro running ubuntu 7.04 64bit desktop -
    • -


    -Linux VLM workarounds
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Vacietis.html b/clones/lisp/www.cliki.net/Vacietis.html deleted file mode 100644 index c1a55054..00000000 --- a/clones/lisp/www.cliki.net/Vacietis.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Vacietis - - - - - - - -
    Vacietis
    Vacietis is a C compiler for Common Lisp systems.

    Vacietis works by loading C code into a Common Lisp runtime as though it were Lisp code, where it can then be compiled or evaled. The loaded C code has the same function calling convention as regular CL code and uses the same numerical representations. C memory is backed by regular Common Lisp arrays.

    Vacietis comes with a libc implemented in portable Common Lisp.

    Vacietis is inspired by, and contains libc code from, Scott L. Burson's Zeta-C compiler for Lisp machines.

    https://github.com/vsedach/Vacietis

    License: LLGPL

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Valery Khamenya.html b/clones/lisp/www.cliki.net/Valery Khamenya.html deleted file mode 100644 index 7b4832eb..00000000 --- a/clones/lisp/www.cliki.net/Valery Khamenya.html +++ /dev/null @@ -1,119 +0,0 @@ - - - - - CLiki: Valery Khamenya - - - - - - - -
    Valery Khamenya
    Valery Khamenya is a Person.

    I use C++ about 10 years and during last 5 of those years I track activity in functional programming and Lisp. I think 5 years is enough for deciding to switch to Lisp :-) -


    -

    Last News:

    -

    26 Oct 2003: LLVM version 1.0 is released!

    -

    16 Aug 2003: I have successfully compiled tinyscheme with LLVM-based C frontend compiler

    -Remark: prerelease of LLVM package was used.

    I do believe that LLVM will be a cool basis for next generation Lisp implementations. -


    -

    My wishes

    -
      -

      Big Wish 1. Obtain a copy of good CL implementation

      -
        -
          I'd like to have a CL implementation with following features: -
        • free or not expensive -
        • -
        • compliant to ANSI standard of CL -
        • -
        • portable Linux/win32 -
        • -
        • full support for GUI apps development (no less then in Kylix or Delphi) -
        • -
        • run-time compilation to native -
        • -
        • I/O no more then 20% slower in comparison to, say, gcc -
        • -

        Just for example, CMUCL is not ported to win32 and has no good support for GUI development. -Allegro CL is good but too expensive.

        I will buy a copy of Allegro CL for personal use when they make it no more as 300 USD for Linux+win32. -

      -

      Big Wish 2. CLVM (or how to organize CL implementation underworld a bit)

      -
        -Lisp implementor spread their efforts over a lot of platforms developing a good code generation and platform-dependent optimizations (saying "good", in particular, means run-time compilation to native code). -Any transfer to any new platform is painful and should be done for every implementation with different success. Some CL-implementors try to resolve this issue in different ways. But those solutions are incomplete in a way.

        Please look at my proposal about CLVM for getting an idea how (much more) complete solution could look like.

        IMHO, one of the best engines for CLVM I believe could be a Graph Rewriting Systems (GRS)

        See also, "Functional Programming Comes of Age" -

      Big Wish 3. Collection of Code Snippets on Effective Programming in CL

      -
        -I've added initial entry to Anthology. For example, I'd be happy to add some simple examples where -
          -
        • C++ lose because C++ is just not able to compile a function on-fly -
        • -
        • C++ lose because C++ is just not able to compile a closure of the function on-fly -
        • -
        • C++ lose with its (*this) and CL could get rid of this with on-fly compilation of method with given object.

        • -
        -
      -

      Middle Wish 1.

      -
        -It would be good if I/O in CL could be implemented a bit quicker.

        Indeed, following "smart" feature -

      -
    -  (format s "~F" fl) 
    -
    -is about 10 times slower then the following non-smart one: -
    -fprintf(s, "%f", fl);
    -
    -as a result -- there is no way to get quick enough ASCII I/O within CL (at -least for floats).

    remarks: -

      -
    • last versions of CMUCL and "gcc -O2" available on July 2003 were used for comparison. Comparable slowdown I got with Allegro CL. -
    • -
    • if "%f" and "~F" change to dummy "12.13", then CMUCL is only 3 times slower then C. -
    • -

    -


    -

    Feedback

    -
      -
    • email: khamenya AT mail DOT ru -
    • -
    • For Russian spoken audience I've created a web-forum with an entry for Lispers; all are welcome! -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Vamsee Kanakala.html b/clones/lisp/www.cliki.net/Vamsee Kanakala.html deleted file mode 100644 index 8202bfab..00000000 --- a/clones/lisp/www.cliki.net/Vamsee Kanakala.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Vamsee Kanakala - - - - - - - -
    Vamsee Kanakala
    Looks like I am a Person. Some of my friends seriously doubt it, but that's a different story. I am a recent lisp convert, and am thoroughly enjoying hacking in cl. For earning my bread and butter though, I write Rails code, and I really like the framework. I missed one feature most, and got around to porting it to cl. Please go take a look at cl-migrations. Forgive me if there are any egregious mistakes. I will be glad to listen to your complaints at vkanakala [at] common [dash] lisp [dot] net. You can also check out my blog.

    -


    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Vapourware.html b/clones/lisp/www.cliki.net/Vapourware.html deleted file mode 100644 index db2982b3..00000000 --- a/clones/lisp/www.cliki.net/Vapourware.html +++ /dev/null @@ -1,69 +0,0 @@ - - - - - CLiki: Vapourware - - - - - - - -
    Vapourware
    This topic is for pages that refer to non-existent software.

    Although the Free CL Tools namespace is not by any means full, there are various names (often containing the letters CL) that are potentially oversubscribed. CLiki can be used as a tool to help manage this stock of names in that if there's a page on cliki with your project's preferred name, this is an indication that you probably want to choose another name.

    This does tend to break down rather, though, if people create CLiki pages for software that doesn't exist and expect the same treatment. So: if a page has a Vapourware tag, it may be repurposed for some other software that can actually be downloaded. If you come across pages that describe non-existent work, please add this tag.

    Here is a list of such pages: -

      -
    • -CLVM - - CLVM stands for "Common Lisp Virtual Machine", which is Vapourware -
    • -
    • -csp - - CSP (``communicating sequential processes'') support for Lisp -
    • -
    • -Moon, on a stick - - Every lispers platform of choice -
    • -
    • -Tunes - - A project for technological independence -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Vebjorn Ljosa.html b/clones/lisp/www.cliki.net/Vebjorn Ljosa.html deleted file mode 100644 index d57b6b0d..00000000 --- a/clones/lisp/www.cliki.net/Vebjorn Ljosa.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Vebjorn Ljosa - - - - - - - -
    Vebjorn Ljosa
    Vebjorn Ljosa is a Person and one of the YoungLispers. He is a graduate student at the University of California, Santa Barbara. There is some more information (not much) on his home page.

    Vebjorn maintains CL-PNG.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Vecto.html b/clones/lisp/www.cliki.net/Vecto.html deleted file mode 100644 index 60d4bd72..00000000 --- a/clones/lisp/www.cliki.net/Vecto.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Vecto - - - - - - - -
    Vecto
    Vecto is a graphics library that uses cl-vectors and Salza to draw vector graphics to PNG files.

    It is available under a BSD-like license.

    Full documentation is available on the Vecto web site.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Verbose.html b/clones/lisp/www.cliki.net/Verbose.html deleted file mode 100644 index 0f7b95b4..00000000 --- a/clones/lisp/www.cliki.net/Verbose.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: Verbose - - - - - - - -
    Verbose
    Verbose is a logging framework that aims to provide a good default setup as well as an extensible back-end to suit all your logging needs.

    The project can be found on github including a fully documented symbol index and a getting started tutorial.
    -As of April 2014, Verbose is available on Quicklisp.

    Verbose is licensed under the Artistic License 2.0.


    -logging
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Verrazano.html b/clones/lisp/www.cliki.net/Verrazano.html deleted file mode 100644 index b2e133a1..00000000 --- a/clones/lisp/www.cliki.net/Verrazano.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Verrazano - - - - - - - -
    Verrazano
    Verrazano is no longer actively developed; see cl-autowrap (which uses c2ffi) or maybe SWIG.

    Verrazano is a bindings generator targeting CFFI and UFFI. It is designed to have robust support for C and C++ header files, by using GCC-XML as its parser, and to be easily retargetable to a number of different foreign function interfaces.


    -obsolete
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Version Control.html b/clones/lisp/www.cliki.net/Version Control.html deleted file mode 100644 index 5b909333..00000000 --- a/clones/lisp/www.cliki.net/Version Control.html +++ /dev/null @@ -1,80 +0,0 @@ - - - - - CLiki: version control - - - - - - - -
    version control
    Anything related to version/source control (CVS, SVN, git, etc.)

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Victor Sovetov.html b/clones/lisp/www.cliki.net/Victor Sovetov.html deleted file mode 100644 index 9ea5f4d0..00000000 --- a/clones/lisp/www.cliki.net/Victor Sovetov.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - CLiki: Victor Sovetov - - - - - - - -
    Victor Sovetov
    One of millions ukrainian Lisp programmers, who are trying to use Lisp in RealWorld(tm) :) -Email me: owl-at-jedi.org.ua -
    -Valery Khamenya: com'on, are there that much Ukranian Lispers? :) -Victor Sovetov: hehe, one lisper worths... ;)

    person

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Vim.html b/clones/lisp/www.cliki.net/Vim.html deleted file mode 100644 index 10c19fea..00000000 --- a/clones/lisp/www.cliki.net/Vim.html +++ /dev/null @@ -1,75 +0,0 @@ - - - - - CLiki: vim - - - - - - - -
    vim
    The Vi family of editors (with vim probably being the most frequently used implementation) is almost universally "the other editor" to Emacs. In the Lisp community, however, its use seems rather suppressed due to Emacs's tight connection with Lisp.

    Still, there are some vim lispers out there. This page should point them to some ways to make life easier.

    Currently the best solution is Slimv by Tamas Kovacs, which attempts to do for Vim what SLIME does for Emacs, including a built in REPL, hyperspec lookup and completion, paredit mode, etc. It is implemented as a filetype plugin and relatively easy to get started with.

    Out of the box, [D and [d should work (find definition/jump to definition), as well as [I and [i, but only in the open bufffers.

    Some suggestions to vim settings (partly based on articles below). Stuff them to ~/.vim/ftplugin/lisp.vim, and be sure to have :filetype plugin on. -

    -setlocal lisp autoindent showmatch cpoptions-=mp
    -
    -" Possible folding method
    -setlocal foldmethod=marker foldmarker=(,) foldminlines=1
    -
    -" This allows gf and :find to work. Fix path to your needs
    -setlocal suffixesadd=.lisp,cl path=/usr/src/lisp/**
    -
    -" This allows [d [i [D [I work across files if you have asdf buffer present.
    -" If I used load, it would be there too.
    -setlocal include=(:file\
    -
    -Exuberant Ctags (comes with Vim) works quite well with Lisp.

    Deprecated Tools

    Limp by Mikael Jansson used to be the plugin of choice, but is no longer maintained. It uses scripting and GNU screen to integrate a Lisp session and vim/gvim, and is still useful if Slimv doesn't work for you and you can look past a few quirks.

    Another recent and noble attempt at getting Vim to talk to slime was -slim-vim, - which used a vim compiled with ECL to talk to SWANK, just like SLIME. It has now been abandoned.

    Previous efforts also include Using vi with Lisp text and VILisp.vim utility. There is also fvl.vim.

    Other things to describe/do: -

      -
    • Fix system to recognize asdf files as lisp file (either change filetype.vim, or add autocommands to your vimrc file) -
    • -
    • How make CLHS into file to be used as jump tags (attempt at hypertags.py in the Limp repos). -
    • -
    -
    -Categories: development
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Virgil.html b/clones/lisp/www.cliki.net/Virgil.html deleted file mode 100644 index ceb079dd..00000000 --- a/clones/lisp/www.cliki.net/Virgil.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Virgil - - - - - - - -
    Virgil
    Virgil is a high-level and extensible FFI, built on top of CFFI and oriented towards marshaling lisp data into raw memory and back.

    Unlike CFFI, it does have convenient support for marshaling aggregate data types(structures, arrays etc), and may even handle circular references.

    Also, it is highly extensible - function that parses foreign type specifications is exposed to the library user.

    Other features include "reference" types(changes in raw-memory representation of lisp data are reflected on it), convenient pointer arithmetics, aligned allocation, flexible foreign name translation and unnamed structure and union support.

    It currently supports x86 and x86-64 platforms.

    Unfortunately, it has no documentation at the moment.

    Have a look at github repo.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Virtualization.html b/clones/lisp/www.cliki.net/Virtualization.html deleted file mode 100644 index 9b0fe7a7..00000000 --- a/clones/lisp/www.cliki.net/Virtualization.html +++ /dev/null @@ -1,68 +0,0 @@ - - - - - CLiki: Virtualization - - - - - - - -
    Virtualization
    Tools to manipulate Virtual Machines, Hypervisors, Lightweight Virtualization and other tools/libraries related with Virtualization.

      -
    • -cl-travis - - cl-travis allows you to test your Common Lisp projects across a number of implementations on the continuous integration service Travis, which lacks built-in support for the language -
    • -
    • -cl-virtualbox - - cl-virtualbox is a library that allows you to control VirtualBox from Common Lisp, by calling the vboxmanage command -
    • -
    • -corona - - Corona is a library for building and controlling virtual machines -
    • -
    • -Lispvirt - - Lispvirt is a Common LISP bindings for Libvirt API and Virtualization Tools -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Vladimir Sedach.html b/clones/lisp/www.cliki.net/Vladimir Sedach.html deleted file mode 100644 index 93e84084..00000000 --- a/clones/lisp/www.cliki.net/Vladimir Sedach.html +++ /dev/null @@ -1,92 +0,0 @@ - - - - - CLiki: Vladimir Sedach - - - - - - - -
    Vladimir Sedach
    Vladimir Sedach is a person that started programming in CL in 2002.

    Blog: https://oneofus.la/have-emacs-will-hack/

    Projects: Parenscript | Vacietis | CLiki | Eager Future2 | uri-template | cl-moneris | vas-string-metrics | css-lite | mouse-copy

    His Common Lisp library wish/TODO list: -

    His Common Lisp projects-that-would-be-cool list: -

    • Implement Ian Eslick's meta-library for de-facto standard utility and language extensions. This is probably the most realistic plan for moving Common Lisp forward as a language, as it relies only on work that's already been done and widely adopted by the community, and uses the package system for incremental changes:

      A repackaging of the core package namespaces, for example...

      - std.cl

      This includes the cl namespace + cl-ppcre + usocket + bordeaux-threads, trivial-gray-streams, etc. This would be an extensible, cross-platform, unified API for an extended core language tied back to documentation.

      - std.util (anaphors, expanded string facilities, etc.)

      This may even be included in std.cl - but I think there is room for much discussion and debate here. Of course to make practical progress there needs to be one or a few people who make the final calls.

      - std.contrib.me

      Leave room for people to include project-specific or personal variations that nevertheless can remain in this common namespace. People can propose that a utility be migrated into a common namespace like std.cl, std.util, etc.

      - std.? (.net, .xml, .json)

      Rename common, existing libraries into a coherent package namespace and index on the web so users can find common functions and libs easily and via one portal. With the cooperation of the authors, the underlying libraries can be fully renamed, or we can simply provide packages that re-export these names in the interim.

      I made a stab at this earlier and at least 3 or 4 of the primary popular utility library developers expressed a willingness to move over to such a model and release their code for use here.

      Ian Eslick's original comment

    • Integrate CL-JavaScript into the Closure web browser.

    • -
    • Add HTML5 support to the Closure web browser.

    • -
    • Something like SERIES for Parenscript and a server-side DOM that would provide a better stream processing library for the web (better than jQuery, anyway) and use compiler macros for doing optimizations like map fusion.

    • -
    • Something like Clojure's Enlive for doing HTML templating based on CSS selectors. This would enable a much faster workflow for doing websites where the HTML is driven by designers - instead of having to re-do the templates when the designer changes an HTML page, no changes would need to be made if the CSS selectors stay the same (they essentially act as an API between the markup and the code). Closure-html is a good starting point for this. It would be nice if this was also integrated on the client side with Parenscript (perhaps with the above mentioned "SERIES for Parenscript" library).

    • -
    • The above library will probably need something like jQuery's Sizzle CSS selector search for DOM. Again, look at Closure.

    • -
    • Library specifying a protocol for web application user authentication and session management, exposing orthogonal implementation interfaces for web servers and storage backends (so you can use web server X with database Y without having to write an implementation for every cross-product of web servers and databases), with implementations for currently popular web servers and databases.

    • -
    • Portable cross-platform server daemonization library ala RESTAS-daemon (because screen/detachtty don't work well with certain things, such as runit/daemontools supervise). cl-daemonize does this for SBCL on Linux, but needs to be made portable.

    • -
    • -StarLisp library for CL that can compile to vector co-processor (SSE, AltiVec) code, multi-threaded code, GPU (CUDA) code (see cl-gpu), and multi-machine (simple s-exp over socket (philip-jose, ddist, cl-mw), as well as MPI (cl-mpi)) code. Write your parallel Lisp code once, run it on any parallel machine without changes. Alexander Gavrilov (author of cl-gpu) has the ECL-compute project which does this for SSE and CUDA for ECL.

    • -
    • -Lisp as a shell but with reader conveniences and Unixisms. outer-parentheses-free-repl probably gets you 80% towards something convenient. com.informatimago.common-lisp.interactive has ls/cd/etc. Unix file browsing commands. While it might be tempting to use INFIX for some things, there's no need to resolve to using reader macros; this can probably be done with a regular macro (much like LOOP). Learn from the mistakes of scsh. linedit provides readline-like editing.

    • -
    • Extend cl-l10n FORMAT to provide better support of quantity/inflection printing directives and other pretty-printing things, taking the best ideas from MediaWiki and Locale-Maketext. Related: vana-inflector pluralizes and singularizes English words. Investigate whether the Unicode Common Locale Data Repository data can be used.

    • -
    • Native Common Lisp NX client. Use Neatx for protocol specification (it might be possible to use CLPython to run Neatx protocol libs directly, since Neatx is written in Python; on that note, it might be possible to port Neatx server itself to run on CLPython). Use CLXS for talking X11 protocol, but discard the legacy X font and drawing stuff (support XRender only). Use something based on Cairo (McCLIM?) as the drawing backend. Combined with a native Lisp port of Neatx as a library for applications (maybe use parts of xlyb to help with this) and direct-to-hardware rendering, this can form the basis of the graphics system of a hypothetical Lisp OS. Use zen as a replacement for Xnest to start work on a new Lisp OS display system. Stand-alone, it would be a really useful application.

    • -
    • -Hazelcast for CLOS. GBBOpen might already be able to do this. Also might try to contact Lothar Hotz to resurrect NetCLOS.

    • -
    • Terminal emulator for Common Lisp. Port either Paddy Mullen's rxvt-js or the suckless st terminal emulator to CL. Use this to replace xterm on your *nix desktop, add terminal emulation to McCLIM, terminal emulation modes to Climacs and Portable Hemlock, and eventually as the terminal emulator in a Lisp OS.

    • -
    • Port Tony Garnock-Jones' Racket-SSH to Common Lisp. Get a CL SSH client so you can talk to *nix servers securely, an SSH server so Lisp processes can talk to each other securely. Combine with terminal emulator above to get rid of your OpenSSH client. Will be needed for a Lisp OS.

    • -
    • Replicated transactions for bknr-datastore for high-availability, persistent CLOS objects. -
    • -

    Things I used to want, but don't think are such a good idea anymore:

      -
    • -A "usocket-event" library that adds simple epoll/kqueue/select functionality that can be used with usocket and existing code.

    • -
    • -User-space threading library based on CPS conversion (something like Java's Kilim for CL). Note that this would need to shadow and re-implement those CL special forms (special variable binding, catch/throw, conditions and restarts) that rely on the dynamic environment, so it would in effect involve writing many parts of a new (portable) CL implementation in CL. ContextL provides a Scheme-like dynamic-wind and first-class dynamic binding environments that could serve as a start for this. Should be integrated with the above proposed "usocket-event" library.

    • -
    • -Once Closure has JavaScript support, adapt rxvt-js (a JavaScript/DHTML port of urxvt) to run as a stand-alone native application (using Closure as a library), to serve as a replacement for xterm/rxvt. [write CLIM xterm instead] -
    • -

    Things on the it-would-be-cool-list that turned out to have been done already (people are wrong when they say there's no Lisp libraries out there; it's hard to keep track and to find them!):

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Volemad.html b/clones/lisp/www.cliki.net/Volemad.html deleted file mode 100644 index cd11e0db..00000000 --- a/clones/lisp/www.cliki.net/Volemad.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Volemad - - - - - - - -
    Volemad
    VOLEMAD is an application for quickly interacting with Mullvad’s WireGuard servers, written in Common Lisp.

    Repository: https://gitlab.com/emacsomancer/volemad

    License: GPL


    -networking
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/WAAF-CFFI.html b/clones/lisp/www.cliki.net/WAAF-CFFI.html deleted file mode 100644 index 57244d66..00000000 --- a/clones/lisp/www.cliki.net/WAAF-CFFI.html +++ /dev/null @@ -1,76 +0,0 @@ - - - - - CLiki: WAAF-CFFI - - - - - - - -
    WAAF-CFFI
    WITH-ARRAY-AS-FOREIGN-POINTER - Allows Lisp arrays to be passed to foreign functions by copying their contents to malloc'ed foreign space, using only CFFI.

    Copying is done with a set of optimized type-specific copying functions to avoid consing on fast lisp implementations like SBCL.

    Downloadable from the WAAF-CFFI github page. Includes a txt documentation file, and a test package. Uses ASDF.

    -

    Example

    - (LET ((U (MAKE-ARRAY 100 :ELEMENT-TYPE 'SINGLE-FLOAT :INITIAL-ELEMENT 1.0)))
    -    ;;
    -    (WITH-ARRAY-AS-FOREIGN-POINTER
    -           (U PU :FLOAT                    ;; ARRAY  POINTER-VAR  CFFI-TYPE
    -           :LISP-TYPE SINGLE-FLOAT         ;; promise U is a single-float array
    -           :START 1                        ;; begin at index 1 of of Lisp array
    -           :END   7                        ;; last index used is 6
    -           :COPY-TO-FOREIGN   T            ;; put contents of Lisp into foreign memory
    -           :COPY-FROM-FOREIGN T)           ;; copy back from FFI space 
    -         ;;
    -         ;; at this point, PU is a foreign pointer containing indices 1..6  of U copied
    -         ;; from the array, of type :FLOAT.
    -
    -         (SOME-FOREIGN-FUNCTION PU)))
    -     ;;
    -     ;; at end, all foreign memory is deallocated, and U has been copied
    -     ;; back from foreign space, but the 0th (and >6)  element of U 
    -     ;; is untouched because START=1, END=7
    -     ;;
    -     ;; The options :START :END :COPY-TO-FOREIGN :COPY-FROM-FOREIGN are optional.  
    -     ;; By default, :LISP-TYPE is T and any array can be given.
    -
    -
    -

    Notes

    There exist differing opinions on how to pass Lisp arrays to foreign functions. Some Lisp implementation allow arrays to be pinned against GC, or allow GC to be suspended, so that a pointer to the actual lisp data rather than a malloc'ed copy can be passed. The author of WAAF-CFFI feels that, although passing a pointer to the Lisp data may be the elegant approach in terms of conserving memory and avoiding copying, it requires knowledge of each implementation's internals, is harder to maintain, and can break in more places.. For a fast Lisp implementation like SBCL, copying overheads are small compared to the work done on the array, and running out of malloc space should not be an issue on a 64 bit machine. Hence the copying approach works very well in practice, and will not break unless CFFI is broken.


    FFI

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/WCL.html b/clones/lisp/www.cliki.net/WCL.html deleted file mode 100644 index 9a7adbd2..00000000 --- a/clones/lisp/www.cliki.net/WCL.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: WCL - - - - - - - -
    WCL
    WCL is a Common Lisp implementation that provides Common Lisp as a Unix shared library that can be linked with Lisp and C code to produce efficient applications. The goal of WCL is to allow hundreds of Lisp applications to be realistically available at once, while allowing many of them to run concurrently. For example, the executable for a Lisp version of the canonical ``Hello World!'' program requires only 20k bytes.

    License: Apache 2.0 ((C) Copyright 1990 - 2017 by Wade L. Hennessey. All rights reserved.)

    Homepage: http://www.commonlisp.net/ -Source:GitHub

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/WITH-UNIQUE-NAMES.html b/clones/lisp/www.cliki.net/WITH-UNIQUE-NAMES.html deleted file mode 100644 index 41c7804d..00000000 --- a/clones/lisp/www.cliki.net/WITH-UNIQUE-NAMES.html +++ /dev/null @@ -1,90 +0,0 @@ - - - - - CLiki: with-unique-names - - - - - - - -
    with-unique-names
    Macro WITH-UNIQUE-NAMES

    Syntax:

    with-unique-names ({var | (var - prefix)}*) declaration* - form* => result*

    Arguments and Values:

    var---a symbol; not - evaluated.

    prefix---a string designator; not - evaluated. The default is var.

    declaration---a declare expression; not evaluated.

    form---a form.

    results---the values - returned by the forms.

    Description:

    Executes a series of forms with each - var bound to a fresh, - uninterned symbol. The - uninterned symbol is created as if by - a call to gensym with the - string denoted by prefix---or, if - prefix is not supplied, the string - denoted by var---as argument.

    The variable bindings created are - lexical unless special - declarations are specified.

    The forms are evaluated in order, and - the values of all but the last are discarded (that - is, the body is an implicit progn).

    Examples:

    -    (with-unique-names (sym1) sym1)  =>  #:SYM13142
    -    (with-unique-names ((sym1 "SYM1-")) sym1)  => #:SYM1-3143
    -    (find-symbol "SYM1-3143")  =>  NIL, NIL
    -    (with-unique-names ((sym #\Q)) sym) => #:Q3144
    -    (with-unique-names ((sym1 :sym1-)) sym1) => #:SYM1-3145
    -    (with-unique-names (sym1) (symbol-package sym1))  =>  NIL
    -    (with-unique-names (sym8) (eq sym8 sym8))  =>  T
    -    (with-unique-names (sym9) (set sym9 42) (symbol-value sym9))  =>  42
    -

    Side Effects:

    Might increment *gensym-counter* once for each - var.

    Affected by: - *gensym-counter*

    Exceptional Situations: - None.

    See Also:

    gensym, let, - rebinding

    Status:

    Discussed on comp.lang.lisp in the thread starting with - cy3eln0foea.fsf@ljosa.com. Suggested for inclusion in - Common Lisp Utilities.

    Reference Implementation:

    (defmacro with-unique-names ((&rest bindings) &body body) - `(let ,(mapcar #'(lambda (binding) - (destructuring-bind (var prefix) - (if (consp binding) binding (list binding binding)) - `(,var (gensym ,(string prefix))))) - bindings) - ,@body))

    Discussion:

    Why was the name changed from the much more common WITH-GENSYMS? --DRC

    The name WITH-UNIQUE-NAMES says what the macro is supposed to do, the name WITH-GENSYMS says how the macro is implemented which is irrelevant. (Besides, you don't have to do it with gensyms.)

    Muddled thinking. You can't get away from GENSYMs without breaking the macro's contract. A no-no for library code. Therefore WITH-GENSYMS was a spot-on description of what the macro does and will remain so. All you managed to do was burn a more generic name forever while at the same time naming this macro with a less descriptive name.

    You could do it with MAKE-SYMBOL along with some scheme for generating unique suffixes (imagine a call to uuidgen on Unix-y systems). So no, you don't need GENSYM. (No. What part of as if by call to gensym is that hard to understand?)


    -macro example
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/WSCL.html b/clones/lisp/www.cliki.net/WSCL.html deleted file mode 100644 index 287cdbf6..00000000 --- a/clones/lisp/www.cliki.net/WSCL.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: WSCL - - - - - - - -
    WSCL
    This repository contains the TeX and plain-text source files for the “Well Specified Common Lisp” specification.


    -Public Domain, standards
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Warren Wilkinson.html b/clones/lisp/www.cliki.net/Warren Wilkinson.html deleted file mode 100644 index 92e5282a..00000000 --- a/clones/lisp/www.cliki.net/Warren Wilkinson.html +++ /dev/null @@ -1,57 +0,0 @@ - - - - - CLiki: Warren Wilkinson - - - - - - - -
    Warren Wilkinson
    Warren Wilkinson is a Person interested in both Forth and Lisp. He founded a dotcom FormLis.com, Wiki & Database which launched mid 2010 and floundered later. Currently he is playing with StumpWM a lot, and writing well documented, well tested libraries using literate Programming.

    Check out these projects -- you'll like the documentation ;-) -

    He once wrote about about Programming Languages, the most interesting articles are -Forth in Lisp/, HACK: co-routines in SBCL and A handful of useful Lisp Programming Tricks.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Web API.html b/clones/lisp/www.cliki.net/Web API.html deleted file mode 100644 index c859c40c..00000000 --- a/clones/lisp/www.cliki.net/Web API.html +++ /dev/null @@ -1,260 +0,0 @@ - - - - - CLiki: web API - - - - - - - -
    web API
    Common Lisp wrapper for web API

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Web Framework.html b/clones/lisp/www.cliki.net/Web Framework.html deleted file mode 100644 index 295904b6..00000000 --- a/clones/lisp/www.cliki.net/Web Framework.html +++ /dev/null @@ -1,188 +0,0 @@ - - - - - CLiki: web framework - - - - - - - -
    web framework
    Web frameworks purport to make it easier to develop web applications.

    User beware: these claims are not always substantiated, and some of the frameworks in this list are poorly maintained and/or documented.

    Since Lisp makes it trivial to do so, you can just grab an HTTP server, HTML generator or HTML template library, a database (see the list of Current recommended libraries) and just write your web application already.

    See webframeworkmatrix for a tabular comparison of the various currently available frameworks.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Web.html b/clones/lisp/www.cliki.net/Web.html deleted file mode 100644 index 91e453db..00000000 --- a/clones/lisp/www.cliki.net/Web.html +++ /dev/null @@ -1,1085 +0,0 @@ - - - - - CLiki: Web - - - - - - - -
    Web
    Web clients, servers, application servers, browsers, etc.

    HTTP servers: (main topic: HTTP server) -

    WebSocket servers: (main topic: WebSocket server) -

    CGI, Apache modules, Java Servlets: (main topic: CGI) -

      -
    • -cl-modlisp - - cl-modlisp is a Web library that implements a Common Lisp interface to Marc Battyani's mod_lisp apache module -
    • -
    • -cl-mongrel2 - - cl-mongrel2 is an interface to the mongrel2 web-server -
    • -
    • -FastCGI - - How to use FastCGI from Common Lisp -
    • -
    • -Le Sursis - - Le Sursis is a Web tool for writing CGI scripts -
    • -
    • -lisp-cgi-utils - - lisp-cgi-utils is a Lisp project for developing web applications using the CGI interface -
    • -
    • -m2cl - - An implementation of the mongrel2 API -
    • -
    • -mod_ecl - - mod_ecl is an apache module to use lisp in the way php is used for website scripting -
    • -
    • -mod_lisp - - mod_lisp is an Apache module to write dynamic web servers and applications -
    • -

    Web development frameworks: (main topic: web framework) see also webframeworkmatrix -

    blogs, wikis, CMS: (main topics: CMS wiki) -

      -
    • -cl-eshop - - cl-eshop is an e-shop/ecommerce site written in Common Lisp -
    • -
    • -CLEWS - - Common Lisp Educational Web Server (CLEWS) is a platform for developing educational web applications, providing systems for peer-review assessments, discussion assessments, adaptive tutorials and course management -
    • -
    • -FastIndex - - FastIndex is a Web server which manages a small online library -
    • -
    -
      -
    • -ALIW - - A Lisp in Wonderland (ALIW) is a wiki software written in Common Lisp, to ease the collaboration on editable web pages -
    • -
    • -CLiki - - CLiki is the Common Lisp wiki, a community resource about various topics pertaining to the Common Lisp programming language, as well as a directory of Free Software Common Lisp libraries, implementations, and applications -
    • -
    • -XL-Wiki - - XL-Wiki is a fork of CL-Wiki that aims to allow applications to modify and extend its functionality in interesting ways -
    • -

    Blog software: (main topic: blog software) -

    Outputting HTML: -

    Parsing HTML: (main topic: HTML parser) -

    See also HTML for other misc HTML tools (character encoding/decoding etc.)

    JavaScript: (main topic: JavaScript) -

    JSON: (main topic: JSON) -

      -
    • -cl-grip - - cl-grip is a high-level logging system for Common Lisp, focusing on a clear user interface, support for flexible structured logging, and easy extensibility for different backends to support direct logging to various inputs -
    • -
    • -cl-json - - cl-json is a JSON parser and generator -
    • -
    • -CLJWT - - A library for issuing and validating JSON Web Tokens -
    • -
    • -HT-AJAX - - HT-AJAX is a small AJAX web framework for Hunchentoot web server that allows transparent calls from Javascript in web pages to the server side Lisp code -
    • -
    • -Jonathan - - Jonathan is a fast JSON encoder/decoder -
    • -
    • -json-streams - - json-streams is a Common Lisp library for reading and writing JSON text -
    • -
    • -json-template - - An implementation of JSON Template in Common Lisp -
    • -
    • -jsown - - A fast JSON parser and generator -
    • -
    • -monkeylib-json - - monkeylib-json is a library for reading and writing JSON -
    • -
    • -st-json - - ST-JSON is a JSON encoding and decoding library -
    • -
    • -YASON - - YASON is a Common Lisp library for encoding and decoding data in the JSON interchange format -
    • -

    Stylesheet utilities: (main topic: CSS) -

      -
    • -cl-css - - cl-css is a minimalist CSS generator for Common Lisp -
    • -
    • -css-lite - - css-lite is a library for generating CSS from an s-exp syntax -
    • -
    • -LASS - - Writing CSS files comes with a lot of repetition and is generally much too verbose -
    • -
    • -rock - - Rock is an asset manager for Common Lisp -
    • -
    • -simple-rgb - - simple-rgb is a library for manipulating RGB and HSV color values -
    • -

    HTTP clients: (main topic: HTTP client) -

    Dealing with URIs: (main topic: URI) -

    Web service API interfaces: (main topic: web API) -

    RSS feeds: (main topic: RSS) -

      -
    • -cl-rss - - This package provides a Common Lisp library for fetching and parsing Remote Site Summary data via HTTP -
    • -
    • -cl-rss-gen - - cl-rss-gen is a tiny Common Lisp library that generates RSS (RDF Site Summary) -
    • -
    • -RSSParser - - A Web-to-RSS parser in Common Lisp -
    • -
    • -trivial-feed - - Parse syndication feeds such as RSS and ATOM to a canonical form -
    • -
    • -xml-emitter - - Often, programs have to generate XML output -
    • -

    Semantic Web: (main topic: Semantic Web) -

    WebDAV: -

    Testing: -

    Debugging: -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/WebSocket server.html b/clones/lisp/www.cliki.net/WebSocket server.html deleted file mode 100644 index 345a96db..00000000 --- a/clones/lisp/www.cliki.net/WebSocket server.html +++ /dev/null @@ -1,69 +0,0 @@ - - - - - CLiki: WebSocket server - - - - - - - -
    WebSocket server
    WebSockets provide bi-directional, full-duplex TCP communication and are initialized over HTTP connections (see HTTP server). At the time of writing, they are still in drafting state but implemented in several web browsers.

    The available Common Lisp implementations of WebSocket servers are

    -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/WeirdIRC.html b/clones/lisp/www.cliki.net/WeirdIRC.html deleted file mode 100644 index 168a532f..00000000 --- a/clones/lisp/www.cliki.net/WeirdIRC.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: WeirdIRC - - - - - - - -
    WeirdIRC
    WeirdIRC is a simple IRC client using CLIM.

    Archived from SourceForge CVS: weird-irc.lisp


    -BSD License, Application
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Weyl.html b/clones/lisp/www.cliki.net/Weyl.html deleted file mode 100644 index 1e37a305..00000000 --- a/clones/lisp/www.cliki.net/Weyl.html +++ /dev/null @@ -1,61 +0,0 @@ - - - - - CLiki: Weyl - - - - - - - -
    Weyl
    A computer algebra substrate for Common Lisp

    Weyl has support for multiple domains (Integers, Real numbers, Rings, Modules, Groups), including polynomial fields. It has support for ideals, algebraic closures, truncated power series, and topology, as well.

    This example code squares a binomial in Weyl: -

    -(ql:quickload :weyl) -(in-package :weyl) -(defvar ring (get-polynomial-ring (get-real-numbers) '(x y))) -(defvar x (coerce 'x ring)) -(defvar y (coerce 'y ring)) - -(expt (+ x y) 2) -

    It can be found at Weyl's github repo.


    -mathematics
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Wiki.html b/clones/lisp/www.cliki.net/Wiki.html deleted file mode 100644 index bd1d05f2..00000000 --- a/clones/lisp/www.cliki.net/Wiki.html +++ /dev/null @@ -1,65 +0,0 @@ - - - - - CLiki: Wiki - - - - - - - -
    Wiki
    "Wiki" is a class of collaborative hypertext authoring systems. Inspired by Ward Cunningham's WikiWikiWeb, many wiki sites and software systems now exist in a variety of languages.

    There are several wiki systems that have been built in Common Lisp: -

      -
    • -ALIW - - A Lisp in Wonderland (ALIW) is a wiki software written in Common Lisp, to ease the collaboration on editable web pages -
    • -
    • -CLiki - - CLiki is the Common Lisp wiki, a community resource about various topics pertaining to the Common Lisp programming language, as well as a directory of Free Software Common Lisp libraries, implementations, and applications -
    • -
    • -XL-Wiki - - XL-Wiki is a fork of CL-Wiki that aims to allow applications to modify and extend its functionality in interesting ways -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Wilbur.html b/clones/lisp/www.cliki.net/Wilbur.html deleted file mode 100644 index 353ed7fa..00000000 --- a/clones/lisp/www.cliki.net/Wilbur.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Wilbur - - - - - - - -
    Wilbur
    Note: For the actively maintained version of Wilbur, see de.setf.wilbur

    Wilbur is Nokia's open-source Semantic Web library for manipulating RDF.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/William Bland.html b/clones/lisp/www.cliki.net/William Bland.html deleted file mode 100644 index 6ea19088..00000000 --- a/clones/lisp/www.cliki.net/William Bland.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: William Bland - - - - - - - -
    William Bland
    A Person and a Lisp fan.

    I taught myself PC-LISP when I was 12 years old, because I couldn't figure out how to re-implement ELIZA in BASIC. But everyone seemed to be saying that Lisp was a dying language, and I was young and naive enough to believe them, so I gave up for a while and learned a little C++ and a lot of Java.

    Lisp isn't dead at all. I've been paid to write Lisp software. I know Scheme reasonably well, but Common Lisp is now my language of choice. The most amusing thing I've done so far in Lisp was to embed a Scheme interpreter in the Linux kernel (Schemix).

    My home-page is at http://www.abstractnonsense.org/

    I also wrote, and currently maintain, LispDoc - a searchable interface to a bunch of Common Lisp documentation.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/William Halliburton.html b/clones/lisp/www.cliki.net/William Halliburton.html deleted file mode 100644 index 9413ff8b..00000000 --- a/clones/lisp/www.cliki.net/William Halliburton.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: William Halliburton - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/William Robinson.html b/clones/lisp/www.cliki.net/William Robinson.html deleted file mode 100644 index 2eed4476..00000000 --- a/clones/lisp/www.cliki.net/William Robinson.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: William Robinson - - - - - - - -
    William Robinson
    William Robinson is a Person. He writes cl-glfw and is working on a game in Common Lisp, when he has time.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Wimpie Nortje.html b/clones/lisp/www.cliki.net/Wimpie Nortje.html deleted file mode 100644 index e171ed45..00000000 --- a/clones/lisp/www.cliki.net/Wimpie Nortje.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Wimpie Nortje - - - - - - - -
    Wimpie Nortje
    A person writing a book on application deployment.

    For a long time I developed firmware for 8-bit micro-controllers using C. I decided to try my hand at web development using a high-level language. During my search for a compiled high-level language I discovered Lisp and after a lot of reading I became convinced that Lisp was the way to go, in particular Common Lisp.

    I worked for two years on Selective Share and Strongroom. Selective Share is an SDK for building client-side encryption into larger applications. Strongroom is a photo backup solution built to test and demonstrate Selective Share's capabilities.

    Except for the small bits of HTML and Javascript needed for the web pages, all the other software are written in Common Lisp. This includes numerous server-side applications and two client-side applications. The client-side programs were developed from the start to run on Linux, Windows and OS X from exactly the same code base. Initial development was done on Linux. Porting to Windows took one week. The OS X port has not happened yet but it should take about the same amount of time.

    Common Lisp is well suited for building all kinds of production software. Unfortunately, most literature revolve around teaching the language basics or around the esoteric features that sets the language apart from mainstream languages. The tasks that the average developer needs to do during a typical work day are not well covered.

    Writing production software in a language I have never heard of before the project started forced me to learn quickly. The lack of books on the subject of deployment meant I had to learn through experience and by asking on forums. Often getting the answers only from the maintainers of the libraries.

    I am now writing a short book on deploying production software written in Common Lisp. The mainstream languages have hordes of books on every single topic. Common Lisp can do with at least one book on each topic. Especially the boring topics.

    Find me on the web:

    Book site: Common Lisp in the Wild.

    Blog: Dark Chestnut.

    Twitter: @WimpieNortje

    Email: Drop me a note at Contact page. You will get my address in the confirmation.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Win32.html b/clones/lisp/www.cliki.net/Win32.html deleted file mode 100644 index c9169bfd..00000000 --- a/clones/lisp/www.cliki.net/Win32.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: Win32 - - - - - - - -
    Win32
    win32 is a library containing a set of CFFI bindings and constant definitions for interacting with the Win32 API. This means it's a practically non-existent layer on top of the API, and has little to no utility other than exposing the raw interface.

    Doors is a lisper's gateway to Windows. It aims to cover only essential -features of that operating system, such as basic WinAPI, COM and OLE.

    cl-win32ole is a Windows OLE Library like Ruby's win32ole. -cl-win32ole works with SBCL and CLISP and possibly any lisp supported by cffi and trivial-garbage.

    Graphic-Forms is a user interface library implemented in Common Lisp focusing on the Windows(R) platform. Graphic-Forms is licensed under the terms of the BSD License.

    Corman Lisp is a Common Lisp implementation written for Windows and having good integration with WinAPI and COM.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/WinCommand.html b/clones/lisp/www.cliki.net/WinCommand.html deleted file mode 100644 index 730587be..00000000 --- a/clones/lisp/www.cliki.net/WinCommand.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - CLiki: WinCommand - - - - - - - -
    WinCommand
    WinCommand is an Application that can run a console (like CLisp or cmd) inside a window. For example you can run CLisp inside a window so you can work more comfortably.

    The program can be configured for any (I hope) console application, like others implementations of lisp (Corman Lisp, GCL,...). -You can save the history of command typed inside the console and save the whole text of the console.

    We are in a testing stage, so comments are welcome.

    Enjoy it!!!

    You can download bins from here: WinCommand-1.2.2_bin.zip
    -Sources can be downloaded from WinCommand-1.2.2_src.zip
    -Documentation is here.

    If you want to send any comments, do it to dariomac@adinet.com.uy

    Thanks in advance.


    -Application development
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Window Manager.html b/clones/lisp/www.cliki.net/Window Manager.html deleted file mode 100644 index 4086b322..00000000 --- a/clones/lisp/www.cliki.net/Window Manager.html +++ /dev/null @@ -1,72 +0,0 @@ - - - - - CLiki: Window Manager - - - - - - - -
    Window Manager
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Windows.html b/clones/lisp/www.cliki.net/Windows.html deleted file mode 100644 index 0f7e8cf3..00000000 --- a/clones/lisp/www.cliki.net/Windows.html +++ /dev/null @@ -1,128 +0,0 @@ - - - - - CLiki: Windows - - - - - - - -
    Windows
    CLiki pages about Common Lisp software on Microsoft Windows:

      -
    • -abcl-jazz - - Code examples on to call the Java Swing API under ABCL to program GUIs -
    • -
    • -Allegro NFS Server - - Allegro NFS Server for Microsoft Windows, written in Common Lisp -
    • -
    • -Cerberus - - This is an implementation of the Kerberos v5 authentication protocol in Common Lisp -
    • -
    • -cl-sap - - SimpleAudioPlayer is a simple audio player library for windows which utilizes DirectShow -
    • -
    • -cl-win32ole - - Common Lisp OLE like Ruby's win32ole -
    • -
    • -Corman Common Lisp - - Corman Lisp is a Common Lisp development environment for Microsoft Windows operating systems running on Intel platforms -
    • -
    • -doors - - Doors is an attempt to bring essential features of MS Windows (such as basic Windows API, COM and OLE) into Common Lisp -
    • -
    • -FTW - - FTW is a Common Lisp Win32 GUI library -
    • -
    • -Graphic-Forms - - Graphic Forms is a Windows GUI library using the Win32 API -
    • -
    • -lisp-xl - - Common Lisp Microsoft XLSX (Microsoft Excel) loader for arbitrarily-sized / big-size files -
    • -
    • -LispIDE - - LispIDE is a basic graphical shell for several Lisp implementations available for Windows -
    • -
    • -Lispix - - Lispix is a public domain image analysis application for Windows, written and maintained by David Bright at NIST -
    • -
    • -lispx-proxy - - lispx-proxy (Lisp Execution Proxy) is a Lisp application launcher for Windows (A *nix port with limited functionality is also available) -
    • -
    • -plain-odbc - - Plain-odbc is a simple, yet powerful Common Lisp ODBC interface -
    • -
    • -PowerShell - - An experiment in sending tasks to PowerShell from CL -
    • -
    • -trivial-clipboard - - trivial-clipboard provides access to the system clipboard -
    • -
    • -USN Journal - - The USN Journal keeps track of changes made to files and directories on an NTFS volume -
    • -
    • -Win32 - - win32 is a library containing a set of CFFI bindings and constant definitions for interacting with the Win32 API -
    • -
    • -winhttp - - CFFI bindings to WinHTTP -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Wm Annis.html b/clones/lisp/www.cliki.net/Wm Annis.html deleted file mode 100644 index 4ba5c0e3..00000000 --- a/clones/lisp/www.cliki.net/Wm Annis.html +++ /dev/null @@ -1,61 +0,0 @@ - - - - - CLiki: Wm Annis - - - - - - - -
    Wm Annis
    William S Annis is a person. When not at work being a Unix sysadmin, most of his time is spent on dead languages. A long-time Lisp fan, he has only in early 2008 finally started to write useful code in Lisp. This moved him firmly into the Common Lisp camp, though he retains a fondness for Scheme.

    Responsible for: -

    You can find my signing key at http://www.lingweenie.org/lisp/key.html

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Woo.html b/clones/lisp/www.cliki.net/Woo.html deleted file mode 100644 index 065064f9..00000000 --- a/clones/lisp/www.cliki.net/Woo.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Woo - - - - - - - -
    Woo
    Woo is a fast async HTTP server built on top of libev, with aim to be the fastest.

    The repository: https://github.com/fukamachi/woo


    -Topics: networking
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Wookie.html b/clones/lisp/www.cliki.net/Wookie.html deleted file mode 100644 index f19fb362..00000000 --- a/clones/lisp/www.cliki.net/Wookie.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Wookie - - - - - - - -
    Wookie
    Wookie is an asynchronous HTTP server written in Common Lisp. -Originally, the goal was to port Hunchentoot to async, but Wookie took a divergent turn and is now its own project.

    License: MIT

    Homepage: wookie.lyonbros.com/

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/WuWei.html b/clones/lisp/www.cliki.net/WuWei.html deleted file mode 100644 index 4a82be7c..00000000 --- a/clones/lisp/www.cliki.net/WuWei.html +++ /dev/null @@ -1,65 +0,0 @@ - - - - - CLiki: WuWei - - - - - - - -
    WuWei
    WuWei is a toolkit for building Ajax web pages and web sites in Common Lisp. It's designed to be -light-weight, a toolkit rather than a platform.

    Wu wei is Chinese for "effortless doing".

    Features

      -
    • Continuation-based AJAX user interfaces -
    • -
    • Server-side DOM operations (add/remove elements, visual fades, drag and drop) -
    • -
    • High-level interfaces to in-place-editing and autocomplete widgets -
    • -
    • Login and session management -
    • -
    • runs in multiple Common Lisp implementations (tested with Allegro, OpenMCL, SBCL). -
    • -

    Examples and Demos

    Are at http://wuwei.name

    Credits

    WuWei was written primarily by Mike Travers, originally under the sponsorship of CollabRx, Inc. -Some bits of it are derived from BioBike.

    Installation

    See instructions at source, available here: https://github.com/mtravers/wuwei.


    -Tags: MIT-LICENSE, web framework
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/X-Chat Common Lisp Plugin.html b/clones/lisp/www.cliki.net/X-Chat Common Lisp Plugin.html deleted file mode 100644 index 597a4705..00000000 --- a/clones/lisp/www.cliki.net/X-Chat Common Lisp Plugin.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: X-Chat Common Lisp Plugin - - - - - - - -
    X-Chat Common Lisp Plugin
    The X-Chat Common Lisp plugin is a plugin for X-Chat version 2 and up (the famous IRC client) that allows you to use Common Lisp scripts to control X-Chat behaviour. You can basically do everything with a CL script that you could do with the C or Perl interface. It is also quite well documented. It uses ECL as Common Lisp implementation.

    It is written and maintained by Julian Stecklina, is licensed under the BSD License and can be downloaded at its Sourceforge project page. You probably want to grab the 0.3 release. Happy hacking!

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/X.FDATATYPES.html b/clones/lisp/www.cliki.net/X.FDATATYPES.html deleted file mode 100644 index d0014e37..00000000 --- a/clones/lisp/www.cliki.net/X.FDATATYPES.html +++ /dev/null @@ -1,56 +0,0 @@ - - - - - CLiki: X.FDATATYPES - - - - - - - -
    X.FDATATYPES
    XFDATATYPES implements 3 functional data structures: -
      -
    • hash-table (more or less translation of Clojure implementation of Bagwell tries)
    • -
    • array (also a translation from Clojure + more functions on it)
    • -
    • set
    • -

    X.FDATATYPES also implements FMAP, FOLD, FILTER and FMAP-TO functions for easy working with these data structures.

    X.FDATATYPES does not try to behave as common CL data structures, and therefore function names in the package are intentionally different than the ones found in CL.

    Other functional data structures are easy to add - just write user-land wrappers over tab-ctx or vec-ctx defstructs. See ftab.lisp and fvec.lisp

    You can checkout sources directly here: X.FDATATYPES

    License: BSD

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/X.LET-STAR.html b/clones/lisp/www.cliki.net/X.LET-STAR.html deleted file mode 100644 index 731100f8..00000000 --- a/clones/lisp/www.cliki.net/X.LET-STAR.html +++ /dev/null @@ -1,93 +0,0 @@ - - - - - CLiki: X.LET-STAR - - - - - - - -
    X.LET-STAR
    X LET-STAR is a convenience library not unlike bind, but smaller, extendible, nicely written and bug-free (hopefully :)

    To date, it supports:

      -
    • let*
    • -
    • destructuring-bind (with "don't care" variable _)
    • -
    • multiple-value-bind (with "don't care" variable _)
    • -
    • with-slots
    • -
    • "projection" of slot values of structure/object to normal values, - avoiding slot lookup every time the slot value is used in the scope - of let*
    • -
    • binding of a group of variables to one initialization value
    • -

    Other binders can be added trivially with define-binder macro (see let-star.lisp).

    X.LET-STAR shadows let* (since it's completely compatible with common-lisp:let*) -To use the X.LET-STAR library, your defpackage should roughly look as:

    -(defpackage :your-lib
    -  (:use :common-lisp :x.let-star ...)
    -  (:shadowing-import-from x.let-star let*) ;; the important line
    -  ...)
    -

    example:

    -(defstruct xxx a b c)
    -
    -(let* (((_ (e . _) &key (g :xxx)) '(:sdfg (:wert :dfg :tyu) :g 100))      ;; b
    -       ((:mval h _) (rem 1234 34))                                        ;; c
    -       ((:slot a (b-first b)) (make-xxx :a 123))                          ;; d
    -       ((:slotval (b-second b) c) (make-xxx :b 3245 :c 3456))             ;; e
    -       ((:all x y z) :init))                                              ;; f
    -   (values e g h a b-first b-second c x y z))
    -

    expands to:

    -(DESTRUCTURING-BIND                                            ;; b
    -      (#:IGNORE-1021 (E . #:IGNORE-1022) &KEY (G :XXX))        ;; b
    -    '(:SDFG (:WERT :DFG :TYU) :G 100)                          ;; b
    -  (DECLARE (IGNORE #:IGNORE-1021) (IGNORE #:IGNORE-1022))      ;; b
    -  (MULTIPLE-VALUE-BIND                                         ;; c
    -        (H #:IGNORE-1020)                                      ;; c
    -      (REM 1234 34)                                            ;; c
    -    (DECLARE (IGNORE #:IGNORE-1020))                           ;; c
    -    (WITH-SLOTS (A (B-FIRST B)) (MAKE-XXX :A 123)              ;; d
    -      (LET ((#:VAL1019 (MAKE-XXX :B 3245 :C 3456)))            ;; e
    -        (LET ((B-SECOND (SLOT-VALUE #:VAL1019 'B)))            ;; e
    -          (LET ((C (SLOT-VALUE #:VAL1019 'C)))                 ;; e
    -            (LET ((#:VAL1139 :INIT))                           ;; f
    -              (LET ((X #:VAL1139) (Y #:VAL1139) (Z #:VAL1139)) ;; f 
    -                (VALUES E G H A B-FIRST B-SECOND C X Y Z)))))))))
    -
    -
    -

    You can checkout the sources directly as well: X.LET-STAR

    License: BSD

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/X11.html b/clones/lisp/www.cliki.net/X11.html deleted file mode 100644 index 7766c183..00000000 --- a/clones/lisp/www.cliki.net/X11.html +++ /dev/null @@ -1,112 +0,0 @@ - - - - - CLiki: X11 - - - - - - - -
    X11
    X11 stands for 'X Window System, Version 11'. The X Window System was developed at MIT and first released in 1985. Since then the X Window System has become and industry-standard program available for nearly every Unix-like (and some non-Unix-like) operating system supporting graphical bitmapped displays.

    X11's fundamental concept is that of the server and client. The server is the program which manages the graphics display, and clients are programs which connect to the server and (usually) request graphics to be displayed. X11 uses a protocol, the X Protocol that allows communication between the server and clients to be encapsulated in nearly any type of network protocol that provides a reliable two-way byte stream (eg TCP, Chaosnet, DECnet, Unix sockets). As such X is network-transparent, and clients can execute on host computers separate from the computer which hosts the server.

    The X Protocol is language-independent. The primary implementation is in a weird object-oriented-ish form of ANSI C, but the X Protocol can be implemented in nearly any programming language. As such, Common Lisp has its own implementation of the X Protocol, called CLX.

    MIT has long since let go of X, and it is now officially maintained and standardized by X.Org (formerly by the MIT X Consortium, then by The Open Group). Many different implementations of X exist, each typically supported by a particular Unix vendor. However the original source code for X was and continues to be freely available.

    Topic: X11

      -
    • -CLIO - - Common Lisp Interactive Objects (CLIO) is a set of CLOS classes that represent the standard components of an object-oriented user interface --- such as text, menus, buttons, scroller, and dialogs -
    • -
    • -CLX - - CLX provides an implementation of the X Window System protocol to Lisp graphics library[ies] and applications -
    • -
    • -CLXS - - CLXS is an early-stage implementation of an X11 server (the part that does the drawing and keyboard/mouse handling) in Common Lisp -
    • -
    • -cxml-rng - - Relax NG for Closure XML -
    • -
    • -deflate - - Deflate by Pierre Mai is a Common Lisp implementation of Deflate (RFC 1951) decompression, with optional support for ZLIB-style (RFC 1950) and gzip-style (RFC 1952) wrappers of deflate streams -
    • -
    • -eclipse - - Eclipse is an X11 window manager written entirely in Common Lisp -
    • -
    • -image - - Image is an image-drawing library with a few drawing primitives (circles, ellipses, lines, rectangles, text) -
    • -
    • -incf-cl - - (INCF CL) is a collection of utilities -
    • -
    • -plexippus-xpath - - Project name: -
    • -
    • -sha3 - - This library is an implementation of the Secure Hash Algorithm 3 (SHA-3), also known as Keccak -
    • -
    • -stumpwm - - StumpWM is a tiling, keyboard driven X11 window manager application written entirely in Common Lisp -
    • -
    • -tinywm-lisp - - tinywm-lisp is a Common Lisp port of the TinyWM X11 window manager -
    • -
    • -XIT - - A graphics toolkit from the University of Stuttgart which provides an object-based interface to the X11 window system, based on CLX and CLUE -
    • -
    • -xuriella - - Xuriella XSLT is an implementation of XSLT 1.0, written entirely in Common Lisp -
    • -
    • -zen - - zen is a hackable X server written in Common Lisp -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/XCL.html b/clones/lisp/www.cliki.net/XCL.html deleted file mode 100644 index 63d6eaf4..00000000 --- a/clones/lisp/www.cliki.net/XCL.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: XCL - - - - - - - -
    XCL
    XCL is a Common lisp implementation featuring a kernel written in C++ and an optimizing compiler with backends for x86 and x86-64. XCL is licensed under GPL and works on Linux, FreeBSD and 32-bit Windows.

    It has been developed by Peter Graves, the author of ABCL.

    Its main features are a small C++ kernel for bootstrapping, its own native code compiler, compact code, native threads on both linux and win32.

    Its aim is to be as compliant and portable as possible, be easily embeddable as ECL, fast as SBCL, compact, clean, ...

    Package structure resembles the one of ABCL. Also, seems like a lot of code is shared between these two implementations.

    It is still in very early stage (last update August 2011)

    Source code can be found here

    XCL is now on GitHub:

    -    git clone git://github.com/gnooth/xcl.git
    -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/XCVB.html b/clones/lisp/www.cliki.net/XCVB.html deleted file mode 100644 index d5748e0a..00000000 --- a/clones/lisp/www.cliki.net/XCVB.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: XCVB - - - - - - - -
    XCVB
    XCVB, an eXtensible Component Verifier and Builder for Lisp is an attempt to replace asdf.

    Objectives: have a scalable system to build large software in Lisp, featuring deterministic separate compilation and enforced locally-declared dependencies.

    XCVB itself is its own executable program to drive CL development from the shell command-line. However, it is distributed with a module /xcvb/master (aka :xcvb-master if loaded by asdf) that provides the functionality of compiling a system from Lisp and loading the result into the current image.

    More details can be found on the XCVB page on common-lisp.net.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/XHTMΛ.html b/clones/lisp/www.cliki.net/XHTMΛ.html deleted file mode 100644 index d9b12f86..00000000 --- a/clones/lisp/www.cliki.net/XHTMΛ.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: XHTMΛ - - - - - - - -
    XHTMΛ
    XHTMΛ is yet another (X)HTML/XML manipulation library You can find it at common-lisp.net/project/xhtmlambda.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/XIT.html b/clones/lisp/www.cliki.net/XIT.html deleted file mode 100644 index b6e5af09..00000000 --- a/clones/lisp/www.cliki.net/XIT.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: XIT - - - - - - - -
    XIT
    A graphics toolkit from the University of Stuttgart which provides an object-based interface to the X11 window system, based on CLX and CLUE. It doesn't seem to be maintained, and has some stipulations in the license worth noting. XIT is available from the AI repository: http://www.cs.cmu.edu/afs/cs/project/ai-repository/ai/lang/lisp/gui/xit/


    -CMU AI Repository
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/XL-Wiki.html b/clones/lisp/www.cliki.net/XL-Wiki.html deleted file mode 100644 index f1149a3f..00000000 --- a/clones/lisp/www.cliki.net/XL-Wiki.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: XL-Wiki - - - - - - - -
    XL-Wiki
    XL-Wiki is a fork of CL-Wiki that aims to allow applications to modify and extend its functionality in interesting ways. As a stand-alone wiki package, the differences between XL-Wiki and CL-Wiki are minimal.

    XL-Wiki is being developed by Sunil Mishra.

    Repository: https://github.com/MBcode/sfmishras/tree/master/xl-wiki

    License: LLGPL

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/XML-RPC.html b/clones/lisp/www.cliki.net/XML-RPC.html deleted file mode 100644 index 2569cea3..00000000 --- a/clones/lisp/www.cliki.net/XML-RPC.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: XML-RPC - - - - - - - -
    XML-RPC
    XML-RPC is a remote procedure call system using HTTP requests carrying XML data in distributed systems. There are two free implementations of XML-RPC in Common Lisp.

    Chris Double wrote a client library that is now a part of Corman Lisp, but a version adapted by Eric Marsden for CMUCL and CLISP is available from http://emarsden.chez.com/downloads/.

    A second implementation for a variety of Common Lisp implementations is S-XML-RPC.

    A third implementation tested with SBCL but should work with others supported by its dependencies is rpc4cl.

    There is some documentation, pertaining to other-language software and XML-RPC—possibly, would be helpful, for an introduction about XML-RPC—for example: XML-RPC HOWTO.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/XML.html b/clones/lisp/www.cliki.net/XML.html deleted file mode 100644 index 2b2f9615..00000000 --- a/clones/lisp/www.cliki.net/XML.html +++ /dev/null @@ -1,221 +0,0 @@ - - - - - CLiki: XML - - - - - - - -
    XML
    The eXtensible Markup Language

    Misc

      -
    • -CLOCC comes with an XML parser in CLOCC/CLLIB/xml.lisp
    • -
    • The Wilbur RDF toolkit (Sourceforge page) in Common Lisp is available -... though it's worth noting that Wilbur is an RDF toolkit, not an XML toolkit—it just happens that it can read RDF/XML, an XML serialisation of RDF.
    • -

    See also

    Other Lisp Markup Languages

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/XMLS-Tools.html b/clones/lisp/www.cliki.net/XMLS-Tools.html deleted file mode 100644 index a698d6a5..00000000 --- a/clones/lisp/www.cliki.net/XMLS-Tools.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: XMLS-Tools - - - - - - - -
    XMLS-Tools
    xmls-tools is a library to supplement use of xmls. It includes support for parsing with side effects, searching and validating XML. It includes an example side effect parser in the form of a XHTML to text converter.

    xmls-tools was written by Robert Marlow.

    Download xmls-tools from http://www.bobturf.org/software/xmls-tools/

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/XMLS.html b/clones/lisp/www.cliki.net/XMLS.html deleted file mode 100644 index 30a52cec..00000000 --- a/clones/lisp/www.cliki.net/XMLS.html +++ /dev/null @@ -1,60 +0,0 @@ - - - - - CLiki: xmls - - - - - - - -
    xmls
    Xmls is a small, simple, non-validating XML parser for Common Lisp. It's designed to be a self-contained, easily embedded parser that recognizes a useful subset of the XML spec. It provides a simple mapping from xml to lisp s-expressions and back.

    Features from the readme: -

      -
    • Free (BSD license).
    • -
    • Small and easily embedded. The entire parser is contained in one file and it's currently less than 1000 lines of code. Xmls is written in pure lisp and requires no external parsing tools or foreign libraries.
    • -
    • -Threadsafe.
    • -
    • Understands enough of the xml spec to parse many common documents, including those occurring in common internet protocols like xml-rpc, webdav, and BEEP.
    • -
    • Serializes s-expr list structures back to xml as well as parsing xml.
    • -
    • Parses and understands xml namespaces.
    • -

    More information is available on the xmls homepage.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/XMLisp.html b/clones/lisp/www.cliki.net/XMLisp.html deleted file mode 100644 index 6baf4b56..00000000 --- a/clones/lisp/www.cliki.net/XMLisp.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: XMLisp - - - - - - - -
    XMLisp
    XMLisp uses CLOS and the MOP in such a way as to read XML files into Lisp objects.

    Paper: https://www.cs.colorado.edu/~ralex/papers/PDF/X-expressions.pdf

    Repository: https://github.com/seanjensengrey/xmlisp

    -XMLisp is the integration of Lisp with XML. The Lisp Meta Object Protocol is used to establish a simple and highly efficient mapping between CLOS objects and the XML extensible markup language. It is not just an API to read XML files and turn them into some Lisp flavored representation. Instead, it integrates Lisp and XML into one environment at two levels. At a language level it allows the arbitrary combination of Lisp expressions and XML elements. CLOS objects can be printed as XML elements. XML elements evaluate into CLOS objects. At a tool level XMLisp allows users to fluidly experiment with XML. Type XML elements into the Lisp listener. Evaluate complete or parts of hierarchical XML elements. Inspect complex XML elements using the inspector. Get support from symbol completion when editing XML.

    XMLisp works on the following systems: -MCL 5, 5.1, LispWorks 4.3, OpenMCL 0.13.2, SBCL

    Note that I had to change the end-of-line markings to get it to work with SBCL on linux -Dave Watson

    Do a 'perl -pi -e "s/\cM/\n/g" ' on each file. This will change ^M into Unix \n and xmlisp runs well on Linux/sbcl Oli Buechel. Or simply use dos2unix command - Marko Kocic

    - this is not necessary with version 3.0.3, but for this version you will need the package.lisp from the version 2.3-zipfile - Eirik Mikkelsen

    Does the package have an owner? There's no contact information to be found in the zip file. -Thom Goodsell

    Dr. Alexander Repenning http://www.cs.colorado.edu/~ralex/

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/XPATH.html b/clones/lisp/www.cliki.net/XPATH.html deleted file mode 100644 index 7214ad3e..00000000 --- a/clones/lisp/www.cliki.net/XPATH.html +++ /dev/null @@ -1,60 +0,0 @@ - - - - - CLiki: XPATH - - - - - - - -
    XPATH
    XPath is a query language for selecting nodes from an XML document.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/XPath.html b/clones/lisp/www.cliki.net/XPath.html deleted file mode 100644 index 7214ad3e..00000000 --- a/clones/lisp/www.cliki.net/XPath.html +++ /dev/null @@ -1,60 +0,0 @@ - - - - - CLiki: XPATH - - - - - - - -
    XPATH
    XPath is a query language for selecting nodes from an XML document.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/XXTEA.html b/clones/lisp/www.cliki.net/XXTEA.html deleted file mode 100644 index b222517d..00000000 --- a/clones/lisp/www.cliki.net/XXTEA.html +++ /dev/null @@ -1,192 +0,0 @@ - - - - - CLiki: XXTEA - - - - - - - -
    XXTEA
    XXTEA is an encryption algorithm, first introduced in 1998, which is relatively easy to implement. Unlike many block ciphers, XXTEA has a variable block size. (For example, the original Tiny Encryption Algorithm works on 64-bit blocks, as does SAFER.) This page gives Lisp code for XXTEA as an example of bit bashing in CL, particularly with type and optimize declarations.

    The algorithm

    This implementation (by David Mullen) is released under an Apache 2 license. It's translated from the C implementation, with the Lisp version being more verbose, but not much harder to follow. There are few things to note. For one, C's overflow/underflow doesn't come into play here, so we have to explicitly constrain each result to a 32-bit unsigned integer (the element of a block). -Secondly: %xxtea-encrypt and %xxtea-decrypt both operate destructively on the input block, and are compiled with zero safety—which disables argument count checking, as well as type checks. And finally: type declarations are made with the hope that each intermediate result will fit in a fixnum (which is the case in a 64-bit Lisp). This code has been tested with CCL, SBCL, and CLISP.

    (defconstant +xxtea-delta+ #x9E3779B9 - "32-bit constant for XXTEA cipher.") - -(defmacro %xxtea-mx (p &aux (p-remainder `(logand (the fixnum ,p) 3))) - `(macrolet ((%xor (u1 u2) `(the (unsigned-byte 48) (logxor ,u1 ,u2)))) - (%xor (+ (%xor (ash z -5) (ash y 2)) (%xor (ash y -3) (ash z 4))) - (+ (%xor sum y) (%xor (aref key (%xor ,p-remainder e)) z))))) - -(defmacro %xxtea-rounds (block-size) - ;; TRUNCATE should be fixnum-optimized. - `(+ 6 (the (unsigned-byte 16) - (truncate 52 ,block-size)))) - -(defmacro with-u32 ((word place) &body body) - "Helper macro for 32-bit modular arithmetic." - `(let ((,word (the (unsigned-byte 32) ,place))) - (declare (type (signed-byte 48) ,word)) - ;; Temporary word is signed so we can subtract. - ,@body (setf ,place (ldb (byte 32 0) ,word)))) - -(defun %xxtea-encrypt (v n key) - (declare (optimize (safety 0) (speed 3))) - (declare (type (simple-array (unsigned-byte 32) (*)) v)) - (declare (type (simple-array (unsigned-byte 32) (4)) key)) - (declare (type (integer 0 (#.array-total-size-limit)) n)) - (loop with z of-type (unsigned-byte 32) = (aref v (1- n)) - with sum of-type (unsigned-byte 48) = 0 - with e of-type (unsigned-byte 32) = 0 - with y of-type (unsigned-byte 32) = 0 - with rounds fixnum = (%xxtea-rounds n) - do (incf sum +xxtea-delta+) - (setq e (logand (ash sum -2) 3)) - (loop for p fixnum below (1- n) - do (setq y (aref v (the fixnum (1+ p)))) - (setq z (with-u32 (word (aref v p)) - (incf word (%xxtea-mx p))))) - ;; Extension of inner loop, - ;; effectively with p = n-1. - (setq y (aref v 0)) - (setq z (with-u32 (word (aref v (1- n))) - (incf word (%xxtea-mx (1- n))))) - ;; Used a LOOP REPEAT clause, but CCL made - ;; more inline code (for generic arithmetic). - do (decf rounds) - until (zerop rounds) - finally (return v))) - -(defun %xxtea-decrypt (v n key) - (declare (optimize (safety 0) (speed 3))) - (declare (type (simple-array (unsigned-byte 32) (*)) v)) - (declare (type (simple-array (unsigned-byte 32) (4)) key)) - (declare (type (integer 0 (#.array-total-size-limit)) n)) - (loop with y of-type (unsigned-byte 32) = (aref v 0) - with rounds of-type (unsigned-byte 16) = (%xxtea-rounds n) - with sum of-type (unsigned-byte 48) = (* rounds +xxtea-delta+) - with z of-type (unsigned-byte 32) = 0 - with e of-type (unsigned-byte 32) = 0 - do (setq e (logand (ash sum -2) 3)) - (loop for p fixnum downfrom (1- n) above 0 - do (setq z (aref v (the fixnum (1- p)))) - (setq y (with-u32 (word (aref v p)) - (decf word (%xxtea-mx p))))) - ;; Same as the inner loop, - ;; effectively with p = 0. - (setq z (aref v (1- n))) - (setq y (with-u32 (word (aref v 0)) - (decf word (%xxtea-mx 0)))) - ;; ROUNDS is the loop count. - do (decf sum +xxtea-delta+) - when (zerop sum) return v))

    Base24 encoding

    Base24 is a binary-to-text encoding designed for data with 32-bit alignment, which makes it a good fit for XXTEA output (and the encoding overhead is the same as Base36, i.e. seven digits per 32-bit word). These low-level functions can be used to implement functions that encrypt and decrypt strings, representing the encrypted data as Base24 encoded text.

    (define-symbol-macro +base24+ - "ZAC2B3EF4GH5TK67P8RS9WXY") - -(defmacro %base24 (char) - `(the (integer 0 (24)) - (or (position ,char +base24+ :test #'char-equal) - (error "Not a Base24 character: ~S." ,char)))) - -(defun %parse-base24 (string offset) - (declare (type (integer 0 (#.array-total-size-limit)) offset)) - (declare (optimize (safety 0) (speed 3)) (type string string)) - (loop with value of-type (unsigned-byte 32) = 0 - for i fixnum from offset below (+ offset 7) - for char of-type character = (char string i) - do (setq value (+ (* value 24) (%base24 char))) - finally (return value))) - -(defun %write-base24 (string offset value) - (declare (optimize (safety 0) (speed 3))) - (declare (type (integer 0 (#.array-total-size-limit)) offset)) - (declare (type (unsigned-byte 32) value) (type string string)) - (loop with digit-value of-type (integer 0 (24)) = 0 - for i of-type fixnum downfrom (+ offset 6) downto offset - do (setf (values value digit-value) (truncate value 24)) - (setf (schar string i) (schar +base24+ digit-value))))

    String encryption/decryption

    (defparameter *default-key* - (coerce '(897790353 1070388493 2487796323 830006950) - '(simple-array (unsigned-byte 32) (4)))) - -(defun make-block (block-size &key (element-type '(unsigned-byte 32))) - (make-array block-size :initial-element 0 :element-type element-type)) - -(defun encrypt-string (string &optional (key *default-key*)) - (check-type key (simple-array (unsigned-byte 32) (4))) - (let* ((n (max 2 (ceiling (length string) 4))) (v (make-block n))) - (loop for char across string for i fixnum below (length string) - for j fixnum = (ash i -2) for k = (* 8 (logand i 3)) - do (setf (ldb (byte 8 k) (aref v j)) (char-code char))) - ;; Make base24 encoding of the encryption. - (loop with b24-string = (make-string (* n 7)) - for offset of-type fixnum from 0 by 7 - for word across (%xxtea-encrypt v n key) - do (%write-base24 b24-string offset word) - finally (return b24-string)))) - -(defun decrypt-string (string &optional (key *default-key*)) - (check-type key (simple-array (unsigned-byte 32) (4))) - (let* ((n (/ (length string) 7)) (v (make-block n))) - (loop for offset of-type fixnum below (* n 7) by 7 - for coded-word = (%parse-base24 string offset) - for i of-type fixnum upfrom 0 - do (setf (aref v i) coded-word) - finally (%xxtea-decrypt v n key)) - (with-output-to-string (string-stream) - (loop with octets fixnum = (ash n 2) - for i fixnum from 0 below octets - for j fixnum = (ash i -2) - for k fixnum = (* 8 (logand i 3)) - for code fixnum = (ldb (byte 8 k) (aref v j)) - until (eql code 0) ; Zero is the padding code. - do (write-char (code-char code) string-stream)))))

    Quick test

    Here a string is encrypted three times, using the default encryption key (*default-key*) that was defined above, for testing purposes:

    ? (encrypt-string "X Marks the Spot") -"FWFRZ4ZBWRBEZGW2X5RTA79HR58T" -? (encrypt-string *) -"6ESFY5XPR5ATR9KSKC8E8APHB9BYF6PYWHTPTS674RGYGR583" -? (encrypt-string *) -"TB6AFKCCBHKH7CSHRBB2BT35596KE57Y4T5TSX4CFFEG6S6T7RG8467Y39T2E3AHKE7G6WCR7BG87H6BKZEP4PKAGYA" -? (decrypt-string *) -"6ESFY5XPR5ATR9KSKC8E8APHB9BYF6PYWHTPTS674RGYGR583" -? (decrypt-string *) -"FWFRZ4ZBWRBEZGW2X5RTA79HR58T" -? (decrypt-string *) -"X Marks the Spot"

    Note how each layer of encryption nearly doubles the size of the string, due to the overhead of Base24 in representing 32-bit raw data. Also observe that the encrypt-string function encrypts ASCII strings. These cannot have embedded nulls, as the data block being encrypted (or decrypted) is zero-padded with 32-bit alignment. For extra credit, consider how to represent arbitrary byte vectors (or Unicode strings) in encrypted form.


    -Cryptography
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Xelf.html b/clones/lisp/www.cliki.net/Xelf.html deleted file mode 100644 index b02e0065..00000000 --- a/clones/lisp/www.cliki.net/Xelf.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: xelf - - - - - - - -
    xelf
    Xelf is a simple 2-D game engine for Common Lisp.

    Author: David O'Toole

    License: LGPL


    -graphics library
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/YAML.html b/clones/lisp/www.cliki.net/YAML.html deleted file mode 100644 index ae17e288..00000000 --- a/clones/lisp/www.cliki.net/YAML.html +++ /dev/null @@ -1,62 +0,0 @@ - - - - - CLiki: YAML - - - - - - - -
    YAML
    Yet Another Markup Language:

      -
    • -cl-yaclyaml - - Yet Another Common Lisp YAML processor -
    • -
    • -cl-yaml - - A YAML parser and emitter built on top of libyaml -
    • -
    -
    -configuration
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/YASON.html b/clones/lisp/www.cliki.net/YASON.html deleted file mode 100644 index 4949d5f8..00000000 --- a/clones/lisp/www.cliki.net/YASON.html +++ /dev/null @@ -1,116 +0,0 @@ - - - - - CLiki: YASON - - - - - - - -
    YASON
    YASON is a Common Lisp library for encoding and decoding data in the JSON interchange format. JSON is used in AJAX applications as a lightweight alternative to XML. YASON has the sole purpose of encoding and decoding data and does not impose any object model on the Common Lisp application that uses it.

    Documentation

    - The current documentation lives at Github.

    Mapping between JSON and CL datatypes

    By default, YASON performs the following mappings between JSON and CL datatypes:

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    JSON
    datatype
    CL
    datatype
    Notes
    objecthash-table
    :test #'equal
    - Keys are strings by default, - see *parse-object-key-fn* -
    arraylist - Can be changed to read to vectors, - see *parse-json-arrays-as-vectors* -
    stringstring - JSON escape characters are recognized upon reading. - Upon writing, known escape characters are used, but - non-ASCII Unicode characters are written as is. -
    numbernumber - Parsed with READ, printed with PRINC. This is not a - faithful implementation of the specification. -
    truetCan be changed to read as TRUE, see *parse-json-booleans-as-symbols*
    falsenilCan be changed to read as FALSE, see *parse-json-booleans-as-symbols*
    nullnil

    Parsing JSON data

    JSON data is always completely parsed into an equivalent in-memory representation. Upon reading, some translations are performed by default to make it easier for the Common Lisp program to work with the data; see mapping for details. If desired, the parser can be configured to preserve the full semantics of the JSON data read.

    Encoding JSON data

    - YASON provides for two distinct modes to encode JSON data: - Applications can either create an in memory representation of the - data to be serialized, then have YASON convert it to JSON in one - go, or they can use a set of macros to serialze the JSON data - element-by-element, thereby having fine grained control over the - layout of the generated data.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/YHTML-TEMPLATE.html b/clones/lisp/www.cliki.net/YHTML-TEMPLATE.html deleted file mode 100644 index 16f4d2c5..00000000 --- a/clones/lisp/www.cliki.net/YHTML-TEMPLATE.html +++ /dev/null @@ -1,96 +0,0 @@ - - - - - CLiki: YHTML-TEMPLATE - - - - - - - -
    YHTML-TEMPLATE
    YHTML-Template is an HTML template library based on Edi Weitz's HTML-TEMPLATE. It was written by Dmitri Ivanov.

    License: LLGPL

    Homepage: http://lisp.ystok.ru/yhtml/html-template.html.

    YHTML-Template is a part of YstokHTML collection. It accepts more "Lispy" expressions and provides the following extensions to the original HTML-TEMPLATE code.

      -
    1. A Lisp form in place of "plane attribute" is allowed. - Forms are read by the standard read function. - All starting tags (except
    2. -
    TMPL_INCLUDE) accept forms - instead of "old style" attributes.

    The *attributes-are-lisp-forms* special variable was introduced. - Bind or set it to NIL to treating those tags in the compatibility mode.

  • Symbols follow standard Lisp syntax: a package specifier is allowed - in front of the name. By default, symbols are interned into the - package stored in *template-package*, a new special variable. -
  • -
  • To interpret the forms in run-time, the
  • template-eval was introduced. - It is a simple evaluator akin to the standard eval function except for: -
      -
    • A limited number of special-forms is supported, namely: -
    • -
    IF WHEN UNLESS AND OR NOT QUOTE. -
  • The symbol with a name like *var* is treated as a dynamic variable - and is retrieved via
  • symbol-value. -
  • The values of other symbols are looked up via *value-access-function*. - -
  • The
  • TMPL_EVAL tag and create-eval-printer were introduced; - the former should be used instead of the TMPL_VAR tag.

  • The value of
  • *format-non-strings* has got an additional meaning. - If it equals to T, the result is produced by means of - princ-to-string, i.e. (format nil "~A" ...).
    - If it is true but not equals to T, the value must be a single-parameter - function, which returns two values:
    - (1) a string resulted from its argument, and optionally
    - (2) do-not-modify flag controlling whether *string-modifier* - is applied afterwards.
    - The truth as second value can prevent the result of converting - from predefined format, e.g. LHTML, from further escaping.

  • Tag
  • TMPL_ELSE and all ending tags /TMPL_... can -embed an optional text - between the tag name and the closing marker "-->". This text is intended - for readability only and completely ignored by the template parser. - For example: <!-- /TMPL_LOOP rows -->

  • The
  • TMPL_ELIF tag was introduced to allow - a more concise code. In full, now the "if" pattern looks like: -
    -!-- TMPL_IF condition_1 --
    -text_1
    -!-- TMPL_ELIF condition_2 --
    -text_2
    - ...
    -!-- TMPL_ELSE --
    -text_else
    -!-- /TMPL_IF --
    -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/YHTML-Template.html b/clones/lisp/www.cliki.net/YHTML-Template.html deleted file mode 100644 index 16f4d2c5..00000000 --- a/clones/lisp/www.cliki.net/YHTML-Template.html +++ /dev/null @@ -1,96 +0,0 @@ - - - - - CLiki: YHTML-TEMPLATE - - - - - - - -
    YHTML-TEMPLATE
    YHTML-Template is an HTML template library based on Edi Weitz's HTML-TEMPLATE. It was written by Dmitri Ivanov.

    License: LLGPL

    Homepage: http://lisp.ystok.ru/yhtml/html-template.html.

    YHTML-Template is a part of YstokHTML collection. It accepts more "Lispy" expressions and provides the following extensions to the original HTML-TEMPLATE code.

      -
    1. A Lisp form in place of "plane attribute" is allowed. - Forms are read by the standard read function. - All starting tags (except
    2. -
    TMPL_INCLUDE) accept forms - instead of "old style" attributes.

    The *attributes-are-lisp-forms* special variable was introduced. - Bind or set it to NIL to treating those tags in the compatibility mode.

  • Symbols follow standard Lisp syntax: a package specifier is allowed - in front of the name. By default, symbols are interned into the - package stored in *template-package*, a new special variable. -
  • -
  • To interpret the forms in run-time, the
  • template-eval was introduced. - It is a simple evaluator akin to the standard eval function except for: -
      -
    • A limited number of special-forms is supported, namely: -
    • -
    IF WHEN UNLESS AND OR NOT QUOTE. -
  • The symbol with a name like *var* is treated as a dynamic variable - and is retrieved via
  • symbol-value. -
  • The values of other symbols are looked up via *value-access-function*. - -
  • The
  • TMPL_EVAL tag and create-eval-printer were introduced; - the former should be used instead of the TMPL_VAR tag.

  • The value of
  • *format-non-strings* has got an additional meaning. - If it equals to T, the result is produced by means of - princ-to-string, i.e. (format nil "~A" ...).
    - If it is true but not equals to T, the value must be a single-parameter - function, which returns two values:
    - (1) a string resulted from its argument, and optionally
    - (2) do-not-modify flag controlling whether *string-modifier* - is applied afterwards.
    - The truth as second value can prevent the result of converting - from predefined format, e.g. LHTML, from further escaping.

  • Tag
  • TMPL_ELSE and all ending tags /TMPL_... can -embed an optional text - between the tag name and the closing marker "-->". This text is intended - for readability only and completely ignored by the template parser. - For example: <!-- /TMPL_LOOP rows -->

  • The
  • TMPL_ELIF tag was introduced to allow - a more concise code. In full, now the "if" pattern looks like: -
    -!-- TMPL_IF condition_1 --
    -text_1
    -!-- TMPL_ELIF condition_2 --
    -text_2
    - ...
    -!-- TMPL_ELSE --
    -text_else
    -!-- /TMPL_IF --
    -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/YTools.html b/clones/lisp/www.cliki.net/YTools.html deleted file mode 100644 index 653e2a71..00000000 --- a/clones/lisp/www.cliki.net/YTools.html +++ /dev/null @@ -1,56 +0,0 @@ - - - - - CLiki: YTools - - - - - - - -
    YTools
    YTools is a set of utilities that enhance or replace many Lisp facilities, such as the awful 'loop' and the hideous 'format'.

    It is the work of Drew McDermott, although many of its facilities are descendants of tools described in

    Eugene Charniak, Christopher Riesbeck, Drew McDermott and James Meehan 1987 Artificial -Intelligence Programming, (2nd edition)}}. Lawrence Erlbaum Associates

    The latest stable version (from 2006) is found at his Yale web page . The latest (not necessarily -improved) version is available from Clocc.

    The latest version should be possible to download by using repository -clocc.cvs.sourceforget.net:/cvsroot/clocc and checking out clocc/src/ytools.

    The documentation (over 50 pages long) is -available separately. -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Yakov Zaytsev.html b/clones/lisp/www.cliki.net/Yakov Zaytsev.html deleted file mode 100644 index 65fed823..00000000 --- a/clones/lisp/www.cliki.net/Yakov Zaytsev.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Yakov Zaytsev - - - - - - - -
    Yakov Zaytsev
    I'm a Person. Lisp programs make money for me. :-P

    I run mostly LispWorksACL, Emacs and SLIME, and Clozure Common Lisp (CCL) on my MacSony Vaio X.

    I qualify to be part of the YoungLispers

    During the day, I'm a Objective-C and C++Erlang, Haskell whatever developer for a telecom company

    I can be reached via zaytsev (dot) yakov (at) gmail (dot) com

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Yale Haskell.html b/clones/lisp/www.cliki.net/Yale Haskell.html deleted file mode 100644 index 42d0fc54..00000000 --- a/clones/lisp/www.cliki.net/Yale Haskell.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Yale Haskell - - - - - - - -
    Yale Haskell
    Yale Haskell is an early (1993) implementation of the Haskell programming language in Common Lisp.

    Available from the CMU AI repository: http://www.cs.cmu.edu/afs/cs/project/ai-repository/ai/lang/lisp/code/syntax/haskell/0.html

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Yarden Katz.html b/clones/lisp/www.cliki.net/Yarden Katz.html deleted file mode 100644 index 6472bf3d..00000000 --- a/clones/lisp/www.cliki.net/Yarden Katz.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Yarden Katz - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/YoungLispers.html b/clones/lisp/www.cliki.net/YoungLispers.html deleted file mode 100644 index cd0af5b1..00000000 --- a/clones/lisp/www.cliki.net/YoungLispers.html +++ /dev/null @@ -1,159 +0,0 @@ - - - - - CLiki: YoungLispers - - - - - - - -
    YoungLispers
    Lisp is not just your grandpa's language. There's plenty of young blood. If you consider yourself young, why not add a blurb telling how you got into lisp and free software

    Bo Yao, born 1995, alias ailisp or icerove -Start serious Lisp Development since 2016 and I am so happy with Common Lisp that I never want to write hobby projects in other languages. I'd like to learn and cooperate with other Lispers to do something amazing.

    Yash Tulsyan, born 1996, alias yasht or Cosman246 -College student (interested in Linguistics and CS; wants to be an AI researcher); Seattlite. Free Software and LISP fanboy, has been LISPing seriously since 2011. -When I decided to teach myself to program, I didn't know where to start. I tried toying with Python for a while, but when I learned of being able to use Lisp to write programs that write programs, and when I saw the pleasant syntax, I decided to learn it. I have never regretted it. In fact, I love it now, to the point where I have tried to evangelize it.

    Robert Smith, aka Quadrescence -I'm a professional Common Lisp hacker in my 20s working in forensic data and biometrics. I first started programming by writing a formula to compute pi on an Apple //e given to me as a gift (at this time, we had a Pentium III, but I didn't know that was programmable). After a while, I found Lisp, and use it to program in my spare time and non-spare time. I like writing mathematical libraries most.

    Flavio Egoavil, 1981, alias defunkydrummer

    After starting at 7 years old and going through Logo, Basic, C, Pascal, C++, Assembly, Delphi, Java, C#, Javascript, Python, I recalled Greenspun's 10th Rule:

    Any sufficiently complicated C or Fortran program contains an ad-hoc, informally-specified, bug-ridden, slow implementation of half of Common Lisp.

    ... and decided to learn CL in 2017. I consider it the only truly professional language i've used; although i am already trying a bit of F#/ML and I consider that one a very good one too, albeit completely opposite to the Lisp philosophy.

    I have written some Common Lisp libraries, see my github.

    -Scott Talafuse -I was introduced to LISP by joelh in 1993, and the guy just wouldn't stop talking about it. At the time, I wrote off his exhuberance out of ignorance. Now, all I want to do is eat, breathe and sleep LISP. Thank you, joelh; I should have taken more effort to understand you back in 1993. Oh, and free software FTW.

    Harrison Houghton -As far as programming languages go, LISP was incredibly fun but seemed rather useful. I used Java and C for most of what I did. Then, writing a web site, I found Hunchentoot and CL-WHO. This was possibly one of the most wonderful things that has ever happened to me with respect to programming. I now use CL for almost everything. Kudos to Church and McCarthy, of course. Mathematically this is the most sensical language I've ever seen. The only downside is that I use function pointers way too much in C.

    Dennis M Senyonjo -Common Lisp was my first programming language hence she really spoiled me. 25 years old at the last count, dated a few others..the usual C++,Python...for the last few years Erlang, but even she has resigned herself to the fact that you have my heart Cl.

    Paul Hobbs
    -Born in '89. Addicted to Emacs. Lisp is simply beautiful.

    Wojciech Gac
    -Born in '86 in Poland. I didn't start programming until second year of university (I missed out on the opportunity to hack C64 BASIC as a child, which I sometimes regret :) ). At first it was nasty C++ (not the best first language, I guess) and some rudimentary shell scripting. Then, while reading Penrose's "The Emperor's New Mind", I came across this 'esoteric' language... LISP. Initially I approached it from a more academic point of view, reading stuff about lambda calculus, Alonzo Church, etc., next came Seibel's "Practical Common Lisp" and then I found Paul Graham's website, which further whetted my appetite. I started using Emacs full-time, and have since vigorously opposed adopting "more modern IDEs". In 2011 I read Levy's "Hackers" and it marked the beginning of my fascination with Lisp Machines and the quest for modelling the real world inside a computer. I run an emulated Open Genera inside a VM, use StumpWM as my primary graphical environment (after realizing how much trying to emulate Winblow$ is not the way to go), got even more enamored with Emacs and partly switched to Conkeror. I dream of a world in which superior technical solutions get the upper hand by the sheer power of their expressiveness and despite distracting marketing, brainwashing otherwise intelligent people. I dream of a world, in which one has immediate access to the source code of the universe and can force reality to obey him. I found something like that in Lisp and hope for an exciting future. -

    Nikhil ('minimally' proud)
    -Emacs got me in. C had me to a large extent. Also C++, Java, Python, Perl, PHP (the " popular ones "). Embedded systems and soft AI in an earlier life. Now in VR and Viz. Common Lisp just makes sense (We'll actually Lambda calculus). Salutes Alanzo Church, John Mc'Carthy et,al. that followed. -

    -Felix
    -Born in '89. I like reasoning about programs and fell in love with Scheme some time ago. Common Lisp is still my language of choice for projects requiring performance. Vim user and proud of it. -

    -Vijay
    -Am Vijay and have been reading and practicing lisp for around 2 years now. Its been a great thing to work with it than most of the languages that I have worked on working now (C, C++, java, Perl, Prolog). Am working on an inference engine and web mining utility using lisp. Am learning and reasearching of common sense reasoning implementations in computers using lisp. -
    -Ashok Gautham J (a.k.a ScriptDevil) -I was born on the 19th of April 1989 in chennai, India. In India, we are taqught C/C++/Java at school and college. My first brush with other languages was Perl. A better C i thought. then came in Python.. hmm.. better.. but something was missing. Then Ruby.. This was home i thought. but soon i read ruby was an acceptable lisp. I knew basic elisp because i use emacs for almost everything. I thought, if one can create Emacs(THE EDITOR!) using Lisp, and if RMS(THE GOD!) uses CLisp(or atleast its dialect), it must be the divine tongue... And lisp was not to disappoint. The right amount of geekiness and smoothness garnished with the beauty of the program (parans make it so pretty... ) I love it.. i am gonna teach even my granchildren lisp. If you cant do it on lisp.... it is not worth doing it !!! SBCL +Slime + Emacs >>>>>>>>>>>>>>>>>>> .Net -i love you lisp
    -Paul Driver -Born in 1984, first programming language was BASIC on the C64 (and Apple IIe). -Picked up a smattering of C in high school, wrote no real programs until I went to community college. They taught me VB.NET, Java, C#, some C++, some x86 assembly. I swore off VB as soon as possible, did some C# and Java for a while, -then learned pure-C Win32. Programmed random things in C (little win32 utils, hacked a couple of circle muds) till I went to my current University. Switched to Linux, picked up some Paul Graham and looked very hard at CL. Found recently that I like Scheme better, and am currently exploring the Chicken implementation. I doubt I'll ever go back to C for a language to think in, although it makes a good language for hacking Unix. :-)

    Sven Klose

    Born in 1975 I started programming in 1986. 2003 I quit my job because I was fed up with about all stuff commn in trade. Spring 2005 I succubed into LISP as I was brainwashed by friends. Thank God!

    Jay Ilustre -21 years of age, college student. LISP is my 4th and final programming language (previous languages in order include vb, php, vb.net, c++ and lastly c#)...there is no other comparison. I've been programming with lisp for about a 2 weeks now. I've already spent 160-180hrs studying/reading/programming. I use clisp in emacs...currently i think it awesome but i'm keeping my eye open. The projects I have in mind with CL is in the scope of data mining/text mining...more specifically literature based knowledge discovery. I also can't count/do basic math.

    Jason Wang -Started lisp abotu 4 monthes ago :D Being hacking away at it ever since.. planning to write something big soon :D I'm currently 16 years old, and started programming at around 2000 with QBasic.. i live in Toronto, well.. have a Great day :D

    -Nikodemus Siivola

    1996 - 2002 -: Scheme

    2002 - present -: Common Lisp

    Hack ugly languages for food.

    Brian Mastenbrook

    Guess I should update this - I'm now a first year PhD student at Indiana University Bloomington. I've done various work on porting SBCL to OS X, have been able to churn out a fair number of publications due to my CL source, and wrote cl-menusystem to make it easier to control / demonstrate research systems like my own. (Choosing a number looks a lot better in a demo than wildly typing sexprs and getting the debugger when you mistype a package!)

    I have a page at http://www.cs.indiana.edu/~bmastenb/. It's nothing exciting.

    -David McCabe

    I'm 15 and I'm addicted to lisp. I'm coming from python, then Objective-C before -that, and further back C++ and Java. Every time I have to work on one of my -python projects, I soon get frustrated by the inability to write a macro -or to, for instance, nest an (if) or a (mapcar) inside of my expressions. -In my non-spare time I do that belittling, brain-drizzling and mostly useless thing they call high-school

    Yarden Katz

    I'm 18 and live a crazy life (born 1985). I've been working for MINDSWAP for about a year now, writing Common Lisp code. I blame it on comp.lang.lisp, Erik Naggum, Bijan Parsia, Paul -Graham and Emacs. (p.s. I use Allegro 'cause it rawks)

    Lyn Headley

    Hello, I'm 25 and get paid to write Common Lisp from my home in Xalapa, Mexico, by onShore Development . Common Lisp was my 12th and last language. I have finally found what i'm -looking for. Now I can concentrate on coding crazy lisp systems. My medium term goal is unifying and understanding the lisp FS community through the community empowerment and understanding software that I'm in the process of writing. My first memory of the existence of free software was "wow, this emacs thing looks complicated." I think that was in 1995.

    Peter Van Eynde

    I was born in 1973 and got paid to write Common Lisp programs. I hope to do it again in the future... I first got into contact with lisp via an obsure program on my brothers Atari ST that only offered '?' as the prompt and as the only error message. Via clips and the MMA language I finally reached nirvana. My goal in hacking Lisp is to take the poor students that have to "study" Lisp into the 90's and give them something more to interact with than read and princ. Ideally I want to create and easy-to-use, web-enabled interface in which they can quickly write their own little pages that read user input and present data in a meaningfull way. McCLIM seems like a giant step in the right direction :-).

    -Daniel Barlow

    I blame Emacs and the Unix-Haters' Handbook.

    Jochen Schmidt

    Born in 1978 I found to Lisp many years later while fiddling around with my Emacs. I've started programming with m68k ASM on my good ol' Amiga. Later I learned C and then C++

    -which I used several years then. Before finding Lisp I began to realize how suboptimal the language C++ and even the common OSs like UNIX, Windows or Mac are. I had endless discussions with a friend that came to the same conclusion - so we decided to design and build our own language and OS. Before the project really came into life I found Lisp and realized that most of the ideas we discussed lengthly was already available in it. In my freetime, besides hacking Lisp, I maintain my website http://www.dataheaven.de where you can find some of the programs that I've written.

    Tijs van Bakel

    I was born in 1977, and will probably forget to update my age here on my next birthday. My personal page may contain references to things I am working on.

    Experimenting with Linux in 1995 made me try Emacs, where I first noticed parentheses. While browsing the Tunes website, I discovered Common Lisp.

    Martin Ginkel

    I'm not so young, but 29. I'm working with CL for about 5 years now. Currently I'm hacking a modeling tool based on extended MOP and a lot of LISP classes. But for Graphics we use -Swing and dock it onto Lisp with ILU.

    Craig Brozefsky

    I was born in 1975 and have been hacking with Free Software since 1993. I got started with Lisp and its ilk around 1998 or so, starting with alot for scheme hacking to build SGML processing tools. A co-worker introduced me to CL and the rest is history. I maintain UncommonSQL and IMHO as well as some smaller packages. I'm a senior, hehe, programmer at onShore Development where I get to hack on our commercial CL application all day, WebCheckout. The nice thing is that I get to release whatever parts I factor out of the application as Free Software.

    Stig E Sandø

    My parents tell me that I was born in 75, and I've been piecing together code for some time now. I blame my Common Lisp use on Bjarne Stroustrup. C++ convinced me that there must be a Better Way and that C++ was not it. So I ended up with Lisp and most of the code I write is in Lisp these days. Of Free Software-projects I am involved with includes the roguelike Langband and SDS, both of which most of the code is in Lisp.

    Eugene Zaikonnikov

    I was born in 1977, and got attracted to CL some twenty years after. Initially, I used Lisp for semester projects due to it's 'obscurity', to discourage teachers asking too many questions on how my code works; but then found that Lisp is quite a capable instrument for real work. I run one Free Software CL project (a TrueType font renderer), still unfinished. Also, I implemented a JPEG codec library in Common Lisp (sponsored by Kelly Murray), which is now available here.

    Jens Grabarske

    I was born in 1977 too and I got involved into Lisp about 3-4 years ago. Currently I work for a company as software developer, using Lisp to develop programs for combinatorical problems and frontend tools.

    Janis Dzerins

    Born in 1976. My first exposure to Lisp was incidental in University (about 4 years ago). Haven't heard about it before then. Did not grasp what it is all about, wrote some programs in notepad for pclisp (the one instructor gave and that fitted on a single floppy). Was writing C++ programs (a big improvement comparing to database stuff I was doing before). It was fun at first, but then it got to the point I had to fight C++ to get something working and remembered Lisp. Left that company because boss refused to listen about Lisp. Now developing a search engine in Common Lisp.

    Dave Morse

    Born 1973. I was introduced to lisp at Grinnell college in Iowa, though I didn't get good until my first job, working on a huge 3d Modeller/Animator/Painter program, called Mirai. This system was 80% in Allegro Common Lisp, and that's where I spent about 4 years, fighting User Interface Wars. Since then, I've been looking for the next big thing, and wrote a game called Copter Commander, in C, but which uses Clisp for some pre distribution code generation. Right now I'm obsessed by just how much CMUCL completely kicks the butt of the ACL compiler.

    Luigi Panzeri

    I am 24 and live in Italy. I am a lisp newbie, because i only read books, no true code experience, except some scripting and web stuff. College and jobs pushed me towards C/PHP/Ruby. After i read Graham and Norvig 's books i can only say like John Fraser in c.l.l "Lisp is like the red pill". Common Lisp of course.

    Dan B

    Hey, I'm 17 and live in BC canada. I'm not a professional programmer (yet) although I might like to be after college. I'm new to lisp, and familiar with C\C++. I was interested in

    artificial intelligence and read a couple books on the *basic* theory, so I thought I'd learn lisp to play around with it, but I then found lisp was more for more than _just_ AI, and I've loved it since I started reading ANSI Common Lisp.

    Richard Krush

    Yes, I'm yet another LISP-lover. I'm 17 and pretty new to programming and computers in general (due to the lack of cheap computers in the country where I lived, I bought my first computer only in 1997). Being a C programmer (hobbyist) I somewhere found out about functional programming and Haskell in particular, from there I (following recommendations of people I greatly respect) started learning scheme, but after couple of weeks changed my focus to CL. Since then (about five months ago) I have been intensively self-studying CL.

    Johan Wärlander

    As a few others here, I'm born in 1977, and have been involved in computers one way or another since '87 or so. Around '95 I discovered Linux, and some time later had my first encounter with LISP. Being mostly into C at the time, and later C++, I didn't really 'discover' LISP until '98 or so, and now I'm finally starting to study the language in more depth. I'm completely fascinated with it, and hope to eventually use it for something significant, though currently I'm working on other projects where it's not an option right now to 'switch'.

    -Travis B. Hartwell

    Yet another born in 1977, I have been playing around with programming in some shape or form since the 4th grade. I have used and been involved with the GNU/Linux community since 1999, though I have been interested since around 1994. I'm not sure when I first got interested in Lisp, probably a few years ago. I am enamored with the language conceptually, and am growing to enjoy using it. I hope to find some project outside my AI class at school with which I can utilize CL. I also enjoy using Python and am interested in learning OCaml as well.

    Hannah Schröter

    Born 1974, for a change. Interest in many interesting languages, and thus also

    CL. No practical project experience with CL yet, though; instead have already

    done Erlang, Haskell, Ocaml, including at work.

    Perhaps some time in future, I could write more.

    Ingo Rohlfs

    I claim Lisp as the best programming language I have ever seen.

    Knut Arild Erstad

    Born 1975. I become aware of Lisp by Norwegian usenet posts (IIRC) somwhere around 1998. I was already convinced that C was really outdated, and I wasn't particularly impressed by Java or C++ either. I decided to try out Common Lisp for a thesis of mine (about L-systems), and I was hooked. CL is simply the coolest programming language I have used thus far.

    Brandon Menc

    Born in 1979.

    Chris Moline

    born in '81. I owned my first real computer at 19.a month later i installed freebsd and startet to learn c. i hated it, everything kept segfaulting and was way harder than i thought it should be. i started looking at other languages and became a language lover. i learned python and perl, ocaml, haskell and ruby. i loved ruby at first, it would have become my favorite except it had shortcomings. about this time mathieu bouchiard(sorry if i spelt your name wrong) and another guy(whose name i have forgotten. sorry) turned me onto metaprogramming and sicp. at first i wouldn't learn scheme ( i didn't like all the parentheses) but then i decided i might be missing something cool and so i swallowed my pride and learned scheme. it turned out that i loved scheme it was on my top ten list. but later on i wanted something more industrial and so here i am. cl is also on my top ten list but i am still learing it. i am hoping to write a lisp machine.

    Bruce Hauman

    OK, I was born in 69 but I'm a young programmer and I'm still an undergraduate. My instructor spoke of the wonders of this terrific language. I wasn't sure he was on the level, after all, he was using Java. But after reading SICP I started to see the light. Now I have Paul Graham's book in front of me right now. I am just in shock when I consider the many hours that people must have spent fighting C and its cousins. I love this language.

    James A Crippen

    I was born in 1979, and I've hacked Lisp since I was 12 or so. I own a Lisp Machine (Symbolics XL1200) but I'm extremely frustrated in that I don't actually get to use it for anything in Real Life. Hence I've embarked on emulating another Lispm, the TI Explorer. I respect the power of C/C++, but I still don't like it for anything except bit-bashing (like emulation!). I think Java programmers are cute, like when a little boy says he can drive because he's sat in his dad's lap and turned the wheel. It seems prophetic that even The Onion makes fun of people who program in Java.

    -Isaiah Gilliland
    - Hey I'm Isaiah, I was born in Febuary of 1989 and I live in Texas. My first touch with programing started with an obscure language called Euphoria(which I still love and want to do eventually), but I had a problem just wrapping my head around programing in general. I don't know why but I couldn't make sense of it all. So the most I created was a few "Hello World" programs. Then I got into web development so I started markup with html, and then from there Javascript was a logical next step. Eventually I wanted to learn server side scripting so I tried PHP, that left such a horrible taste in my mouth! Couldn't stand it so I looked into cgi. Tried my old friend Euphoria but had trouble setting it up. During this though, while checking out a Javascript blog, I saw a post about the "Little Schemer" and how it changes your views on programing. I really wanted to up my game so I bought all 3 at Amazon. I loved the book so looked up Scheme and then Common Lisp. I then saw that it could be used for CGI! I downloaded SBCL and already have my first CGI script up and running! I don't want to be *just* a web developer though, so I like CLs many other uses. Eventually I'd like to get into game creation with it. I think I found my home!

    Luke Gorrie

    I'm 25 at last count and lately I've started doing some lisp hacking too, it's great fun. I'm also programming in C and enjoying it :-) but I do most things with Erlang.

    Erik Enge

    Born in 1978. Common Lisp puts the fun back in my work.

    Brian P. Templeton

    I was born in 1987 and started using Lisp perhaps three or four years ago. I'm currently working mostly on hypertext-related projects.

    Ben Yogman

    I was born in 1980, first programmed in c64 command-line basic. I discovered LISP 3 years ago and have been hooked since, though I've had less chance to use it than I like because graders like languages they know (C,C++).

    I love LISP, but the non-uniformity of libraries across implementations is pretty agravating. I'm looking for an implementation with process or thread and socket support. There are some other restrictions which would be too long to inline here.

    The goal is to write a couple small muds and a protocol to make passage for characters between muds possible for characters if the dungeon masters have agreed to it. Unless I hear something pretty fast (by April 6th, 2002), I'll wind up doing this in Python, but if anyone knows about this, and in particular if they've made a server-daemon in LISP, send me an email at biy@po.cwru.edu.

    Paulo J. Matos

    For a change I'm portuguese and I was born in 1981! :) So let me remember... Hummm, it was not that long! I'm a college student at Instituto Superior Tecnico - Lisbon (Portugal) and I'm taking AI... I first got into Scheme in my first year... (two years ago...) and I started with Common Lisp a year ago (it seems to me that it was along time ago...). I always appreciated Scheme and I live Common Lisp. I have already done a couple of projects in CL for college, some extras at home and I have much more to go.

    Common Lisp is definitely THE Programming Language... Ok, so here I go byebye right now... I have pizza and coke waiting for me, time to fast-food and some Lisp... This is certaintly what life is for...

    John Wiseman

    I'm not young, but I felt the 30-and-over lispers needed to represent.

    Fare Rideau

    Born in 1973, I must hurry to put my name here before I don't qualify as Young anymore. Problem is, I'm not sure I really qualify as "Lisper". There are things I love and things I hate about the various programming languages that exist, and somehow, Lisp is the nearest thing to what I long for. So I've been interested in Lisp and related things for a long time, and still hope to build a Lisp-like system one day as the basis for TUNES. In the meantime, I've written a few small hacks in Lisp, and keep being an observer of the Lisp community. All in all, I'm definitely not a "non-Lisper", so I'm just a "non-non-Lisper", which anyone keen in constructive logic knows is weaker than a "Lisper".

    Simon Heath

    Born in 1985. Been programming since January 2002, and I'm still not too sure why I do it. I just know that I want to keep doing it, and the beautiful moments are definately worth the hair-pulling. I fell into Lisp as my second language, which then proceeded to give me rather high standards for all the other language I've learned. I've at least played with about a dozen languages total, at the moment mainly C/Objective-C, Python and Ocaml. I hate the C linker model with a passion. I dream of someday writing my own OS and language, so I can make everything work Exactly The Way I Want It.

    Tim Daly, Jr.

    I was born in 1978. I love Lisp because it gives me the feeling that the quality of my code is limited only by my own ability. I've been payed to program in C and Java. Very quickly, particularly in Java, I feel limited, like a musician who may only play notes diatonic to C. Lisp lets me express myself.

    Zachery Bir

    Not quite a YoungLisper, but neither am I that old. Currently, I'm a Python hacker by day, Lisp reader/grokker by night.

    Timmy Douglas

    Born in 1983. I am 18 now (Aug 2002) and started using free software about 4 years ago (probably around 1998), which accelerated my learning of programming languages. I started with the programming the TI-82 and then to the usual C++ before I went to highschool, then I did some stuff with scheme/common lisp, tried other languages like python, haskell, and ocaml(ocaml was probably the best of those three that I listed), and then I am currently going back to scheme and common lisp right before I head to college. My current life goals (just kidding) is to write a decent compiler, maybe become a sbcl hacker and port it to use the os-kit and maybe make an os from that. But then again, I just came up with that yesterday, it will probably change in a month. Maybe I'll get some girls in college.

    -Fabricio Chalub

    Born in 1976.

    quasi

    born '76. Learning & loving Lisp.

    -Bruce Nagel

    I began learning Common Lisp with Clisp a number of months ago, adding it to my variety of other interests (I do B/W photography and intaglio printmaking among other things). Born in the tail end of '73, learning my first programming language (slowly :-).

    I'm learning Lisp because everything else looked like gibberish (and people complain about parens! --I still think that's funny).

    Steve Dunham

    I was born in early 1973, so I'm perhaps no longer young. I've been dabbling in Lisp recently (and OCaml), but have played with Scheme and XLisp in the past. Professionally, I've only done Java, Perl, and C++, but I'd love to have a Lisp job.

    In response to Bruce's query, the page should probably be sorted by age, so they can take off of the end of the list when the time comes. :)

    -Avi Blackmore

    I was born in 1979. My first programming was in GWBasic, which I promptly loathed. I flirted briefly with Pascal, and (very) briefly with Visual Basic, before beginning college and doing a five year course of study in Computer Science. They taught me C++, C, x86 assembler, and Java, and expected me to be grateful for it. I suppose I am; now I know not to use C or assembler for things higher-level than bit-twiddling, and not to use C++ or Java for anything. :-) I also became conversant in AWK and sed while taking a course on Unix, about a year after I switched my home box to Linux exclusively.

    I found Lisp while searching for a more interesting, powerful, elegant, and fun language than the above, with less hype and overblown praise a definite plus. Perl turned me off immediately with its resemblance to line noise, lack of a real standard, and adoption of C-like syntax. Python I found very gnifty (that's a GNU nifty), but hampered by the significant whitespace problem, as well as a lack of native-code compilation. And it goes without saying that shell script is only good for...well, shell scripting.

    In Common Lisp, though, I've found several things that I wanted before, without actually knowing that I did. Dynamic code generation, lexical closures, macros, read-macros, CLOS's idea of how OOP should REALLY be...these are wonderful things! And the parentheses make a hell of a lot more sense to me than the syntactic soup you find in the above languages. I'm currently studying up very carefully, trying exercises in various books that I've found, and looking for some "medium-hard" project to try out in CL so that I can exercise my chops.

    -Andreas Fuchs

    I'm one of the few for whom the first part of this page's name applies (20 years of age), and I came to lisp through a few mad friends of mine, who showed me the cool things you could do with scheme, and then threw the word "CLIM" in my general direction.

    I'm the one who did the McCLIM logo, and I try to make a good free player for music (yes, this does differ from just playing sound or even being a Multimedia System) in Common Lisp, using McCLIM.

    William Halliburton

    Relatively young lisp hacker from Georgia Tech

    Brit Butler, 1986 (aka redline6561)

    Introduced to Lisp in 2008 by Will Halliburton. Worked with Leslie Polzer on Paktahn. Have since wound up on Planet Lisp and published a few personal projects on github.

    Nahuel Greco

    Born in 1979 at the south of the globe, in Argentina. A CL newbie, fascinated by the power of dynamic languages and specially by the Lisp mytical properties. Coming mainly from C++, Python was an eye-opener, but I realized soon that Lisp is better (but I miss the hugue python library). Now i'm learning CL, trying to determine if the hyperflexibility of CLOS is better for development than a powerful but regular object model like the one in Smalltalk. Also interested in prototype based languages, actor's OO models, maths and more... If you are in Argentina and involved with Lisp, please mail me at: nahu at softhome dot net.

    Jakub Travnik

    Born 1979 in the Czech Republic, Europe. I have learned a lot of languages in my life. It started on ZX Spectrum with basic, then in chronological order: Z80 assembler, qbasic on PC, Turbo/Borland Pascal, x86 assembler, Delphi, Java (in its early days), bit of Scheme, C, Pyhton, Ruby (I liked this one most at that time, summer 2001, I still use it for scripting), bit of SML, C++, Common Lisp, Prolog, Smalltalk and a lot of others. Currently I consider lisp (not necessarily CL) as best language ever for its metaprograming facilities which usefulness is tied to simple representation of program (list) and type system that doesn't get in your way (though I like Ocaml way too, but still it's not as flexible), making lisp the ultimate language. I see CL as practical implementation of the lisp. Nick: jtra on irc channel #lisp at irc.freenode.net (see IRC).

    Vincent Foley-Bourgon

    I was born in 1983 in Quebec. I discovered Lisp when I entered the Linux world in 1999. At first I thought it looked ugly because of the parentheses and I immediatly discarded it. I tried C and C++, but I was not good enough for them (or were they not good enough for me>), I went through Ruby, Python and O'Caml and I liked them a lot, but one thing was bugging me: I liked the dynamic typing in Ruby and Python, the freedom it gave, but I really liked the functional paradigm that I discovered with O'Caml.

    One day, I read an article by Paul Graham, Beating the Averages, and I was impressed at what he had accomplished with Lisp. I found a page that explained what Lisp was and when I saw it was a powerful, dynamic, functional lanugage (yeah, I know it can be any paradigm), I downloaded Clisp, ordered a copy of ANSI Common Lisp by Paul Graham and it was then I became a big Lisp fan.

    I haven't done anything significant in Lisp (yet) mainly due to lack of free time and ideas, but I hope to eventually get a chance to make something nice. I also look forward to Paul Graham's Lisp dialect 'Arc' and I hope it brings more people to the Lisp community.

    Andrew S. Kuehn

    Born in 1987. I was introduced to Lisp by a fellow YoungLisper. Now C/C++ and Java look horrific, and I wonder how I will ever get an enjoyable job :-)

    David Golden

    Born 1978. Qualified as a mechanical engineer in the 90s. As an engineering student, I encountered AutoLisp. Nonetheless, I survived, and some time later, after I had switched to Linux distros as my home OS of choice, started playing with free Common Lisp implementations after detours through Scheme.

    Jon Allen Boone

    Born in 1970. Programming since 1983. First heard of Lisp in 1984 (when Steven Levy's _Hackers_ hit my local public library). First touched Lisp in 1988 @ Carnegie Mellon. Lisp involvement was primarily with Emacs Lisp until 2002, when I discovered Common Lisp. I won't mention the torture I endured programming in Scheme in 1990 (actually, it *seemed* fun at the time...)

    Matthew Danish

    Born in 1982. Seem to recall being a programmer since the early 90s, using BASIC and then C. Introduced to Lisp around late spring 2000, just before college (CMU), and spent the next year playing with Scheme mostly. Got a job and started writing web applications in Common Lisp the summer after freshman year, and haven't looked back.

    Matthew Kennedy

    Born 1977, full-time Java coder seeks new ways of thinking about programs. Started with Common Lisp after coding a Yahoo chat interface in GNU Emacs. Maintain Common Lisp and GNU Emacs stuff in Gentoo.

    Paul Lathrop

    -Born in 1981, started playing with computers/programming from a very early age. Mom bought a Commodore 64 when I was a year old, and taught me my alphabet on it. I never got into programming the Commodore (I was too busy playing games), but I saw my mom coding on it quite a bit, so my interest was piqued. When I started school there was an Apple IIc in the corner with a Logo interpreter on it. Logo was the first programming language I used. Two years later I met a guy who used to hang out around MIT in the 60's and he handed me Robert Wilensky's 'Common LISPcraft'. I was entranced, and started playing around with Lisp on his computer for the rest of elementary school. Since then, I have learned many programming languages and every time I have the leisure to return to Lisp I am relieved. I only recently realized that there is still an active Lisp community (I was talked into believing Lisp was dead by CS professors at Michigan Tech who were busy preaching the word of Java). I am now looking to be useful to the free software community in some way, specifically the Lisp community.

    Tristan McLeay

    Born in 1984, all you people born before then are making me feel very old. I first started using Linux in 1997 or 1998. My first nix text editor was VIM. I would still love a nice cross between it and Emacs. I still prefer VIM (heresy!). I've only just started with Lisp, really. Though I've learnt VB, PHP and Java. I've also looked at Ruby, Python and Haskell. But I think in Lisp when programming anyway, so I might as well learn it :) Lisp is so much simpler and makes so much more sense. (Well, actually, my first taste of Lisp was in Logo in primary school, but I'm not sure that counts.) I am envious of the person above me, damn you!

    Geoff Cant

    Born in 1981, started using linux seriously in 1996 (I saw someone load a floppy driver while the kernel was running - to a dos user it was like fire to a caveman). University has forced me to learn any number of ugly languages which in turn forces me to compensate by learning some nice ones in my spare time :). At the beginning of the year I started using emacs and found out how useful and easy lisp was. Now I'm pottering around in Common Lisp and loving it. (Any NZ lisp offers or indeed offers for any country eagerly accepted :)

    Esa Nyrhinen

    Also born in 1981, a software engineering student who is being forced to learn ugly languages such as C++ and Java. So I write code in Common Lisp on my spare time in order to be able to actually enjoy writing software. During my first year in the polytechnic we had a course and a seminar of programming languages. My team chose Lisp simply because we had good books about it in the school's library. That's how I stumbled upon Lisp and believe me when I say that I have not regretted that I did.

    Scott Williams

    Born in 1983, I learned lisp in high school just because it was different than C. When I got to college and found I had to solve a lot of problems in very little time, I invested that time into lisp and reaped the benefits. I've used lisp for everything from data analysis in physics (or as a glorified calculator) to multi-node parallel genetic graph coloring algorithms to graphical fractal explorer programs.

    I started in 3rd grade with BASIC, which after building myself some RAD tools over the course of 6 or so years, had become pretty comfortable. The plethora of basics that run in unix left me baffled and uncertain, so I floated around in C-space for 3 years before running across a comfortable lisp environment that finally addicted me!

    -Tomer Altman

    I put a lot of content on the alu.cliki.net's "Road to Lisp" survey, but it disappeared! So now, once bitten, twice shy: I'm going to hesitate writing too much here...

    UC Berkeley's CS61a introduced me to Scheme. Now, after hacking a C program for 3 years, I switched to Scheme and finished it in months! Now I'm addicted to fully grokking Scheme & CL.

    Richard Newman

    I'm a PhD student at the University of Reading in the UK. I've freely roamed through the landscape of programming languages, and eventually decided it was about time I learned Lisp, as I was already well-aware of its advantages.

    I'm glad I did, as it's an expressive and elegant language. My homepage has a version of a radiant primes generator in both Lisp and C++; the Lisp version is much shorter!

    Sacha Chua, 1983

    I've been into Emacs Lisp for a while, thanks to Emacs (of course). My blog has a bunch of Emacs-related posts, including weekly Emacs News. I've dabbled in Common Lisp as well, but Emacs is my home.

    Chris Capel

    Original entry: -

    -Born in '85, I suppose I'm pretty young. I recently got into lisp, and being experienced in .NET (I'm a C# hacker by day), I think I want to bring some of its best aspects to Lisp, eventually. I'm thinking a CLI interface module, making any common lisp a CLR consumer. Way cool, huh? Maybe adding a neat packaging and versioning system. But heck, that's way off, considering my skills. All I know is that Lisp rules, but the only way to really increase its popularity is to make it Plug-n-Play, if you know what I mean. -

    Well, wasn't that a newbie thing to say? I realize now that the extensive power of Common Lisp is such that a good compiler is really hard to come by, and needs more than a toy VM like the CLR to be able to operate efficiently. So now I'm just programming. I started a web app in PHP a year ago (this), but the code started to get messy, and I put it on hold. Now I'm doing it with TBNL. Thanks Edi. Heh. Lisp rules!

    Mikael Brockman, 1988

    phubuh on IRC. I don't remember how I got into Lisp, but I'm guessing the story doesn't wildly differ from the standard Emacs story. Working on a toy CL interpreter in C++. (Not anymore. I need to extend chandler's sexp-c into sexp-c++ first. Heavy cpp macrology makes me sick.)

    Xavier Maillard, 1980

    I live in Reims (France) and I try to learn Common Lisp. I am (yet) a big fan of emacs lisp but not a guru at it ;) I hope I will able to port my current C-written programs in Common Lisp. Actually my big plan is to port my Gimp-like program to Common Lisp. I still can't tell if it is doable, but for sure I will try to do ;) First, I need to learn the language.

    Why am I going to CL ? Two main reasons: curiosity and challenge. I used to develop in C/C++ but I really want something new and increase my knowledge so I can more easily contribute to other *lisp project (ie. Emacs which is impossible atm).

    Andreas Scholta, 1984

    I'm a 19 year old german soon-to-be (hopefully) math student and kind of new to lisp. Haven't done any spectacular things with it up til now and am currently implementing a common lisp mars for corewars (2004 is corewars' 20th anniversary btw, so go reanimate it). Coming from languages such as C/c++ and perl I can't say that learning common lisp was (is) a pain, it feels more like a liberation. -Emacs, Graham and Naggum get the blame.

    Massimiliano Campagnoli, 1971

    I'm a 33 year old italian programmer. After 14 years of boring C/C++ development and days spent to wait for the nightly build to finish I am back to Lisp, the language I used to for my university degree project and lost because of all the "pointy-haired bosses" I met in my career. - To quote Eric Raymond "Lisp is worth learning for the profound enlightenment experience you will have when you finally get it; that experience will make you a better programmer for the rest of your days, even if yhttp://www.cliki.net/Recent%20Changesou never actually use Lisp itself a lot"

    Giannandrea Castaldi, 1971

    I'm an italian programmer and member of a team that applies extreme programming. In XP is important to have tools that allow write and modify programs easly and quickly. I think that lisp is the best language for this purpose and then I'm using it in my spare time for two years and I hope I'll use it on work.

    -Edward Tate, 1986

    I'm 18 and I started programming about 4 years ago in C. After that I programmed in C++ and Python because I liked the high level of abstraction that Python gave me whilst retaining the speed with C++. Through realising that Lisp provides both of these features and in a desperate search for the perfect programming language, I chose to program in Common Lisp.

    -Eirik A. Nygaard

    I was born in 1986 in the cold country up north called Norway, I started with lisp the summer before I turned 18. Most of my free time I spend hacking the BSD operating system DragonFly BSD and throwing out line by line of useless code in different languages in my huge quest after writing the one great application. I am not sure who I should blame for starting with lisp, I think I just thought it looked cool and had to try it out.

    Pisin Bootvong, 1981 -(Sept, 2005) -Knowing Lisp for 1.5 year now. Love it. -But pity it's hard to find Lisp job in Thailand. -Planned I would create such job myself soon.

    Vikas G P, 1986

    I live in Mysore, India. Came to Lisp via the Jargon file, SICP, Paul Graham, etc.

    Berlin Brown, 1979

    I have started with Basic, to Web Development, to C, to C++, to Java, Python, back to Web languages again. Now I have found lisp and it is truly amazing. It is amazing how much has been put into the language to help the developer, with other languages you are given, 'if', 'for', 'while'. Down with static typed languages!

    Joseph Wecker, 1978

    Hooked by Paul Graham. I was amazed at the "demo" projects at the end of some lisp books I checked out at the library. In C++ or Java or something you get to the end of the book and it has something like "Now let's build a shopping cart..." I would get to the end of a hundred page Lisp beginner book and it would be something like "Now let's build a compiler for the ABC programming language..." or "Now let's implement a new OOP paradigm..." Started programming in asm on the 8088; programmed in many other languages since. Lisp, of course, is what I hope one day to do all programming in.

    Jens Thiede, born 1985

    I've been playing with PCs since I was five. My affinity for coding comes from my desire to want the simplest structure that does the most. To say something in the most concise way. I love things such as design patterns and unit tests. So in wondering about - and from - language to language I can truly say that Common Lisp is by far the best language that I've seen.

    In 2006 I won't be embarking on a study of Computer Science, but rather Visual Communication Design (Animation, Photography, Illistration, etc.)

    Steve Morin, born 1979 -Been facinated with lisp for 8 years or so since I read one of my first A.I. books. As a software engineer using java and c is torture compared to lisp. I have finally start getting really into lisp in may 2005. I have to thank Paul Graham mostly for my renewed interest. My web site.

    Lisp Rocks

    Pitr Vernigorov, born 1986 -Learnt Scheme in my first term of uni, fell in love. Use Scheme/Lisp for complicated mathematical problems/proofs, Perl for the rest.

    Surendra Singhi, born 1980

    I first started with Scheme while reading the excellent book "Structure and Interpretation of Computer Programs", and then I had to learn Lisp for the AI course in my school, and since then I have never looked behind.

    Dan McCarthy, born 1981

    Like many others, I saw Scheme in college, but, baffled by the parens, marked it "academic' (whatever that meant) and left it behind. A few years later, out of college and employed writing Visual C++/VB, I began to feel my brain shrink. I began exploring 'weird' languages(maybe that means the same as 'academic'), found Paul Graham's essays, then bought "ANSI Common Lisp". Not long after, and also partly on PG's advice, I bought SICP. Those two books, together, blew me away.

    Pablo Barenbaum, born 1985

    I started programming in QBASIC (*shame*) in 1995. Later, I learned C -and Python, which were my languages of choice for a while. I got into -a programming language lover, and started to discover that universe -(Perl, Haskell, Unlambda, Befunge...). The paths that lead me to -Lisp were many: "Gödel, Escher, Bach", Paul Graham, Eric Raymond, -Emacs.

    I believe Common Lisp and Scheme are different and useful approaches -to the Lisp Way. From time to time, I'd rather one or the other, and -use mostly Clisp and Guile.

    I wrote an interpreter for an Scheme-like language (called Funes). -That experience made me understand Lisp more fully. However, I'm -still not completely sure I grok it.

    -You can reach me at foones AT gmail DOT com

    Ralphw, started in PCs by borrowing/ building a Cosmac Elf, got an -Apple II, learned LOGO 6 months later, and Scheme right after that. -Learned CLU, didn't understand the fuss about Ada, finally learned C, -C++. Getting back into Lisp and LOGO to teach students and robotics -,after getting frustrated seeing a local public school still teach BASIC. -Nice to see Microsoft and Sun competing to put dynamic language features in their Virtual Machines.

    Dwight Holman, born 1986

    C was my first language, but I picked up SICP and taught myself Scheme at the tender age of 11. Common Lisp is a recent thing for me, but it feels so much like home. Now, I am a contributing member of the CL community. Climacs is fun!

    Zimbabao Bourbaki, born 1982

    zimbabao at yahoo dot com

    Started programming in late 1999 with pascal, then c, c++ then in 2002 came Lisp and prolog for a year, again in 2003 started with c++, perl ,php, SQL, Java for food. Restarted Lisp for fun hacks in late 2005 and its still going.

    Greg Johnston, born 1990

    I started using Lisp a while ago, coming from C/Java/Ruby/PHP/Assembly...it's awesome. I'm madly in love with it. Functional languages are much better to think in than any of the other ones I've used, and I really like the (lack of) syntax of Lisp. It's just fantastic.

    -Martin Bishop, born 1985

    I'm (currently) 21 years old, and in love with Common Lisp. I own PCL and PAIP and read a little of both every day, as well as bookmark any interesting sites dealing with Lisp. I'm also an avid emacs and ratpoison user.

    Troels Henriksen, born 1987

    I'm currently 18 years old and have been programming since I was 15 - a late start, perhaps, but I have been interested in computers ever since I tried one for the first time in 1993 and I did write a bunch of scripts for game modding over the years. I started out programming in C and C++, but converted to Common Lisp over a few weeks in May of 2005. I believe in the principles of Free Software and release everything I make under as liberal a license as possible. I enjoy hacking on Climacs, the premier free CLIM-based Emacs-editor with a Flexichain-based buffer implementation.

    -Leonid Slobodov, born 1989

    Hmm, I tried Lisp after having been somewhat disappointed by several other lanuages. Like many others, I started with QBasic. Boy, even though it was -my first language, I knew there had to be something better. Then I switched to -Pascal and realized that it was the OTL. Same with C and C++. Finally noticed -that being a Blob programmer isn't that much fun and started to tinker with Python a bit. Scheme. Common Lisp. Enlightment. 'Nuff said. -Doing my "Abitur" in Germany currently.

    Seshu Yamajala, born 1990

    I was going through a box of my mom's old cs books from college and found Lisp, second edition and Common Lisp the language first edition. I had learned a few other languages on my own before (c, objective-c, php, visual basic .net, vb6, ...) and wanted to try something different. I hope in the future to get a job writing lisp code.

    Shaun Gilchrist, born 1982

    I have been messing with CL on and off for years but I am now reaching the point where I am going to use it for applications that would have previously been relegated to php. I want to work with the whole "sdl"-esque side of things and make some libraries which make developing games in lisp totally viable. If it wasn't lisp it would be smalltalk (only OO I have ever used that didn't make me feel as if I'd wasted my time) or python. I've also used c,c++,pascal (kylix/delphi) and I guess BASIC as well in grade school! For the record I've NEVER used or endorsed Java. I feel that's important to mention.

    Piotr Esden-Tempski, born 1980

    Many people here seem to have started with Basic, I seem to break with that rule because I started with Turbo Pascal short after also Delphi. After switching to Linux I learned C, C++, Perl, PHP, Ruby and because of University constrains also Java. Currently I use mainly C for my day to day work, developing software for embedded systems. (Small ones, mostly 16bit machines for now.)

    Some months ago I started to learn Common Lisp from Practical Common Lisp. Since then nearly everyday I see how constraining C and the other languages are. I also realized that I reimplemented parts of Common Lisp in a unspecified and broken way several times in C. I am now trying to replace C with some kind of Lisp for my embedded work. It would be beautiful to have Common Lisp on embedded but it may be a bit too big. But who knows. For now Hedgehog Lisp may be the right thing to start with. But even Hedgehog needs 32bit architecture. So I will have to live with C for some time.

    I am sure I will have to revise this entry in some way in the future, when I am no more such a newbie in CL. ;)

    Ivan Kudryavtsev -I'm network software developer from Russia. Currently using Perl, C/C++, Python languages in my everyday business and reviewing if common lisp can be applicable in my projects. I'm wondering of power and beuty of this language. Common lisp makes the view of code writting very amazying and unusual. Currently, just reading lisp books to know and understand the language in deep so be confident that I can apply it somewhere with real result, not just like an experiment with no effective result.

    Alexander Wang, born 1979

    I become aware of Scheme in around 2002 after watching the video lesson of SICP. It impressed me a lot, and let me think about programming from different perspective. Now, Lisp is my favorite language in non-working time. I am seeking the chance to apply it in a "real" project instead of playing with it only.

    Alexander Nazarenko aka Fullzero, born 1976

    I am software engineer from Ukraine. I used several languages to earn (Prolog, Perl, C, C++, Delphi, SQL, XSLT, JavaScript). Last 5 years I am Java guy. I liked Java. And it is very good for big projects. But I have always searched for method to express my self with little effort. I want to create programs for myself, not only for money :) So I tried a lot of tools, languages, paradigms. So again I am on way to Lisp. Really, only three languages were impressed me: Prolog, Smalltalk and Lisp. I used AutoLisp inside AutoCAD. But before I have read about CommonLisp a year ago, I did not know that Lisp may be so amazing tool! It is simple, very expressive, small, adaptive, extensible (with help of macros), you can try all software paradigms with Lisp! So now I am in love :)

    But I see some drawbacks of current situation with Lisp and for Lispers: very small number of free implementation, very poor support of IDEs for Lisp. I found only one super IDE is SBCL Plugin for Eclipse! It is super! It will help the rest of Java developers to move to Lisp world :) But we need to help Lisp (and the future Lispers) to increase it popularity, we need to open eyes to rest of us that Lisp is very productive tool and it will help us to save our effort while creating future fantastic (and the helpful!) programs.

    I don't know how, but we need to sum up all our brains to save Lisp. I will be glad to hear your thoughts. Please post your comments or send me e-mails (mailto:mr.fullzero@gmail.com).

    P.S. Thank you very much that I am not a single person who in love with Lisp :)

    -Nubis, born 1986 -Ecmascript, (PHP, C++), Python, now, a bipolar lisp programmer that tries to understand the world by modeling it in lisp rather than going to college. Saludos! -

    Abhijith.G -I am 22 as of today April 10th 2007.I joined a company called DeepRoot Linux in November 2006. At DeepRoot I saw my friend and colleague Isaac working on emacs. He used to show me cool stuff that emacs can do(very few things it cant do! ;) ). I used to observe that he used to do something like M-x load-file and supply plugins to emacs. Plugins??? Yes thats what I thought *it* was. My friend pointed out that the thing that I thought as plugins were not plugins but other programs!!!. This was the eye-opener. I was fascinated by the concept of Programs as data to other Prorgrams! Thus the Journey to enlightenment began ....

    Cameron Desautels, born 1984

    I've been programming half my life (literally), and I feel like I have always been thinking in Lisp. What a pleasure it was to find it! I thought I was going to have to create it. I have a blog here: http://keyboardphilosopher.com.

    '(Lisp is the red pill)

    Yakov Zaytsev, born 1985

    Lisp is my last programming language.

    Oliver Charles - 1989

    Another from the '89 generation. 18 at the moment, studying computer science innovation at lancaster university (1st year) then continuing here or elsewhere to do a PhD. Standard route to lisp - BASIC, Algol-like, Lisp. For a more detailed path of languages it would be DarkBasic, BlitzBasic, C, C++, C#, boo, Python, Ruby, back to Python, Common Lisp. Those are the major ones, of course I've dabbled in others.

    Interested in software engineering principles, metaprogramming, and elegant code design. Not to say I'm there yet though ;-)

    Conor Manning - 1991

    I've been dabbling in all sorts of computer programming over the last 2 years. I got started trying to create websites with PHP. I never really liked the language much. I think programming languages have a certain personality and PHP's is dependable, loyal, ...and utterly boring. I needed something better. -Around then I tried Perl too. I don't think I lasted a week with it :)

    The next language I flirted with was Python. I found it.. strange. I liked some of the ideas. It combined PHP's steadfastness with a nice syntax. In the end I just felt uncomfortable using it. I don't know why.. I was just uneasy with almost everything about the language.

    Ruby was the next big language for me. I let myself get caught up in the Rails hype and I found I had a terrible attraction to the language. If any programming language can be called sexy, it's Ruby. The code looks like English, and what's more - it had closures and beautiful loop constructs like nothing I'd seen before. I'm still quite fond of her.. I got out of the rails hype and saw that Ruby really is a powerful language as well.. Then it happened. I just.. didn't want to be a web programmer anymore.

    C++. How could I ever love something so ugly? It might have been there for me.. but it was so clumsy and awkard. I was under the idea (as an impressionable young coder) that since all the cool Unix kids were hacking with it I should too. I also got the idea that it was the only compiled language worth learning, and that I HAD to pick a compiled language for speed and distribution. So.. that relationship was never going to last. I got quite good at it; I enjoyed the challenge of taming this beast. In the end, however, that's what it was - a beast.

    So I came upon Common Lisp. Immediately I knew it was more than just the fascination that I had for the other languages.. this was love. -It just made sense. Of course statements should be in brackets.. it's worked for mathematicians for years (: Functions as data.. essential. Why shouldn't we be able to program our programming language? If it's on a computer it can be hacked - that's what I say! Ahh I'm in the sweet, sweet bliss of young love, and my future is bright alongside Common Lisp.

    Ali Clark - 1989

    19 at time of writing, started life with the web page 2 years ago and moved on to PHP for that purpose. Decided Java might be the next thing to learn as I grew interested in the desktop.

    This brush with traditional OOP scarred me for life, and after temporarily pondering Ruby, saw that Lisp was the real deal. Currently interested in ways to reduce barriers for newcomers and may build a website for this purpose. Incredibly excited about the coming of lisp.

    Sturm Mabie - 1993

    Currently 15 years of age. All started when I decided, at the age of 12, that windows sucked and switched to Linux. Much to my chagrin at the time, the language I had previously hacked in, BlitzBasic, was not available for my new neat-O OS. After suffering in a Gnome/Gedit hell for a long time and trying to grok the kludge called C++, switched to Emacs and C. I, of course, learned about Lisp from Emacs, and proceded to learn Common Lisp from Seibel. Half way through, determined CL sucked, and picked up PLT Scheme. After about a month, determined that not being able to use SLIME was worse than CL, switched back and then proceeded to consume Graham. Currently trying to write a small Lisp implementation in C for my hp50g calculator.

    Justin Kendrick -- 1992, 17 now (2009)

    I first got into programming 8 or 9 years ago, mostly qbasic and vba. From there I spent a while hacking in different languages, mostly c-derived. I usually ended up starting a compiler to give the language that One Feature it was missing; before I could finish the lexer I'd find another, somewhat nicer language, and the cycle would repeat.

    About six months ago I got to chat with a CS professor at a nearby university. He turned me on to Haskell and Scheme, and from there I moved on to CL. Programming is fun again!

    Currently playing with my own little lisp dialect, just to try out some ideas I've had. Oh, and I can't imagine how people actually input text in something other than vi. ;) -Olexiy
    -Born in '89, 20 years old. Just started programming in lisp. Lisp is awesome. Learned few languages before it, worked only with one.

    Serge Kosyrev (aka Samium Gromoff), 1982

    First I did too much metaprogramming in C for my own liking (for wrong reasons, -in a retrospective), then Tom Lord and the Unix Haters Handbook dissuaded me -from the world of 'worse is better' into the world of Lisp.

    Francisco Vides Fernández

    Born in 1974. Started to program in 1992. After some C, C++ and Java programming years, I discovered in 2001 SCSH, a Scheme for systems programming. Two years ago Later I found Common Lisp, and I has become my language of choice.

    Linus Ericsson, 1983

    Seems like I finally found my way home.

    Caelan Reed Burris

    I was born in 1992, and in 2004 I started programming with TI-Basic on my TI-83+. It all went downhill from there, and I haven't been able to keep Common Lisp implementations off my machines ever since I found Lisp in 2008.

    bubo

    born 1978. actually interested in classics and ancient languages, but - as -it is with unix - can't keep myself from having fun with my debian and bsd -boxes :). using primarily guile elisp and sbcl for scripting but also scsh, gambit and gcl if it does the job. emacs, sawfish and stumpwm user and proud of it! long live the lisp and scheme community! ;)

    Daniel Valio

    Born 1997. I got first contact with Lisp (Racket, indeed) in 2007, or something the like. Programming in Common Lisp since, what, 2008, I think... -

    -

    Indecipherable -

    Born 1997. Came across Common Lisp in 2010 and enjoyed it ever since (including Scheme, Racket). Programming in Lisp is a truly mind-opening experience, and more people are coming to the same conclusion.

    Charles Lew (CrLF0710) -Born 1990. Started with Scheme in 2009 and switched to Common Lisp -in 2011. Just loving it.

    Matthew Veety -Born in 1993, and started hacking around 2005. Got into Common Lisp not long after.

    Joshua Ryan Trout / nydel -Born 1985. I've a high-functioning autistic disposition related to my constant need to understand all situations in terms of trees of tarot cards. When I found Lisp, in it I found another system -- a left-brained counterpart to the right-brained tarot system. This pair of faculties is that through which I can spell, word & punctuate my world as to function within it normally and happily among those with typical neurology.

    Erik Greenwald, 1976. -My first exposure was with PLT scheme in a theory of computation class. I've managed to sneak scheme into a couple enterprise projects and have lately been using Common Lisp (SBCL) with UCW quite a bit. I'm hoping to step into the startup world with Lisp as my secret weapon, current efforts at http://elfga.com.

    Safia Abdalla -Born 1996, Studying computer science/natural language processing/macine learning/information retrieval independently and via coursework for 3 years. Pythonista of 3 years. Discovered a better lambda the summer of 2012. Lisping all the way.

    Kenneth Yan -Born 1981. I am a SAS programmer, but I love lisp.

    David Mullen—1984

    It was around 2002, after I'd spent a few years teaching myself to write C and assembly language—on MS-DOS and then Windows—that the articles of Erik Naggum seemed to pop up in search results a lot. I took the hint that I should investigate Common Lisp, first trying GCL, which proved quirky but workable, and later switching to CCL. I would summarize the Common Lisp advantage as a mentality of total inspectability—where not only is "everything an object," it's an object that can be examined in the REPL. It can get to the point where you take that level of control and feedback for granted, since the language itself starts to look like a sort of inevitable expression (egg?) of the dynamic system (chicken?) that is the Common Lisp implementation.

    Langston Barrett, born 1996, alias siddharthist -I got hooked on functional programming in Python, but was frustrated by one-line lambdas and the like, and so decided to see what all these parentheses were about.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Ystok-Local-Time.html b/clones/lisp/www.cliki.net/Ystok-Local-Time.html deleted file mode 100644 index dcc7a744..00000000 --- a/clones/lisp/www.cliki.net/Ystok-Local-Time.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - CLiki: Ystok-Local-Time - - - - - - - -
    Ystok-Local-Time
    Ystok-Local-Time is a library for for representing and handling time zones, dates, and timestamps.

    This package partially supports ISO 8601 format and provides localized read and print of date and time.

    Ystok-Local-Time was written by Dmitri Ivanov.

    License: LLGPL

    Homepage: http://lisp.ystok.ru/ylocal-time/.

    The idea was originally based on the LOCAL-TIME concept proposed by Erik -Naggum (1965-2009) in -"The Long, Painful History of Time" in 1999.

    Date/time is represented by one of the following three structures:

    - date corresponds to the DATE data type in SQL (ISO/IEC 9075:1999,2003)
    -- local-time corresponds to TIMESTAMP WITHOUT TIME ZONE
    -- utc-time corresponds to SQL TIMESTAMP WITH TIME ZONE and contains an explicit timezone offset.

    The library was developed and tested on LispWorks and SBCL.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Ystok-MD5.html b/clones/lisp/www.cliki.net/Ystok-MD5.html deleted file mode 100644 index 4ce62836..00000000 --- a/clones/lisp/www.cliki.net/Ystok-MD5.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: Ystok-MD5 - - - - - - - -
    Ystok-MD5
    Ystok-MD5 is a Cryptography library implementing MD5 and MD5 APR (Apache Portable Runtime).

    The library is a Common Lisp implementation of the two algorithms:

      -
    • The MD5 Message-Digest Algorithm, as defined in RFC 1321 by R. Rivest published in April 1992.
    • -
    • The MD5 APR algorithm used for basic authorization by web servers Apache, Nginx, and others as well as by the htpasswd password encryption utility.
    • -

    Ystok-MD5 is maintained by Dmitri Ivanov.

    License: LLGPL

    Homepage: http://lisp.ystok.ru/ymd5/

    Ystok-MD5 is based on Pierre R. Mai's MD5.

    On LispWorks, the library switches to a specialized code that uses a fast raw 32bit arithmetic introduced in LW 4.4. This version demonstrates speed increase of about two hundred times compared to a naive port.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Ystok-URI.html b/clones/lisp/www.cliki.net/Ystok-URI.html deleted file mode 100644 index 986cf5c2..00000000 --- a/clones/lisp/www.cliki.net/Ystok-URI.html +++ /dev/null @@ -1,66 +0,0 @@ - - - - - CLiki: Ystok-URI - - - - - - - -
    Ystok-URI
    Ystok-URI a library for representing, parsing, and printing URIs. -It is maintained by Dmitri Ivanov.

    License: LLGPL

    Homepage: http://lisp.ystok.ru/yuri/.

    Documentation: http://lisp.ystok.ru/yuri/help/help.html.

    Ystok-URI is a part of YstokHTML collection but can be used alone. - The code is based on -

    Ystok-URI accepts URI strings in accordance with the latest -RFC3986, -(including userinfo).

    URIs are represented by instances of a structure type. -Percent-encoding/decoding is implemented in full. -It is highly optimised for UTF-8 and supports other external formats -basing on Lisp implementation-specific i18n/l10n functions or ACL-Compat.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/YstokCard.html b/clones/lisp/www.cliki.net/YstokCard.html deleted file mode 100644 index 7ae3c1cd..00000000 --- a/clones/lisp/www.cliki.net/YstokCard.html +++ /dev/null @@ -1,64 +0,0 @@ - - - - - CLiki: YstokCard - - - - - - - -
    YstokCard
    YstokCard is a portable Common Lisp library related to Smart cards and PC/SC API.

    It was written by Dmitri Ivanov.

    License: LLGPL

    Homepage: http://lisp.ystok.ru/ycards/.

    YstokCard helps in programming memory-based and file-based card applications. It relies on the following "back-ends": -

    Basic features -

      -
    • Class hierarchy for cards and devices.
    • -
    • Conventions and macros for defining new card and device types.
    • -
    • ATR (Answer-To-Request) converting and analysis.
    • -
    • Calls to Smart Card Resource Manager - (winscard.dll on Windows, libpcsclite.so on Linux).
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/YstokGrid.html b/clones/lisp/www.cliki.net/YstokGrid.html deleted file mode 100644 index 2bdb82bf..00000000 --- a/clones/lisp/www.cliki.net/YstokGrid.html +++ /dev/null @@ -1,105 +0,0 @@ - - - - - CLiki: YstokGrid - - - - - - - -
    YstokGrid
    YstokGrid is a tabular data GUI widget based on the CAPI library for LispWorks. It is maintained by Dmitri Ivanov.

    YstokGrid, or YGrid for short, is distributed under a LLGPL.

    Homepage: http://lisp.ystok.ru/ygrid/.

    YGrid was developed under LispWorks 4.2-4.4 -and 5.0 for Windows. Compatibility with Linux or Mac OS X must not -be of much effort due to code conditionalized with the :win32 feature.

    General

    - YGrid provides convenient GUI environment for working with data in tabular -form. The main design purpose was to present RDBMS records in rows. -With YGrid, you can edit in place, add, or delete records. YGrid can be -included into any CAPI interface window as an ordinary pane.

    Basic Features

    -
      -
    • Text display, text input, and check button columns. -
    • -
    • Enabled or read-only columns. -
    • -
    • Ghost columns, i.e. calculated from the values of other columns. -
    • -
    • Callbacks on interactive user actions. -
    • -
    • Selecting rows with various styles of choice-interaction via a row header. -
    • -
    • Column width and row height changeable via a mouse gesture or - programmatically. -
    • -
    • Assigning graphics args (foreground or background color, font etc.) to -every cell differentially. -
    • -
    • Sorting and filtering rows. -
    • -
    • Searching a single column via a kind of "Find what" dialog. -
    • -
    • Undo editing performed on cell or entire record. -
    • -

    Text Column Features

    -
      -
    • Rendering static text. -
    • -
    • Number and currency format localization; automatic initialization - of locale-specific parameters on Windows. -
    • -
    • Horizontal alignment: left, center, or right. -
    • -
    • Wrapping text automatically. -
    • -

    Text Input Column Features (additional to static text)

    -
      -
    • Customizable print-function, read and write converters. -
    • -
    • Full-fledged capi:editor-pane used for editing cell values. -
    • -

    Check Column Features

    -
      -
    • Boolean or triple state check boxes. -
    • -
    • Toggling via mouse or keyboard. -
    • -
    -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/YstokHTML.html b/clones/lisp/www.cliki.net/YstokHTML.html deleted file mode 100644 index bdfb1684..00000000 --- a/clones/lisp/www.cliki.net/YstokHTML.html +++ /dev/null @@ -1,59 +0,0 @@ - - - - - CLiki: YstokHTML - - - - - - - -
    YstokHTML
    YstokHTML is a collection of HTML generator, HTML parser, and HTML template libraries. It was written by Dmitri Ivanov.

    License: LLGPL

    Homepage: http://lisp.ystok.ru/yhtml.

    YstokHTML allows generating and parsing HTML and XHTML documents. The collection includes the following: -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/YstokSQL.html b/clones/lisp/www.cliki.net/YstokSQL.html deleted file mode 100644 index 4a05f29f..00000000 --- a/clones/lisp/www.cliki.net/YstokSQL.html +++ /dev/null @@ -1,113 +0,0 @@ - - - - - CLiki: YstokSQL - - - - - - - -
    YstokSQL
    YstokSQL is a Common Lisp library for interfacing relational Database via ODBC. It also privides a kind of ORM functionality.

    YstokSQL is maintained by Dmitri Ivanov.

    Homepage: http://lisp.ystok.ru/ysql/

    The implementation is much inspired by Xanalys(R) CommonSQL, but provides only the functional SQL interface. YstokSQL is distributed under a LLGPL style license.

    YstokSQL is based on the following open-source implementations: -

      -
    • SQL/ODBC module by Paul Meurer, -
    • -
    • -MaiSQL package by Pierre R. Mai. -
    • -

    Later, YstokSQL additionally borrowed some code from: -

      -
    • -UncommonSQL by OnShore Development, -
    • -
    • -CLSQL maintained by Kevin M. Rosenberg. -
    • -

    YstokSQL was tested on LispWorks 4.3-4.4 for Windows against the following DBMSs and ODBC drivers: -

      -
    • MS Access (Jet 3.5 and 4.0), -
    • -
    • Oracle 8.1.7 and 10.1 (InstantClient 10.1 and 10.2), -
    • -
    • PostgreSQL 8.1 driver 08.02.0103 (http://pgfoundry.org/projects/psqlodbc/), -
    • -
    • SQLite3 driver 0.71 by Christian Werner (http://www.ch-werner.de/sqliteodbc/), -
    • -
    • MS SQL Server. -
    • -
    -Compatibility with Allegro CL, CLISP, CMUCL, Corman Lisp, MCL, and SBCL is targetable. - Major features: -
      -
    • Extended bracket syntax. -
    • -
    • Embedded local-time library. -
    • -
    • ODBC 3.5 compliance: UNICODE UCS-2, including SQLConnectW and SQL_W... data types, SQL_NUMERIC and SQL_BIGINT. -
    • -
    • Prepared execution support. -
    • -
    • Catalog functions. -
    • -
    • Prefetching via block cursors (more than one row at once). -
    • -
    • Various cursor operations via SQLSetPos and SQLBulkOperations. -
    • -
    • ODBC Installer support. -
    • -

    Release 0.3

    -
      -
    • Object-oriented interface in its simplest.
    • -
    • The desktop-mixin class covering several Jet database -subclasses: access-database, excel-database, etc.
    • -
    • Coalescing SQL references to save space.
    • -
    • sql-case-exp covering three operators CASE, COND and COALESCE
      -(analogous to ODBC IFNULL, Jet's Nz, Oracle's NV).
    • -
    • SQL_NUMERIC and SQL_BIGINT types support.
    • -

    Release 0.4

    -
      -
    • Regression test suite.
    • -
    • Set operations UNION, INTERSECT, EXCEPT.
    • -
    • Database creation, destroying, and listing functions.
    • -
    -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Yurii Rashkovskii.html b/clones/lisp/www.cliki.net/Yurii Rashkovskii.html deleted file mode 100644 index 4897ffe6..00000000 --- a/clones/lisp/www.cliki.net/Yurii Rashkovskii.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - CLiki: Yurii Rashkovskii - - - - - - - -
    Yurii Rashkovskii
    I'm a software consultant from Ukraine

    My old (graved) Lisp software: -

    person

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ZACL.html b/clones/lisp/www.cliki.net/ZACL.html deleted file mode 100644 index 0b228dc4..00000000 --- a/clones/lisp/www.cliki.net/ZACL.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: ZACL - - - - - - - -
    ZACL
    ZACL is an ACL-like layer for running AllegroServe on non-Allegro Lisps. Currently works on Clozure CL and SBCL. Support for other implementations may be added if there is sufficient demand. Contributions of ports to other implementations are of course welcome.

    Depends on: uiop, asdf, usocket, bordeaux-threads, cl-ppcre, flexi-streams, quri, trivial-garbage, trivial-backtrace, split-sequence, queues, cl-store, alexandria, md5, cl+ssl, local-time, cl-base64

    Repository: https://gitlab.common-lisp.net/zbeane/zacl

    Fork: https://gitlab.common-lisp.net/dcooper/zacl

    License: BSD


    -system programming
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ZCDB.html b/clones/lisp/www.cliki.net/ZCDB.html deleted file mode 100644 index b4c168a0..00000000 --- a/clones/lisp/www.cliki.net/ZCDB.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: ZCDB - - - - - - - -
    ZCDB
    ZCDB is a Common Lisp library for reading and writing D. J. Bernstein's fast and simple cdb database file format. It is available under a BSD-style license. For more information, see the ZCDB home page.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ZIP.html b/clones/lisp/www.cliki.net/ZIP.html deleted file mode 100644 index a8e78ad6..00000000 --- a/clones/lisp/www.cliki.net/ZIP.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: ZIP - - - - - - - -
    ZIP
    ZIP is a Common Lisp compression library that reads and writes Zip files, using Salza2 for compression.

    Documentation: http://common-lisp.net/project/zip/

    Depends on: salza2, trivial-gray-streams, babel, cl-fad

    Repository: https://github.com/bluelisp/zip

    License: Lisp-LGPL (and some parts BSD-style, see LICENSE for details)


    -file format
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ZLIB.html b/clones/lisp/www.cliki.net/ZLIB.html deleted file mode 100644 index 31ebd1ac..00000000 --- a/clones/lisp/www.cliki.net/ZLIB.html +++ /dev/null @@ -1,75 +0,0 @@ - - - - - CLiki: zlib - - - - - - - -
    zlib
    ZLIB is a compression format described by RFC1950. It is also the name of the de-facto canonical C-language implementation of the format (zlib.net).

    There are several native Common Lisp implementations, as well as FFI bindings:

    To make it more annoying, there are at least two Common Lisp libraries also named "zlib":

    In addition, CLisp has a module also called "zlib". It is part of the default "full" module linking set.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ZPB-EXIF.html b/clones/lisp/www.cliki.net/ZPB-EXIF.html deleted file mode 100644 index 7174e309..00000000 --- a/clones/lisp/www.cliki.net/ZPB-EXIF.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: ZPB-EXIF - - - - - - - -
    ZPB-EXIF
    ZPB-EXIF reads Exif data from image files. Currently, only JPEG files are supported. It is available under a BSD license.

    For full documentation, see the web page.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ZPB-TTF.html b/clones/lisp/www.cliki.net/ZPB-TTF.html deleted file mode 100644 index 7d7e4f9b..00000000 --- a/clones/lisp/www.cliki.net/ZPB-TTF.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: ZPB-TTF - - - - - - - -
    ZPB-TTF
    ZPB-TTF is a graphics library for parsing TrueType font files and obtaining font and glyph information. It is available under a BSD license.

    For full documentation, see the web page.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ZPNG.html b/clones/lisp/www.cliki.net/ZPNG.html deleted file mode 100644 index c2f6a7c9..00000000 --- a/clones/lisp/www.cliki.net/ZPNG.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: ZPNG - - - - - - - -
    ZPNG
    ZPNG is a graphics library for creating PNG file format files.

    It is available under a BSD-style license. Full documentation is on the ZPNG home page.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ZS3.html b/clones/lisp/www.cliki.net/ZS3.html deleted file mode 100644 index 8654fe84..00000000 --- a/clones/lisp/www.cliki.net/ZS3.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: ZS3 - - - - - - - -
    ZS3
    ZS3 is a library for interacting with Amazon's Simple Storage Service (S3) and CloudFront content distribution service.

    It is available under a BSD-style license. For full documentation, see the ZS3 home page.


    -amazon web services
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Zach Beane.html b/clones/lisp/www.cliki.net/Zach Beane.html deleted file mode 100644 index 1698c611..00000000 --- a/clones/lisp/www.cliki.net/Zach Beane.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Zach Beane - - - - - - - -
    Zach Beane
    Lisp hacker. I created Quicklisp, Planet Lisp, l1sp.org, lisptips.com (on Tumblr), ZS3, Vecto, Buildapp, and lots of other fun Lisp stuff. I point to most of it from my website. -person
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Zach Smith.html b/clones/lisp/www.cliki.net/Zach Smith.html deleted file mode 100644 index c7588987..00000000 --- a/clones/lisp/www.cliki.net/Zach Smith.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Zach Smith - - - - - - - -
    Zach Smith
    Zach Smith is a person quite interested in Common Lisp.

    I had a homepage, and will have one in the future, but not right now.

    I came from a C background. Work on my boss's 100k+ line of code project eventually became so mind numbingly boring yet impossibly hard that I started looking for something new. Went through Perl, Ruby and even a serious stint of Bash programming (seems silly now) looking for something better and finally tried CLISP. If I had found Python before a Lisp, I probably would have stopped there, and never left the imperative world of programming. I'm glad I found Lisp. I'm glad I was looking for an ideal and not something to get a job done. Learning Lisp has opened my eyes to a lot of things (not just computer related). Probably sounds like BS, but it's true.

    It has been two years since I started studying Lisp. I am happy to say that I now use CL in my day to day job as a computational physicist and for hobby activities as well. While I use CL for many jobs, I find it ironic that one of the most valuable uses I have found is to use CL as a wrapper around foreign C functions. An FFI is typically used to access standard libraries and export very low level code out of Lisp. I find that the most useful feature is that CFFI can turn your C programs into interactive constructs. Most of the time a Lisp shell provides everything I need to debug a the logic problems I encounter and I rarely need to start up gdb.

    Lisp is basically a mathematical notation to me now. I know the code I write in Lisp might not be blowing away benchmarks, but I am no longer afraid of designing a little Lisp sublanguage that can be translated to a different language, if speed/space really is a problem.

    I have been toying around with writing a tutorial/text on using Lisp for scientific computation (similar to the results you get by google searching `OCaml' and `scientific'). I am hardly an *expert* in Lisp, but I see no one else working on this.

    I like programming competitions like ICFP. I will probably compete this year (last year didn't go so well and I was all on my own).

    I currently use CLISP, SBCL, CMUCL, ECL, and CCL in an attempt to stay implementation neutral. I am fed up with GCL, that hunk of junk seems to segfault on almost anything. As a FOSS supporter and an FSF member, I am only really interested in using/working with free (libre) versions of ANSI CL.


    Projects/topics I am currently awed by: Axiom, ACL2, Ltk(The only GUI I can reliably get working)

    Projects/topics I was previously awed by (still good stuff): Maxima, Screamer, Femlisp


    -Person Graduate Student
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Zebu.html b/clones/lisp/www.cliki.net/Zebu.html deleted file mode 100644 index 118d3276..00000000 --- a/clones/lisp/www.cliki.net/Zebu.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: Zebu - - - - - - - -
    Zebu

    A Tool for Specifying Reversible LALR(1) Parsers

    Zebu is a LALR(1) parser generator similar to YACC, but for Common Lisp. Its features include the ability to define several grammars and parsers simultaneously, a framework for specifying the semantics, meta-grammars management and generation of unparsers. It also contains a lexer that groks (a subset of) Emacs Lisp regexps.

    The latest known version is 3.5.5, but 3.5.3 is also available [where?]. Chun Tian has found a tarball of zebu 3.5.5 from a Gentoo mirror and created a GitHub repository for it.

    A "nano-howto", with a patch, to install and run zebu-3.5.5 on clisp-2.30, and two example grammars can be found at http://informatimago.free.fr/archives/develop/lisp/pjb-zebu-clisp.tar.gz.

    Note that Zebu does not seem to have a way for the user to control operator precedence and associativity, making it hard to use it to generate a parse for all but the simplest languages. Not meaning to slam Zebu, but it may be more effective to use CL-Yacc or even Bovine or Wisent running under Emacs until Zebu is made more featureful (see also my contribution to the license argument below). -- Joe Corneli

    (WITH-LICENSE-ARGUMENT - (PROGN

    Some denizens of comp.lang.lisp have tried to contact the author, but did not succeed so far. Zebu is NOT under the GPL - sadly, it's non-free. Someone should contact both authors and get permission to re-issue it under a nicer license.

    [Zebu _IS_ under the GPL. It says so explicitly in the file COPYRIGHT.]

    [Just noticing that it is "(c) Copyright 1992, Hewlett-Packard Company". Perhaps HP will change the license. Anyone reading this on good terms with Bruce Perens (he works at HP)?]

    [I just browsed the file COPYRIGHT included with the source of Zebu and for all I can tell it's an old version of the GPL. Ergo it's Free. - James A. Crippen]

    [It is true that the GPL is cited in many places but there are a couple of dozen source files which contain the following notice and no mention of the GPL: So it is not clear what the effective legal status is.]

    [It's as clear as can be! There is a file COPYRIGHT which states explicitly that permission is granted under the General Public License to use modify and redistribute. How much clearer do you want it? It is NOT required that the GPL be cited in full in every file. You can find dozens of GNU packages which have copyright messages but no GPL in some files.]

    ))

    With all the license arguments, it seems that the end result is that Zebu is probably under the GPL, but even so you may not want to adopt it in your software distribution or sell it commercially. Just in case. Other than that, it's quite obvious that the original intent was to distribute Zebu, so there's certainly no reason that you can't use it all you want.

    [JAC: I just had another thought. Recall that American copyright laws require that the holder of copyright defend their copyright to retain it. Is this perhaps a situation where the lack of defense or follow-through on copyright could nullify it? A question for lawyers...]

    [BM: Not so, AFAIR the above is for trademarks not for copyright]

    Just to throw in a little extra information. I contacted William Wells a couple years ago about the copyright notices of his, which granted permission for non-commercial use. I asked him if he would consider granting permission to use the code under GPL and on Aug 23, 2001 he responded, in part: "Souds[sic] like a fine plan to me." If it is those notices that are causing concern, then I think we are okay. -- Russell Senior

    I think it would be good to repackage Zebu in a fully GPL-compliant way. Probably the right thing to do would be to get in touch with Hewlett Packard about this. Until the licensing terms are cleared up, I think Zebu will suffer badly, because people won't be willing to work on it or even use it much until it is clear that it is free software. -- Joe Corneli

    What good is it to have a GPL parser generator? Is my application written using Zebu not automatically GPL'd, because I need the Zebu runtime?

    -Agreed that it would be better to get the licensing cleared up on this one, if possible. (Oct. 2005, just to give this a time scale) Also, ideally Zebu itself could be GPL (if that's what is desired) but the use of output wouldn't be constrained to GPL. For Modified BSD licensed code (for example) that could be a real problem. Any effort going on right now to resolve this?


    -library text parser
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/Zeta-C.html b/clones/lisp/www.cliki.net/Zeta-C.html deleted file mode 100644 index 5ad38d79..00000000 --- a/clones/lisp/www.cliki.net/Zeta-C.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Zeta-C - - - - - - - -
    Zeta-C
    The ZetaLisp C compiler, now in public domain.

    http://www.bitsavers.org/bits/TI/Explorer/zeta-c/ And before you ask, no, it's not trivially portable to Common Lisp. See Vacietis for related work.

    Some comments are here.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/a-cl-logger.html b/clones/lisp/www.cliki.net/a-cl-logger.html deleted file mode 100644 index a432cf0f..00000000 --- a/clones/lisp/www.cliki.net/a-cl-logger.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: a-cl-logger - - - - - - - -
    a-cl-logger
    A common lisp logging library providing context sensitive logging of more than just strings to more than just local files / output streams.

    For more info see:

    Git Hub: https://github.com/AccelerationNet/a-cl-logger

    Topic: AccelerationNet, logging

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/abcl-jazz.html b/clones/lisp/www.cliki.net/abcl-jazz.html deleted file mode 100644 index 9cd45493..00000000 --- a/clones/lisp/www.cliki.net/abcl-jazz.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: abcl-jazz - - - - - - - -
    abcl-jazz
    Code examples on to call the Java Swing API under ABCL to program GUIs.

    MIT License. Could be turned into a fully-fledged UI library with a bit of work.

    See also snow for a GPL library that uses the Java Swing API.

    GitHub

    Requires ABCL, should work on any platform that has the Java VM.


    GUI Java ABCL Windows

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/abuse.html b/clones/lisp/www.cliki.net/abuse.html deleted file mode 100644 index bdab8fab..00000000 --- a/clones/lisp/www.cliki.net/abuse.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - CLiki: abuse - - - - - - - -
    abuse
    Abuse is a 1995 Game, 2D shooter, written C++, including a lisp interpreter close to a subset of Common Lisp, in which the game logic is written.

    The sources have been put in the Public Domain, and the game has been ported to various platforms including Linux+SDL, under GPL.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/access.html b/clones/lisp/www.cliki.net/access.html deleted file mode 100644 index 614f2c17..00000000 --- a/clones/lisp/www.cliki.net/access.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: access - - - - - - - -
    access
    Access is a library to ease getting and setting values in nested dictionary-like objects by providing a unified interface to hash-tables, clos-objects, plists and alists.

    Access on GitHub


    -Topic: AccelerationNet, data structure, Utilities
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/acclaim.html b/clones/lisp/www.cliki.net/acclaim.html deleted file mode 100644 index d6be2647..00000000 --- a/clones/lisp/www.cliki.net/acclaim.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: acclaim - - - - - - - -
    acclaim
    Acclaim is a Presentation Graphics Application, which takes an input file of sexps describing each slide and renders them using CLX.

    Originally written by Daniel Barlow as a quick hack for a -talk at UKUUG 2003, it has since been enhanced in many ways by Max-Gerd Retzlaff. More information from -http://www.matroid.org/acclaim.html

    -

    Getting a PDF export of an Acclaim slideset

    Actually there is a hack to add another renderer for PDF output in addition to the already present clx-renderer. It is done by Manuel Odendahl in June 2004 and uses CL-PDF as I suggested in a mail to the clump-mailinglist.

    Unfortunately this hack is based on an older version of Acclaim before the major refactoring in versions 0.24 and 0.25. Since I had not to do any presentation in the meantime I did not bother to include his pdf-renderer, but if someone is interested in it I would merge it with the current, more powerful version of Acclaim and not wait until I need it (presumedly in May 2005).

    In the meantime, there is a quite simple method to generate a PDF version of a slideset without CL-PDF but by creating, converting and concatenating screenshots(sic!) of the slides. I described it in a Lisppaste to the #lisp-IRC-channel: Paste number 1308: pdf export hack for Acclaim. I admit, it is a quite ugly way to get a PDF but it has the advantage that the created PDF will have *exactly* the same look as the Acclaim slideset.

    (The file size will be acceptable if your slides do not include background images; the PDF version of a Spartan slideset by Christophe Rhodes has a size of 251kB for 12 slides including three larger images and a smaller one.)

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/acclimation.html b/clones/lisp/www.cliki.net/acclimation.html deleted file mode 100644 index 06ebc41b..00000000 --- a/clones/lisp/www.cliki.net/acclimation.html +++ /dev/null @@ -1,84 +0,0 @@ - - - - - CLiki: Acclimation - - - - - - - -
    Acclimation
    This project is meant to provide tools for internationalizing Common -Lisp programs.

    One important aspect of internationalization is of course the language -used in error messages, documentation strings etc. But with this -project we will provide tools for all other aspects of -internationalization as well. To get an idea of what we are aiming -for, here is a partial list of other tools we are thinking of -providing:

      -
    • Showing dates. This is a complex issue because it not only - involves the format of a date, but also the precision. For - example, it is probably not useful to provide more precision for - the time an email was sent than down to the minute.

    • -
    • Measuring weight. There are three important aspects here, namely - the type of object that is being measured, the unit to be used, - and the precision. For instance, in the UK, for measuring the - weight of people, some people like to use the units "stones" and - "pounds" for this purpose, and it is not useful to give more than - one or two digits of precision for the pounds.

    • -
    • Measuring temperature. The same three aspects are involved as - with weight units. Some people might want to use degrees - Fahrenheit for measuring oven temperature, and it is not useful to - have more precision than 10 degrees. The same person might want - to show the temperature of liquid nitrogen in Kelvin.

    • -
    • Names of physical quantities. Even if English is used, some - people (including myself) do not like names of physical quantities - that tie them to a particular unit of measure, such as voltage, - mileage, amperage, wattage, etc. In addition, such quantities can - become ambiguous, because there might be several quantities that - use the same unit, such as length, height, width, or distance. We - intend to provide tools that allow programmers to configure what - names of quantities are used.

    • -
    • Etc. -
    • -
    -Repository: https://github.com/robert-strandh/Acclimation

    License: FreeBSD

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/accumulators.html b/clones/lisp/www.cliki.net/accumulators.html deleted file mode 100644 index 7aecb5f0..00000000 --- a/clones/lisp/www.cliki.net/accumulators.html +++ /dev/null @@ -1,72 +0,0 @@ - - - - - CLiki: accumulators - - - - - - - -
    accumulators
    Accumulators are libraries that help aggregate values by building lists, strings, or other data structures out of the pieces.

      -
    • -COLLECTING - - Common Lispy ways of collecting values during evaluation are diverse; here we discuss some well established and some proposed -
    • -
    • -collectors - - collectors is a common lisp library that aims to ease accumulating values (similar to loop/iter's collecting / appending clauses) -
    • -
    • -General accumulator - - General accumulator is a general-purpose, extensible value accumulator library -
    • -
    • -group-by - - Group-by is a Common Lisp library to help group data into trees (of various formats) based on common/shared values -
    • -
    • -track-best - - There are several libraries that support collecting things generated in loops (e.g -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/acl-compat.html b/clones/lisp/www.cliki.net/acl-compat.html deleted file mode 100644 index 3692eb99..00000000 --- a/clones/lisp/www.cliki.net/acl-compat.html +++ /dev/null @@ -1,76 +0,0 @@ - - - - - CLiki: ACL-COMPAT - - - - - - - -
    ACL-COMPAT
    ACL-COMPAT is a free set of compatibility layers for parts of Franz's ACL system programming API for several Common Lisp implementations -. -It provides ACL-like interfaces for:

      -
    • -threads (including run- and arrest-reasons) -
    • -
    • Sockets (including chunked transfer encoding on some implementations) -
    • -
    • Parts of the EXCL package -
    • -
    • Parts of ACL's SYS package -
    • -
    • ACL's NET.URI (networking) stuff -
    • -
    -It is maintained together with Portableaserve the portable implementation of Franz' AllegroServe Webserver, but can be installed without Portableaserve.

    As of now ACL-COMPAT supports the following Lisp systems, in varying degrees of testedness:

    -The latest version of ACL-COMPAT is included within the Portableaserve code tree from Git at the Portableaserve SF Project site.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/acl.html b/clones/lisp/www.cliki.net/acl.html deleted file mode 100644 index 3afb6924..00000000 --- a/clones/lisp/www.cliki.net/acl.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: ACL - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/actors.html b/clones/lisp/www.cliki.net/actors.html deleted file mode 100644 index 53cb3a4b..00000000 --- a/clones/lisp/www.cliki.net/actors.html +++ /dev/null @@ -1,73 +0,0 @@ - - - - - CLiki: actors - - - - - - - -
    actors
    Actors is an actors package for LispWorks.

    (see its announcement on reddit)

    -Thread-agnostic Actors in Common Lisp

    Repository: https://github.com/dbmcclain/Lisp-Actors

    License: Unlicense

    Topic Listing

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/adler32.html b/clones/lisp/www.cliki.net/adler32.html deleted file mode 100644 index f686fb4c..00000000 --- a/clones/lisp/www.cliki.net/adler32.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: adler32 - - - - - - - -
    adler32
    Adler-32 is a hash algorithm like CRC-32, except that it is much faster and carries a slightly higher probability of collisions. The zlib compression library uses Adler-32 as its checksum algorithm. This implementation of Adler-32 (by Nathan Froyd) was released under the BSD license.


    -cryptography
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/adopt-subcommands.html b/clones/lisp/www.cliki.net/adopt-subcommands.html deleted file mode 100644 index 20353fbe..00000000 --- a/clones/lisp/www.cliki.net/adopt-subcommands.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: adopt-subcommands - - - - - - - -
    adopt-subcommands
    Extend the Adopt command line processing library to handle nested subcommands.

    Depends on: adopt, bobbin, split-sequence, uiop

    Repository: https://gitlab.com/daewok/adopt-subcommands


    -MIT-LICENSE, command-line options parser
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/adopt.html b/clones/lisp/www.cliki.net/adopt.html deleted file mode 100644 index e8a243d6..00000000 --- a/clones/lisp/www.cliki.net/adopt.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: adopt - - - - - - - -
    adopt
    adopt is a damn option parsing library. Adopt aims to be a simple, robust option parser. It can automatically print help information and even generate man pages for you.


    -command-line options parser
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/adw-charting.html b/clones/lisp/www.cliki.net/adw-charting.html deleted file mode 100644 index 2d6f9bcf..00000000 --- a/clones/lisp/www.cliki.net/adw-charting.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: adw-charting - - - - - - - -
    adw-charting
    ADW-Charting is a simple plotting library for quickly creating nice-looking pie charts and line charts. It presents a function-oriented interface similar to Vecto, and saves results to PNG. Since ADW-Charting and all supporting libraries are written completely in Common Lisp, without depending on external non-Lisp libraries, it should work in any Common Lisp environment. ADW-Charting is available under a BSD-like license.

    The canonical location for ADW-Charting is http://ryepup.unwashedmeme.com/lisp/adw-charting/. -ADW-Charting can be downloaded with quicklisp

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/aftpd.html b/clones/lisp/www.cliki.net/aftpd.html deleted file mode 100644 index bf718f0e..00000000 --- a/clones/lisp/www.cliki.net/aftpd.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: aftpd - - - - - - - -
    aftpd
    aftpd is an FTP server written in Common Lisp.

    Homepage: https://github.com/franzinc/aftpd

    License: LLGPL


    -Topics: networking
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/agnostic-lizard.html b/clones/lisp/www.cliki.net/agnostic-lizard.html deleted file mode 100644 index ade9480f..00000000 --- a/clones/lisp/www.cliki.net/agnostic-lizard.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: agnostic-lizard - - - - - - - -
    agnostic-lizard
    An almost correct portable code walker for Common Lisp.

    Repository: https://gitlab.common-lisp.net/mraskin/agnostic-lizard

    Overview: https://users.mccme.ru/raskin/code-walking-slides.pdf

    License: GPL3


    -metaprogramming
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ah2cl.html b/clones/lisp/www.cliki.net/ah2cl.html deleted file mode 100644 index bfe5b8a9..00000000 --- a/clones/lisp/www.cliki.net/ah2cl.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: ah2cl - - - - - - - -
    ah2cl
    ah2cl (Another Header to Common Lisp converter) is a tool for parsing C header files and generating FFI bindings for CLISP and UFFI. For more information see the project site.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ai.html b/clones/lisp/www.cliki.net/ai.html deleted file mode 100644 index a45f4e1f..00000000 --- a/clones/lisp/www.cliki.net/ai.html +++ /dev/null @@ -1,80 +0,0 @@ - - - - - CLiki: AI - - - - - - - -
    AI
    Common Lisp Artificial Intelligence tools by topic:

    The CMU Artificial Intelligence Repository contains a wealth of both Lisp and AI (as well as Scheme and Prolog) related documents and code.


    AI Books

    -

    • -Emperical Methods for Artificial Intelligence Paul R. Cohen; MIT Press; ISBN 0-262-03225-2 - Computer science and artificial intelligence in particular have no curriculum in research methods, as other sciences do. This book presents empirical methods for studying complex computer programs: exploratory tools to help find patterns in data, experiment designs and hypothesis-testing tools to help data speak convincingly, and modeling tools to help explain data. Although many of these techniques are statistical, the book discusses statistics in the context of the broader empirical enterprise. The first three chapters introduce empirical questions, exploratory data analysis, and experiment design. The blunt interrogation of statistical hypothesis testing is postponed until chapters 4 and 5, which present classical parametric methods and computer-intensive (Monte Carlo) resampling methods, respectively. This is one of few books to present these new, flexible resampling techniques in an accurate, accessible manner. - Much of the book is devoted to research strategies and tactics, introducing new methods in the context of case studies. Chapter 6 covers performance assessment, chapter 7 shows how to identify interactions and dependencies among several factors that explain performance, and chapter 8 discusses predictive models of programs, including causal models. The final chapter asks what counts as a theory in AI, and how empirical methods -- whiping cch deal with specific systems -- can foster general theories.
    • -The Limits of Mathematics, The Unknowable G. J. Chaitin; Springer-Verlag Singapore; 1997; ISBN 981-3083-59-X; ISBN 1-85233-668-4. - The Limits of Mathematics presents the final version of Chaitin's course on the limits of mathematical reasoning. This course uses algorithmic information theory to show that mathematics has serious limitations, and features a new more didactic approach to algorithmic information theory using LISP and Mathematica software. The thesis of the book is that the incompleteness phenomenon discovered by Goedel is much more widespread and serious than hitherto suspected. Also Goedel and Einstein's views on the foundations of mathematics are discussed, and it is suggested that mathematics is quasi-empirical and that experimental mathematics should be used more freely. [Publisher's Abstract] - The companion "prequel" volume, The Unknowable Springer-Verlag Singapore; 1999; ISBN: 981-4021-72-5; presents an accessible historical survey contrasting Chaitin's ideas on the limits and structure of mathematical understanding with Goedel's concept of incompleteness and Turing's concept of uncomputability.
    • -LISP 3rd edition; Patrick H. Winston, Berthold K. P. Horn; Addison-Wesley (Reading, MA); 1989; ISBN 0-201-08319-1 Covers the basic concepts of the language, but also gives a lot of detail about programming AI topics such as rule-based expert systems, forward chaining, interpreting transition trees, compiling transition trees, object oriented programming, and finding patterns in images.
    • -The Elements of Artificial Intelligence Using Common Lisp 2nd edition; Steven Tanimoto; Computer Science Press; 1995; ISBN 0-71-67826-9-3; ISBN 0-71-67823-0-8
    • -Common LISP Modules: Artificial Intelligence in the Era of Neural Networks and Chaos Theory Mark Watson; Springer-Verlag; 1991; ISBN 0-387-97614-0
    • -Natural language understanding James Allen; 1994; Addison-Wesley; ISBN 0-8053-0334-0
    • -Genetic Programming: On the Programming of Computers by Means of Natural Selection John Koza; 1992; MIT Press
    • -Genetic Programming II: Automatic Discovery of Reusable Programs John Koza; 1994; MIT Press
    • -Books on Artificial Intelligence and Mathematics, with a Lisp language emphasis; ALU list dead link, redirected to archive.org
    • -Building Problem Solvers describes how to build reasoning systems, using Common Lisp source code available at this web site. The code includes a variety of rule engines, truth maintenance systems, and constraint systems.
    • -Paradigms of Artificial Intelligence Programming: Case Studies in Common Lisp by Peter Norvig.

    • -
    • -Natural Language Processing in Lisp ­ An Introduction to Computational Linguistics Gerald Gazdar, Chris Mellish; 1989; Addison-Wesley Publishing Company; ISBN 0-201-17825-7
    • -Common Lisp Programming for Artificial Intelligence Tony Hasemer, John Domingue; 1989; Addison-Wesley Publishing Company; ISBN 0-201-17579-7 - This book presents an introduction to Artificial Intelligence with an emphasis on the role of knowledge representation. Three chapters focus on object-oriented programming, including the construction and use of a subset of CLOS. - The authors' research into the problems faced by novice Lisp users influenced the content and style of the book. (The authors are members of the Human Cognition Research Laboratory at the Open University in the United Kingdom.) The book employs a tutorial approach, especially in areas that students often find difficult, such as recursion. Early and progressive treatment of the evaluator promotes understanding of program execution. Hands-on exercises are used to reinforce basic concepts. - The book assumes no prior knowledge of Lisp or AI and is a suitable textbook for students in Cognitive Science, Computer Science and other disciplines taking courses in Lisp or AI programming as well as being invaluable for professional programmers who are learning Lisp for developing AI applications.
    • -Artificial Intelligence with Common Lisp ­ Fundamental of Symbolic and Numeric Processing James L. Noyes; 1992; D.C.Heath and Company; ISBN 978-0-669-19473-9; ISBN 0-669-19473-5
    • Artificial Intelligence Programming Eugene Charniak, Christopher K. Riesbeck, Drew V. McDermott, James R. Meehon; 1987; Lawrence Erlbaum Associates Publishers; ISBN 0-89859-609-2
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/akater.html b/clones/lisp/www.cliki.net/akater.html deleted file mode 100644 index a62e09de..00000000 --- a/clones/lisp/www.cliki.net/akater.html +++ /dev/null @@ -1,88 +0,0 @@ - - - - - CLiki: akater - - - - - - - -
    akater
    a Person who moved to Common Lisp from Mathematica and hasn't yet (as of 2020-03-08) become productive enough in CL.

    Created following pages on CLiki (in chronological order):

    Interests, in alphabetical order: functional syntax, GOFAI, interactive mathematics, term rewriting.

    Proficiency: minuscule.

    akater's long term goals in Common Lisp are: -

    Minimalistic Gentoo user.

    Fediverse: @akater@shitposter.club

    Matrix: akater:matrix.org

    XMPP: akater at jabber de

    PGP: A24961DE3ADD04E057ADCF4599555CE6F2E1B21D

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/alexandria.html b/clones/lisp/www.cliki.net/alexandria.html deleted file mode 100644 index a962cbd9..00000000 --- a/clones/lisp/www.cliki.net/alexandria.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Alexandria - - - - - - - -
    Alexandria
    Alexandria is a collection of portable public domain utilities.

    Official home

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/algorithm.html b/clones/lisp/www.cliki.net/algorithm.html deleted file mode 100644 index 99d3c288..00000000 --- a/clones/lisp/www.cliki.net/algorithm.html +++ /dev/null @@ -1,168 +0,0 @@ - - - - - CLiki: algorithm - - - - - - - -
    algorithm
    Algorithms for doing various complicated things (mostly math-related).

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/allegroserve.html b/clones/lisp/www.cliki.net/allegroserve.html deleted file mode 100644 index 38e9b087..00000000 --- a/clones/lisp/www.cliki.net/allegroserve.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: AllegroServe - - - - - - - -
    AllegroServe
    Portable AllegroServe is a portable version of Franz Inc's AllegroServe HTTP server, which also includes an HTML generator and an HTTP client.

    It supports LispWorks, Clozure CL, SBCL/Linux, and SBCL/MacOS (SBCL on Windows is questionable due to immature thread support of SBCL on Windows).

    You can find it at https://sourceforge.net/projects/portableaserve/, and the best way to load it into a project (as with most CL libraries these days) is via Quicklisp.

    AllegroServe (formerly Allegro iServe) is a LLGPLed Web server which is designed for use with Allegro Common Lisp.

    AllegroServe has a public repository and online documentation that includes a tutorial.

    NOTE - Portable Allegroserve has been maintained with patches recently, for compatibility with LispWorks, SBCL/Linux, and CCL. At some point it could use a refactoring for acl-compat to use now-defacto-standard libraries from Quicklisp (e.g. Bordeaux-threads), and to track the current original AllegroServe. But the current Portable AllegroServe is usable at least on the platforms mentioned.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/alpaca.html b/clones/lisp/www.cliki.net/alpaca.html deleted file mode 100644 index 6f09a89a..00000000 --- a/clones/lisp/www.cliki.net/alpaca.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: alpaca - - - - - - - -
    alpaca
    Alpaca is a new text editing application for authors, written in OpenMCL for MacOS X / Cocoa.

    Repository: https://github.com/huangjs/cl/tree/master/lib/alpaca

    License: LLGPL

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/amazon web services.html b/clones/lisp/www.cliki.net/amazon web services.html deleted file mode 100644 index f0eb6201..00000000 --- a/clones/lisp/www.cliki.net/amazon web services.html +++ /dev/null @@ -1,64 +0,0 @@ - - - - - CLiki: Amazon Web Services - - - - - - - -
    Amazon Web Services
      -
    • -CL-S3 - - CL-S3 is a Common Lisp library that implements a client interface to the Amazon S3 Web Service -
    • -
    • -CL-SES4 - - AWS SES email sender using Signature Version 4 of Amazon's API -
    • -
    • -ZS3 - - ZS3 is a library for interacting with Amazon's Simple Storage Service (S3) and CloudFront content distribution service -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/anaphora.html b/clones/lisp/www.cliki.net/anaphora.html deleted file mode 100644 index b4a20161..00000000 --- a/clones/lisp/www.cliki.net/anaphora.html +++ /dev/null @@ -1,86 +0,0 @@ - - - - - CLiki: Anaphora - - - - - - - -
    Anaphora
    Anaphora is the anaphoric macro collection from Hell; it includes many new fiends in addition to old friends like AIF and AWHEN.

    Anaphora is in the Public Domain.

    Anaphora homepage; some documentation.

    ANAPHORA> (do-symbols (i (find-package :anaphora)) (when (eql (symbol-package i) (find-package :anaphora)) (cond ((fboundp i) (format t "~A~%" (cons i (sb-introspect:function-arglist i))) (awhen (documentation i 'function) (format t "   ~A~%" it))) (t (format t "~A~%" i)))))
    -OP
    -ELSE
    -RESULT
    -REC
    -(SYMBOLIC OP TEST &BODY BODY)
    -TEST
    -BODY
    -(ANAPHORIC OP TEST &BODY BODY)
    -THEN
    -FORM
    -I
    -CASES
    -CLAUSES
    -(ATYPECASE FORM &BODY CASES)
    -(AECASE FORM &BODY CASES)
    -(SWHEN TEST &BODY BODY)
    -(ACCASE FORM &BODY CASES)
    -(AETYPECASE FORM &BODY CASES)
    -(AWHEN TEST &BODY BODY)
    -(ASIF TEST THEN &OPTIONAL ELSE)
    -(ACASE FORM &BODY CASES)
    -(SCCASE FORM &BODY CASES)
    -(SCOND &BODY CLAUSES)
    -(SIF TEST THEN &OPTIONAL ELSE)
    -(SECASE FORM &BODY CASES)
    -(ACTYPECASE FORM &BODY CASES)
    -(ACOND &BODY CLAUSES)
    -(AIF TEST THEN &OPTIONAL ELSE)
    -(STYPECASE FORM &BODY CASES)
    -(SCTYPECASE FORM &BODY CASES)
    -(SETYPECASE FORM &BODY CASES)
    -(SUNLESS TEST &BODY BODY)
    -(SCASE FORM &BODY CASES)
    -IT

    See anaphoric-variants for an alternative.


    -convenience library
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/anaphoric-variants.html b/clones/lisp/www.cliki.net/anaphoric-variants.html deleted file mode 100644 index bc9280a7..00000000 --- a/clones/lisp/www.cliki.net/anaphoric-variants.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: anaphoric-variants - - - - - - - -
    anaphoric-variants
    anaphoric-variants gives access to anaphoric variants of operators through one macro: anaphoric. The user explicitly provides a variable name, preserving sanity, in contrast to the traditional use of an evil implicit variable (it). Some operators can bind additional handy variables when explicitly requested.

    See the project's home for all details.

    (anaphoric-variants is an alternative to anaphora.)


    -convenience library, Unlicense, Public Domain
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/anardb.html b/clones/lisp/www.cliki.net/anardb.html deleted file mode 100644 index f1e85e98..00000000 --- a/clones/lisp/www.cliki.net/anardb.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: anardb - - - - - - - -
    anardb
    Provides atomic, consistent, isolated, durable (ACID) multi-process-safe Lisp object serialization.

    Anardb provides persistent classes, which can have slots indexed in hash-tables, and the ability to perform ACID transactions on them from multiple processes simultaneously. It is a bit like a prevalent database.

    It requires UN*X filesystem semantics and has been tested on -Allegro 8.1 x86 and AMD64 but should be portable to SBCL, etc.

    Repository: https://gitlab.common-lisp.net/vsedach/anardb

    License: LLGPL


    -database ObjectStore
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/annual European Lisp Symposiums (ELS).html b/clones/lisp/www.cliki.net/annual European Lisp Symposiums (ELS).html deleted file mode 100644 index 984a9003..00000000 --- a/clones/lisp/www.cliki.net/annual European Lisp Symposiums (ELS).html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: annual European Lisp Symposiums (ELS) - - - - - - - -
    annual European Lisp Symposiums (ELS)
    The purpose of the European Lisp Symposium is to provide a forum for the discussion and dissemination of all aspects of design, implementation and application of any of the Lisp and Lisp-inspired dialects, including Common Lisp, Scheme, Emacs Lisp, AutoLisp, ISLISP, Dylan, Clojure, ACL2, ECMAScript, Racket, SKILL, Hop and so on. We encourage everyone interested in Lisp to participate.

    This Conference takes place every year since 2008. For more information, also on the next meeting, please visit http://www.european-lisp-symposium.org/

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ap5.html b/clones/lisp/www.cliki.net/ap5.html deleted file mode 100644 index bca58387..00000000 --- a/clones/lisp/www.cliki.net/ap5.html +++ /dev/null @@ -1,64 +0,0 @@ - - - - - CLiki: ap5 - - - - - - - -
    ap5
    A mature, embedded, in-memory Relational ObjectStore and a high-level/declarative/specification language.

    ap5 supports the definition of -
    -- "transition relations" which are like SQL database tables
    -- "defined relations" which are like SQL views
    -- "computed relations" which are like SQL stored procedures returning data
    -- "constraints" which are like SQL constraints
    -- "automation rules" which are like SQL triggers

    Data representation allows indexing. User can add new types of indexing. -Queries are optimized according to user-definable index performance heuristics. -Ap5 supports transactions. Transaction log is available for reading. -Definition language is rather powerful and goes far beyond SQL. -e.g. data can be canonicalized when storing and finding, -transitive closure of binary relations can be defined.

    So ap5 can be classified as ai application and used as a fundament for -building knowledge representation systems systems. ap5 -is a language extension, its queries are just lisp expressions -so they are embedded into lisp code easily.

    Homepage: http://ap5.com/

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/application.html b/clones/lisp/www.cliki.net/application.html deleted file mode 100644 index 1de13da3..00000000 --- a/clones/lisp/www.cliki.net/application.html +++ /dev/null @@ -1,356 +0,0 @@ - - - - - CLiki: Application - - - - - - - -
    Application
    Applications suitable for (or at least, intended for) end-users

    “Please don't assume Lisp is only useful for Animation and Graphics, AI, -Bioinformatics, B2B and Ecommerce, Data Mining, EDA/Semiconductor applications, Expert -Systems, Finance, Intelligent Agents, Knowledge Management, Mechanical CAD, Modeling and -Simulation, Natural Language, Optimization, Research, Risk Analysis, Scheduling, Telecom, -and Web Authoring just because these are the only things they happened to list.” -- Kent Pitman

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/april.html b/clones/lisp/www.cliki.net/april.html deleted file mode 100644 index 5d344704..00000000 --- a/clones/lisp/www.cliki.net/april.html +++ /dev/null @@ -1,73 +0,0 @@ - - - - - CLiki: april - - - - - - - -
    april
    A subset of APL (A Programming Language) compiling to Common Lisp.

    Usage examples follow.

    Evaluate APL expression: -

    (april "+/3 4⍴⍳12") -;; => -#(10 26 42) -

    Count from 0: -

    (april (set (:state :count-from 0)) "⍳9") -;; => -#(0 1 2 3 4 5 6 7 8) -

    Common Lisp I/O: -

    (april (set (:state :in ((a 1) (b 2)) - :out (a c))) - "c←a+b×11") -;; => -1 -23 -

    Symbols with dashes need to be converted into camelCase in APL: -

    (april (set (:state :in ((my-var 2) - (other-var 5)))) - "myVar×otherVar+5") -;; => -20 -

    Uses array-operations underneath.

    Homepage: GitHub

    License: Apache 2


    -Topics: linear algebra, matrix, programming language
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/araneida.html b/clones/lisp/www.cliki.net/araneida.html deleted file mode 100644 index d098005f..00000000 --- a/clones/lisp/www.cliki.net/araneida.html +++ /dev/null @@ -1,195 +0,0 @@ - - - - - CLiki: Araneida - - - - - - - -
    Araneida
    Araneida is a fairly small free extensible HTTP server for SBCL and many other Common Lisp implementations. CLiki is an Araneida application.

    Araneida has not been under active development for a long time. Seems like hunchentoot is the prime web development framework in recent years.

    Salient features -/ -

      -
    • Free - BSD Licence, sans-advertising-clause, but -for the modification that I'm not the Regents of the University of California -
    • -
    • Works with or without multiple threads (depending on the lisp implementation). In single-threaded mode, hooks into the event loop so that you still have the top-level available while it -listens for connections. -
    • -
    • Designed to sit behind a caching proxy; can write appropriate -bits of Apache config. -If this bothers you, pretend that mod_proxy is a typo for -mod_araneida. This includes playing nicely with SSL -
    • -
    • Understands HTTP/1.1 Host: header for multiple host support -
    • -
    • All content is dynamic and created by calling user-defined -handlers (there is a handler in there already that outputs -files, if you need it) -
    • -
    • Pattern-matching tree rewrite functions and HTML-from-sexpr generation makes balancing -tags suddenly trivially simple -
    • -
    • Runs on multiple Lisps. As of version 0.9, these are SBCL, CMUCL, OpenMCL, ABCL, CLisp, Allegro Common Lisp, and LispWorks. MCL is supported in CVS. This makes Araneida the most portable Common Lisp web server. -
    • -
    -Note: SBCL and CMUCL are confirmed to work as of araneida-0.9-a3. The others -are believed to work, but are not currently in the test suite. Updates appreciated.

    Alan Shields maintains a current Araneida linked here. Darcs repository -and (some) older versions available for download.

    It is not currently active. Latest patch to source tree is from january 2006. Seems that hunchentoot stole the show from araneida.

    Discussion about Araneida takes place in the lispweb mailing list.

    -FWIW, to use SLIME to debug Araneida request handlers, I use :sigio
    -and the following method:
    -
    -  (defmethod handle-request :around ((handler my-handler) request)
    -    (if *debug*
    -        (let ((*debugger-hook* 'swank:swank-debugger-hook))
    -          (handler-bind ((error #'invoke-debugger))
    -            (call-next-method)))
    -        (call-next-method)))
    -
    -Because Araneida blocks any other serve-event handlers from running while it's handling a request, it doesn't mix well with :fd-handler if
    -you try to invoke the SLIME debugger.
    -

    (from Thomas F. Burdick on comp.lang.lisp, article id xcv3c0p6nhn.fsf@conquest.OCF.Berkeley.EDU)

    Also see this paste


    Araneida was originally designed to run behind a reverse-proxying Apache server, and still works best have also found that the reverse works well. Here is my pound.cfg:

    ListenHTTP      *,3580
    -UrlGroup        "favicon"
    -EndGroup
    -UrlGroup        ".*"
    -BackEnd         127.0.0.1,3500,1
    -EndGroup

    This filters out the silly favicon.ico requests which are inevitably a 404. It's possibly by using the UrlGroup regexp syntax to redirect requests for static content to an Apache on the same host as well. Though I haven't tested it, Pound does HTTPS too.


    I (Dmitri Hrapof) have just finished rewriting web interface for my dictionary server (Geiriadur) from Python to CL (I should say now it's two times smaller, two times faster and infinitely more manageable :-) -As a result of this process I have two suggestions about Araneida + CLISP + Unicode.

    First, remove the :external-format argument from listener-accept-stream in compat-clisp.lisp and make it look like:

    -(defun listener-accept-stream (listener)
    -  (socket:socket-accept (http-listener-socket listener)
    -                        :buffered nil
    -                        :element-type 'character))
    -

    The default format will be sufficient, and previously hard-coded iso-8859-1 doesn't permit use of UTF-8.

    Second, make urlstring-unescape in url.lisp conditionally evaluated:

    -#-(or unicode sb-unicode allegro)
    -(defun urlstring-unescape (url-string)
    -  (do* ((n 0 (+ n 1))
    -        (out '()))
    -      ((not (< n (length url-string))) (coerce (reverse out) 'string ))
    -    (let ((c (elt url-string n)))
    -      (setf out 
    -            (cond ((eql c #\%)
    -                   (progn (setf n (+ 2 n))
    -                          (cons (code-char
    -				 (or (parse-integer
    -				      url-string :start (- n 1)
    -				      :end (+ n 1)
    -				      :junk-allowed t
    -				      :radix 16) 32))
    -                                out)))
    -                  ((eql c #\+)
    -                   (cons #\Space out))
    -                  (t (cons c out)))))))
    -
    -#+clisp
    -(defun baityvstroku (baity)
    -  (ext:convert-string-from-bytes baity CUSTOM:*DEFAULT-FILE-ENCODING*))
    -
    -#+sb-unicode
    -(defun baityvstroku (baity)
    -  (sb-ext:octets-to-string (coerce baity '(vector (unsigned-byte 8)))))
    -
    -#+allegro
    -(defun baityvstroku (baity)
    -  (octets-to-string
    -   (coerce baity '(array (unsigned-byte 8) (*))) :external-format :utf-8))
    -
    -#+(or unicode sb-unicode allegro)
    -(defun urlstring-unescape (url-string)
    -  (do* ((n 0 (+ n 1))
    -        (out nil) (len (length url-string)))
    -       ((not (< n len)) 
    -	(baityvstroku (apply #'vector (nreverse out))))
    -       (let ((c (elt url-string n)))
    -	 (cond ((eql c #\%)
    -		(progn 
    -		  (setf n (+ 2 n))
    -		  (if (< n len)
    -		      (push (or (parse-integer
    -				 url-string :start (- n 1)
    -				 :end (+ n 1)
    -				 :junk-allowed t
    -				 :radix 16) 32)
    -			    out))))
    -	       ((eql c #\+)
    -		(push (char-code #\Space) out))
    -	       (t (push (char-code c) out))))))
    -

    Again, this change will allow use of UTF-8 (or any other encoding) in get and post parameters.


    This is my third attempt at getting this into the hands of someone who knows! :)

    The Araneida request class has a body for POST requests. read-request-from-stream parses the HTTP body into an assoc list with the following line (line 27, daemon.lisp):

    (parsed-body (if body (parse-body body '(#\&) len) nil))

    This is perfectly sane behaviour for x-www-form-urlencoded POST bodies (e.g. first=value&second=value). However, for all other bodies it is destructive and nonsensical as (particularly XML, which uses = for attributes). Unfortunately, I'm working with those other bodies e.g. application/rdf+xml.

    My initial hack was to put in a simple test on the Content-Type header:

    (parsed-body (if body
    -                ;; Use member on the raw assoc list to make sure we catch requests
    -                ;; with multiple Content-Types.
    -			  (if (member "application/x-www-form-urlencoded"
    -				      (cdr (assoc :content-type headers)) :test #'string=)
    -			    (parse-body body '(#\&) len)
    -			    body)
    -			  nil))

    i.e. only parse the body if we have form-encoded data; otherwise just use the body string (one could also url-unencode the body string). This split has the unfortunate side effect for that for some requests (request-body request) will return an assoc list, and for others a string. I don't know what consequences this would have on existing code. (stringp) is one remedy; another would be to provide body-data and body-parsed (or similar names) slots on request, rather than just body. I would think that if Araneida-based applications are using the parsed data (and it's valid/correct) then their clients must be sending the correct headers (e.g. wget sends x-www-form-urlencoded by default), so putting this check in wouldn't break anything, but I might be wrong.

    Thoughts, anyone?

    Well, both the parsed and uparsed bodies seem to be passed in as part of your request. Access the one you need. Although it woulud seem quite possible to invoke different parsing methods via a quick lookup and of the content-type in the header - which has already been parsed at this stage.


    I (Arnaud Diederen) have been using Araneida to set up a webservice that receives XML requests (based on specs). -To parse the XML I'm using CXML, that accepts a byte stream.

    Therefore, I hacked araneida a tad so it doesn't parse it's body content anymore but rather provides the byte stream instead of parsed data. I actually don't think it is be a bad idea to have an access to the raw stream. (Still, I built a set of tools to build 'helpers' on top of the request about (basically, the request's content-type defines what helper to build)).

    .. but I keep wondering if I should go on using araneida to do that kind of work, or rather use another web server.

    Arnaud Diederen, 12 July 2005


    If you use Araneida with recent clisp (2.37), you may want to modify some behaviour to

      -
    • Make it correctly bind the local interface
    • -
    • Accept request while working with REPL (using readline)
    • -
    • Allow setting of length of queue of incoming tcp connections (backlog of listen)
    • -
    -The proposed changes to functions defined in compat/compat.clisp are as follows:

    -(defun convert-address (address)
    -  "Convert IP address to string."
    -  (etypecase address
    -     (string address)
    -     (vector (format nil "~{~d.~^~}" (map 'list #'identity address)))))
    -
    -(defparameter *default-backlog* 10)
    -(defun host-make-listener-socket (address port)
    -  (socket:socket-server port :backlog *default-backlog*
    -                             :interface (convert-address address)))
    -
    -(defun host-serve-events-once (&optional block)
    -  "one-shot duplicate of host-serve-events. Returns integer."
    -  (aif (mapcar #'car *fd-handlers*)
    -       (loop for i in *fd-handlers*
    -             for j in (socket:socket-status it (if block nil 0))
    -             do (if j
    -                    (funcall (cdr i) (car i))))) 0)
    -
    -;  Uncomment this to handle connections while in repl
    -; (setf readline:event-hook #'araneida::host-serve-events-once)
    -

    Few further notes:

      -
    • you can use either "127.0.0.1" and #(127 0 0 1) as :address parameter when -creating listener; araneida only passes it verbatim. THe vector form is more compatible with other implementations.
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/archive.html b/clones/lisp/www.cliki.net/archive.html deleted file mode 100644 index cf20df0d..00000000 --- a/clones/lisp/www.cliki.net/archive.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: archive - - - - - - - -
    archive
    ARCHIVE is a library for reading an writing disk-based file archives such as those generated by the 'tar' and 'cpio' programs on Unix. ARCHIVE aspires to be a pure Common Lisp replacement for the 'tar' program.

    License: BSD-like

    Source repository: https://github.com/froydnj/archive

    Depends on: trivial-gray-streams, cl-fad

    Author: Nathan Froyd


    -file format
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/arduino-experiments.html b/clones/lisp/www.cliki.net/arduino-experiments.html deleted file mode 100644 index f12132e0..00000000 --- a/clones/lisp/www.cliki.net/arduino-experiments.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: arduino-experiments - - - - - - - -
    arduino-experiments
    arduino-experiments is a library for interfacing to the Arduino embedded computer via serial I/O from Lisp.

    Blog post with more details.

    Homepage: https://github.com/ryepup/arduino-experiments

    License: BSD

    If you want to compile Lisp code to run on the Arduino itself, take a look at Arduino Lisp.


    -Topics: embedded arduino
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/arduino.html b/clones/lisp/www.cliki.net/arduino.html deleted file mode 100644 index c7d575b9..00000000 --- a/clones/lisp/www.cliki.net/arduino.html +++ /dev/null @@ -1,60 +0,0 @@ - - - - - CLiki: Arduino - - - - - - - -
    Arduino
      -
    • -Arduino Lisp - - Arduino Lisp is a compiler from a subset of Common Lisp to the subset of C++ used by the Arduino C++ compiler -
    • -
    • -arduino-experiments - - arduino-experiments is a library for interfacing to the Arduino embedded computer via serial I/O from Lisp -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/argdoc.html b/clones/lisp/www.cliki.net/argdoc.html deleted file mode 100644 index 4b7fc080..00000000 --- a/clones/lisp/www.cliki.net/argdoc.html +++ /dev/null @@ -1,57 +0,0 @@ - - - - - CLiki: argdoc - - - - - - - -
    argdoc
    simple package documentation library for common lisp

    argdoc simple package documentation library for common lisp.It provides its functionality with introspection. If you want to create the documentation for the argdoc-package for example then type this:

    (asdf:load-system :argdoc-app)

    -(main)

    -If you just use the library and create a package documentation for package xxx then just type

    (asdf:load-system :argdoc)
    -(argdoc:document :package :xxx - :filename "xxx.html" - :path "../doc/" - :doc-type 'argdoc:doc-html)

    When you create a html-file, then copy the css-file in ../doc to your ouput directory.

    License is based on GNU LESSER GENERAL PUBLIC LICENSE.

    Documentation Tool

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/argparse.html b/clones/lisp/www.cliki.net/argparse.html deleted file mode 100644 index 0c5c4e92..00000000 --- a/clones/lisp/www.cliki.net/argparse.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: argparse - - - - - - - -
    argparse
    simple argument parser library for common lisp

    argparse simple argument parser library for common lisp. If you want to start the example application, then type this:

    (asdf:load-system :argparse-app)

    -(main)

    -If you just use the library then just type

    (asdf:load-system :argparse)

    License is based on GNU LESSER GENERAL PUBLIC LICENSE.

    command-line options parser

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/armish.html b/clones/lisp/www.cliki.net/armish.html deleted file mode 100644 index 9923ecc6..00000000 --- a/clones/lisp/www.cliki.net/armish.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: armish - - - - - - - -
    armish
    Armish is an arm assembler. It produces machine code.

    Licence: LLGPL

    Dependencies: umpa-lumpa, SPLIT-SEQUENCE, FiveAM, arnesi

    Homepage: http://common-lisp.net/project/armish/

    Download: darcs get http://common-lisp.net/project/armish/darcs/armish

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/arnesi.html b/clones/lisp/www.cliki.net/arnesi.html deleted file mode 100644 index a983222d..00000000 --- a/clones/lisp/www.cliki.net/arnesi.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: arnesi - - - - - - - -
    arnesi
    arnesi is a collection of utilities written by Marco Baringer. It includes some ASDF-extensions.

    The current long term maintenance branch of arnesi can be found at github This will be the future quicklisp version of arnesi and is where to report bugs.

    Among many other things, arnesi provides pattern matching facilities: a fare-matcher style pattern matcher and "regular" list matcher. optima's CLiki page claims optima had superseded arnesi's pattern matcher.

    Topic: continuations, utilities

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/aromyxo.html b/clones/lisp/www.cliki.net/aromyxo.html deleted file mode 100644 index 08bee760..00000000 --- a/clones/lisp/www.cliki.net/aromyxo.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: aromyxo - - - - - - - -
    aromyxo
    aromyxo is Lars Rune Nøstdal's utilities library.

    Homepage: https://github.com/lnostdal/Aromyxo

    License: (AGPL)v3

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/array-operations.html b/clones/lisp/www.cliki.net/array-operations.html deleted file mode 100644 index 4d8929f6..00000000 --- a/clones/lisp/www.cliki.net/array-operations.html +++ /dev/null @@ -1,57 +0,0 @@ - - - - - CLiki: array-operations - - - - - - - -
    array-operations
    Provides commonly used operations on arrays.

    Operations provided include elementwise +, -, * and /, the same operations involving an array and a scalar, minimum, maximum and range (the last one is faster then the two of them called separately), and also general functions to implement other, similar functions, including array-reduce, array-map, etc.

    It also has a macro for `vectorizing' operations:

    (let ((a #(1d0 2d0 3d0)) - (b #(4d0 5d0 6d0)) - (c 0.25d0)) - (vectorize (a b) - (+ a b c 0.25))) ; => #(5.5d0 7.5d0 9.5d0) -

    Formerly, many functions in this package were part of FFA, but were split to eliminate the dependency on CFFI. With the fix in SBCL, we no longer need to make a special effort to make arrays "foreign friendly".

    Homepage: GitHub (archived original), GitHub (an actively maintained fork)

    License: MIT (as stated in asdf:defsystem; the license text in LICENSE file is boilerplate from another project)

    See article Multidimensional arrays in The Common Lisp Cookbook for some differences between the fork and the original.


    -data structure
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/arrow-macros.html b/clones/lisp/www.cliki.net/arrow-macros.html deleted file mode 100644 index 325ef710..00000000 --- a/clones/lisp/www.cliki.net/arrow-macros.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: arrow-macros - - - - - - - -
    arrow-macros
    Clojure-like arrow macros in Common Lisp.

    Repository: https://github.com/hipeta/arrow-macros

    Depends on: alexandria


    -MIT-LICENSE, metaprogramming
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/asd-generator.html b/clones/lisp/www.cliki.net/asd-generator.html deleted file mode 100644 index af4dafc0..00000000 --- a/clones/lisp/www.cliki.net/asd-generator.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: asd-generator - - - - - - - -
    asd-generator
    Automatic directory scanner/generator for .asd project files.

    Depends on: cl-fad, iterate, alexandria, trivia

    Repository: https://github.com/phoe/asd-generator

    License: GPL3


    -ASDF-Extension
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/asdf binary locations.html b/clones/lisp/www.cliki.net/asdf binary locations.html deleted file mode 100644 index 99ce39a3..00000000 --- a/clones/lisp/www.cliki.net/asdf binary locations.html +++ /dev/null @@ -1,82 +0,0 @@ - - - - - CLiki: asdf binary locations - - - - - - - -
    asdf binary locations
    This ASDF-Extension below shows one good way to specify the binary locations used ASDF systems.

    FWIW, Gary King has packaged up what's below with some extra loving and SLIME code goodness to make the ASDF-Binary-locations package.

    ASDF doesn't specify the output directories for binaries (FASL) files because the system definition isn't the right place to do this. However, specifying the output location is a common question. Here's an answer.

    Note that the original contents of this page can be found at here.

    (in-package :asdf) - -(pushnew "/home/compbio/d95-bli/share/common-lisp/system/" *central-registry*) - -(defvar *system-configuration-paths* -  '(("/nfs/home/compbio/d95-bli/share/common-lisp/src/" -     "/nfs/home/compbio/d95-bli/lib/common-lisp/cmucl/"))) - -(defun pathname-prefix-p (prefix pathname)(not (equal (enough-namestring pathname prefix) (namestring pathname)))) - -(defmethod output-files :around ((operation compile-op) (c source-file))(let ((source (component-pathname c)) -        (paths (call-next-method))) -    (mapcar #'(lambda (path) -                (loop for (from to) in *system-configuration-paths* -                  when (pathname-prefix-p from source) -                      do (return -                           (merge-pathnames -                            (make-pathname :type (pathname-type path)) -                            (merge-pathnames (enough-namestring source from) -                                            to))) -                      ;; Kommer bara hit om ingen sökväg matchade -                      finally (return path))) -            paths)))

    It works well, and it is extensible so that you can add other -source-fasl locations to the global variable. My clisp and sbcl init -files contain the same thing but with different fasl directories.

    The only thing regarding this method that is sometimes problematic is -for packages which come with data files. The way ASDF works, it will -look for those data files in the fasl directory instead of the source -directory, and you will get a sometimes cryptic compilation error. The -way I solve this in the few cases where it happens is by manually -copying the files to the fasl directory.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/asdf-config.html b/clones/lisp/www.cliki.net/asdf-config.html deleted file mode 100644 index 3782eea3..00000000 --- a/clones/lisp/www.cliki.net/asdf-config.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: asdf-config - - - - - - - -
    asdf-config
    (DEPRECATED, July 2006: This functionality was superseded by Gary King's new asdf operation load-preferences—it provides a slightly different and more general variant of the variable initialization support of asdf-config)

    asdf-config is an ASDF-extension that enables easy user configuration and automatic initialization of asdf packages without requiring source edits.

    asdf-config provides two new commands configure-op and initialize-op. configure-op keeps a registry of key-value pairs that initializes a variable after load-op completes. initialize-op depends on configure-op and will call a special package init function to, for instance, load data from a data directory after installation.

    A single asdf-config source file can be downloaded from http://web.media.mit.edu/~eslick/asdf-ext/


    -obsolete
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/asdf-dependency-grovel.html b/clones/lisp/www.cliki.net/asdf-dependency-grovel.html deleted file mode 100644 index 7332ed96..00000000 --- a/clones/lisp/www.cliki.net/asdf-dependency-grovel.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: asdf-dependency-grovel - - - - - - - -
    asdf-dependency-grovel
    asdf-dependency-grovel makes it possible to generate components with dependencies from serial asdf system definitions. It is possible to merge several systems into one (to work around asdf's inter-module dependency handling), and to generate dependencies for non-serial system definitions.

    The asdf-dependency-grovel uses an extended *macroexpand-hook* to find out dependency information. This seems to work better than implementation-provided xref facilities (at least as long as there are no "uses at compile time" queries in xrefs (-:)

    There is a more modern and featureful (and better-debugged) version of adg that's part of the xcvb project, at https://gitlab.common-lisp.net/xcvb/asdf-dependency-grovel


    -ASDF-Extension
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/asdf-flv.html b/clones/lisp/www.cliki.net/asdf-flv.html deleted file mode 100644 index 653df7f7..00000000 --- a/clones/lisp/www.cliki.net/asdf-flv.html +++ /dev/null @@ -1,56 +0,0 @@ - - - - - CLiki: asdf-flv - - - - - - - -
    asdf-flv
    ASDF-FLV provides support for file-local variables through ASDF. A file-local variable behaves like *PACKAGE* and *READTABLE* with respect to LOAD and COMPILE-FILE: a new dynamic binding is created before processing the file, so that any modification to the variable becomes essentially file-local.

    ASDF-FLV's homepage is - - here -.

    -


    -ASDF-FLV is an ASDF-extension written by Didier Verna...
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/asdf-install.html b/clones/lisp/www.cliki.net/asdf-install.html deleted file mode 100644 index 44c974f0..00000000 --- a/clones/lisp/www.cliki.net/asdf-install.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: asdf-install - - - - - - - -
    asdf-install
    asdf-install completely died more than a decade ago, having been completely superseded by Quicklisp.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/asdf-package-system.html b/clones/lisp/www.cliki.net/asdf-package-system.html deleted file mode 100644 index 419b56d8..00000000 --- a/clones/lisp/www.cliki.net/asdf-package-system.html +++ /dev/null @@ -1,70 +0,0 @@ - - - - - CLiki: asdf-package-system - - - - - - - -
    asdf-package-system
    asdf-package-system is an ASDF-extension (pre-3.1) whereby every file is its own system, and starts with a defpackage from which dependencies are deduced.

    ASDF 3.1 now includes package-inferred-system -which supports quick-build and faslpath's style of one-package-per-file. This stub is present for backward compatibility with systems that were trying to -use this feature with ASDF 3.0.

    To use asdf-package-system, see the example from lisp-interface-library: at the top of your hierarchy, say foo.com, you'd have a file foo.com.asd that contains:

    (in-package :asdf) -#-asdf3 (error "LIL requires ASDF 3 or later. Please upgrade your ASDF.") -(defsystem :foo.com - :description "Software from foo.com" - :class :package-system - :defsystem-depends-on - #.(unless (find-class :package-system nil) '(:asdf-package-system)) - :depends-on (:foo.com/bar/all) - :in-order-to ((test-op (load-op :foo.com/test/all))) - :perform (test-op (o c) (symbol-call :foo.com/test/all :test-suite))) - -(register-system-packages :foo.com/bar/all '(:foo-bar)) -(register-system-packages :closer-mop - '(:c2mop :closer-common-lisp :c2cl :closer-common-lisp-user :c2cl-user))

    The latter declarations tell asdf-package-system that package foo-bar is to be found in system foo.com/bar/all, and package closer-common-lisp is to be found in system closer-mop.

    Then, in bar/all.lisp, you'd have a file that starts with

    (uiop:defpackage :foo.com/bar/all - (:nicknames :foo-bar) - (:use :cl :cl-ppcre :uiop) - (:use-reexport :foo.com/bar/utilities :foo.com/bar/frob :foo.com/bar/main))

    And ASDF would detect that it depends on the packages that it uses, while uiop:defpackage would import all the symbols from the given packages and reexport them, but use those from cl, cl-ppcre and uiop without reexporting.


    -obsolete
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/asdf-packaging-tools.html b/clones/lisp/www.cliki.net/asdf-packaging-tools.html deleted file mode 100644 index 2651a5fe..00000000 --- a/clones/lisp/www.cliki.net/asdf-packaging-tools.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: asdf-packaging-tools - - - - - - - -
    asdf-packaging-tools
    ASDF based utilities for development. It's an ASDF-extension.

    This is 0.1 -- so be advised that defsystems using asdf features not -found in my own work are likely to go BOINK. Source is in the CCLAN -CVS.

    release-op

    (oos 'release-op :some-system :directory "/my/tarball/dir/")

    Creates a tarball based on the ASDF defsystem, GPG signs it, and makes -a latest symlinks for both the signature and the tarball.

    lint-op

    (oos 'lint-op :some-system)

    Scans the system source looking for bad style.

    Download

    http://web.archive.org/web/20061214024034/http://www.niksula.cs.hut.fi/~tsiivola/files/asdf-packaging-tools-latest.tar.gz

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/asdf-system-connections.html b/clones/lisp/www.cliki.net/asdf-system-connections.html deleted file mode 100644 index 0b75246a..00000000 --- a/clones/lisp/www.cliki.net/asdf-system-connections.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: asdf-system-connections - - - - - - - -
    asdf-system-connections
    Note: this system is no longer being maintained. Use Quicklisp!

    ASDF-System-Connections provides auto-loading of systems that only make sense when several other systems are loaded. More details and examples can be found on its home page at Common-Lisp.net.

    This is an ASDF-Extension by Gary King.


    -obsolete
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/asdf-upgrade.html b/clones/lisp/www.cliki.net/asdf-upgrade.html deleted file mode 100644 index 95f6a535..00000000 --- a/clones/lisp/www.cliki.net/asdf-upgrade.html +++ /dev/null @@ -1,57 +0,0 @@ - - - - - CLiki: asdf-upgrade - - - - - - - -
    asdf-upgrade
    This is a start at an ASDF-extension to upgrade -installed packages. Rather than attempt to parse and compare -versions, it works by comparing timestamps of a package's installed -version against the latest available tarball.

    Currently, there is no reliable installation time timestamp to -use for comparison—a patch to ASDF-INSTALL is forthcoming. -Until then, this won't really work reliably.

    Depends on: asdf-install, split-sequence, cl-fad, net-telent-date

    Repository: https://github.com/mdsmus/rameau/tree/master/rameau-deps/lisp-libs/asdf-upgrade_0.2

    License: MIT


    -obsolete
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/asdf-world.html b/clones/lisp/www.cliki.net/asdf-world.html deleted file mode 100644 index d6f723bb..00000000 --- a/clones/lisp/www.cliki.net/asdf-world.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: asdf-world - - - - - - - -
    asdf-world
    Small ASDF-Extension that aims to provide version controllable registries ("worlds") by Ravenpack, Gabor Melis.

    To be really useful it would need to support tracking the asdf-installed packages in a local repository of some kind.

    Download: http://quotenil.com/asdf-world/asdf-world-latest.tar.gz

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/asdf.html b/clones/lisp/www.cliki.net/asdf.html deleted file mode 100644 index 74ddfe77..00000000 --- a/clones/lisp/www.cliki.net/asdf.html +++ /dev/null @@ -1,61 +0,0 @@ - - - - - CLiki: asdf - - - - - - - -
    asdf
    ASDF (Another System Definition Facility) is an extensible build facility for Common Lisp software. ASDF comes bundled with all recent releases of active Common Lisp implementations as well as with quicklisp, and it is the most widely used system definition facility for Free Software Lisp libraries.

    Documentation on how to use ASDF can be found on its -home page on common-lisp.net. -For more details, see the online ASDF Manual.

    The current version of ASDF is ASDF 3.1. -It actually contains two systems: -the runtime support layer UIOP and the defsystem itself ASDF/DEFSYSTEM.

    On all actively developed implementations, you can (require "asdf") -and the implementation will provide ASDF 3.1. -ASDF is thus provided by ABCL, Allegro, CCL, CMUCL, ECL, LispWorks, MKCL, SBCL. -ASDF also works with the now inactive or mostly dead implementations CLISP, CormanLisp, GCL, Genera, MOCL, RMCL, SCL, XCL; -their latest release may contain an ancient ASDF (or not ASDF at all), but you can install a recent ASDF on top.

    ASDF will not automatically download software. For that, use Quicklisp. -Do NOT use asdf-install anymore, for it is both obsolete and unmaintained. -There is an unrelated project, asdf-vm, that might attract clicks away from this project.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/aserve.html b/clones/lisp/www.cliki.net/aserve.html deleted file mode 100644 index 3cd03c58..00000000 --- a/clones/lisp/www.cliki.net/aserve.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: aserve - - - - - - - -
    aserve
    aserve is the abbrvted name for AllegroServe, a web server written in Common Lisp. The name "aserve" is used as directory and asdf system name, hence the need for this page. Download link goes to the portable version that uses acl-compat and runs on many Lisp implementations.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/asia.html b/clones/lisp/www.cliki.net/asia.html deleted file mode 100644 index c903204a..00000000 --- a/clones/lisp/www.cliki.net/asia.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - CLiki: asia - - - - - - - -
    asia
    ASIA (ASDF2 -Software Installation Assistant) is a trivial Common Lisp project -installer. It acts like an ASDF2 extension and installs the projects -without dependencies. Dependency analysis is done by ASDF2.

    It's written by Desmond O. Chang and released under MIT-License.

    The source code is on -Github.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/astine.html b/clones/lisp/www.cliki.net/astine.html deleted file mode 100644 index 4efb8f5b..00000000 --- a/clones/lisp/www.cliki.net/astine.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: astine - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/atdoc.html b/clones/lisp/www.cliki.net/atdoc.html deleted file mode 100644 index 714c488d..00000000 --- a/clones/lisp/www.cliki.net/atdoc.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: atdoc - - - - - - - -
    atdoc
    Atdoc generates documentation for Common Lisp packages. It extracts documention strings written using a custom markup language and generates HTML pages.

    atdoc was written by David Lichteblau and is available under an X11-style license. Consult its webpage for more information. -


    -Documentation Tool
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/atom-slime.html b/clones/lisp/www.cliki.net/atom-slime.html deleted file mode 100644 index be47d980..00000000 --- a/clones/lisp/www.cliki.net/atom-slime.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: atom-slime - - - - - - - -
    atom-slime
    Atom-slime is an Atom plugin for Common Lisp development. Atom-slime is unmaintained, use SLIMA instead.


    -obsolete
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/audio.html b/clones/lisp/www.cliki.net/audio.html deleted file mode 100644 index 6fa26420..00000000 --- a/clones/lisp/www.cliki.net/audio.html +++ /dev/null @@ -1,144 +0,0 @@ - - - - - CLiki: audio - - - - - - - -
    audio
    Audio playing/recording/manipulation libraries and software. See music for musical arrangement and composition software.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/avl-tree.html b/clones/lisp/www.cliki.net/avl-tree.html deleted file mode 100644 index e6974a34..00000000 --- a/clones/lisp/www.cliki.net/avl-tree.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: avl-tree - - - - - - - -
    avl-tree
    AVL (Adelson-Velsky-Landis) Tree is a self-balancing binary search tree implementation in Common Lisp. See README file for details.

    Depends on: demacs

    Repository: https://github.com/vy/avl-tree

    License: BSD 2-Clause


    -data structure
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/axiom.html b/clones/lisp/www.cliki.net/axiom.html deleted file mode 100644 index 79cb4faf..00000000 --- a/clones/lisp/www.cliki.net/axiom.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: axiom - - - - - - - -
    axiom
    Axiom is a general purpose Computer Algebra application. It is useful for doing general mathematics by computer and for research and development of mathematical algorithms. The Axiom Language provides a very high level way to express abstract mathematical concepts that are collected in the Axiom Library which defines over 1,000 strongly-typed mathematical domains and categories.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/babel-stream.html b/clones/lisp/www.cliki.net/babel-stream.html deleted file mode 100644 index d96b170b..00000000 --- a/clones/lisp/www.cliki.net/babel-stream.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: babel-stream - - - - - - - -
    babel-stream
    decoding input and encoding output character streams using Babel.

    https://github.com/cl-stream/babel-stream

    Supports non-blocking semantics thanks to cl-stream.

    Maintainers : thodg.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/babel.html b/clones/lisp/www.cliki.net/babel.html deleted file mode 100644 index 21612023..00000000 --- a/clones/lisp/www.cliki.net/babel.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Babel - - - - - - - -
    Babel
    Babel is a character encoding/decoding library, not unlike GNU libiconv, but completely written in Common Lisp.

    Repository: https://github.com/cl-babel/babel

    License: MIT

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/bailout.html b/clones/lisp/www.cliki.net/bailout.html deleted file mode 100644 index f8f784a6..00000000 --- a/clones/lisp/www.cliki.net/bailout.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: bailout - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/base64.html b/clones/lisp/www.cliki.net/base64.html deleted file mode 100644 index 9bb2640d..00000000 --- a/clones/lisp/www.cliki.net/base64.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: base64 - - - - - - - -
    base64
    A very simple implementation of Base64 (RFC 4648) encoding and decoding for Common Lisp.

    Repository: https://github.com/massung/base64

    License: Apache 2


    -data format
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/basic-binary-ipc.html b/clones/lisp/www.cliki.net/basic-binary-ipc.html deleted file mode 100644 index efbdfff2..00000000 --- a/clones/lisp/www.cliki.net/basic-binary-ipc.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: basic-binary-ipc - - - - - - - -
    basic-binary-ipc
    The Basic Binary IPC system provides an interface for performing inter-process communication using IPv4 or local streams. The interface follows a non-blocking pattern which allows applications to communicate either synchronously or asynchronously. The only requirement for this system is CFFI.


    -BSD license, IPC
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/beirc.html b/clones/lisp/www.cliki.net/beirc.html deleted file mode 100644 index bd2e8fc3..00000000 --- a/clones/lisp/www.cliki.net/beirc.html +++ /dev/null @@ -1,185 +0,0 @@ - - - - - CLiki: beirc - - - - - - - -
    beirc
    beirc is a CLIM IRC client application using the cl-irc library as a backend, initially written by Gilbert Baumann, now maintained by Dave Murray and others.

    An overview of features, instructions, and screen shots are available at common-lisp.net/project/beirc. [2021-03-21: Some links on that page need fixing.]

    Beirc requires the newest CVS version of cl-irc and McCLIM, as well as Max-Gerd Retzlaff's tab-layout-pane. Note also that beirc currently requires a lisp that supports multiple processes. The developers are using multithreaded SBCL on x86/linux and OpenMCL on ppc/darwin. CMUCL on x86 could work, as well. (More details are available in the table below. If you get beirc running on a system not noted there, please add it.)

    Warning: The sound support in beirc is currently very experimental. It works on ACL, probably works on SBCL, and almost certainly only on Unix variants.

    Depends on: mcclim, cl-irc, split-sequence, cl-ppcre, cl-fad

    Repository: https://gitlab.common-lisp.net/beirc/beirc

    License: MIT-style

    Features

    Customizable variables

    These can be set in the .beirc.lisp file in your home directory (although this too can be changed in variables.lisp):

    -
    *hyperspec-base-url*
    -
    Set to url (as a string) of your local copy of the Hyperspec and specbot's clhs query answers will be rewritten appropriately.
    -
    *default-fill-column*
    -
    The maximum width in characters of the message column (as distinct from the name column and the timestamp column). Defaults to 80.
    -
    *timestamp-column-orientation*
    -
    The position of the timestamp column on the screen. Either :right (the default) or :left.
    -
    *default-nick*
    -
    Your nick, as a string.
    -
    *default-web-browser*
    -
    The command (as a string) to run your web browser. Should work out-of-the-box.
    -
    *auto-join-alist*
    -
    An alist mapping an irc server name (as a string) to a list of channels (each a string) to automatically join on connecting.
    -
    *nickserv-password-alist*
    -
    An alist mapping an irc server name (as a string) to the password (as a string) to send to the NickServ authentication bot.
    -
    *default-sound-player*
    -
    A string naming a program (or a program and command-line arguments) that will read sound files from standard input and play them. Used for rudimentary sound support.
    -
    *sound-for-my-nick*
    -
    A filename (string) that specifies a file to be played (by *default-sound-player*), when your nick is mentioned. Could be NIL instead.
    -

    Commands

    -
    /Connect server nick -
    -
    -
    /Identify
    -
    Identify yourself to the NickServ service.
    -
    /Join channel -
    -
    -
    /Focus nick -
    -
    Display messages from nick in bold.
    -
    /Unfocus nick -
    -
    Stop displaying messages from nick in bold.
    -
    /Ignore nick -
    -
    Don't display any messages from nick, past or future.
    -
    /Unignore nick -
    -
    Display messages from nick again.
    -
    /Nick string -
    -
    Change nick to string.
    -
    /Me stuff -
    -
    Do stuff.
    -
    /Msg nick message -
    -
    Send message to nick.
    -
    /Reload
    -
    Reload the user init file.
    -
    /Part message -
    -
    Leave the channel with message.
    -
    /Close window[,window2...]
    -
    Close the list of windows. If any of these windows refers to a channel, leave each channel.
    -
    /Whois nick -
    -
    Perform a WHOIS query on nick.
    -
    /Topic [:Topic new topic]
    -
    If executed without keyword arguments, shows the current channel topic. If passed the :Topic keyword argument, sets the current channel topic to new topic.
    -
    /Op nick -
    -
    Give channel operator status to nick.
    -
    /Deop nick -
    -
    Remove channel operator status from nick..
    -
    /Ban Nick nick -
    -
    Set channel mode +b (ban) to nick!*@*.
    -
    /Ban Hostmask hostmask -
    -
    Set channel mode +b (ban) to hostmask.
    -
    /Kick nick -
    -
    Kick nick from the current channel.
    -
    /Names
    -
    Display the list of users on the current channel.
    -
    /Away message -
    -
    Set away status to message.
    -
    /Quit message -
    -
    Disconnect from the server with message and terminate beirc.
    -
    /Disconnect message -
    -
    Disconnect from the server with message.
    -
    /Switch Timestamp Orientation
    -
    Sets orientation of timestamps to the left column if they are in the right column and vice versa.
    -

    Mouse Interaction

    There's an awful lot of it. Many items are displayed as clickable CLIM presentations, including nicks, URLs, tabs for servers and channels, etc., allowing easy access to basic commands. Documentation for whatever you're about to do by clicking is provided, as in other CLIM apps, in the lowest, black pane; this gives you an idea of what, if anything, will happen when your Left, Middle or Right click occurs.

    Working Systems

    The following Hardware/OS/Lisp Implementation combinations are known to run beirc (somewhere, at least):

    - - - - - - - - - - - - - - - - - -

    - - - - - -
    Hardware PlatformOSOS VersionLisp Implementation
    Intel x86Debian GNU/Linux3.1, kernel 2.6.13Multithread SBCL 0.9.5
    Intel x86Mandriva GNU/Linux3.1, kernel 2.6.12Allegro CL 8.0
    PowerPC G4OS X10.4.2OpenMCL 0.14.4-pre-050807a

    Wish List

      -
    • /list command, or users pane a la XChat.
    • -
    • Working help.
    • -
    • Some hints about keystrokes (this is really at least partly a McCLIM issue).
    • -
    • A pony.
    • -
    • The moon. On a stick.
    • -
    • "IRC clients should show a diff on topic change."
    • -
    -

    Oddities

    Things that should probably be fixed, once we know what causes them.

      -
    • URL handling for URLs that appear in the chat as (<url>) does not work. AFAICT, the url is forwarded to the browser together with the opening paren, causing failure.
    • -
    • Would be nice to have auto-identify, the same way we have auto-join.
    • -
    • Use of help command causes error. Error: attempt to call `#:STREAM44679' which is an undefined function. -
    • -
    • List of commands that you get on right click should be listed alphabetically (or possibly even in nested menus, since the list is so long).
    • -
    • There are many ways to cause the system to fail with completion errors. These should be trapped. Some of this is more McCLIM problems than BEIRC proper, I figure.
    • -
    • The nick completion seems limited. E.g., if you do whois, and you give some prefix for a number of different nicks, and then press , you get a tab character (yuck) in the input buffer, you don't get a list of candidates that match the prefix. E.g., if you type "foo," I would expect to see some indication that "foo_work" "foo_home" and "foo_" would all be legitimate completions (I'm not sure how to deal with this case if "foo" is there, too. -
    • -
    -Old bugs: -
      -
    • The box-adjuster-gadget does not work for me (rpg). It comes active, but is unable to adjust the size of the windows. Seems not to happen for others (antifuchs) with different setups (possibly more up-to-date CLX than the version included with ACL?). This seems to be a problem with the setting of min-height in the space-requirement for the tab-layout-pane. I have not yet been able to track down where this is set. fixed: There were exact pixel sizes coded in as :height and :width. By default, any window settings are copied into :min-height and :min-width. Being a little more careful about the difference between :height (resp. width) and :min-height, seems to have fixed things up.
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/benchmark.html b/clones/lisp/www.cliki.net/benchmark.html deleted file mode 100644 index 6f88d328..00000000 --- a/clones/lisp/www.cliki.net/benchmark.html +++ /dev/null @@ -1,104 +0,0 @@ - - - - - CLiki: benchmark - - - - - - - -
    benchmark
    This page presents different aspects on Common Lisp benchmarks. See also the Performance page which references various performance-related papers.

    -CLiki pages with topic 'benchmark':

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/berkeley-db.html b/clones/lisp/www.cliki.net/berkeley-db.html deleted file mode 100644 index f162e8e7..00000000 --- a/clones/lisp/www.cliki.net/berkeley-db.html +++ /dev/null @@ -1,63 +0,0 @@ - - - - - CLiki: berkeley-db - - - - - - - -
    berkeley-db
    Paul Foley has written an interface to the Berkeley DB v4 database for CMUCL.

    Alain Picard has now ported it to LispWorks! And David Lichteblau has ported it to ACL.

    Downloads

    -

    Note

    Clisp (v2.33 and later) comes with an extension module for interfacing with a berkeley-db database.


    -StructuredStorage
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/bike.html b/clones/lisp/www.cliki.net/bike.html deleted file mode 100644 index b4c67e78..00000000 --- a/clones/lisp/www.cliki.net/bike.html +++ /dev/null @@ -1,84 +0,0 @@ - - - - - CLiki: bike - - - - - - - -
    bike
    bike is a library which implements cross-platform Common Lisp interface to .Net Core platform, using lisp compatibility layers.

    It allows for interacting with .Net code like this:

    (named-readtables:in-readtable bike:bike-syntax) - -(defun hello () - [:System.Console WriteLine "Hello, World!"])

    It does also support callbacks:

    (use-package :bike) - -(named-readtables:in-readtable bike-syntax) - -(import-assembly 'System.Runtime.InteropServices.RuntimeInformation) - -(use-namespace 'System) -(use-namespace 'System.Runtime.InteropServices) - -(defun hello () - (let* ((os [:RuntimeInformation %OSDescription]) - (delegate (new '(Action :string) - (lambda (who) - (format t "Hello ~a!~%You are running .Net Core~% inside ~a ~a~% on ~a" - who - (lisp-implementation-type) - (lisp-implementation-version) - os)))) - (user [:Environment %UserName])) - [delegate Invoke user])) - -(hello) - -;; ==> - -;; Hello lovesan! -;; You are running .Net Core -;; inside SBCL 1.5.3 -;; on Linux 4.15.0-1041-aws #43-Ubuntu SMP Thu Jun 6 13:39:11 UTC 2019 -

    It is installable via quicklisp:

    (ql:quickload :bike)

    Note that to build the library you should have .Net Core SDK installed.

    Github page: https://github.com/Lovesan/bike/

    License: MIT


    -FFI
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/binary format.html b/clones/lisp/www.cliki.net/binary format.html deleted file mode 100644 index 0369ccb9..00000000 --- a/clones/lisp/www.cliki.net/binary format.html +++ /dev/null @@ -1,140 +0,0 @@ - - - - - CLiki: binary format - - - - - - - -
    binary format
      -
    • -Binary-types - - Binary-types is a library for accessing binary format files with fixed bit-length code-words -
    • -
    • -binascii - - binascii is a binary format library for converting binary data to ASCII -
    • -
    • -bintype - - BINTYPE is a specification-driven parser generator for binary formats -
    • -
    • -cl-binary-file - - The binary file package contains utilities to read and write binary files -
    • -
    • -cl-pack - - CL-PACK supplies Perl/PHP/Ruby/Python compatible pack() and unpack() functions to allow easy use of binary format protocols and files with the above mentioned languages and C -
    • -
    • -cl-rfc4251 - - cl-rfc4251 is a Common Lisp system, which provides support for parsing RFC 4251 encoded binary data, as described in the Data Type Representations Used in the SSH Protocols section of the document -
    • -
    • -cl-wbxml - - CL-WBXML reads and writes WAP Binary XML -
    • -
    • -de.setf.utility - - de setf utility is a collection of Common Lisp utilities functions and several purpose-specific libraries -
    • -
    • -dso-binary-class - - dso-binary-class allows you to declare classes with a specific binary disk layout, and then read and write instances easily -
    • -
    • -fast-io - - Fast-io is about improving performance to octet-vectors and octet streams (though primarily the former, while wrapping the latter) -
    • -
    • -float-features - - float-features is a portability library for IEEE float features that are not covered by the CL standard -
    • -
    • -id3v2 - - Parser for the ID3v2 binary format -
    • -
    • -IE3FP - - IE3FP is a library to code and decode floating point numbers in IEEE 754 binary format -
    • -
    • -ieee-floats - - IEEE-Floats provides a way of converting values of type float and double-float to and from their binary format representation as defined by IEEE 754 (which is commonly used by processors and network protocols) -
    • -
    • -LISP-BINARY - - A library to easily read and write complex binary formats -
    • -
    • -nibbles - - Nibbles is a library for accessing octet-addressed blocks of data -
    • -
    • -odd-streams - - ODD-STREAMS implements binary streams with "odd" byte sizes -
    • -
    • -packer - - The PACKER binary format library implements a "little language" for C-style structures, along the lines of Perl's pack() or Python's struct module -
    • -
    • -stl - - Read binary triangle data from STL files -
    • -
    • -stl-io - - The stl-io library deals with reading and writing binary STL files -
    • -
    • -swap-bytes - - swap-bytes is a library for efficient endianness conversion in SBCL and CCL -
    • -
    • -trivial-bit-streams - - Trivial-bit-streams implements flexible buffered bit streams -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/binary-types.html b/clones/lisp/www.cliki.net/binary-types.html deleted file mode 100644 index 1c2a33df..00000000 --- a/clones/lisp/www.cliki.net/binary-types.html +++ /dev/null @@ -1,69 +0,0 @@ - - - - - CLiki: Binary-types - - - - - - - -
    Binary-types
    Binary-types is a library for accessing binary format files with fixed bit-length code-words. Binary-types provides macros that are used to declare the mapping between lisp objects and some binary (i.e. octet-based) -representation.

    Supported kinds of binary types include:

      -
    • Signed and unsigned integers of any octet-size, big-endian or - little-endian. Maps to lisp integers.

    • -
    • Enumerated types based on any integer type. Maps to lisp symbols.

    • -
    • Complex bit-field types based on any integer type. Sub-fields can - be numeric, enumerated, or bit-flags. Maps to lisp lists of symbols - and integers.

    • -
    • Fixed-length and null-terminated strings. Maps to lisp strings.

    • -
    • Compound records of other binary types. Maps to lisp DEFCLASS - classes or, when you prefer, DEFSTRUCT structs. -
    • -

    Typically, a complete binary record format/type can be specified in a -single (nested) declaration statement. Such compound records may then -be read and written with READ-BINARY and WRITE-BINARY.

    Binary-types is *not* helpful in reading files with variable -bit-length code-words, such as most compressed file formats. It will -basically only work with file-formats based on 8-bit bytes -(octets). Also, at this time no floating-point types are supported out -of the box. The ieee-floats library might be useful.

    Binary-types was developed by Frode Vatvedt Fjeld. Source code is available at https://github.com/frodef/binary-types. See the Debian page for information on how to get a debian-package of binary-types using common-lisp-controller.

    There are some extensions to binary-types in binary-types-extra.lisp (part of Slitch). It adds support for structs with "bitfields" and for vectors. There is also a binary-rw-gen.lisp that compiles a binary-type into specialized reader- and writer- functions that are somewhat faster.

    There is also a Debian package.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/binascii.html b/clones/lisp/www.cliki.net/binascii.html deleted file mode 100644 index 68f6279d..00000000 --- a/clones/lisp/www.cliki.net/binascii.html +++ /dev/null @@ -1,58 +0,0 @@ - - - - - CLiki: binascii - - - - - - - -
    binascii
    binascii is a binary format library for converting binary data to ASCII -text of some kind. Such conversions are common in email protocols (for -encoding attachments to support old non-8-bit clean transports) or -encoding binary data in HTTP and XML applications. binascii supports -the encodings described in RFC 4648: -base64, base32, base16, and variants. It also supports base85, used in Adobe's PostScript -and PDF document formats, and a variant called ascii85, -used by git for binary diff files.

    It is documented, flexible, and fast, and comes with a BSD license.

    Homepage: http://github.com/froydnj/binascii

    Author: Nathan Froyd

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/bind.html b/clones/lisp/www.cliki.net/bind.html deleted file mode 100644 index ee3696be..00000000 --- a/clones/lisp/www.cliki.net/bind.html +++ /dev/null @@ -1,80 +0,0 @@ - - - - - CLiki: bind - - - - - - - -
    bind
    Bind combines let*, destructuring-bind and multiple-value-bind into a single form. Simple bindings are as in let*. Destructuring is done if the first item in a binding is a list. Multiple value binding is done if the first item in a binding is a list and the first item in the list is 'values'. More information about bind can be found on common-lisp.net.

    An example is probably the best way to describe its syntax: -

    -(bind ((a 2)
    -       ((b &rest args &key (c 2) &allow-other-keys) '(:a :c 5 :d 10 :e 54))
    -       ((:values d e) (truncate 4.5)))
    -  (list a b c d e args))
    -==> (2 :A 5 4 0.5 (:C 5 :D 10 :E 54))
    -
    -Bind is especially handy when you have more than one layer of -multiple-value-bind or destructuring-bind. Since bind is a single form, -you don't end up too far off to the right in editor land.

    Bind works by parsing the bindings and rewriting them as nested -let, multiple-value-bind and destructuring-bind forms. Bind handles -declarations correctly -- putting each at the appropriate level.

    Bind is released under the MIT license. The most recent version (as of 1 October 2005) reflects this explicitly.

    I like bind because it (a). presents a uniform means of three of CL's most typical binding constructs and (b). because you don't have to worry about nesting! I like the more explicit syntax with "values" because it makes it clear what it is doing and is analogous to something like (setf (values a b) (foo)).

    Bind was written by Gary King.

    An alternative syntax -- which bind does not support -- that doesn't rely on explicitly saying "values" is: -

    -(bind ((d e (truncate 4.5)))
    -  (list d e))
    -=>
    -(4 0.5)
    -
    -Implementation-wise, what it's doing is using the last item in the -list, (truncate 4.5), as the form to evaluate. Then the first item, d, -gets the primary value, and each item in between gets one of the -other values; in this case, that's just e.

    This is particularly nice because it makes it possible to combine -multiple-value binding and destructuring binding. For example:

    -(bind (((this &rest that) the-other (values (list 1 2 3 4) 5)))
    -  (list this that the-other))
    -=>
    -(1 (2 3 4) 5)
    -

    See also: X.LET-STAR WITH macro -pattern matching utilities

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/binghe.html b/clones/lisp/www.cliki.net/binghe.html deleted file mode 100644 index 0d5b9be5..00000000 --- a/clones/lisp/www.cliki.net/binghe.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Binghe - - - - - - - -
    Binghe
    Chun Tian (binghe) was a student in Zhejiang University (China); Currently he is a student in University of Bologna (Italy), doing master degree on Computer Science.

    He ever worked for Gensym Corporation from 2009 to 2016, and was the lead engineer of Gensym G2, a real-time rule-based development platform written in Common Lisp (a million lines!)

    Most of his Lisp-related work GitHub

    Also see his LinkedIn profile.

    Early contributions

    UDP support for LispWorks (before LispWorks 7.0 officially provided this facility), also see lispworks-udp.

    A full implementation of SNMP (Simple Network Management Protocol) (both server and client) for Common Lisp, also see cl-net-snmp.

    Maintainer of usocket project.

    Recent activities

    Study CLOS/MOP and Semantic Web.


    -Chun Tian (binghe) person
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/binomial-heap.html b/clones/lisp/www.cliki.net/binomial-heap.html deleted file mode 100644 index d0b73427..00000000 --- a/clones/lisp/www.cliki.net/binomial-heap.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: binomial-heap - - - - - - - -
    binomial-heap
    Binomial-heap is an implementation of the binomial heap data structure. Insertion, extremum access, extremum extraction, and union operations can be performed on the data structure in O(logn) time.

    For further information, please see the README file.

    (Tarball comes with the latest .git source tree. Feel free to play with it.)

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/bintype.html b/clones/lisp/www.cliki.net/bintype.html deleted file mode 100644 index 23826771..00000000 --- a/clones/lisp/www.cliki.net/bintype.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: bintype - - - - - - - -
    bintype
    BINTYPE is a specification-driven parser generator for binary formats.

    The strong point of BINTYPE is that it is declarative, that is for most file formats you are not supposed to write even a single line of imperative code.

    That said, BINTYPE degrades gracefully when the base specification language is not up to task: new structural abstractions can be defined.

    Source repository: https://github.com/deepfire/bintype

    License: LGPL

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/bioinformatics.html b/clones/lisp/www.cliki.net/bioinformatics.html deleted file mode 100644 index bfbc25e0..00000000 --- a/clones/lisp/www.cliki.net/bioinformatics.html +++ /dev/null @@ -1,76 +0,0 @@ - - - - - CLiki: Bioinformatics - - - - - - - -
    Bioinformatics
    Bioinformatics packages:

      -
    • -BioBike - - The BioBike system is a bioinformatics programming language embedded in an integrated biological knowledge-base, all accessible through the web -
    • -
    • -CL SBML - - CL-SBML is a bioinformatics library for working with the Systems Biology Markup Language -
    • -
    • -cl-bio - - Lightweight versions of biological objects and methods on these objects, including sequences, ranges, descriptors, identifiers; also, file parsers -
    • -
    • -CL-DNA - - CL-DNA is a bioinformatics library to handle and manipulate genetic data -
    • -
    • -CL-GODB - - CL-GODB is an interface to the Gene Ontology Database -
    • -
    • -CLCB - - The Common Lisp Computational Biology (CLCB) package aims to be a comprehensive, flexible and easy to use library for bioinformatics and computational biology -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/bk-tree.html b/clones/lisp/www.cliki.net/bk-tree.html deleted file mode 100644 index 5538385a..00000000 --- a/clones/lisp/www.cliki.net/bk-tree.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: bk-tree - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/bknr-datastore.html b/clones/lisp/www.cliki.net/bknr-datastore.html deleted file mode 100644 index 9c345683..00000000 --- a/clones/lisp/www.cliki.net/bknr-datastore.html +++ /dev/null @@ -1,60 +0,0 @@ - - - - - CLiki: bknr-datastore - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/bknr-impex.html b/clones/lisp/www.cliki.net/bknr-impex.html deleted file mode 100644 index 667f2d05..00000000 --- a/clones/lisp/www.cliki.net/bknr-impex.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: bknr-impex - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/bknr-skip-list.html b/clones/lisp/www.cliki.net/bknr-skip-list.html deleted file mode 100644 index fce76e8b..00000000 --- a/clones/lisp/www.cliki.net/bknr-skip-list.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: bknr-skip-list - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/bknr-utils.html b/clones/lisp/www.cliki.net/bknr-utils.html deleted file mode 100644 index 99d798a8..00000000 --- a/clones/lisp/www.cliki.net/bknr-utils.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: bknr-utils - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/bknr.html b/clones/lisp/www.cliki.net/bknr.html deleted file mode 100644 index b34aa273..00000000 --- a/clones/lisp/www.cliki.net/bknr.html +++ /dev/null @@ -1,57 +0,0 @@ - - - - - CLiki: bknr - - - - - - - -
    bknr
    bknr is a meta-projects containing an ObjectStore (bknr-datastore), a template system, a web framework and support for images, blogs, billboards, etc. Its name is the short form for baikonour, the soviet spacecraft launch platform. bknr is a software launch platform for LISP satellites.

    BKNR is tested on SBCL, CCL and CMUCL on FreeBSD, Linux and Mac OS X.

    It features a new MOP oriented datastore, a MOP based indexing layer, -and an XML import/export layer.

    To get BKNR, browse to -http://bknr.net/html/getting.html

    The source code of BKNR is available through subversion at svn://bknr.net/svn

    -$ svn co svn://bknr.net/svn/trunk
    -

    Please note that the subversion repository contains all thirdparty Lisp packages we use in production systems. Our rationale is that we want easy deployment and repeatable configurations.

    The slides of the talk about BKNR sputnik, presented at lisp-hh in -november 2004, are available at bl0rg.net [snapshot link].

    Slides of a talk about BKNR at ITA software are available at http://bknr.net/datastore-presentation.pdf.

    Evaluation, 20100901

    A very brief assessment of all web frameworks listed in cliki was carried out in September 2010. This assessment comprised: check websites, download source if available, attempt to compile, review documentation.

    BKNR was seen as not so much a web framework, more a persistent object framework -with some web stuff wrapped around it. Designed for relatively small datasets - the entire dataset is held in core, and only a transaction log (journal) is written to disk.

    Documentation of the persistent object framework is reasonably good. However, there was very little documentation of the web framework.

    Three example websites were listed, of which one was found to be broken, the other two not very impressive.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/blackbird.html b/clones/lisp/www.cliki.net/blackbird.html deleted file mode 100644 index aacba4e5..00000000 --- a/clones/lisp/www.cliki.net/blackbird.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: blackbird - - - - - - - -
    blackbird
    Blackbird is a modern promise implementation. Originally born to provide a means to build drivers on cl-async, blackbird is now a standalone library for promises.

    Promises can be useful for abstracting async/threaded operations (both by operation and syntax) and can also be used to provide a standard interface for libraries/drivers that operate both synchronously and asynchronously.

    http://orthecreedence.github.io/blackbird/


    -Topics: concurrency
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/blocky.html b/clones/lisp/www.cliki.net/blocky.html deleted file mode 100644 index 69af5df3..00000000 --- a/clones/lisp/www.cliki.net/blocky.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Blocky - - - - - - - -
    Blocky
    Blocky is a visual dialect of Common Lisp paired with an Emacs-like user interface. In addition to borrowing ideas from GNU Emacs, the language design is heavily influenced by existing research environments such as PureData, Squeak, Self Morphic, MIT Scratch, Berkeley's BYOB project, and more recently Jens Moenig's Smalltalk Elements.

    The original homepage no longer exists.

    A fork: https://github.com/Mon-Ouie/blocky

    License: GPLv3

    Author: David O'Toole


    -programming language
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/blog software.html b/clones/lisp/www.cliki.net/blog software.html deleted file mode 100644 index 82994220..00000000 --- a/clones/lisp/www.cliki.net/blog software.html +++ /dev/null @@ -1,64 +0,0 @@ - - - - - CLiki: blog software - - - - - - - -
    blog software
    Blogging software (as opposed to Lisp-related blogs):

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/bobbin.html b/clones/lisp/www.cliki.net/bobbin.html deleted file mode 100644 index f4af6909..00000000 --- a/clones/lisp/www.cliki.net/bobbin.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: bobbin - - - - - - - -
    bobbin
    Bobbin is a simple word-wrapping library for strings in Common Lisp. It depends only on split-sequence.

    Repository: https://hg.stevelosh.com/bobbin/


    -MIT-LICENSE
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/bocl.html b/clones/lisp/www.cliki.net/bocl.html deleted file mode 100644 index 9d10ce7f..00000000 --- a/clones/lisp/www.cliki.net/bocl.html +++ /dev/null @@ -1,59 +0,0 @@ - - - - - CLiki: bocl - - - - - - - -
    bocl
    bocl is the Bootstraping Common Lisp implementation.

    It is a new implementation in development.

    Some distinguishing features of the implementation will include : -- a slow and but correct interpreter of the whole Common Lisp, -- implemented in ISO C ISO/IEC 9899:2018 ("C17"), targetting POSIX platforms, -- no threads, -- no foreign-function interface, -- a simple mark-and-sweep garbage collector, -- no space optimization, -- no speed optimization (it's not even a compiler!).

    The purpose of BoCL is to compile implementations of Common Lisp written in conforming Common Lisp on any platform with a standard C compiler.

    License: AGPL3

    Project Gitlab -Robert Strandh's Bootstrap-Common-Lisp requirements.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/boinkmarks.html b/clones/lisp/www.cliki.net/boinkmarks.html deleted file mode 100644 index 3fc5192a..00000000 --- a/clones/lisp/www.cliki.net/boinkmarks.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: boinkmarks - - - - - - - -
    boinkmarks
    Benchmarks of the current & of old versions of SBCL, as related in Somewhere between 8 and 11 years without boinkmarks.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/book.html b/clones/lisp/www.cliki.net/book.html deleted file mode 100644 index 99a0101a..00000000 --- a/clones/lisp/www.cliki.net/book.html +++ /dev/null @@ -1,98 +0,0 @@ - - - - - CLiki: book - - - - - - - -
    book
    A list of Lisp-related books with CLiki pages. - -See Lisp books for additional lists.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/bordeaux-threads.html b/clones/lisp/www.cliki.net/bordeaux-threads.html deleted file mode 100644 index 3d7c2b6b..00000000 --- a/clones/lisp/www.cliki.net/bordeaux-threads.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Bordeaux-Threads - - - - - - - -
    Bordeaux-Threads
    Bordeaux-Threads lets you write multi-threaded applications in a portable way.

    License: MIT

    Homepage: https://common-lisp.net/project/bordeaux-threads/


    -system programming thread concurrency
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/boxen.html b/clones/lisp/www.cliki.net/boxen.html deleted file mode 100644 index 27f74205..00000000 --- a/clones/lisp/www.cliki.net/boxen.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: boxen - - - - - - - -
    boxen
    Boxy string syntax for Common Lisp.

    Repository: https://github.com/jfm3/boxen


    -MIT-LICENSE
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/bpm2.html b/clones/lisp/www.cliki.net/bpm2.html deleted file mode 100644 index d5272a9b..00000000 --- a/clones/lisp/www.cliki.net/bpm2.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: bpm2 - - - - - - - -
    bpm2
    bpm2 is a pattern matching language originally designed for doing code transformation [ie, writing compilers]. It's being pulled off the dusty shelf to take on a second life [we hope!] as a utility for validating data objects floating around inside a web application [such as the stuff coming in and out of cl-json and the stuff given to djula templates]

    Depends on: cl-ppcre, f-underscore

    Source repository: https://github.com/nallen05/bpm2

    License: BSD

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/bratwurst.html b/clones/lisp/www.cliki.net/bratwurst.html deleted file mode 100644 index 3c2fc77a..00000000 --- a/clones/lisp/www.cliki.net/bratwurst.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: bratwurst - - - - - - - -
    bratwurst
    Bratwurst is a clone of the old amiga Game by 3 Little Elks (3LE). It runs in clisp with clx. It appears to work with both mit-clx and new-clx.

    Source code (archive.org)

    It has some crusty TCP networking that I haven't really tested much and currently the player keys are a bit wonky. It theoretically supports up to 4 players on 1 machine but you'll have to add your own keybindings in the source or play over a network.

    The game starts with each player selecting their ships. in non-networking mode players "tap" in by hitting one of their keys. First, select you ship (I have yet to add all the original ships), then select your special, then select where you want to place you special. When all ships are configured the game starts. Each player has 5 lives and limited health, shields and special. Players then fly their ships around and attempt to destroy the other ships while not destroying their own. Last one alive wins.

    Screenshot (archive.org) -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/bt-semaphore.html b/clones/lisp/www.cliki.net/bt-semaphore.html deleted file mode 100644 index 8929d733..00000000 --- a/clones/lisp/www.cliki.net/bt-semaphore.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: bt-semaphore - - - - - - - -
    bt-semaphore
    simple semaphores for bordeaux-threads

    Description

    A simple semaphore class for Bordeaux-Threads inspired by SBCL's semaphore.

    License

    MIT, the same as Bordeaux-Threads

    Links

    GitHub


    -system programming thread concurrency
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/bubble-operator-upwards.html b/clones/lisp/www.cliki.net/bubble-operator-upwards.html deleted file mode 100644 index ef3d11e9..00000000 --- a/clones/lisp/www.cliki.net/bubble-operator-upwards.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: bubble-operator-upwards - - - - - - - -
    bubble-operator-upwards
    bubble-operator-upwards is a function that "bubbles an operator upwards" in a form, demultiplexing all alternative branches by way of cartesian product. This operation is notably useful for easy implementation of certain kinds of shorthand notations in macros. A cartesian-product function is also exported, as it's needed to implement the main function.

    See the project's home for all details.


    -metaprogramming, Unlicense, Public Domain
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/buclet.html b/clones/lisp/www.cliki.net/buclet.html deleted file mode 100644 index 31f22389..00000000 --- a/clones/lisp/www.cliki.net/buclet.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Buclet - - - - - - - -
    Buclet
    Buclet provides CFFI bindings to the Bullet physics library. Useful for making games

    The project page is at http://common-lisp.net/project/buclet/.

    Related libraries: Okra, clois-lane.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/build.html b/clones/lisp/www.cliki.net/build.html deleted file mode 100644 index c37c92a9..00000000 --- a/clones/lisp/www.cliki.net/build.html +++ /dev/null @@ -1,84 +0,0 @@ - - - - - CLiki: build - - - - - - - -
    build
    Build/make systems. See also development.

      -
    • -asdf - - ASDF (Another System Definition Facility) is an extensible build facility for Common Lisp software -
    • -
    • -ASDlite - - ASDlite is a light-weight version of ASDF, a popular build facility for Common Lisp -
    • -
    • -corona - - Corona is a library for building and controlling virtual machines -
    • -
    • -evol - - evol - entrenched virtues of lisp (love reversed) aims to be a compatible and full-fledged replacement for the GNU autotools stack targeted at coping with the autotools' shortcomings while not repeating the mistakes made and still being made at comparable build tool projects -
    • -
    • -mk-defsystem - - MK-defsystem is a system definition utility; it fills a similar role for CL as make(1) does for C -
    • -
    • -Overlord - - Overlord is an experimental build system for Common Lisp, inspired by Redo -
    • -
    • -poiu - - poiu is an asdf extension that builds in parallel -
    • -
    • -XCVB - - XCVB, an eXtensible Component Verifier and Builder for Lisp is an attempt to replace asdf -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/buildapp.html b/clones/lisp/www.cliki.net/buildapp.html deleted file mode 100644 index 21c32fd0..00000000 --- a/clones/lisp/www.cliki.net/buildapp.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: buildapp - - - - - - - -
    buildapp
    Buildapp is an SBCL tool for creating executables. It is similar to hu.dwim.build. Buildapp is available under a BSD license.

    -buildapp --eval '(defun main (argv) (write-line "Hello, world"))' --entry main --output hello
    -

    For full documentation, see the buildapp home page.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/bundler.html b/clones/lisp/www.cliki.net/bundler.html deleted file mode 100644 index 7553a540..00000000 --- a/clones/lisp/www.cliki.net/bundler.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: bundler - - - - - - - -
    bundler
    the Bundler is an ASDF-Extension to combine many systems into one automatically. You can read more at its home page on Common-Lisp.net.

    This is another one of Gary King's projects.

    It is obsolete and superseded by the asdf/bundle functionality native to asdf3.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/burgled-batteries.html b/clones/lisp/www.cliki.net/burgled-batteries.html deleted file mode 100644 index c099fa7d..00000000 --- a/clones/lisp/www.cliki.net/burgled-batteries.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: burgled-batteries - - - - - - - -
    burgled-batteries
    burgled-batteries is a Python-Lisp bridge, similar to Python-on-Lisp or Pyffi, aiming for deep integration between Python and Common Lisp. It...has a way to go before it achieves that objective, but may still be useful as a base for wrapping existing Python libraries (see burgled-feedparser for a short and rough example).

    Unlike CLPython, b-b is not a compiler for Python-the-language, but embeds cpython into Lisp. This has the advantage of being able to provide any functionality accessible from Python, including numpy and other C-based Python extensions; but also has all the disadvantages inherent in FFI mechanisms, including the necessary pain of data translation, leaky abstractions, and a tendency for memory faults.


    -Python programming language
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/bytecurry.mocks.html b/clones/lisp/www.cliki.net/bytecurry.mocks.html deleted file mode 100644 index 29a38c18..00000000 --- a/clones/lisp/www.cliki.net/bytecurry.mocks.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: bytecurry.mocks - - - - - - - -
    bytecurry.mocks
    bytecurry.mocks is a small library to help mocking functions and methods while writing unit tests. It has no external dependencies.


    -utilities
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/bytes.html b/clones/lisp/www.cliki.net/bytes.html deleted file mode 100644 index 1c677d6b..00000000 --- a/clones/lisp/www.cliki.net/bytes.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: BYTES - - - - - - - -
    BYTES
    Bytes contains macros around READ-WRITE, WRITE-BYTE and LDB to ease reading and writing multibyte binary strings.

    Written by Max Rottenkolber.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/c-amplify.html b/clones/lisp/www.cliki.net/c-amplify.html deleted file mode 100644 index aba50aab..00000000 --- a/clones/lisp/www.cliki.net/c-amplify.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: c-amplify - - - - - - - -
    c-amplify
    c-amplify is an s-exp syntax for writing C code. It includes support for type inference, and lets you use Lisp macros to write your C code.

    Homepage: https://github.com/deplinenoise/c-amplify

    License: GPLv3

    Original blog post describing c-amplify and its capabilities.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/c.html b/clones/lisp/www.cliki.net/c.html deleted file mode 100644 index f396a3b6..00000000 --- a/clones/lisp/www.cliki.net/c.html +++ /dev/null @@ -1,104 +0,0 @@ - - - - - CLiki: C - - - - - - - -
    C
    Projects that let C and Common Lisp interoperate.

    For information about calling C libraries from Common Lisp code, see FFI.

    To compile C code to Common Lisp, look at Vacietis.

    All pages in the C topic:

    programming language

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/c2ffi.html b/clones/lisp/www.cliki.net/c2ffi.html deleted file mode 100644 index 77ee60c1..00000000 --- a/clones/lisp/www.cliki.net/c2ffi.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: c2ffi - - - - - - - -
    c2ffi
    c2ffi is a tool for extracting declarations from C source and header using Clang's AST. This is similar to SWIG or Verrazano. However, unlike SWIG, this uses Clang to actually parse the input, and handles complex declarations (e.g., with math). It should also be easier to build than Verrazano.

    Homepage: https://github.com/rpav/c2ffi

    Related

    See Verrazano or SWIG are alternative ffi tools.

    Other 'c2ffi'

    There is a prior, unrelated project called "c2ffi" that is no longer actively developed.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cCLan.html b/clones/lisp/www.cliki.net/cCLan.html deleted file mode 100644 index 32ad21f0..00000000 --- a/clones/lisp/www.cliki.net/cCLan.html +++ /dev/null @@ -1,86 +0,0 @@ - - - - - CLiki: cclan - - - - - - - -
    cclan

    The Comprehensive Common Lisp Archive Network.

    The cCLan project started out intending to build a comprehensive -archive of CL code, in much the same way as CPAN and CTAN have for -Perl and TeX. In this aim it's been largely overtaken by -asdf-install and the "distributed network" here on CLiki.

    The cCLan network is still running and will continue to run for -the foreseeable future. Authors of asdf-install-compatible packages -are welcome to use it for distributing their packages if they have no -suitable hosting of their own, or would like the redundancy.

    (Also check out common-lisp.net which provides FTP, cvs, mailing lists and other services to Lisp projects)

    cCLan sites

    You can see the current cCLan sites (and choose your preferred mirror) -at http://ww.telent.net/cclan-choose-mirror, or proceed directly to -the current mirror. (If the -current mirror link takes you to a list of links, you have not yet set -your cookie. Choose one of the links in the list, return to this page, -and then choose the current mirror page once again. At that time you -should be directed to the link you chose.)

    Information for potential cclan node maintainers

    The cClan network was designed with these features in mind:

      -
    • use standard or easily-installable tools on the servers (e.g. ftp, - rsync, cron jobs) with no significant admin overhead (usenet is right out)

    • -
    • no single point of failure

    • -
    • allow people to upload to the most convenient host and have packages spread - from there -
    • -

    Basically we use rsync in both directions between mirror hosts.

    For each version of each package there is a tarball, a detached PGP signature, -and a "meta" file. The meta file controls which version of the package -is current so that symlinks may be maintained automatically. The metafile -name is created by appending ".meta" to the archive file name (death to LPNs, cough cough)

    -$ cat foo_2.1.3ac4.tar.gz.meta
    -foo.tar.gz
    -foo_2.1.3ac3.tar.gz
    -$
    -

    The first line of the meta file is used to create a symlink to the -actual archive file, so that browsers can keep track of the current -version. The remainder of the file is a list of previous versions of -the archive which this obsoletes and may now be deleted

    Archive update is based exclusively on a "pull" model, to avoid the -need for authenticating to the peer. Read the shell/perl scripts to -see how it works

    Uploaders need to provide PGP detached signatures (foo.tar.gz.asc) -so that packages can be authenticated by download utilities

    • The doc, bin, etc directories contains shell scripts and data for syncing and maintaining the files in the cClan node itself. Users of cClan packages don't need to worry about these.

    • -
    • The old directory may contain previous versions of packages. This depends on the node admin's policy

    • -

    Comments/etc should go to the cclan-list mailing-list.

    As well as the mirror network, this project seems to live in part on Sourceforge.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cache.html b/clones/lisp/www.cliki.net/cache.html deleted file mode 100644 index 44d7eaf9..00000000 --- a/clones/lisp/www.cliki.net/cache.html +++ /dev/null @@ -1,72 +0,0 @@ - - - - - CLiki: cache - - - - - - - -
    cache
      -
    • -cacle - - cacle implements an extensible cache data structure -
    • -
    • -cl-cache-tables - - cl-cache-tables is a wrapper around native hash-tables to facilitate in-process caching of common lisp data structures -
    • -
    • -CLACHE - - CLACHE is a general caching library for CL -
    • -
    • -function-cache - - Function-cache is a Common Lisp function caching / memoization library -
    • -
    • -vcr - - vcr is made to store (cache) and replay results of http calls for easier testing of external services -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cacle.html b/clones/lisp/www.cliki.net/cacle.html deleted file mode 100644 index bdcaeaa4..00000000 --- a/clones/lisp/www.cliki.net/cacle.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cacle - - - - - - - -
    cacle
    cacle implements an extensible cache data structure.

    The facility is thread safe and content agnostic. Cacle contains a set of cache replacement policies, including LFU and LFUDA, and defines an interface for wrapping your own.

    See the home page for documentation and examples.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/call-next-macro.html b/clones/lisp/www.cliki.net/call-next-macro.html deleted file mode 100644 index 52df32c0..00000000 --- a/clones/lisp/www.cliki.net/call-next-macro.html +++ /dev/null @@ -1,115 +0,0 @@ - - - - - CLiki: call-next-macro - - - - - - - -
    call-next-macro
    Here's a macro example that may be less of a headache to understand than rebinding. It provides a way for a local macro definition to defer to the "next" macro definition under the same name. In this context, "next" means the lexically exterior definition, or else the global definition, if there is one (obtained via macro-function). This is by analogy with call-next-method and next-method-p in method definitions.

    (eval-when (:compile-toplevel :load-toplevel :execute) - (defun get-macro (name macro-functions &optional errorp) - (let ((macro-function (cdr (assoc name macro-functions)))) - (when macro-function (return-from get-macro macro-function)) - (when errorp (error "No macro definition for ~S." name))))) - -(eval-when (:compile-toplevel :load-toplevel :execute) - (defun macro-lambda-list (lambda-list whole env) - "Ensure &whole and &environment in LAMBDA-LIST." - (when (eq (first lambda-list) '&whole) - (setq whole (second lambda-list)) - (setq lambda-list (cddr lambda-list))) - (loop with env-p = nil - for (element . tail) on lambda-list - when (eq element '&environment) - do (setq env-p t env (car tail)) - finally (unless env-p - (setq lambda-list (list* '&environment env lambda-list))) - (setq lambda-list (list* '&whole whole lambda-list)) - (return (values lambda-list whole env))))) - -(defmacro macrolet+ ((&rest macro-definitions) &body body &environment environment) - (loop with whole = (gensym (string 'whole)) and env = (gensym (string 'environment)) - for (name lambda-list . macro-body) in macro-definitions - for macro-function = (macro-function name environment) - collect (cons name macro-function) into old-macro-functions - collect (multiple-value-bind (lambda-list whole env) - (macro-lambda-list lambda-list whole env) - `(,name ,lambda-list - (flet ((next-macro-p () - "Return true if there is a next macro." - (get-macro ',name ',old-macro-functions)) - (call-next-macro (&rest macro-arguments &aux (,whole ,whole)) - "Call the next (outer) MACRO-FUNCTION, or else signal an error." - (when macro-arguments (setq ,whole (list* ',name macro-arguments))) - (let ((next-macro (get-macro ',name ',old-macro-functions t))) - (funcall *macroexpand-hook* next-macro ,whole ,env)))) - (declare (dynamic-extent #'next-macro-p)) - (declare (dynamic-extent #'call-next-macro)) - ,@macro-body))) into new-macro-definitions - ;; Now each macro definition can use CALL-NEXT-MACRO. - finally (return `(macrolet ,new-macro-definitions - ,@body))))

    Quick example

    (macrolet+ ((foo (x) (if (numberp x) "It's a number." (call-next-macro)))) - (macrolet+ ((foo (x) (if (eql x 7) "Lucky." (call-next-macro)))) - (values (foo 12) (foo 13) (foo 1234567890) (foo 7))))

    Evaluating the above gives the values:

    "It's a number." -"It's a number." -"It's a number." -"Lucky."

    The first three macro calls (corresponding to the inner definition) invoked call-next-macro, while the last one didn't.

    (macrolet+ ((foo (x) (if (numberp x) "It's a number." (call-next-macro)))) - (macrolet+ ((foo (x) (if (eql x 7) "Lucky." (call-next-macro)))) - (values (foo 12) (foo 13) (foo 1234567890) (foo 'not-a-number))))

    This signals an error:

    > Error: No macro definition for FOO.
    -> While executing: GET-MACRO, in process listener(1).
    -> Type :POP to abort, :R for a list of available restarts.
    -> Type :? for other options.

    In other words, there isn't any global definition of the foo macro. Availability can be checked with next-macro-p.

    Related reading

    -
    -Apache 2
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/call-with style.html b/clones/lisp/www.cliki.net/call-with style.html deleted file mode 100644 index f4c1ece1..00000000 --- a/clones/lisp/www.cliki.net/call-with style.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: call-with style - - - - - - - -
    call-with style
    An approach to implementing macro of the type "with-foo".

    See http://random-state.net/log/3390120648.html.


    -programming tips
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/canonicalized-initargs.html b/clones/lisp/www.cliki.net/canonicalized-initargs.html deleted file mode 100644 index 5adbb80b..00000000 --- a/clones/lisp/www.cliki.net/canonicalized-initargs.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: canonicalized-initargs - - - - - - - -
    canonicalized-initargs
    canonicalized-initargs provides a :canonicalize slot option accepting an initarg canonicalization function.

    See the project's home for all details.


    -Unlicense, Public Domain
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/carrier.html b/clones/lisp/www.cliki.net/carrier.html deleted file mode 100644 index fe87e77a..00000000 --- a/clones/lisp/www.cliki.net/carrier.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: carrier - - - - - - - -
    carrier
    Carrier is an async HTTP client driven by cl-async and fast-http.

    Its goal is to allow easy and efficient streaming of data over HTTP. It is the lightweight cousin to drakma-async.

    https://github.com/orthecreedence/carrier


    -Topics: networking
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cartesian-product-switch.html b/clones/lisp/www.cliki.net/cartesian-product-switch.html deleted file mode 100644 index e244d028..00000000 --- a/clones/lisp/www.cliki.net/cartesian-product-switch.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cartesian-product-switch - - - - - - - -
    cartesian-product-switch
    cartesian-product-switch is a macro for choosing the appropriate form to execute according to the combined results of multiple tests. This is a straightforward and efficient alternative to the convoluted ad-hoc conditionals one might otherwise resort to.

    See the project's home for all details.


    -pattern matching, convenience library, Unlicense, Public Domain
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/caveman.html b/clones/lisp/www.cliki.net/caveman.html deleted file mode 100644 index ca50400e..00000000 --- a/clones/lisp/www.cliki.net/caveman.html +++ /dev/null @@ -1,58 +0,0 @@ - - - - - CLiki: caveman - - - - - - - -
    caveman
    Caveman is a web framework based on Clack.

      -
    • server independant -
    • -
    • database integration -
    • -
    • fully extensible -
    • -

    Homepage: 8arrow.org/caveman/

    License: LLGPL

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cc-bnc.html b/clones/lisp/www.cliki.net/cc-bnc.html deleted file mode 100644 index 13b3c054..00000000 --- a/clones/lisp/www.cliki.net/cc-bnc.html +++ /dev/null @@ -1,66 +0,0 @@ - - - - - CLiki: cc-bnc - - - - - - - -
    cc-bnc
    cc-bnc is an application intended for learners of the English language wanting to optimize their vocabulary studies.

      -
    • cc-bnc means: compare and contrast with BNCweb -
    • -
    • is aimed at learners of English interested in optimizing their vocabulary studies. -
    • -
    • runs fine on the author's machine, but is considered to be alpha software -
    • -
    • is a mini web app using the hunchentoot web framework -
    • -
    • accepts a URI, parses it through html2text, then lists for each word found at URI the corresponding frequency in the British National Corpus (BNC XML). -
    • -
    • software-wise interacts with your local copy of BNCweb (open source, version 4.2, available from the authors), which in turn depends on the data files of the BNC XML Edition (see their page for prices). -
    • -
    • is tested on SBCL and Linux only. -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ccl-compat.html b/clones/lisp/www.cliki.net/ccl-compat.html deleted file mode 100644 index de0883d5..00000000 --- a/clones/lisp/www.cliki.net/ccl-compat.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: ccl-compat - - - - - - - -
    ccl-compat
    Clozure CL compatibility module.

    Intended to use with CCLDOC to make it cross-implementation.

    Depends on: closer-mop, alexandria, bordeaux-threads

    Repository: https://github.com/phoe/ccl-compat

    License: LLGPL


    -compatibility layers
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ccl.html b/clones/lisp/www.cliki.net/ccl.html deleted file mode 100644 index f28f177a..00000000 --- a/clones/lisp/www.cliki.net/ccl.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: CCL - - - - - - - -
    CCL
    CCL is the Clozure Common Lisp implementation. Its most recent release is version 1.12, available since 2020-04-19. It used to be called OpenMCL. CCL runs on Mac OS X (PPC and x86), Linux (PPC and x86), FreeBSD (x86), Solaris (x86), and Windows XP and later (x86), and is available in 32 and 64-bit versions on all platforms. Some distinguishing features of the implementation include fast compilation speed, native OS threads, a precise, generational, compacting garbage collector, and a convenient foreign-function interface.

    License: Apache 2

    Homepage

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cclan-get.html b/clones/lisp/www.cliki.net/cclan-get.html deleted file mode 100644 index 3c40a28a..00000000 --- a/clones/lisp/www.cliki.net/cclan-get.html +++ /dev/null @@ -1,56 +0,0 @@ - - - - - CLiki: cclan-get - - - - - - - -
    cclan-get
    cclan-get downloads and install vn-cclan packages automatically. For example, (cclan-get :araneida) `just works' and fetches all dependencies, -too. cclan-get is just one front-end to the cclan repositories, with CLiki itself being another (see the "download from" links on certain pages).

    cclan-get knows repositories; the built-in repository -classes are LOCAL-REPOSITORY (local directory with vn-cclan tarballs), -HTTP-REPOSITORY (remote vn-cclan repository) and CLIKI-REPOSITORY -(which chases CLiki download links (see text formatting).

    We're relying on portableaserve as our HTTP client.


    -obsolete
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cclan.html b/clones/lisp/www.cliki.net/cclan.html deleted file mode 100644 index 32ad21f0..00000000 --- a/clones/lisp/www.cliki.net/cclan.html +++ /dev/null @@ -1,86 +0,0 @@ - - - - - CLiki: cclan - - - - - - - -
    cclan

    The Comprehensive Common Lisp Archive Network.

    The cCLan project started out intending to build a comprehensive -archive of CL code, in much the same way as CPAN and CTAN have for -Perl and TeX. In this aim it's been largely overtaken by -asdf-install and the "distributed network" here on CLiki.

    The cCLan network is still running and will continue to run for -the foreseeable future. Authors of asdf-install-compatible packages -are welcome to use it for distributing their packages if they have no -suitable hosting of their own, or would like the redundancy.

    (Also check out common-lisp.net which provides FTP, cvs, mailing lists and other services to Lisp projects)

    cCLan sites

    You can see the current cCLan sites (and choose your preferred mirror) -at http://ww.telent.net/cclan-choose-mirror, or proceed directly to -the current mirror. (If the -current mirror link takes you to a list of links, you have not yet set -your cookie. Choose one of the links in the list, return to this page, -and then choose the current mirror page once again. At that time you -should be directed to the link you chose.)

    Information for potential cclan node maintainers

    The cClan network was designed with these features in mind:

      -
    • use standard or easily-installable tools on the servers (e.g. ftp, - rsync, cron jobs) with no significant admin overhead (usenet is right out)

    • -
    • no single point of failure

    • -
    • allow people to upload to the most convenient host and have packages spread - from there -
    • -

    Basically we use rsync in both directions between mirror hosts.

    For each version of each package there is a tarball, a detached PGP signature, -and a "meta" file. The meta file controls which version of the package -is current so that symlinks may be maintained automatically. The metafile -name is created by appending ".meta" to the archive file name (death to LPNs, cough cough)

    -$ cat foo_2.1.3ac4.tar.gz.meta
    -foo.tar.gz
    -foo_2.1.3ac3.tar.gz
    -$
    -

    The first line of the meta file is used to create a symlink to the -actual archive file, so that browsers can keep track of the current -version. The remainder of the file is a list of previous versions of -the archive which this obsoletes and may now be deleted

    Archive update is based exclusively on a "pull" model, to avoid the -need for authenticating to the peer. Read the shell/perl scripts to -see how it works

    Uploaders need to provide PGP detached signatures (foo.tar.gz.asc) -so that packages can be authenticated by download utilities

    • The doc, bin, etc directories contains shell scripts and data for syncing and maintaining the files in the cClan node itself. Users of cClan packages don't need to worry about these.

    • -
    • The old directory may contain previous versions of packages. This depends on the node admin's policy

    • -

    Comments/etc should go to the cclan-list mailing-list.

    As well as the mirror network, this project seems to live in part on Sourceforge.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cdr_assoc.html b/clones/lisp/www.cliki.net/cdr_assoc.html deleted file mode 100644 index 39e10a9b..00000000 --- a/clones/lisp/www.cliki.net/cdr_assoc.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cdr_assoc - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cells-gtk.html b/clones/lisp/www.cliki.net/cells-gtk.html deleted file mode 100644 index 8df3c47f..00000000 --- a/clones/lisp/www.cliki.net/cells-gtk.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cells-gtk - - - - - - - -
    cells-gtk
    cells-gtk is a GTK+ based toolkit that enables a declarative-style description of a GUI. It provides a demo that uses all of the GTK widgets that it implements.

    Homepage: http://common-lisp.net/project/cells-gtk/

    License: LLGPL

    Version 3 from cvs:

    cvs -z3 -d :pserver:anonymous:anonymous@common-lisp.net:/project/cells-gtk/cvsroot co cells-gtk3

    There is a fork of version 3 on github (tarball) updated to follow current versions of dependencies as of June 2009.


    -GTK binding
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cells.html b/clones/lisp/www.cliki.net/cells.html deleted file mode 100644 index a234a6c0..00000000 --- a/clones/lisp/www.cliki.net/cells.html +++ /dev/null @@ -1,125 +0,0 @@ - - - - - CLiki: cells - - - - - - - -
    cells
    cells is a dataflow extension to CLOS (think spreadsheet-type programming, with slots being spreadsheet cells) by Kenny Tilton. It is released under a MIT-type license. Its home page is at common-lisp.net. It has undergone a major revision since it was first publicly released, and now has a significantly improved data-propagation model. On Kenny's Cells webpage, the citation for Bill Clementson's blog about Cells is valid, but Cells syntax changes have rendered the example inoperative. Updated example here

    Currently supported implementations are Allegro CL, SBCL, LispWorks, CLISP, ECL, ABCL, CCL and OpenMCL. It suffers from what appears to be a bug in CMUCL's CLOS implementation, so is only partially supported there. In the past it has worked on Corman Lisp and MCL, and resurrecting this support is most likely trivial.

    Find the current version and access to the mailing-list on common-lisp.net, the source via gitlab here [doesn't seem to be up-to-date]. Development occurs here.

    There is a git repository with a collection of small fixes on github (for those who don't want to bother with git there is an automatically generated tarball). -- Little outdated, but supports more implementations.

    There is an attempt at documentation available on github (tarball).

    Notes

    Understanding Cells

    After trying it out a bit, my understanding is this: You can define objects whose slots trigger events when their values are modified. These slots are called "cells."

    I think that's it; the rest is detail.

    Two kinds of things happen when a cell's value is changed:

      -
    • -
      Dependencies updated

      You can specify that cell-1's value depends on cell-2. If cell-2 is changed, cell-1 will be updated.

    • -
    • -
      Observer functions run

      You can write observer functions which are called when a cell of a given name is updated. I think only the Cells system can call them directly. (Which implies you're using them just for side-effects.)

      (Hmm, does this scale? You can make 100 objects, but each of their cells {cell-1..cell-N} will have to share observers named {cell-1..cell-N}.) -

    • -
    -Basic example:

    (defmodel my-cell () - ((cell-1 :cell t - :initform (c-in 1) ; c-in allows you to to modify this cell, with (for example) setf - :accessor cell-1) - (cell-2 :cell t - :initform (c? (* (^cell-1) 2)) ; c? bars you from modifying this cell, signalling an error; it only changes when cell-1 does - :accessor cell-2))) - -(defparameter *cell* (make-be 'my-cell))

    Cell-2 depends on cell-1's value. If cell-1 were to change, cell-2's value would change to be twice cell-1. So, let's try it out:

    -CL-USER> (cell-1 *cell*)
    -1
    -CL-USER> (cell-2 *cell*)
    -2
    -CL-USER> (setf (cell-1 *cell*) 10)
    -10
    -CL-USER> (cell-1 *cell*)
    -10
    -CL-USER> (cell-2 *cell*)
    -20
    -

    We can see that the syntax diverges a little from normal CLOS:

      -
    • -defclassdefmodel (Reasoning—syntactic sugar will be bound which normal CLOS can't accomodate.) -
    • -
    • -make-instancemake-be -
    • -
    • There's a :cell slot option. -
    • -
    • Slots are initialized with (c-in ...) and (c? ...) forms. -
    • -
    • You can refer to other cells by calling the (^cell-N) function (where cell-N is the name of another cell in the class) -
    • -
    -[todo: discuss observers]

    State vs. events

    (defmodel my-model () - ((cell-1 :cell t ...) - (cell-2 :cell :ephemeral ...)))

    cell-1 will keep its new value when changed.

    cell-2, however, will revert instantly to whatever it was initialized with, after dependencies/observers on cell-2 are triggered.

    (Philosophical background: From my (nonexpert) understanding, discrete processes are categorized into states and events, corresponding to :cell t and :cell :ephemeral, respectively. This is taken from Sowa's knowledge representation book.)

    (The docs mention :delta, but seems unsupported.)

    How one cell depends on another

    Cell-1 depends on cell-2 if (and only if) cell-1 looked at cell-2 the last time cell-1's c? code ran. Kenny Tilton explained on usenet:

    -So dependencies will vary after every invocation of, say:

    (c? (if (^a)(^b)(^c)))

    between A and B or A and C.

    Interestingly, this means inelegant code can create problems:

    (c? (let ((b (^b))(c (^c))) - (if (^a) b c)))

    ...always produces dependencies A, B, and C, which is a lie.

    Note, btw, that dependencies are dynamic, not lexical: call a function that accesses a cell and you still get a dependency.

    Special names

    From Kenny Tilton's post:

      -
    • -(^slotname) - within a c? or def-c-output form, holds the current value of that slot -
    • -
    • -self - (look into this. only know it's bound by default within a def-c-output form to the current instance) -
    • -
    • -.cache - within a c? form, holds the current value of a cell -
    • -
    • -.parent - [todo, dunno what it does] -
    • -
    • -.cause - symbol-macro of some sort, I don't suggest you use this as it seems unsupported -
    • -
    -

    Recovering from c-stop

    Call (cell-reset) if c-stop is invoked. c-stop apparently halts the Cells system when circular dependencies are detected, and maybe other scenarios too.

    An error message like the following may occur (formatted to be more readable):

    -0> c-calculate-and-set breaking on circularity | [?#:<vld>=[236]LOCATION/#<COMPUTER {41094259}>]
    -C-STOP> stopping because (cell ~a midst askers: ~a
    -                               [?#:<vld>=[236]LOCATION/#<COMPUTER {41094259}>]
    -                               ([?#:<vld>=[236]RESPONSE/#<COMPUTER {41094259}>]
    -                                [?#:<vld>=[236]LOCATION/#<COMPUTER {41094259}>]))
    -c-break > stopping > (cell ~a midst askers: ~a
    -                           [?#:<vld>=[236]LOCATION/#<COMPUTER {41094259}>]
    -                           ([?#:<vld>=[236]RESPONSE/#<COMPUTER {41094259}>]
    -                            [?#:<vld>=[236]LOCATION/#<COMPUTER {41094259}>]))
    -

    So we execute:

    -CL-USER> (cell-reset)
    -NIL
    -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cesdi.html b/clones/lisp/www.cliki.net/cesdi.html deleted file mode 100644 index 0ad40622..00000000 --- a/clones/lisp/www.cliki.net/cesdi.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cesdi - - - - - - - -
    cesdi
    cesdi provides a compute-effective-slot-definition-initargs generic function that allows for more ergonomic initialization of effective slot definition objects.

    See the project's home for all details.


    -Unlicense, Public Domain
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cffi-cairo.html b/clones/lisp/www.cliki.net/cffi-cairo.html deleted file mode 100644 index f9c50f87..00000000 --- a/clones/lisp/www.cliki.net/cffi-cairo.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cffi-cairo - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cffi-clutter.html b/clones/lisp/www.cliki.net/cffi-clutter.html deleted file mode 100644 index ee5e0359..00000000 --- a/clones/lisp/www.cliki.net/cffi-clutter.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cffi-clutter - - - - - - - -
    cffi-clutter
    cffi-clutter is a set of bindings to the Clutter GUI toolkit.

    Homepage: https://github.com/Ramarren/cffi-clutter

    License: BSD

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cffi-dirent.html b/clones/lisp/www.cliki.net/cffi-dirent.html deleted file mode 100644 index 0fda0c5c..00000000 --- a/clones/lisp/www.cliki.net/cffi-dirent.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cffi-dirent - - - - - - - -
    cffi-dirent
    CFFI wrapper for the POSIX header dirent.h

    https://github.com/cffi-posix/cffi-dirent

    Part of cffi-posix POSIX headers.

    Maintainers : thodg.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cffi-epoll.html b/clones/lisp/www.cliki.net/cffi-epoll.html deleted file mode 100644 index 483fc9b2..00000000 --- a/clones/lisp/www.cliki.net/cffi-epoll.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cffi-epoll - - - - - - - -
    cffi-epoll
    CFFI wrappers for Linux extension EPOLL.

    https://github.com/cffi-posix/cffi-epoll

    Part of cffi-posix Linux extensions.

    Maintainers : thodg.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cffi-errno.html b/clones/lisp/www.cliki.net/cffi-errno.html deleted file mode 100644 index 609ed15e..00000000 --- a/clones/lisp/www.cliki.net/cffi-errno.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cffi-errno - - - - - - - -
    cffi-errno
    CFFI wrapper for the POSIX header errno.h

    https://github.com/cffi-posix/cffi-errno

    Part of cffi-posix POSIX headers.

    Maintainers : thodg.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cffi-fcntl.html b/clones/lisp/www.cliki.net/cffi-fcntl.html deleted file mode 100644 index 6b2190b4..00000000 --- a/clones/lisp/www.cliki.net/cffi-fcntl.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cffi-fcntl - - - - - - - -
    cffi-fcntl
    CFFI wrapper for the POSIX header fcntl.h

    https://github.com/cffi-posix/cffi-fcntl

    Part of cffi-posix POSIX headers

    Maintainers : thodg.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cffi-gdbm.html b/clones/lisp/www.cliki.net/cffi-gdbm.html deleted file mode 100644 index b48287c6..00000000 --- a/clones/lisp/www.cliki.net/cffi-gdbm.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cffi-gdbm - - - - - - - -
    cffi-gdbm
    cffi-gdbm is an interface for the gdbm database.

    License: GPL

    Homepage: http://github.com/Ramarren/cffi-gdbm


    StructuredStorage

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cffi-j.html b/clones/lisp/www.cliki.net/cffi-j.html deleted file mode 100644 index 4a8ee54b..00000000 --- a/clones/lisp/www.cliki.net/cffi-j.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: cffi-j - - - - - - - -
    cffi-j
    cffi-j is a set of CFFI bindings for the J programming language (libj.so library).

    -Homepage: https://github.com/Ramarren/cffi-j

    License: BSD


    -Topics: FFI -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cffi-objects.html b/clones/lisp/www.cliki.net/cffi-objects.html deleted file mode 100644 index 1fad25d6..00000000 --- a/clones/lisp/www.cliki.net/cffi-objects.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cffi-objects - - - - - - - -
    cffi-objects
    CFFI-objects is a library that enhances CFFI with several new constructions to use when you need to work with complex structures or objects.

    It supports structures by-value and by-reference with and without saving C-pointer on lisp side. Also there is type object, that allows to send lisp object with pointer slot or C-pointer. No documentation yet. Look into sources of GTK-CFFI for usage examples.

    Depends on: CFFI, trivial-garbage, closer-mop

    Repository: https://common-lisp.net/viewvc/cffi-objects/


    -BSD license FFI
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cffi-posix Berkeley sockets.html b/clones/lisp/www.cliki.net/cffi-posix Berkeley sockets.html deleted file mode 100644 index 7e704ca3..00000000 --- a/clones/lisp/www.cliki.net/cffi-posix Berkeley sockets.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: cffi-posix Berkeley sockets - - - - - - - -
    cffi-posix Berkeley sockets
    • -cffi-socket - - CFFI wrappers for Berkeley sockets -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cffi-posix Linux extensions.html b/clones/lisp/www.cliki.net/cffi-posix Linux extensions.html deleted file mode 100644 index dc5dca04..00000000 --- a/clones/lisp/www.cliki.net/cffi-posix Linux extensions.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: cffi-posix Linux extensions - - - - - - - -
    cffi-posix Linux extensions
    • -cffi-epoll - - CFFI wrappers for Linux extension EPOLL -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cffi-posix POSIX headers.html b/clones/lisp/www.cliki.net/cffi-posix POSIX headers.html deleted file mode 100644 index d9d1e2cf..00000000 --- a/clones/lisp/www.cliki.net/cffi-posix POSIX headers.html +++ /dev/null @@ -1,72 +0,0 @@ - - - - - CLiki: cffi-posix POSIX headers - - - - - - - -
    cffi-posix POSIX headers
    cffi-posix

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cffi-posix.html b/clones/lisp/www.cliki.net/cffi-posix.html deleted file mode 100644 index 8407cd1d..00000000 --- a/clones/lisp/www.cliki.net/cffi-posix.html +++ /dev/null @@ -1,91 +0,0 @@ - - - - - CLiki: cffi-posix - - - - - - - -
    cffi-posix
    cffi-posix is an attempt to regularly and portably expose the POSIX API using CFFI.

    https://github.com/cffi-posix

    Each POSIX header gets a package : -

    Berkeley sockets are supported too : -

    • -cffi-socket - - CFFI wrappers for Berkeley sockets -

    Supported Linux extensions : -

    • -cffi-epoll - - CFFI wrappers for Linux extension EPOLL -

    Packages using cffi-posix : -

    Maintainers : thodg.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cffi-redland.html b/clones/lisp/www.cliki.net/cffi-redland.html deleted file mode 100644 index a12069d2..00000000 --- a/clones/lisp/www.cliki.net/cffi-redland.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cffi-redland - - - - - - - -
    cffi-redland
    cffi-redland is a set of bindings for the Redland RDF Library

    Homepage: https://github.com/Ramarren/cffi-redland

    License: BSD


    -Topics: semantic web
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cffi-socket.html b/clones/lisp/www.cliki.net/cffi-socket.html deleted file mode 100644 index 8b7f0e36..00000000 --- a/clones/lisp/www.cliki.net/cffi-socket.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cffi-socket - - - - - - - -
    cffi-socket
    CFFI wrappers for Berkeley sockets.

    https://github.com/cffi-posix/cffi-socket

    Part of cffi-posix Berkeley sockets.

    Maintainers : thodg.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cffi-stat.html b/clones/lisp/www.cliki.net/cffi-stat.html deleted file mode 100644 index c8e8bda3..00000000 --- a/clones/lisp/www.cliki.net/cffi-stat.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cffi-stat - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cffi-stfl.html b/clones/lisp/www.cliki.net/cffi-stfl.html deleted file mode 100644 index 491092fc..00000000 --- a/clones/lisp/www.cliki.net/cffi-stfl.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cffi-stfl - - - - - - - -
    cffi-stfl
    cffi-stfl is a set of bindings for STFL (Structured Terminal Forms Language/Library), a curses-based widget set for text terminals.

    Homepage: https://github.com/Ramarren/cffi-stfl

    License: BSD


    -Topics: console
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cffi-unistd.html b/clones/lisp/www.cliki.net/cffi-unistd.html deleted file mode 100644 index 548421dd..00000000 --- a/clones/lisp/www.cliki.net/cffi-unistd.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cffi-unistd - - - - - - - -
    cffi-unistd
    CFFI wrappers for the POSIX header unistd.h

    https://github.com/cffi-posix/cffi-unistd

    Part of cffi-posix POSIX headers

    Maintainers : thodg.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cffi-wordnet.html b/clones/lisp/www.cliki.net/cffi-wordnet.html deleted file mode 100644 index e2b385ef..00000000 --- a/clones/lisp/www.cliki.net/cffi-wordnet.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cffi-wordnet - - - - - - - -
    cffi-wordnet
    cffi-wordnet is a simple Common Lisp interface to the Wordnet 3.0 lexical database. Its source can be found here: http://github.com/kraison/cffi-wordnet.

    Author: Kevin Raison

    License: MIT

    Homepage: http://github.com/kraison/cffi-wordnet

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cffi.html b/clones/lisp/www.cliki.net/cffi.html deleted file mode 100644 index 4c1fe217..00000000 --- a/clones/lisp/www.cliki.net/cffi.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: CFFI - - - - - - - -
    CFFI
    CFFI, the Common Foreign Function Interface, purports to be a portable foreign function interface for Common Lisp.

    The CFFI library is composed of a Lisp-implementation-specific backend in the CFFI-SYS package, and a portable frontend in the CFFI package.

    The CFFI-SYS backend package defines a low-level interface to the native FFI support in the Lisp implementation. It offers operators for allocating and dereferencing foreign memory, calling foreign functions, and loading shared libraries. The CFFI frontend provides a declarative interface for defining foreign functions, structures, typedefs, enumerated types, etc... It is implemented in portable ANSI CL making use of the low-level operators exported by CFFI-SYS.

    A UFFI compatibility layer is also included.

    More information about CFFI (including documentation) is available in CFFI's home page at common-lisp.net.

    SWIG can also generate CFFI code from headers.

    UNIX systems have CFFI wrappers at cffi-posix

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cgn.html b/clones/lisp/www.cliki.net/cgn.html deleted file mode 100644 index 2e3f15b1..00000000 --- a/clones/lisp/www.cliki.net/cgn.html +++ /dev/null @@ -1,97 +0,0 @@ - - - - - CLiki: cgn - - - - - - - -
    cgn
    cgn is an interface to the gnuplot plotting library. It has been programmed using LTK, and works everywhere LTK works. I has been tested succesfully on Linux and Windows.

    I've moved to http://common-lisp.net/project/nixies due to problemes with sourceforge's inferno.

    ---------------------------------------------

    -Since cgn007, the prefered way to use cgn should be using the with-gnuplot macro. This way always there's a gnuplot connection running, and you can use a gnuplot which is not at the path. See a little example (more examples on the project web at common-lisp.net ): -

    -(with-gnuplot ( 'linux )
    -
    -   (plot-function "cos(x)*sin(x)**2" )
    -
    -   (set-range 'x 0 10)
    -
    -   (set-range 'y -5 5)
    -
    -   (set-grid 'on)
    -
    -   (set-grid 'off)
    -
    -   (set-title "My graphic")
    -
    -   ;Plots a scatter graphic with xy errobars
    -
    -
    -   (plot-points '(1 2 3) '(2 4 5) :x_error '(0.1 0.2 0.3) :y_error '(0.2 0.4 0.5))
    -
    -   ;You can save a postscript copy of the graphic
    -
    -   (postscript-copy "file.ps" )
    -
    -   ;Now you can print you graphics
    -   (print-graphic )
    -
    -   ;And finally we save the session
    -   (save-cgn "MySession.cgn" )
    -)
    -

    It will ever be possible to use the more interactive approach used before :

    -(start-gnuplot :path "the path to gnuplot")
    -
    -;Code here
    -
    -(close-gnuplot)
    -

    But cgn will not be sure that a gnuplot connection exists. But It still will give you a error if that does not exists. Get fun!


    -There is some kind of need for introducing 'finish when using with-gnuplot, which doesn't make any sense to me. It looks like cgn is trying to stop gnuplot from quiting immediately after plotting, which is the default behavior. It does this by a call to read. I think a better solution is to remove the commands (format ...) and (read), add the -persist command line option when gnuplot starts, i.e. change (do-execute path nil) to (do-execute path '("-persist")) up in (defun cgn:start-gnuplot... Seems to do the trick nicely. --Zach

    Thanks you. I corrected that error yesterday. --Felip

    I found another error. Gnuplot does not understand floating point numbers of the type 9.23d-3. It only understands numbers like 1.234 or 5 or 3.2e-5. However, Gnuplot is quite robust and will try to plot these numbers by dropping the d and it's exponent. This means that 9.23d-3 will be plotted at 9.23. To fix this, go to the plot points function (and where ever else it is needed) and substitute ~D (for decimal printing) to ~F for fixed point numbers. But this is actually not perfect as it is kind of stupid to write out that 300 zeros for something like 1d-300. --Zach

    I never tried to use those numbers with gnuplot. Simply, they doesn't make sense to me, since I always prefer to change the units system in my computations before using bigger numbers. But I'll include this too. --Felip

    With regards to the above, if you use the format directive ~,,,,,,'EE in place of ~D, you will get a floating point representation of double or single floats but using 'E' as the exponent signifier. All those commas are because the ~E directive accepts something like 7 arguments, the 7th one being the character to use to represent the exponent; those commas separate the arguments that would be their if they were non-nil. See http://www.cs.cmu.edu/Groups/AI/html/cltl/clm/node200.html --Kyle

    -Also, there seems to be some problem with the .cgn.dat file not being overwritten. Not sure why...

    That's not a problem at all. I want cgn 009 to use only pipes, not files. Actually I'm too busy for an immediate release, but I'm planning to do that. But some lisp implementations do buggy things with files. I had that problem last year with clisp on windows. --Felip

    Spotted something, when the .cgn.dat file is opened, the arguments ':if-exists :overwrite' are given to with-open-file; meaning that if subsequent data sets are not as long as previous ones, there will still be remnants of the old data left. If this is changed to ':if-exists :supersede' then the old file is wholly replaced by the new file. Also, if anyone is getting junk data being added to a plot on zooming with gnuplot 4.6, gnuplot 4.7 solves this (but you will probs have to build it yourself). --Kyle

    -There are more things in cgn 008 to change. Example: the os parameter in with-gnuplot. You can use member to see if *features* includes :win32. cgn 009 will do that. I also plan to change the scatter plotting function to do things funcionally. But now I'm very busy. And well, cgn began as a 10 minutes hack to show to a friend the power of lisp. I believe that works pretty well, and I try to document it as well as I can. But It will always be something to start a connection, do some plots and close a connection. There are more sofisticated approaches out there, using threads and those things. I want cgn to be simple. But bug reports are welcome. --Felip

    Hello again:

    I uploaded cgn008b to sourceforge. It isn't at common-lisp.net because there are things from cgn009 mixed with the correction to those bugs. I didn't want to confuss anyone. You can download at sourceforge. asdf-install will keep installing cgn008. Please, install manually cgn008b only if you need urgently those bugs corrected. --Felip -


    -To download the latest development version of cgn, use darcs get http://common-lisp.net/project/nixies/darcs/cgn. Feel free to send patches to superratoli@gmail.com. You can also get a development snapshot of cgn at http://common-lisp.net/project/nixies/cgn_snapshot.tar.gz

    Please, be patient if something doesn't work. This is the main repository for development. -


    -How to do It work on Windows:

    ---------------------------

    Since cgn007, It does not need tuning for working on windows. Just use with-gnuplot ( 'w32 :path "the path to pgnuplot.exe" ) (there's a little example at cgn's web ) . But here you have instructions to put gnuplot at the path.

    First of all, you need to install gnuplot, of course. Then, add the directory where you installed It to the path. You can do It by clicking the left button on "My computer" , then "Advanced Options" and "Environment variables". Modify the path variable to add the directory. E.g. : if you installed gnuplot at c:\gnuplot, your path variable must be "c:\program files [more things] ; c:\gnuplot".

    Then, go to the directory where gnuplot is installed and rename pgnuplot.exe to gnuplot.exe. That's all!

    -----------------------------

    cgn005 had a hard time compiling on SBCL with my experience (Fedora Core 5 in the US). I suspect the "special" characters in the comments for the function definitions were throwing things off. I deleted all the comments and SBCL seemed a lot happier with things.

    Thank you! I've released today (8-VI) cgn006. This is a bug fix only release. I've translated those comments to english, corrected a bug on closing gnuplot and added cldoc documentation at the doc/ directory. It compiles on 0:00:01 on my SBCL 0.9.13 Mandriva Linux in Spain.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ch-image.html b/clones/lisp/www.cliki.net/ch-image.html deleted file mode 100644 index de80be63..00000000 --- a/clones/lisp/www.cliki.net/ch-image.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: ch-image - - - - - - - -
    ch-image
    ch-image is a common lisp image representation and processing library. It includes image file I/O, some simple drawing primitives, text rendering via FFI to freetype, and image manipulation such as discrete convolution and affine transformation. It can be found at https://github.com/slyrus/ch-image. The author considers it to be superseded by opticl.


    -obsolete
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ch-util.html b/clones/lisp/www.cliki.net/ch-util.html deleted file mode 100644 index 04dc1f1f..00000000 --- a/clones/lisp/www.cliki.net/ch-util.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: ch-util - - - - - - - -
    ch-util
    Cyrus Harmon's CL utilities.

    Preserved in common-lisp-stdlib—is ch-util used anywhere else? Obsolete?

    Repository: https://github.com/argonz/common-lisp-stdlib/tree/master/ch-util_0.3.10

    License: BSD

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/change-class dangers.html b/clones/lisp/www.cliki.net/change-class dangers.html deleted file mode 100644 index ba776516..00000000 --- a/clones/lisp/www.cliki.net/change-class dangers.html +++ /dev/null @@ -1,72 +0,0 @@ - - - - - CLiki: change-class dangers - - - - - - - -
    change-class dangers
    change-class changes the class of the CLOS object involved; in -the specification you'll see a "Notes" section that points -out the problems of changing the class of an object in the presence -of a smart compiler.

    Experience has shown that sometimes you'll get into problems using -slot-value or variables introduced with with-slots. It may -appear the the EQ-ness of objects in not preserved because the -compiler was "smart enough" to optimize these features, so for instance: if it's possible -to access the same object (EQ) with another symbol, the compiler can -return different slot-value's for the original or the other symbol. Even -if they are EQ! This can be very confusing.

    For instance:

    (defvar *A* (make-instance 'bar)) - -(defmethod foo ((x bar)) - (change-class x 'baz) - (format t "~&from x: ~S from *A*: ~S" - (slot-value x 'quux) - (slot-value *A* 'quux))) - -(foo *A*)

    Can produce output like: "from x: 1 from *A*: 2", depending -on the compiler and/or optimization qualities.

    To solve this just call a helper function just after -changing the class. The compiler will not optimize over function calls -so the slot-value and with-slots features work again.


    -programming tips
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/changed-stream.html b/clones/lisp/www.cliki.net/changed-stream.html deleted file mode 100644 index d3e34c55..00000000 --- a/clones/lisp/www.cliki.net/changed-stream.html +++ /dev/null @@ -1,67 +0,0 @@ - - - - - CLiki: changed-stream - - - - - - - -
    changed-stream
    Is a lisp library for non-destructive changing of streams by inserting or deleting characters at a position. It lets you non-destructively ‘change’ an input stream, by specifying a) where the change occurs, b) how many characters were deleted at that point and c) what characters where typed-in at that point.

    It's well tested, and has a pretty good manual.

    (with-input-from-string (s "0123456789") - (let ((d (change-stream s - :at 3 - :delete 1 - :insert "xyz"))) - (read-line d))) -;; "012xyz456789" -

    For more info see:

    -
    -Topics: Text, Warren Wilkinson
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/chanl.html b/clones/lisp/www.cliki.net/chanl.html deleted file mode 100644 index fe0160c5..00000000 --- a/clones/lisp/www.cliki.net/chanl.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: chanl - - - - - - - -
    chanl
    ChanL is a concurrency library built on top of bordeaux-threads that provides channels as thread-synchronisation primitives.

    It has a simple, fully-extensible API (through CLOS). The API is currently documented in the README.

    You can check out ChanL at Github.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/chaos-lisp.html b/clones/lisp/www.cliki.net/chaos-lisp.html deleted file mode 100644 index a6593e25..00000000 --- a/clones/lisp/www.cliki.net/chaos-lisp.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: chaos-lisp - - - - - - - -
    chaos-lisp
    chaos-lisp implements a multi-threaded ChaosNET Network Control Program under OpenMCL running on Mac OS X, interfacing with Unix-domain sockets containing emulated ChaosNET packets.

    ChaosNET was a LAN technology contemporary with the MIT Lisp Machines. Today, it is of interest mostly to those emulating the Incompatible Time-Sharing System (ITS) and CADR Lisp Machines.

    This code works well enough to allow the USIM emulator to communicate with a simulated host named "openmcl", including flow-controlled bi-directional streams, and the beginnings of mail and chat protocol support.

    chaos-lisp depends on cocoa-mail.

    Homepage: http://josephoswald.nfshost.com/chaos-lisp/summary.html

    License: ???


    -Topics: networking
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/character encoding.html b/clones/lisp/www.cliki.net/character encoding.html deleted file mode 100644 index dad9dd4c..00000000 --- a/clones/lisp/www.cliki.net/character encoding.html +++ /dev/null @@ -1,76 +0,0 @@ - - - - - CLiki: character encoding - - - - - - - -
    character encoding
    Projects having to do with the character encoding/decoding of text. In Common Lisp, characters may be elements in streams or strings, and their codes are often represented in Unicode.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/charseq.html b/clones/lisp/www.cliki.net/charseq.html deleted file mode 100644 index 8a73e19d..00000000 --- a/clones/lisp/www.cliki.net/charseq.html +++ /dev/null @@ -1,57 +0,0 @@ - - - - - CLiki: charseq - - - - - - - -
    charseq
    This package provides charseq structure which represents an efficient character sequence. -charseq is a wrapper of CL standard string and it has following features:

      -
    • When creating a substring, charseq shares the source string instance and maintains start and end position of new string. Hence it is a constant time (and size) operation.
    • -
    • It is ensured that charseq instance always holds a (simple-array character *) string as internal representation. (simple-array character *) is one of the most efficient type that represents strings. -
    • -
    -Repository: https://github.com/sile/charseq

    License: MIT

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/check-it.html b/clones/lisp/www.cliki.net/check-it.html deleted file mode 100644 index ad7bb8b1..00000000 --- a/clones/lisp/www.cliki.net/check-it.html +++ /dev/null @@ -1,56 +0,0 @@ - - - - - CLiki: check-it - - - - - - - -
    check-it
    check-it is a property-based testing tool designed to be used from within other test frameworks. Its flexible value-generation facility can also be used on its own outside of a testing context.

    Features: -

      -
    • Shrinks values to discover a minimum failing case
    • -
    • Can be tuned to manage the size of data structures generated from recursive type specifications
    • -
    • Can be configured to save previously discovered random failures as deterministic regression tests in future runs of the test suite
    • -

    Source repository: https://github.com/DalekBaldwin/check-it

    License: LLGPL

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/chemical-compounds.html b/clones/lisp/www.cliki.net/chemical-compounds.html deleted file mode 100644 index b2a37b3f..00000000 --- a/clones/lisp/www.cliki.net/chemical-compounds.html +++ /dev/null @@ -1,83 +0,0 @@ - - - - - CLiki: chemical-compounds - - - - - - - -
    chemical-compounds
    Sometimes you want to be able to parse chemical formulas in a normal, user-friendly syntax. For example, water is usually written -"H2O". This syntax is good for users, but for Lisp code, you -need a different representation. In chemical-compounds, H2O would be -represented as ((H 2) O).

    A more complicated molecule is glucose, C6H12O6. This is -((C 6) (H 12) (O 6)) in our internal representation. You may have -noticed that "C6H12O6" is ugly and hard to read, due to the clunky way -that plain text deals with the subscripts. Therefore, in the format -used by chemical-compounds, glucose is "C6 H12 O6", with spaces.

    Some chemical formulas parenthesize parts of the compound and add a -subscript. The formula "(C O2)4 H2" would be parsed as -(((C (O 2)) 4) (H 2)).

    The home page is - -http://common-lisp.net/project/chemboy/

    Example

    -
    (use-package :compounds)
    -
    -;; Pretty-print water to a string and return it
    -(with-output-to-string (s) (pprint-compound '((H 2) O) s))
    -; => "H2 O"
    -
    -;; Parse some compounds
    -(parse-compound "C6 H12 O6") ; => ((C 6) (H 12) (O 6))
    -(parse-compound "(C O2)4 H2") ; => (((C (O 2)) 4) (H 2))
    -
    -;; Calculate the number of grams per mole of some compounds.
    -;; This depends on the *(periodic-table) package.
    -(formula-weight '((C 6) (H 12) (O 6))) ; => 180.15768
    -(formula-weight (parse-compound "C6 H12 O6")) ; => 180.15768
    -
    -;; Parse the argument if necessary.
    -;; This is just a trivial convenience function.
    -(get-compound "C6 H12 O6") ; => ((C 6) (H 12) (O 6))
    -(get-compound '((C 6) (H 12) (O 6))) ; => ((C 6) (H 12) (O 6))

    It is released under the LLGPL

    How it works

    -On the off-chance that someone is interested in how this library works:

    The formula weight finding and pretty-printing are fairly easy to implement recursively, but the parsing is interesting. I had originally entertained crazy thoughts about using cl-ppcre and some regexp lunacy to parse chemical formulas. I quickly abandoned this ridiculous idea. How does one use regular expressions recursively to match things like "(C O2)4 H2"? I don't know, and I don't want to know. Instead, I used META.

    META is a parsing technique, not a parser. I ripped some of the basic META code from Henry Baker's paper, and found it underpowered and inconventient. After adding in some heavy macros for a lot of things (the closest I've ever come to making a domain-specific language for parsing), it became very nice. Writing parsers with META really is straightforward with the proper macros. I thank META for my code's great portability; chemical-compounds has been tested successfully on SBCL, LispWorks, Corman Lisp, and ECL.


    -Science
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/chillax.html b/clones/lisp/www.cliki.net/chillax.html deleted file mode 100644 index 2fbe11f3..00000000 --- a/clones/lisp/www.cliki.net/chillax.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: chillax - - - - - - - -
    chillax
    Chillax is an interface to CouchDB. It includes a CouchDB view server, which can be used to write CouchDB views in full, native Common Lisp.

    Homepage: https://github.com/sykopomp/chillax

    License: MIT


    -Topics: StructuredStorage
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/chipz.html b/clones/lisp/www.cliki.net/chipz.html deleted file mode 100644 index a64cc1ea..00000000 --- a/clones/lisp/www.cliki.net/chipz.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: chipz - - - - - - - -
    chipz
    Chipz is a decompression library for decompressing DEFLATE (RFC 1951) data such as ZLIB (RFC 1950), GZIP (RFC 1952), as well as bzip2.

    Homepage

    It is the reading complement to Salza2.

    The newest version is 0.8.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/chronicity.html b/clones/lisp/www.cliki.net/chronicity.html deleted file mode 100644 index a243aeb7..00000000 --- a/clones/lisp/www.cliki.net/chronicity.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: chronicity - - - - - - - -
    chronicity
    Chronicity is a Common Lisp library for parsing natural language date and time strings.

    It is available under a BSD-style license.

    See the Chronicity github repository at https://github.com/chaitanyagupta/chronicity.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cirCLe.html b/clones/lisp/www.cliki.net/cirCLe.html deleted file mode 100644 index fdb21ad8..00000000 --- a/clones/lisp/www.cliki.net/cirCLe.html +++ /dev/null @@ -1,174 +0,0 @@ - - - - - CLiki: cirCLe - - - - - - - -
    cirCLe
    cirCLe is dead, or at least has seen no active work since 2004 or so. See sb-studio for another project with similar aims, though

    The cirCle project is creating a Free (as in "Free Software") Common -Lisp development and deployment platform for Linux-based GNU systems. -It will include a Lisp system, a powerful integrated development -environment (editor/debugger/class browser/etc), documentation, tools -for packaging and installing code, and all the libraries needed for -productively doing "everyday" programming for things like graphics, -networking, Web interfaces and talking to databases.

    Why?

    - ``GNU will be able to run Unix programs, but will not be - identical to Unix [...] Both C and Lisp will be available - as system programming languages.'' -
    - -- The GNU Manifesto, rms, 1985 -

    Today the community of Free Software developers have succeeded in -creating OS kernels, libraries, basic programming tools and -Unix-compatible utilities which are as good as and often better than -the systems they replace. We've developed code that we ourselves want -to use ("scratching an itch") and the result has been high quality, -secure, reliable, flexible software.

    The picture changes when we look at "end-user" application -programming. These applications are much bigger and more complex, -therefore harder for developers to write and harder for users to -extend and modify for their needs. Additionally, the target user is -often not expected to want to modify the software, so configurability -and extensibility become low priorities. Development becomes less -rewarding for many people because they do not expect to use the -finished program.

    cirCLe is designed around the principle that today's users may be -tomorrow's developers. We encourage users to extend or change -software for their needs, and so increase the likelihood that they -will become contributors to our community.

    One important way that we do this is to grant users the same -opportunities to change software that we ourselves have as we write -it. So instead of allowing limited `preferences' or `configuration -options', or of tacking on a `scripting language' to allow control of -high level concerns, we develop in the same language throughout. -Therefore we use a language which has both the interactive development -style (no tedious recompilation) and domain constructs of a scripting -language, and the facilities for developing large systems and OS -access that make a real programming language "real".

    -

    What's included

    The first release (version 0) of cirCLe is primarily aimed at -prospective developers of cirCle itself. Because we want people to be -able to start hacking as soon as possible, v0 includes some tools -which we will replace in later versions.

    The description here covers both the initial version of cirCLe and -some of our ideas for future versions. For current -information on exactly what will be in which version you can consult -the cirCLe Task List, but also note that much of the -package development is done by other people, so it might well be the -case (for libraries especially) that features turn up in v0 or v1 that -we haven't even thought of yet.

    Infrastructure tools

    -
    a Lisp implementation: Steel Bank Common Lisp (SBCL) -
    an editor and debugger interface: Emacs with SLIME

    - -
    This is a compromise between what we would like and what's available: -in a later version of cirCLe we will replace this with a CL-based -editor which uses McCLIM.

    -
    a unix shell interface

    -
    We are working towards a unified "Listener" interface which provides -access to the unix shell command line and to Lisp functionality from -the same prompt. This will be present in version 0 for testing and -demonstration, but for real work we initially recommend an ordinary -shell for Unix and SLIME for Lisp.

    -
    a package manager and installer

    -
    Libraries in cirCLe are described using ASDF ("Another System -Definition Facility"), a tool that performs a similar role to make(1) -in the Unix environment. We also have asdf-install, which can -download a gzipped library source package from the net, compile and -install it. -
    -

    Documentation tools

    cirCLe will include a documentation tool able to produce output -suitable for publishing on the Web, printed output, and some format -which can be integrated into the development environment for online -help. Some form of this tool is required for v0, but not necessarily -every libary will initially be documented with it. Eventually we'll -have docs in this format for all of cirCLe's infrastructure and -libraries.

    -

    Libraries

    Earmarked for the initial version 0 cirCLe:

      -
    • Graphics support -
      - - McCLIM, an implementation of the Common Lisp Interface Manager -
      - - CLX, an X11 interface for low-level graphics support

    • -
    • Networking -
      - - SB-BSD-SOCKETS (part of SBCL) provides a Berkeley sockets interface -
      - - CLORB is an Object Request Broker implementing CORBA 2 (DII, DSI, POA) -
      - - Araneida, the programmable web server (perhaps Portable Allegroserve too) -
      - - Libraries for other protocols: SMTP, IRC, NNTP, DNS, etc. -
    • -
    • Databases -
      - - Pg supports PostgreSQL databases directly from Lisp -
      - - CL-SQL has other backends as well (but may not be in version 0 because - of packaging issues) -
      - - UncommonSQL provides a quasi-standard OO mapping over relational - databases; we'd like to include it in some fairly early version.

    • -
    • Uncategorised -
      -
      CL-PPCRE, other string/sequence manipulation functions -
      SB-POSIX (low-level OS support) -
      xmls. xml-rpc and soap support would be good -
    • -

    Project Documentation

    In addition to the documentation provided about specific packages, we -maintain some documents about cirCLe as a whole

      -
    • cirCLe Style Guide and Coding standards

      This covers both general advice about idiomatic Lisp style, and -cirCLe-specific issues such as how to generate a new library for -cirCLe, advice on choosing licenses, and details of how and where to -publish your code so that other cirCLe users can use it. Eventually -you can find it here on CLiki: in the meantime, the link you see here is to -a scratchpad where we make notes for things that should go into it

    • -
    • Status report/Task list: see cirCLe Task List -
    • -

    How you can help

    If you want to see cirCLe available, there are many opportunities to -work on different parts of the system, and you don't need to be an -expert Lisp programmer - though obviously we hope you want to learn. -Take a look at the cirCLe Task List for something that interests you, and -contact the mailing list or the listed contact for more advice on what -we're looking for and how to go about it.

    If you're already the author or maintainer of Free Common Lisp software, we -commend you. You can help cirCLe by testing your software in our Lisp -implementation, and by packaging it to be cirCLe-compatible (see the -coding standards for details). You might also like to join our -mailing list and bring the benefit of your Lisp experience to the -project.

    http://lists.metacircles.com/cgi-bin/mailman/listinfo/circle-devel

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/circular-streams.html b/clones/lisp/www.cliki.net/circular-streams.html deleted file mode 100644 index 511ff8b6..00000000 --- a/clones/lisp/www.cliki.net/circular-streams.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: circular-streams - - - - - - - -
    circular-streams
    Circular-Streams allows you to read streams circularly by wrapping real streams. Once you reach end-of-file of a stream, its file-position will be reset to 0 and you're able to read it again.

    Note this library can treat only octet streams which has a method read-byte. This might be expanded in the future.

    This library was originally written by Tomohiro Matsuyama as a part of Clack, Eitaro Fukamachi ported it with some improvements.

    Depends on: fast-io, trivial-gray-streams

    Repository: https://github.com/fukamachi/circular-streams

    License: LLGPL

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-2d.html b/clones/lisp/www.cliki.net/cl-2d.html deleted file mode 100644 index 4496ae33..00000000 --- a/clones/lisp/www.cliki.net/cl-2d.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-2d - - - - - - - -
    cl-2d
    Cl-2d is a two-dimensional graphics library for Common Lisp. It builds on cl-cairo2 and thus uses the Cairo library, which provides various backends, including pixel-based (eg PNG, X11) and vector-based (PDF, SVG, PostScript) ones. It is meant solely for 2-dimensional plotting (hence the name). Cl-2d is available from Github or via ASDF-install. It was originally licensed under the LLGPL but recently (2012-01) changed to the simple, permissive non-copyleft free Boost Software License.

    Some example plots can be found on Tamas K Papp's blog.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-2dsyntax.html b/clones/lisp/www.cliki.net/cl-2dsyntax.html deleted file mode 100644 index 7de441ec..00000000 --- a/clones/lisp/www.cliki.net/cl-2dsyntax.html +++ /dev/null @@ -1,59 +0,0 @@ - - - - - CLiki: cl-2dsyntax - - - - - - - -
    cl-2dsyntax
    cl-2dsyntax is an indentation-sensitive syntax system like Python (the programming language, not the CMUCL/SBCL compiler) does. The homepage of the project is http://ql-goheecus.goheeca.ga/lisp/cl-2dsyntax/ (the old site is: http://hyperprostor.g6.cz/lisp/cl-2dsyntax/). It's released in the public domain.

    Installation

    -The installation is provided by my own Quicklisp's dist. -
    (ql-dist::install-dist "http://ql-goheecus.goheeca.ga/goheecus.txt") -(ql:quickload :cl-2dsyntax)
    -

    Usage

    -Enable the syntax by: -
    (cl-2dsyntax:enable-syntax)
    -
    -Topics: language extension
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-aa.html b/clones/lisp/www.cliki.net/cl-aa.html deleted file mode 100644 index 114a7cd1..00000000 --- a/clones/lisp/www.cliki.net/cl-aa.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-aa - - - - - - - -
    cl-aa
    cl-aa implements the anti-aliasing algorithm from AntiGrain in Common Lisp.

    http://tuxee.net/cl-aa.lisp


    -graphics library
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-actors.html b/clones/lisp/www.cliki.net/cl-actors.html deleted file mode 100644 index b5453ce8..00000000 --- a/clones/lisp/www.cliki.net/cl-actors.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-actors - - - - - - - -
    cl-actors
    A simple Common Lisp implementation of the actor model of concurrency. It's implemented on top of Bordeaux-Threads, and available through quicklisp.

    github


    -thread concurrency actors
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-agraph.html b/clones/lisp/www.cliki.net/cl-agraph.html deleted file mode 100644 index 0b679a44..00000000 --- a/clones/lisp/www.cliki.net/cl-agraph.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-agraph - - - - - - - -
    cl-agraph
    CL-AGRAPH is a minimal portable Lisp client for AllegroGraph.

    Depends on: rutils, cl-ppcre, drakma, cl-ntriples

    Repository: https://github.com/vseloved/cl-agraph

    License: MIT


    -RDF networking
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-amazonproduct.html b/clones/lisp/www.cliki.net/cl-amazonproduct.html deleted file mode 100644 index 74759c9a..00000000 --- a/clones/lisp/www.cliki.net/cl-amazonproduct.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-amazonproduct - - - - - - - -
    cl-amazonproduct
    cl-amazonproduct is an Amazon Product Advertising web API interface library.

    Homepage: https://github.com/arielnetworks/cl-amazonproduct

    License: LLGPL

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-ana.html b/clones/lisp/www.cliki.net/cl-ana.html deleted file mode 100644 index 42b4e05b..00000000 --- a/clones/lisp/www.cliki.net/cl-ana.html +++ /dev/null @@ -1,63 +0,0 @@ - - - - - CLiki: cl-ana - - - - - - - -
    cl-ana
    cl-ana aims to provide the basic tools necessary to analyze large/medium-large datasets.

    The wiki serves as the manual/tutorial for cl-ana.

    cl-ana is highly modular, and is intended to be an extensible collection of utilities as opposed to a monolithic application

    Supported so far:

      -
    • -Tabular data: Provides unified interface for working with HDF5, ntuples (like PAW from CERN), CSVs (using cl-csv), and new formats can be added via specializing on generic functions.
    • -
    • -Histogramming/Binned data analysis: Contiguous, sparse and categorical histograms are provided along with integration/projection along any axes of the histogram, slicing, arithmetic, and functional access (map, filter, reduce).
    • -
    • -Plotting: gnuplot is used for plotting/visualization; supports plotting LISP functions, formulae as strings, alists, histograms, and can be extended.
    • -
    • -Fitting: Nonlinear least squares fitting is handled via a frontend to gsll; allows LISP functions to be fitted against alists, histograms and can be extended to allow other data sources.
    • -
    • -Generic mathematics: CL doesn't come with extensible math functions/operations, so generic versions are provided. On top of this is built e.g. the tensor sublibrary, which treats nested sequences of arbitrary depth as tensors, and defines element-wise functions for all of the generic math functions you create automatically (think matlab). Also included are utilities for error propogation and quantities (numbers with units).
    • -


    -statistics language extension
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-annot.html b/clones/lisp/www.cliki.net/cl-annot.html deleted file mode 100644 index ec7d952f..00000000 --- a/clones/lisp/www.cliki.net/cl-annot.html +++ /dev/null @@ -1,58 +0,0 @@ - - - - - CLiki: cl-annot - - - - - - - -
    cl-annot
    cl-annot adds Python-like decorators (or Java-like annotations) to Common Lisp.

    Annotations are a reader macro for annotating and transforming forms. Annotations look like Python's decorators:

    @annot -(defun foobar () - ...) -

    Any functions and macros can be annotations which takes one argument by default. For example, if you define the following function,

    (defun trace (object) - (print object) - object) -

    you can use the function as an annotation like:

    @trace (+ 1 2)

    Homepage: https://github.com/arielnetworks/cl-annot

    License: LLGPL


    -Topics: language extension
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-anonfun.html b/clones/lisp/www.cliki.net/cl-anonfun.html deleted file mode 100644 index 07803516..00000000 --- a/clones/lisp/www.cliki.net/cl-anonfun.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-anonfun - - - - - - - -
    cl-anonfun
    cl-anonfun - anonymous function helpers for Common Lisp.

    Homepage: https://github.com/arielnetworks/cl-anonfun

    License: LLGPL

    See also: f-underscore


    -Topics: convenience library
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-ansi-term.html b/clones/lisp/www.cliki.net/cl-ansi-term.html deleted file mode 100644 index 0d0dac34..00000000 --- a/clones/lisp/www.cliki.net/cl-ansi-term.html +++ /dev/null @@ -1,67 +0,0 @@ - - - - - CLiki: cl-ansi-term - - - - - - - -
    cl-ansi-term
    cl-ansi-term allows to print various primitives on ANSI-complaint terminals. -It also supports coloration and effects. cl-ansi-term is not like ncurses, it works -with primitives that you can output on your terminal, as well as redirect to a file -without any loss.

    cl-ansi-term can print the following things:

      -
    • colorized text;
    • -
    • horizontal lines;
    • -
    • progress bars;
    • -
    • unordered lists;
    • -
    • ordered lists;
    • -
    • tables.
    • -
    -cl-ansi-term uses concept of style sheet to manage coloration of -output. Define styles, give them names, specify foreground colors, -background colors, and effects for every style.

    cl-ansi-term provides hooks to give more control over the library.

    cl-ansi-term is able to detect whether output goes to a terminal or -to a file. If the latter case takes place, no escape sequences will get -into the file. It's also possible to disable all effects and coloration.

    GitHub repository: https://github.com/vindarel/cl-ansi-term

    You can install it via Quicklisp:

    (ql:quickload "cl-ansi-term")

    It's distributed under GNU GPL.


    -Relevant topics: text, console
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-ansi-text.html b/clones/lisp/www.cliki.net/cl-ansi-text.html deleted file mode 100644 index 8182a269..00000000 --- a/clones/lisp/www.cliki.net/cl-ansi-text.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-ansi-text - - - - - - - -
    cl-ansi-text
    Enables ANSI colors for printing.

    Depends on: cl-colors2, alexandria

    Repository: https://github.com/pnathan/cl-ansi-text

    License: LLGPL


    -console
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-apertium-stream-parser.html b/clones/lisp/www.cliki.net/cl-apertium-stream-parser.html deleted file mode 100644 index 39f78ee0..00000000 --- a/clones/lisp/www.cliki.net/cl-apertium-stream-parser.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-apertium-stream-parser - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-applescript.html b/clones/lisp/www.cliki.net/cl-applescript.html deleted file mode 100644 index 35f75eca..00000000 --- a/clones/lisp/www.cliki.net/cl-applescript.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-applescript - - - - - - - -
    cl-applescript
    cl-applescript provides an FFI API for interfacing AppleScript and Common Lisp. Depends on flexi-streams.

    This is still a work in progress; currently only SBCL and CCL are supported, and the output translation does not handle dictionaries nor «foo ...» forms other than «class ...» and «data ...».

    Also, this requires Mac OS X Leopard (10.5) which made AppleScript fully Unicode-compatible.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-ascii-table.html b/clones/lisp/www.cliki.net/cl-ascii-table.html deleted file mode 100644 index 60f2fd0a..00000000 --- a/clones/lisp/www.cliki.net/cl-ascii-table.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-ascii-table - - - - - - - -
    cl-ascii-table
    Common Lisp library to present tabular data in ASCII-art tables.

    Repository: https://github.com/telephil/cl-ascii-table

    License: MIT


    -Text
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-async-future.html b/clones/lisp/www.cliki.net/cl-async-future.html deleted file mode 100644 index 2e0047ee..00000000 --- a/clones/lisp/www.cliki.net/cl-async-future.html +++ /dev/null @@ -1,64 +0,0 @@ - - - - - CLiki: cl-async-future - - - - - - - -
    cl-async-future
    cl-async-future is a future (or "promise") implementation that allows a simple abstraction for values that may or may not be available yet. It is particularly useful for transforming CPS-style code into (what appears to be) stack-based programming (this example uses cl-async):

    ;;; make-future and alet are part of the cl-async-future package - -(defun timer (seconds &key threaded) - "Fire an asynchronous timer" - (let ((future (make-future))) - (as:delay (lambda () (finish future t)) :time seconds)) - future)) - -(as:with-event-loop () - (format t "starting timer!~%") - (alet ((done (timer 2))) - ;; 2s pause - (format t "done!~%")))

    Here's we run an asynchronous operation which would normally need a callback, and replace it with what looks like real lisp code (in this case "alet").

    cl-async-future comes with a full set of macros to abstract asynchronous programming and make it more natural (including error handling).

    cl-async-future has been superseded by blackbird.


    -Topics: obsolete
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-async.html b/clones/lisp/www.cliki.net/cl-async.html deleted file mode 100644 index 62e6e33d..00000000 --- a/clones/lisp/www.cliki.net/cl-async.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-async - - - - - - - -
    cl-async
    Cl-async is a asynchronous I/O library wrapping the libuv C library. It provides low-level async and threading methods for various operations, such as TCP, filesystem access, cross-thread signaling, etc.

    Repository: https://github.com/orthecreedence/cl-async

    License: MIT

    See also: IOLib CLEE cl-event blackbird


    -Topics: system programming networking concurrency
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-audioscrobbler.html b/clones/lisp/www.cliki.net/cl-audioscrobbler.html deleted file mode 100644 index c67e8da7..00000000 --- a/clones/lisp/www.cliki.net/cl-audioscrobbler.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-audioscrobbler - - - - - - - -
    cl-audioscrobbler
    cl-audioscrobbler is a Common Lisp wrapper to the Audioscrobbler/Last.fm API.

    The project page : cl-audioscrobbler

    The current version : 0.3.1


    -web API
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-autorepo.html b/clones/lisp/www.cliki.net/cl-autorepo.html deleted file mode 100644 index bad63179..00000000 --- a/clones/lisp/www.cliki.net/cl-autorepo.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-autorepo - - - - - - - -
    cl-autorepo
    A simple lisp library to ease inclusion of non-Quicklisp libraries from repositories.

    Depends on: uiop

    Repository: https://github.com/billstclair/cl-autorepo

    License: Apache 2


    -ASDF-extension
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-autowrap.html b/clones/lisp/www.cliki.net/cl-autowrap.html deleted file mode 100644 index 6a944a3a..00000000 --- a/clones/lisp/www.cliki.net/cl-autowrap.html +++ /dev/null @@ -1,71 +0,0 @@ - - - - - CLiki: cl-autowrap - - - - - - - -
    cl-autowrap
    cl-autowrap is a point-and-shoot tool for creating and distributing FFI wrappers. It allows one to specify a C header file, and generates wrappers from there using c2ffi. Features:

      -
    • Uses c2ffi to generate specs which are far more accurate than SWIG -
    • -
    • Does not require a compiler for groveling or c2ffi for distribution, only the generated .spec files -
    • -
    • Platform-specific details are separated and loaded on a per-platform basis -
    • -
    • FFI is based on a new simplified FFI (SFFI) on top of CFFI-SYS -
    • -
    • Type-correct pointer wrappers and easy GC support -
    • -
    • Extensive metadata support -
    • -
    • Bitfields (that is, partial-structure-fields, as opposed to bitmasks) -
    • -
    • Bitmasks, flag translation, etc -
    • -
    • Tested by implementing numerous wrappers including cl-sdl2 -
    • -

    License: BSD 2-clause

    Available via QuickLisp. c2ffi is required for authors and available separately (also BSD licensed).


    -FFI
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-azure.html b/clones/lisp/www.cliki.net/cl-azure.html deleted file mode 100644 index 93fe5340..00000000 --- a/clones/lisp/www.cliki.net/cl-azure.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-azure - - - - - - - -
    cl-azure
    cl-azure lets you access Microsoft Windows Azure cloud storage from Common Lisp.

    Windows Azure is Microsoft's cloud hosting platform. This project is an incomplete, proof-of-concept implementation of a Common Lisp library for accessing the storage features, namely Blobs, Tables and Queues.

    Homepage: https://github.com/RobBlackwell/cl-azure

    License: BSD


    -web API
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-base32.html b/clones/lisp/www.cliki.net/cl-base32.html deleted file mode 100644 index 74850287..00000000 --- a/clones/lisp/www.cliki.net/cl-base32.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-base32 - - - - - - - -
    cl-base32
    CL-Base32 is a Common Lisp library for encoding / decoding bytes to / from base32 strings (RFC 4648).

    Homepage: http://haphazardhouse.net/projects/cl-base32

    Source: https://github.com/hargettp/cl-base32

    License: MIT


    -Topics: data format
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-base58.html b/clones/lisp/www.cliki.net/cl-base58.html deleted file mode 100644 index 4481acc1..00000000 --- a/clones/lisp/www.cliki.net/cl-base58.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-base58 - - - - - - - -
    cl-base58
    This library implements the base58 encoding algorithm. It's basically base64 but with a smaller alphabet (58, as in the title) that doesn't include similar looking characters, among other things.

    Repository: https://github.com/eudoxia0/cl-base58

    License: MIT


    -data format
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-base64.html b/clones/lisp/www.cliki.net/cl-base64.html deleted file mode 100644 index 00608a1b..00000000 --- a/clones/lisp/www.cliki.net/cl-base64.html +++ /dev/null @@ -1,63 +0,0 @@ - - - - - CLiki: cl-base64 - - - - - - - -
    cl-base64
    cl-base64 provides base64 (RFC 1521) encoding and decoding. It is maintained by Kevin Rosenberg and is based on -initial code by Juri Pakaste. It is available in the Debian distribution.

    Features

      -
    • -ASDF file for loading
    • -
    • Support for case-sensitive AllegroCL -
    • -
    • Highly optimized versions of original base64 routines -
    • -
    • New routines that encode from integers and decode to integers
    • -
    • Modified Base64 character set for URI encoding, keyword selectable
    • -
    -
    -Topics: data format
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-bench.html b/clones/lisp/www.cliki.net/cl-bench.html deleted file mode 100644 index c8b5daa5..00000000 --- a/clones/lisp/www.cliki.net/cl-bench.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - CLiki: cl-bench - - - - - - - -
    cl-bench
    cl-bench is a benchmarking toolkit produced by Eric Mardsen. Some recent work has been done by Daniel Kochmański to make it easier to load on various systems. Currently system may be acquired from repository on common-lisp.net.


    Summary:

    Some Common Lisp performance benchmarking code. Includes the Gabriel benchmarks, mathematical functions, bignum-intensive operations, CLOS test, hashtable exercising, read-line exercising, various operations on arrays, strings and bitvectors, and performance-intensive kernels such as CRC and DEFLATE. Updated 2004-08-02.

    -- '+', August 9, 2006

    -It has been reported that cl-bench was used to produce the SBCL benchmarking graphs at boinkor.net

    cl-bench may be downloaded [link] and is referenced in the downloads page, in Mardsen's site at chez.com

    -

    Related Work

    Gabriel's Lisp Benchmarking Suite is available via the CMU AI Repository

    -


    -Benchmark
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-bencode.html b/clones/lisp/www.cliki.net/cl-bencode.html deleted file mode 100644 index bdde86f1..00000000 --- a/clones/lisp/www.cliki.net/cl-bencode.html +++ /dev/null @@ -1,61 +0,0 @@ - - - - - CLiki: cl-bencode - - - - - - - -
    cl-bencode
    cl-bencode is a library for working with the bencode BitTorrent data format.

    cl-bencode supports all four different types of bencode values.

      -
    • byte strings as strings or byte vectors -
    • -
    • integers as integers -
    • -
    • lists as lists -
    • -
    • and dictionaries as hashtables -
    • -

    It's proven capable of roundtripping several torrents found in the -wild.

    http://github.com/nja/cl-bencode

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-bibtex.html b/clones/lisp/www.cliki.net/cl-bibtex.html deleted file mode 100644 index acddf286..00000000 --- a/clones/lisp/www.cliki.net/cl-bibtex.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: CL-BibTeX - - - - - - - -
    CL-BibTeX
    CL-BibTeX is a replacement for the BibTeX document preparation program, written by Matthias Koeppe.

    Homepage: http://www.freesoftware.fsf.org/cl-bibtex/

    License: LLGPL

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-binary-file.html b/clones/lisp/www.cliki.net/cl-binary-file.html deleted file mode 100644 index b43f988e..00000000 --- a/clones/lisp/www.cliki.net/cl-binary-file.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-binary-file - - - - - - - -
    cl-binary-file
    The binary file package contains utilities to read and write binary files. The utilities support writing bytes of size 8 bits (octets) and currently only two's complement signed encoding is supported. The package has also in-memory binary stream which can be used as a file stream. See unit tests for more information about usage.

    Depends on: trivial-gray-streams

    Repository: https://github.com/danlentz/cl-binary-file

    License: MIT


    -Topics: binary format
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-binaural.html b/clones/lisp/www.cliki.net/cl-binaural.html deleted file mode 100644 index 7c1c3024..00000000 --- a/clones/lisp/www.cliki.net/cl-binaural.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-binaural - - - - - - - -
    cl-binaural
    Generate "binaural" sound from mono and stereo streamers.

    In principle, can be used for creation of 'virual audio reality' (you hear, that certain objects are -located at specific points in the surrounding space).

    See README on the homepage for more info and for current progress.

    Licence: GPL

    Homepage: https://github.com/mabragor/cl-binaural

    audio

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-bio.html b/clones/lisp/www.cliki.net/cl-bio.html deleted file mode 100644 index 01ab5bf5..00000000 --- a/clones/lisp/www.cliki.net/cl-bio.html +++ /dev/null @@ -1,58 +0,0 @@ - - - - - CLiki: cl-bio - - - - - - - -
    cl-bio
    Lightweight versions of biological objects and methods on these objects, including sequences, ranges, descriptors, identifiers; also, file parsers.

    File parsers: -

      -
    • FASTA
    • -
    • NCBI Taxonomy Data
    • -
    • PDB* (Protein Data Bank)
    • -
    • Affymetrix CDF files*
    • -
    • Affymetrix Annotation files
    • * Incomplete

      From Cyrus Harmon, author of opticl and clem.

      Homepage: GitHub

      License: BSD

      Topics: bioinformatics -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-blapack.html b/clones/lisp/www.cliki.net/cl-blapack.html deleted file mode 100644 index 0b5147ea..00000000 --- a/clones/lisp/www.cliki.net/cl-blapack.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-blapack - - - - - - - -
    cl-blapack
    A wrapper around the Fortran BLAS and LAPACK libraries for dense linear algebra.

    Homepage: GitHub

    License: BSD

    See Also: magicl

    Topic: linear algebra

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-blog-generator.html b/clones/lisp/www.cliki.net/cl-blog-generator.html deleted file mode 100644 index d3a24bc4..00000000 --- a/clones/lisp/www.cliki.net/cl-blog-generator.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-blog-generator - - - - - - - -
    cl-blog-generator
    cl-blog-generator is a static blog generator with Atom feeds.

    Depends on: cxml, cl-fad, local-time, flexi-streams, mel-base, cl-ppcre, babel

    Repository: https://github.com/hugoduncan/cl-blog-generator

    Maintainer: Hugo Duncan

    License: BSD 2-Clause

    Purpose

    Generates a static site from input blog posts and pages. The input format is an augmented xhtml, which is then inserted into a template. All posts are kept in the filesystem, but a database is used for querying the meta-information (not anymore). An (optional) emacs minor-mode is included to publish posts and generate the site.


    -blog software
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-blogger.html b/clones/lisp/www.cliki.net/cl-blogger.html deleted file mode 100644 index 7978f97e..00000000 --- a/clones/lisp/www.cliki.net/cl-blogger.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-blogger - - - - - - - -
    cl-blogger
    CL-BLOGGER is a web API interface to Blogger.com. It also provide a convenient way to post a native muse file in emacs.

    Homepage: http://code.google.com/p/cl-blogger/

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-bloom.html b/clones/lisp/www.cliki.net/cl-bloom.html deleted file mode 100644 index 8e7f2e52..00000000 --- a/clones/lisp/www.cliki.net/cl-bloom.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-bloom - - - - - - - -
    cl-bloom
    Bloom filters in Common Lisp with efficient hashing.

    Repository: https://github.com/ruricolist/cl-bloom


    -MIT-LICENSE, data structure
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-btree.html b/clones/lisp/www.cliki.net/cl-btree.html deleted file mode 100644 index 35ed78c4..00000000 --- a/clones/lisp/www.cliki.net/cl-btree.html +++ /dev/null @@ -1,71 +0,0 @@ - - - - - CLiki: cl-btree - - - - - - - -
    cl-btree
    B-Tree implemented in Common Lisp. Stores key/value pairs onto disk based data structure. Current implementation has been tested with SBCL.

    Homepage: https://sourceforge.net/projects/cl-btree/

    License: MIT

    cl-btree has relatively high code coverage with unit tests but it is still -considered unstable because of low usage rate.

    Usage

    There is two types of B-trees implemented. Default type uses 32-bit unsigned integers as keys and values. The other type uses string as keys and values. -The string B-tree can store anything readable as keys and values. The size -of key strings or values is not fixed. String B-tree uses simply prin1 -to write and read to read keys and values from cl-swap-file block stream.

    Here is a sample session for using string B-tree:

    (let ((btree (b-tree:open "/tmp/b-tree-test.db" :type :string :block-size 64 :if-exists :append))) - (b-tree:insert btree 'my-key "This is a test value.") - (b-tree:search btree 'my-key) - (b-tree:close btree))

    cl-btree uses cl-swap-file for storing disk blocks on to file.

    Installation

    Download it from https://sourceforge.net/projects/cl-btree/files/

    cl-btree no longer depends on cl-unit-test.

    Quick assessment (2021-04-11)

      -
    1. Depends on cl-swap-file and cl-binary-file—but they're called cl-swap-file-0.6 and cl-binary-file-0.4, so ASDF fails there. -
    2. -
    3. -cl-binary-file depends on trivial-garbage but doesn't actually use it, so the attempt to make a weak hash table isn't portable. -
    4. -
    5. -cl-binary-file implements a kind of bivalent stream (via trivial-gray-streams) but it doesn't work right under CCL. -
    6. -
    7. Each system includes the lisp-unit module, so there are a bunch of warnings about duplicate definitions. -
    8. -
    -On the plus side, the code is fairly readable, so any problems can likely be fixed, if anyone is inclined.


    -Tags: StructuredStorage, Data Structure
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-buchberger.html b/clones/lisp/www.cliki.net/cl-buchberger.html deleted file mode 100644 index c4daa4be..00000000 --- a/clones/lisp/www.cliki.net/cl-buchberger.html +++ /dev/null @@ -1,63 +0,0 @@ - - - - - CLiki: cl-buchberger - - - - - - - -
    cl-buchberger
    cl-buchberger is a Common Lisp implementation of Buchberger's algorithm for the computation of Gröbner bases.

    -
    -mathematics
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-bzip2.html b/clones/lisp/www.cliki.net/cl-bzip2.html deleted file mode 100644 index 881f2884..00000000 --- a/clones/lisp/www.cliki.net/cl-bzip2.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-bzip2 - - - - - - - -
    cl-bzip2
    cl-bzip2 provides CFFI bindings for libbzip2, the bzip2 compression/decompression library. It comes with a BSD-style license.

    The project homepage: cl-bzip2.

    Install instructions in project page


    -Compression

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-cache-tables.html b/clones/lisp/www.cliki.net/cl-cache-tables.html deleted file mode 100644 index 7e23f12c..00000000 --- a/clones/lisp/www.cliki.net/cl-cache-tables.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-cache-tables - - - - - - - -
    cl-cache-tables
    cl-cache-tables is a wrapper around native hash-tables to facilitate in-process caching of common lisp data structures.

    This data structure implements cache-friendly functionality such as expiring keys.

    cl-cache-tables github page


    -MIT-LICENSE
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-cairo2.html b/clones/lisp/www.cliki.net/cl-cairo2.html deleted file mode 100644 index 7349f3f6..00000000 --- a/clones/lisp/www.cliki.net/cl-cairo2.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-cairo2 - - - - - - - -
    cl-cairo2
    cl-cairo2 is a graphics library that provides Common Lisp bindings for the Cairo API.

    The package is hosted on github. If you want to download it from there, your best bet is cloning it from the repository, for which you need to install Git. Then go to the directory where you want it placed (a subdirectory will be created within it, so you don't have to do it), and use

    git clone git://github.com/rpav/cl-cairo2.git

    You might have to create a symlink to the asd file in your ASDF systems directory. After that, just use git pull in the subdirectory to update. A lot of guidance on Git is available here.

    The package contains a tutorial. Patches and bug reports are always welcome. You can also refer to the cairo website for other documentation/tutorial.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-cbr.html b/clones/lisp/www.cliki.net/cl-cbr.html deleted file mode 100644 index e7fc71d7..00000000 --- a/clones/lisp/www.cliki.net/cl-cbr.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-cbr - - - - - - - -
    cl-cbr
    cl-cbr (clcbr_latest.tar.gz) is a little cbr (comic book archive) viewer programmed on CMUCL using LTK, but it should work everywhere LTK works.

    This application is asdf-installable and is available from common-lisp.net. It requires unrar and convert (which is part of imagemagick) at the path.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-cffi-gtk.html b/clones/lisp/www.cliki.net/cl-cffi-gtk.html deleted file mode 100644 index 02e3b453..00000000 --- a/clones/lisp/www.cliki.net/cl-cffi-gtk.html +++ /dev/null @@ -1,68 +0,0 @@ - - - - - CLiki: cl-cffi-gtk - - - - - - - -
    cl-cffi-gtk
    cl-cffi-gtk is a Lisp binding to GTK+ 3 which is a library for creating graphical user interfaces.

    cl-cffi-gtk is licensed using the LGPL which has been adopted with a preamble -that clarifies the terms for use with Lisp programs and is referred as the -LLGPL. -This work is based on the cl-gtk2 library which has been developed by -Kalyanov Dmitry and already is a fairly complete Lisp binding to GTK+ 2.

    The focus of this work is to document the library more complete and to -do the implementation as consistent and complete as possible. Most informations about GTK+ -can be gained by reading the C documentation. Therefore, the C documentation -from The GTK+ Project is included into the Lisp files to document the Lisp -binding to the GTK+ library. This documentation is also available online at -cl-cffi-gtk API documentation.

    At this time, the library is developed and tested with SBCL 1.1.9 and -GTK+ 3.6.4 on a Linux system. Furthermore, the following libraries GLIB 2.36.0, -Pango 1.32.5, and Cairo 1.12.4 are loaded.

    Examples of the usage are included in a gtk-demo and tutorial examples. Start -with the tutorial available online at -GTK+ 3 Tutorial for Lisp -to learn how to use the library. Some more information and a gallery are available from the project website -cl-cffi-gtk Project.

    The latest version is available from the repository at -Github.

    GUI -GTK binding

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-change-case.html b/clones/lisp/www.cliki.net/cl-change-case.html deleted file mode 100644 index 063181f1..00000000 --- a/clones/lisp/www.cliki.net/cl-change-case.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-change-case - - - - - - - -
    cl-change-case
    cl-change-case is a library to convert strings between camelCase, param-case, snake_case and more.

    cl-change-case on github.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-charms.html b/clones/lisp/www.cliki.net/cl-charms.html deleted file mode 100644 index 45cb4d96..00000000 --- a/clones/lisp/www.cliki.net/cl-charms.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-charms - - - - - - - -
    cl-charms
    cl-charms is a set of CFFI bindings for libcurses (ncurses), a GUI-like console library. It began as more or less a port of cl-ncurses from using the less-portable UFFI system to using CFFI.

    cl-charms is maintained by Robert Smith and Mark Fedurin, and was initially developed by Abhishek Reddy. It is licensed under an MIT-style license.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-cidr-notation.html b/clones/lisp/www.cliki.net/cl-cidr-notation.html deleted file mode 100644 index ad180930..00000000 --- a/clones/lisp/www.cliki.net/cl-cidr-notation.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-cidr-notation - - - - - - - -
    cl-cidr-notation
    cl-cidr-notation is a library for converting IP addresses and CIDR blocks from integer to string representations and vice versa. These implementations are optimized for speed.


    -Topics: AccelerationNet, Networking
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-closure-template.html b/clones/lisp/www.cliki.net/cl-closure-template.html deleted file mode 100644 index f9ca76c9..00000000 --- a/clones/lisp/www.cliki.net/cl-closure-template.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: cl-closure-template - - - - - - - -
    cl-closure-template
    This is a Common Lisp port of Google Closure Templates HTML template library.

    -Homepage -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-clsparse.html b/clones/lisp/www.cliki.net/cl-clsparse.html deleted file mode 100644 index 04b745e1..00000000 --- a/clones/lisp/www.cliki.net/cl-clsparse.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-clsparse - - - - - - - -
    cl-clsparse
    Common Lisp bindings for clSPARSE.

    Depends on: CFFI

    Repository: https://github.com/gos-k/cl-clsparse/

    License: Apache 2


    -linear algebra
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-collider.html b/clones/lisp/www.cliki.net/cl-collider.html deleted file mode 100644 index 740f15bd..00000000 --- a/clones/lisp/www.cliki.net/cl-collider.html +++ /dev/null @@ -1,63 +0,0 @@ - - - - - CLiki: cl-collider - - - - - - - -
    cl-collider
    cl-collider is an interface to the SuperCollider audio synthesis server. It includes a scheduler, functionality for defining synths, objects for most of the standard unit generators, and various other features to allow access to the server's capabilities from Lisp. It is Public Domain.

    SuperCollider is often used for composition and performance of electronic and experimental music, as it includes a wide variety of oscillators, filters, analyzers, and other signal processing utilities. In addition to the server itself (scsynth) which does the work of generating and processing sound, SuperCollider also comes with its own Smalltalk-like language (sclang) and its own IDE (scide) which can be used to control and sequence the server. The language includes a range of features for expressing a multitude of musical and non-musical tasks in a variety of ways. Most of these tasks can also be accomplished in Lisp, either with cl-collider itself, or using another library.

    Related libraries

      -
    • -sc-extensions - Library of various additional functionality, from the cl-collider main author.
    • -
    • -cl-patterns - Sequencing and other control functionality, inspired by SuperCollider's Patterns and other live coding systems.
    • -

    Information and videos


    -audio music signal processing
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-colors.html b/clones/lisp/www.cliki.net/cl-colors.html deleted file mode 100644 index 295bbc9d..00000000 --- a/clones/lisp/www.cliki.net/cl-colors.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: cl-colors - - - - - - - -
    cl-colors
    [unmaintained, maintainers welcome] Contains named RGB colors; supports color combinations, alpha channels and HSV conversion/manipulation.


    -Prolific author of this library has switched to another language. According to him, would-be maintainer should fork and maintain for a year, announce the library resurrection, drop him an e-mail so he would redirect users, and convince Zach Beane to use the fork in Quicklisp. -

    Calling it a graphics library is a bit of an overstatement, but its primary purpose is to be used in graphics.

    Homepage: GitHub

    License: LLGPL

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-colors2.html b/clones/lisp/www.cliki.net/cl-colors2.html deleted file mode 100644 index 8814b7e8..00000000 --- a/clones/lisp/www.cliki.net/cl-colors2.html +++ /dev/null @@ -1,60 +0,0 @@ - - - - - CLiki: cl-colors2 - - - - - - - -
    cl-colors2
    This is a very simple color library for Common Lisp, providing:

      -
    1. Types for representing colors in HSV and RGB spaces; -
    2. -
    3. Simple conversion functions between the above types; -
    4. -
    5. Some predefined colors as an alist of names and values. -
    6. -
    -Depends on: alexandria, cl-ppcre

    Repository: https://notabug.org/cage/cl-colors2

    License: BSL


    -graphics library
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-comfy-arm.html b/clones/lisp/www.cliki.net/cl-comfy-arm.html deleted file mode 100644 index 38b9fc10..00000000 --- a/clones/lisp/www.cliki.net/cl-comfy-arm.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-comfy-arm - - - - - - - -
    cl-comfy-arm
    cl-comfy-arm is an implementation by JosephOswald of Henry Baker's COMFY assembler for the ARM architecture.

    Homepage: https://github.com/jaoswald/cl-comfy-arm

    License: BSD


    -Topics: machine code
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-competitive.html b/clones/lisp/www.cliki.net/cl-competitive.html deleted file mode 100644 index 9d7dbfbf..00000000 --- a/clones/lisp/www.cliki.net/cl-competitive.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-competitive - - - - - - - -
    cl-competitive
    A code collection maintained mainly for competitive programming, and partly for just understanding algorithms.

    Repository: https://github.com/privet-kitty/cl-competitive

    Optimized for: SBCL

    License: Public Domain


    -Topic: data structure
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-configuration.html b/clones/lisp/www.cliki.net/cl-configuration.html deleted file mode 100644 index 0539bc2d..00000000 --- a/clones/lisp/www.cliki.net/cl-configuration.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-configuration - - - - - - - -
    cl-configuration
    CL-CONFIGURATION is a package that provides a macro (DEFCONFIGURATION) which can be used to set up various logical pathnames in an elegant way. Moreover, it will (eventually) be able to load foreign various DEFSYSTEM definitions (MK, ACL, LW, PCL) to ensure that legacy code is loaded in a given image.

    CL-CONFIGURATION can be found in the CLOCC.


    -Topics: utilities compatibility layers
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-conspack.html b/clones/lisp/www.cliki.net/cl-conspack.html deleted file mode 100644 index 443151f9..00000000 --- a/clones/lisp/www.cliki.net/cl-conspack.html +++ /dev/null @@ -1,57 +0,0 @@ - - - - - CLiki: cl-conspack - - - - - - - -
    cl-conspack
    cl-conspack is a Common Lisp implementation of CONSPACK. It specifically features the following:

      -
    • Security, including allocation restrictions and restricted circularity. -
    • -
    • Speed, writing to octet-vectors and streams using fast-io. -
    • -

    License: BSD 2-clause.


    -serialization
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-cont.html b/clones/lisp/www.cliki.net/cl-cont.html deleted file mode 100644 index b3ce7aff..00000000 --- a/clones/lisp/www.cliki.net/cl-cont.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-cont - - - - - - - -
    cl-cont
    cl-cont is a delimited continuations library for Common Lisp. Initially written for cl-weblocks web framework, it is now a stand alone library. See its project page at http://common-lisp.net/project/cl-cont.


    -language extension metaprogramming continuations
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-containers.html b/clones/lisp/www.cliki.net/cl-containers.html deleted file mode 100644 index e462a38b..00000000 --- a/clones/lisp/www.cliki.net/cl-containers.html +++ /dev/null @@ -1,88 +0,0 @@ - - - - - CLiki: cl-containers - - - - - - - -
    cl-containers
    cl-containers adds binary search trees, red-black trees, sparse arrays, and other useful containers.

    You can find more information at the cl-containers home page. It's also available in Quicklisp.

    The cl-containers package is released under the MIT style license. It requires the following other packages: moptilities and metatilities-base.

    Some of the classes included:

      -
    • abstract-container (Inherited by all container classes, a good place to put pesky superclasses that you need)
    • -
    • abstract-queue
    • -
    • alist-container
    • -
    • array-container
    • -
    • associative-container
    • -
    • bag-container
    • -
    • basic-queue
    • -
    • biassociative-container-mixin
    • -
    • binary-search-tree
    • -
    • bounded-vector-container
    • -
    • container-node-mixin
    • -
    • contents-as-array-mixin
    • -
    • contents-as-hashtable-mixin
    • -
    • dlist-container A double-linked list
    • -
    • dlist-container-node A double-linked list node
    • -
    • filtered-iterator-mixin
    • -
    • flexible-vector-container
    • -
    • forward-iterator
    • -
    • heap-container
    • -
    • i-know-my-node-mixin
    • -
    • k-best-heap-container
    • -
    • keyed-associative-container
    • -
    • list-iterator
    • -
    • many-child-node
    • -
    • package-container
    • -
    • quad-tree
    • -
    • red-black-tree
    • -
    • rooted-tree-container (Base class of all trees with roots.)
    • -
    • sorted-dlist-container (A persistently sorted double-linked list)
    • -
    • stable-associative-container
    • -
    • stack-container
    • -
    • test-container-mixin
    • -
    • union-find-container
    • -
    • vector-container
    • -
    -
    -data structure
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-couchdb.html b/clones/lisp/www.cliki.net/cl-couchdb.html deleted file mode 100644 index 672abf43..00000000 --- a/clones/lisp/www.cliki.net/cl-couchdb.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-couchdb - - - - - - - -
    cl-couchdb
    cl-couchdb is a Common Lisp library for working with the CouchDB system.

    Considered obsolete, see clouchdb for a currently maintained interface to CouchDB.

    The project page: cl-couchdb

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-covid19.html b/clones/lisp/www.cliki.net/cl-covid19.html deleted file mode 100644 index fbaa7588..00000000 --- a/clones/lisp/www.cliki.net/cl-covid19.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: cl-covid19 - - - - - - - -
    cl-covid19
    The cl-covid19 system provides APIs for exploring and reviewing COVID-19 -data in Common Lisp.

    The system fetches time-series data from the COVID-19 API, and persists it locally in a SQLite database, so it can be reviewed offline.

    Repository: https://github.com/dnaeon/cl-covid19

    Depends on: alexandria, quri, dexador, jonathan, cl-csv, cl-ascii-table, cl-migratum, tmpdir, djula

    License: BSD 2-Clause


    -science
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-cracklib.html b/clones/lisp/www.cliki.net/cl-cracklib.html deleted file mode 100644 index f1f47953..00000000 --- a/clones/lisp/www.cliki.net/cl-cracklib.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-cracklib - - - - - - - -
    cl-cracklib
    cl-cracklib is a UFFI interface to cracklib's FascistCheck function.

    Repository: https://gitlab.common-lisp.net/cl-cracklib/cl-cracklib

    License: MIT

    cryptography (until a better topic is found)

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-crc64.html b/clones/lisp/www.cliki.net/cl-crc64.html deleted file mode 100644 index 1ea499f4..00000000 --- a/clones/lisp/www.cliki.net/cl-crc64.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-crc64 - - - - - - - -
    cl-crc64
    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.

    Homepage: https://github.com/robblackwell/cl-crc64

    License: BSD


    -cryptography
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-creditcard.html b/clones/lisp/www.cliki.net/cl-creditcard.html deleted file mode 100644 index da707849..00000000 --- a/clones/lisp/www.cliki.net/cl-creditcard.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-creditcard - - - - - - - -
    cl-creditcard
    cl-creditcard & cl-authorize-net: A common lisp library to enable processing credit card payments. Currently supports Authorize.Net.

    For more info see:

    Git Hub: https://github.com/AccelerationNet/cl-creditcard


    -Topic: AccelerationNet, web API
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-cron.html b/clones/lisp/www.cliki.net/cl-cron.html deleted file mode 100644 index b1b5c286..00000000 --- a/clones/lisp/www.cliki.net/cl-cron.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-cron - - - - - - - -
    cl-cron
    cl-cron is a simple cron like library that allows you to set up cron-like jobs and run them at predetermined times. The library has been tested on SBCL so far.

    Depends on: bordeaux-threads

    Repository: https://github.com/ciel-lang/cl-cron

    License: GPL3

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-css.html b/clones/lisp/www.cliki.net/cl-css.html deleted file mode 100644 index bde9d89c..00000000 --- a/clones/lisp/www.cliki.net/cl-css.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-css - - - - - - - -
    cl-css
    cl-css is a minimalist CSS generator for Common Lisp.

    The Github page has use documentation attached.

    No GPG keys, so download at your own risk. The program is something like 10 lines though, so feel free to check it over.


    -CSS
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-csv.html b/clones/lisp/www.cliki.net/cl-csv.html deleted file mode 100644 index d83a4a2e..00000000 --- a/clones/lisp/www.cliki.net/cl-csv.html +++ /dev/null @@ -1,64 +0,0 @@ - - - - - CLiki: CL-CSV - - - - - - - -
    CL-CSV
    CL-CSV is a library to parse and write csv (comma-separated-values) files.

      -
    • full test suite
    • -
    • tuned (slightly) for performance
    • -
    • handles multiline data
    • -
    • handles internationalized data
    • -
    • interop layer with clsql
    • -
    • By default produces CSVs that work with MS Excel
    • -

    Example: -

    -CL-CSV> (with-input-from-string (s "King,Queen
    -William,Elizabeth,your mom")
    -          (read-csv s))
    -(("King" "Queen") ("William" "Elizabeth" "your mom"))
    -

    For more info see:

    Git Hub: https://github.com/AccelerationNet/cl-csv

    Topics: file format, Text, AccelerationNet, CSV

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-cuda.html b/clones/lisp/www.cliki.net/cl-cuda.html deleted file mode 100644 index 28de8dcf..00000000 --- a/clones/lisp/www.cliki.net/cl-cuda.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-cuda - - - - - - - -
    cl-cuda
    Cl-cuda is a library to use Nvidia CUDA in Common Lisp programs.

    Homepage: https://github.com/takagi/cl-cuda

    License: LLGPL


    -Topics: concurrency
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-cudd.html b/clones/lisp/www.cliki.net/cl-cudd.html deleted file mode 100644 index fe9796e0..00000000 --- a/clones/lisp/www.cliki.net/cl-cudd.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-cudd - - - - - - - -
    cl-cudd
    CL-CUDD is a swig/cffi wrapper around the University of Colorado Decision Diagram library CUDD-2.4.2.

    The code is available under LLGPL; the cudd library (C-code) is also free software.

    Code is available at repo.or.cz/w/cl-cudd.git.

    See also cl-satwrap.


    -Topics: Electronics, AI, Theorem Provers
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-curl.html b/clones/lisp/www.cliki.net/cl-curl.html deleted file mode 100644 index 6f8af14e..00000000 --- a/clones/lisp/www.cliki.net/cl-curl.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-curl - - - - - - - -
    cl-curl
    Cl-curl is a set of Lisp binding to the C libcurl HTTP client library, a multiprotocol file transfer library. Libcurl is the basis for the popular curl unix/windows command line tool for fetching URIs.

    You'll need the C API doc.

    It is useful for network communication where trivial-http is too trivial. For example, it will allow you to access a web page where keeping cookies is required.

    Homepage: http://common-lisp.net/project/cl-curl/

    License: LLGPL

    There is an ASDF file curl.asd in the distribution; but this is not asdf installible. Presumably because the package, system, and asdf file are named curl and curl is an overloaded term (see curl). With luck the asdf system will compile the necessary C file; if not there are directions in the C file for compiling it by hand.

    Here is a very simple usage example:

    (with-connection-returning-string (:reassure t) (set-option :url "http://www.cliki.net/Recent Changes") (perform))

    illustrating a few things to beware of. The convenience macro with-connection-returning-string both does not quote URLs, nor does it return an error code. This macro also redefines via flet set-option and perform, etc from the usual definitions in the package.

    The universe of options you can set is impressive (see curl::*option-codes* in the source), as is the set of protocols supported.


    -networking
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-curlex.html b/clones/lisp/www.cliki.net/cl-curlex.html deleted file mode 100644 index bd61e30e..00000000 --- a/clones/lisp/www.cliki.net/cl-curlex.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - CLiki: cl-curlex - - - - - - - -
    cl-curlex
    Leak *LEXENV*, which describes lexical environment, into the runtime.

    See README on the homepage for details on basic usage.

    Also, contains ABBROLET macro, that allows to locally (in the body of the macro) -abbreviate functions and macros (give them an alias). Works both for globally and locally -defined functions and macros. -Useful for local injection of symbols into namespace of the calling package. -See e.g. cl-larval's macro WITH-LARVAL for the use-case.

    Licence: GPL

    Homepage: https://github.com/mabragor/cl-curlex

    metaprogramming

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-custom-hash-table.html b/clones/lisp/www.cliki.net/cl-custom-hash-table.html deleted file mode 100644 index 699ae9d8..00000000 --- a/clones/lisp/www.cliki.net/cl-custom-hash-table.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-custom-hash-table - - - - - - - -
    cl-custom-hash-table
    cl-custom-hash-table extends the hash table data structure by allowing the use of arbitrary TEST/HASH functions, in addition to the TEST functions allowed by the standard (EQ, EQL, EQUAL and EQUALP).

    It is different from genhash in that genhash is a complete hash table implementation with its own api. CL-CUSTOM-HASH-TABLE is primarily a compatibility layer that uses the standard hash table API, and has a simple fall-back solution built on top of standard hash tables.

    Homepage: https://github.com/metawilm/cl-custom-hash-table

    License: BSD-style -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-daemonize.html b/clones/lisp/www.cliki.net/cl-daemonize.html deleted file mode 100644 index 3e7b57e9..00000000 --- a/clones/lisp/www.cliki.net/cl-daemonize.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: cl-daemonize - - - - - - - -
    cl-daemonize
    cl-daemonize is a tool to daemonize a Lisp process without the need for screen/detachtty. This is handy for deployment of a web server, for example.

    Currently cl-daemonize is SBCL-specific and Linux-only (should work on any POSIX in fact).

    Most of the meat in this package comes from restas-daemon [1] which is -copyright Andrey Moskvitin and distributed under the -LGPL.

    Homepage: https://github.com/mishoo/cl-daemonize

    system programming

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-darcs.html b/clones/lisp/www.cliki.net/cl-darcs.html deleted file mode 100644 index 7839593e..00000000 --- a/clones/lisp/www.cliki.net/cl-darcs.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-darcs - - - - - - - -
    cl-darcs
    cl-darcs is a client for the darcs version control system written in Common Lisp. See -http://common-lisp.net/project/cl-darcs.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-date-time-parser.html b/clones/lisp/www.cliki.net/cl-date-time-parser.html deleted file mode 100644 index 1dbd393c..00000000 --- a/clones/lisp/www.cliki.net/cl-date-time-parser.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-date-time-parser - - - - - - - -
    cl-date-time-parser
    Parse date-time-string, and return (as multiple values) universal-time and fraction.

    Depends on: alexandria, split-sequence, anaphora, cl-ppcre, local-time, parse-float

    Repository: https://github.com/tkych/cl-date-time-parser

    License: MIT-LICENSE


    -RFC
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-dawg.html b/clones/lisp/www.cliki.net/cl-dawg.html deleted file mode 100644 index 884cec73..00000000 --- a/clones/lisp/www.cliki.net/cl-dawg.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-dawg - - - - - - - -
    cl-dawg
    CL-DAWG is a DoubleArray/DAWG implementation.

    Repository: https://github.com/sile/cl-dawg/

    License: MIT


    -data structure
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-dbi.html b/clones/lisp/www.cliki.net/cl-dbi.html deleted file mode 100644 index 36d19ee7..00000000 --- a/clones/lisp/www.cliki.net/cl-dbi.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: CL-DBI - - - - - - - -
    CL-DBI
    CL-DBI is intended to provide the same SQL interface for each database.

    Not only, you don't have to learn each API of databases anymore, but this layer is especially convenient when you want to use the different database by environment.

    For example, your application had better to use efficient database such as MySQL on the production environment, but you may want to use SQLite3 on your machine. In that case, all what you have to do is only to rewrite calling "dbi:connect".

    Homepage: 8arrow.org/cl-dbi/

    License: LLGPL

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-devil.html b/clones/lisp/www.cliki.net/cl-devil.html deleted file mode 100644 index fb4e325a..00000000 --- a/clones/lisp/www.cliki.net/cl-devil.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-devil - - - - - - - -
    cl-devil
    cl-devil provides CFFI bindings to the DevIL image file loading library.

    github
    -lispgames wiki

    Version 0.1 (2010-06-30)

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-difflib.html b/clones/lisp/www.cliki.net/cl-difflib.html deleted file mode 100644 index 1964d068..00000000 --- a/clones/lisp/www.cliki.net/cl-difflib.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: CL-DIFFLIB - - - - - - - -
    CL-DIFFLIB
    CL-DIFFLIB is a Lisp library for computing differences between sequences. It is based on the Python difflib module.

    CL-DIFFLIB is copyright John Wiseman and is covered by the MIT license.

    See this lemonodor post for more information.

    You may also be interested in Nathan Froyd's diff package (though it seems to support only SBCL).

    Download: http://lemonodor.com/code/cl-difflib_0.1.tar.gz

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-digg.html b/clones/lisp/www.cliki.net/cl-digg.html deleted file mode 100644 index f326f669..00000000 --- a/clones/lisp/www.cliki.net/cl-digg.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: cl-digg - - - - - - - -
    cl-digg
    cl-digg is a Common Lisp wrapper to the Digg APIs.

    The project page: cl-digg - The current release: 0.2


    -Web API
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-docweaver.html b/clones/lisp/www.cliki.net/cl-docweaver.html deleted file mode 100644 index 251eb19d..00000000 --- a/clones/lisp/www.cliki.net/cl-docweaver.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-docweaver - - - - - - - -
    cl-docweaver
    A document weaver for Common Lisp.

    DOCWEAVER commands give the user control on how definitions are to be expanded, either via command options or by choosing a different set of commands.

    CL-DOCWEAVER is easy to extend to support different documentation tools.

    Reference: https://mmontone.github.io/cl-docweaver/

    Repository: https://github.com/mmontone/cl-docweaver


    -MIT-LICENSE
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-dormouse.html b/clones/lisp/www.cliki.net/cl-dormouse.html deleted file mode 100644 index 1be93ce5..00000000 --- a/clones/lisp/www.cliki.net/cl-dormouse.html +++ /dev/null @@ -1,68 +0,0 @@ - - - - - CLiki: cl-dormouse - - - - - - - -
    cl-dormouse
    Dormouse ('Doryen' + 'Mouse', groan) is a windowing `graphical' user interface built on top of libtcod. The programmer creates Window objects which are displayed on the root console. The mouse can be used to move, resize, and close windows. Keyboard and mouse events are sent to whichever window object has the focus.

    Like libtcod, dormouse is designed with a view towards making it quicker and easier for hobbyists to write roguelike games. It can be used to write any application that uses libtcod and requires higher-level 'GUI' features.

    Source code: https://bitbucket-archive.softwareheritage.org/projects/ee/eeeickythump/cl-dormouse.html

    Author: Paul Sexton

    Minimal "hello world" application:

    -(in-package :cl-user) -(defpackage :my-new-package - (:use :cl :tcod :dormouse) - (:export #:my-test)) - -(in-package :my-new-package) - -(defun my-test () - (let ((msgwin nil)) - (dormouse:start-gui :title "Testing") - (setf msgwin - (make-instance '<Log-Window> :tlx 30 :tly 10 :width 20 :height 6 - :title "log" :foreground :cornsilk - :background :dark-blue)) - (add-message msgwin "Press control-F1 or control-Esc to quit") - (main-gui-loop))) -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-dot.html b/clones/lisp/www.cliki.net/cl-dot.html deleted file mode 100644 index 93862971..00000000 --- a/clones/lisp/www.cliki.net/cl-dot.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-dot - - - - - - - -
    cl-dot
    CL-DOT is a library for easily generating dot (Graphviz) output from arbitrary Lisp data. Brief overview here, more details can be found in the documentation.

    Current Maintainer is Michael Weber.

    github repository

    You may want to check out cl-graphviz and s-dot.


    -graph visualization plotting
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-dsl.html b/clones/lisp/www.cliki.net/cl-dsl.html deleted file mode 100644 index 9b12a4cc..00000000 --- a/clones/lisp/www.cliki.net/cl-dsl.html +++ /dev/null @@ -1,59 +0,0 @@ - - - - - CLiki: cl-dsl - - - - - - - -
    cl-dsl
    Define your Domain Specific Languages in a user-friendly way.

    Usually, DSL has a set of auxillary macros and utility functions, which make sense only -inside some "master macro" form (like in iterate). -This package: - - lets you export only the master macro from your DSL-defining package - - lets you still define your auxillary macros and functions GLOBALLY in your package, - (i.e. with DEFMACRO and DEFUN and not with MACROLET and FLET/LABELS) - -For further info and sketchy example in README on the homepage. -More detailed (although also synthetic) example of usage in tests.lisp in the source.

    Licence: GPL

    Homepage: https://github.com/mabragor/cl-dsl

    language extension

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-echonest.html b/clones/lisp/www.cliki.net/cl-echonest.html deleted file mode 100644 index fe142b9a..00000000 --- a/clones/lisp/www.cliki.net/cl-echonest.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-echonest - - - - - - - -
    cl-echonest
    cl-echonest is a binding to the echonest.com web API.

    Homepage: https://github.com/kingcons/cl-echonest

    License: BSD

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-elf.html b/clones/lisp/www.cliki.net/cl-elf.html deleted file mode 100644 index 790ddf50..00000000 --- a/clones/lisp/www.cliki.net/cl-elf.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-elf - - - - - - - -
    cl-elf
    cl-elf is a library for reading and writing the ELF executable file format.

    Source repository: git://repo.or.cz/cl-elf.git

    License: MIT


    -Topics: machine code
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-emacs.html b/clones/lisp/www.cliki.net/cl-emacs.html deleted file mode 100644 index 0a9c38b5..00000000 --- a/clones/lisp/www.cliki.net/cl-emacs.html +++ /dev/null @@ -1,123 +0,0 @@ - - - - - CLiki: CL-Emacs - - - - - - - -
    CL-Emacs
    Various people have proposed an emacs-like editor written in Common -Lisp. This page collects together a few possibilities

    Editors and code

    -

    • Lem (active as of 2022). An editor that works out of the box for Common Lisp but also for more languages thanks to its LSP mode (Python, Rust, Go, Java, Dart, Nim, HTML… with also a directory, markdown, SQL, shell… mode). It works on the terminal and in an experimental Electron front-end. More are in the works. It lacks docstrings and documentation, but its gitter chat is somewhat active and different people showed interest in helping. It has a Vim layer.

      GitHub: https://github.com/lem-project/lem/.

      It is an easy to install CL editor and REPL, so it's worth checking out.

      -

    • LispWorks is a proprietary implementation that comes with its own full-fledged, GUI editor, originally based on Hemlock.

      You can find a review of the LispWorks editor on the Common Lisp Cookbook: https://lispcookbook.github.io/cl-cookbook/lispworks.html.

      The LispWorks editor, showing a Lisp REPL with autocompletion on the left, and Lisp code on a side panel on the right

    • Climacs is an implementation of the Emacs text editor in Common Lisp with some very interesting features, like incremental re-parsing of the buffer according to syntax rules and automatic indentation of lisp code. At the moment, it is also the most actively developed of the cl-emacsen on this page. Climacs is based on the same philosophy of dividing functions and user commands as Hemlock.

    • -
    • -Hemlock is an emacslike editor that comes with CMUCL, using -CLX. Some things are different from modern (X)Emacs, and said to be -more akin to older Emacsen. A lot is similar, though. The major -difference that users will first note is that M-x commands are -"Ordinary English Words" rather than -"hyphenated-lowercase-lisp-function-names". This has a lot to do with -how commands are implemented as something separate from 'interactive -functions' (ie, functions which call the interactive macro to add -themselves to the list of available commands). The ZWEI/Hemlock -design is actually much cleaner and clearly separates functions from -user commands. To the user, the difference is that they no longer -have to remember arbitrary function names, but instead just remember -ordinary 'names' for operations. As far as keybindings go most of the -ordinary Emacs bindings (movement, simple editing) are the same, but -more complicated commands (like code reformatting) are going to be -different.

    • -
    • -Portable Hemlock (phemlock) is a fork of Hemlock that's -intended to run on any ANSI CL that has CLX. Also includes an elisp -emulation package from Ingvar Mattsson: note that this is not the -same as the CLOCC package below

    • -
    • Goatee is the text editing component for McCLIM. There's an -overlap between McCLIM and phemlock developers, so it's not impossible -that Phemlock will become CLIM-based and combine with Goatee

    • -
    • CLOCC contains a package -(elisp.lisp) -that implements some part of elisp in CL.

    • -
    • LiCE (repository on repo.or.cz) -shows beginnings of another CL-based Emacs which can also run atop of -Movitz.

    • -
    • CEDAR

      At EmacsConf 2021, Fermin MF presented CEDAR as an Emacs developed in Common Lisp.

      Repository: https://gitlab.com/sasanidas/cedar

      Description in repository: "CEDAR is an advance interactive development environment aiming to be Emacs compatible with all the features that come with it." -

    • -

    (Perceived) problems with the existing GNU Emacs

    The primary problem with GNU Emacs is that Emacs Lisp is simply not great compared to Common Lisp.

      -
    • Single-threaded -
    • -
    • Slow GC -
    • -
    • Characters implemented as integers -
    • -
    • Dynamic scope everywhere (while conceding that it's essential to have -in some places) -
    • -

    Design ideas

    -
      -
    • Craig Finseth's book, The Craft of Text -Editing, available in HTML form online. "Required reading about -the implementation of Emacs-type text editors."

    • -
    • If you're looking for a starting point for a new Emacs design you might like to take a look at Deuce, an Emacs like editor written in the Dylan programming language. Dylan has a CLOS style object model and it shouldn't be too difficult to port Deuce to Common Lisp. It separates GUI from editor code and has other interesting features. For details, see Scott Mckay's post (he is the author of Deuce). The source code to Deuce is available from https://github.com/dylan-lang/opendylan/tree/master/sources/deuce. Features:

        -
      • Lines are polymorphic. They can contain text, graphics, etc.
      • -
      • There is the concept of 'Source containers' and 'source sections'. A buffer is composed of 'source sections' which can come from different contains. In a nutshell this means you can have a single buffer where different parts of that buffer come from different files. For example, Deuce uses this to display a single buffer containing all the methods for a generic function. Each method definition in the buffer comes from a different source file. Editing that section of the buffer edits the original file.
      • -
      • The capability for graphics is included.
      • -
      • A simple presentation framework is part of the design. Allowing 'live' objects in the editor.
      • -
      • GUI presentation is separated from editor functionality allowing different GUI back ends to be used
      • -

      -

    • -
    • An interesting approach for a "CL-Emacs" would be for Emacs to be implemented as a set of processes, some being "display engines," others being loosely characterized as "buffer engines." Supposing Gnus had its own process, it might even block, and not slow down the other things going on. Erik Naggum had similar ideas.

    • -
    • Kent Pitman describes some interesting features of Zmacs, the -Lisp machine editor here.

    • -
    • Distel ("distributed emacs lisp"), an extension of Emacs Lisp with the Erlang language's essential concurrency constructs, plus a (fully non-blocking) implementation of Erlang's inter-node distribution protocol. Also Ermacs, a fully concurrent Emacs written in Erlang (both core and extensions).

    • -

    Other resources

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-emb.html b/clones/lisp/www.cliki.net/cl-emb.html deleted file mode 100644 index db7d31a5..00000000 --- a/clones/lisp/www.cliki.net/cl-emb.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: CL-EMB - - - - - - - -
    CL-EMB
    CL-EMB is a templating library. Mainly used for HTML templates. Looks like a combination of Lisp Server Pages with HTML-TEMPLATE, sharing some goals of CLHP. Examples.

    License: LLGPL

    It's written by Stefan Scholl. Uses code from John Wiseman (Lemonodor).

    It has a project page on freshmeat, too. -

    Michael Raskin currently maintains CL-EMB.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-en.html b/clones/lisp/www.cliki.net/cl-en.html deleted file mode 100644 index e4d95dd4..00000000 --- a/clones/lisp/www.cliki.net/cl-en.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-en - - - - - - - -
    cl-en
    cl-en provides a common lisp interface to the echonest music analysis web API.

    This library is probably obsolete, since the Echo Nest interface itself is dead.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-environment.html b/clones/lisp/www.cliki.net/cl-environment.html deleted file mode 100644 index 4d048d33..00000000 --- a/clones/lisp/www.cliki.net/cl-environment.html +++ /dev/null @@ -1,59 +0,0 @@ - - - - - CLiki: cl-environment - - - - - - - -
    cl-environment
    CL-ENVIRONMENT is a small library that tries to canonicalize access to some of the internals of different CL implementations. Many pieces of information usually available as strings are now available as CLOS instances.

    Its inspiration comes from the examples in Sonya Keene's CLOS book.

    CL-ENVIRONMENT is available: -

    -
    -system programming
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-eshop.html b/clones/lisp/www.cliki.net/cl-eshop.html deleted file mode 100644 index af6eb7aa..00000000 --- a/clones/lisp/www.cliki.net/cl-eshop.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-eshop - - - - - - - -
    cl-eshop
    cl-eshop is an e-shop/ecommerce site written in Common Lisp.

    Homepage: https://github.com/rigidus/cl-eshop (last commit: 2012)

    License: AGPL

    You can see it running in action at http://www.320-8080.ru/


    -Topics: CMS
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-etsy.html b/clones/lisp/www.cliki.net/cl-etsy.html deleted file mode 100644 index 8e292680..00000000 --- a/clones/lisp/www.cliki.net/cl-etsy.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-etsy - - - - - - - -
    cl-etsy
    CL-Etsy a Common Lisp interface for the etsy.com web API, by Ben Hyde.

    Homepage: http://github.com/bhyde/cl-etsy/

    License: Apache 2

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-event.html b/clones/lisp/www.cliki.net/cl-event.html deleted file mode 100644 index 022a3d5d..00000000 --- a/clones/lisp/www.cliki.net/cl-event.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-event - - - - - - - -
    cl-event
    cl-event is a Lisp libevent wrapper. Libevent is an I/O library that enables the use of /dev/poll, kqueue(2), select(2), poll(2) and epoll(4) with a common interface.

    Homepage: https://github.com/jadahl/cl-event.

    See also: IOLib, CLEE


    -Topics: system programming
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-events.html b/clones/lisp/www.cliki.net/cl-events.html deleted file mode 100644 index 9bd99e7e..00000000 --- a/clones/lisp/www.cliki.net/cl-events.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-events - - - - - - - -
    cl-events
    Composable events system for Common Lisp

    Github repo

    Topics: language extension

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-ewkb.html b/clones/lisp/www.cliki.net/cl-ewkb.html deleted file mode 100644 index 05eaa8c8..00000000 --- a/clones/lisp/www.cliki.net/cl-ewkb.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-ewkb - - - - - - - -
    cl-ewkb
    cl-ewkb is a geospatial library based on cl-wkb, supports PostGIS EWKB format (3d, 4d, embedded SRID extensions).
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-facebook.html b/clones/lisp/www.cliki.net/cl-facebook.html deleted file mode 100644 index 000d7ed4..00000000 --- a/clones/lisp/www.cliki.net/cl-facebook.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-facebook - - - - - - - -
    cl-facebook
    cl-facebook is an interface to the Facebook web API.

    License: BSD

    Homepage: http://github.com/gonzojive/cl-facebook

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-factoradic.html b/clones/lisp/www.cliki.net/cl-factoradic.html deleted file mode 100644 index 4d988834..00000000 --- a/clones/lisp/www.cliki.net/cl-factoradic.html +++ /dev/null @@ -1,68 +0,0 @@ - - - - - CLiki: cl-factoradic - - - - - - - -
    cl-factoradic
    cl-factoradic is a Mathematics/Combinatorics library that implements calculation and iteration of permutations based on the factoradic numbers system.

    The project was created by Alexander Kahl as a pet for learning Common Lisp, -is implemented almost purely functional and currently lacks documentation but -the author still hopes it serves useful to someone.

    To demonstrate what this is good for: -

    -CL-USER> (cl-factoradic:dump-string-permutations "foo")
    -foo
    -foo
    -ofo
    -oof
    -ofo
    -oof
    -NIL
    -
    -CL-USER> (coerce 
    -          (cl-factoradic:factoradic-permutation 
    -           (coerce "foo" 'list) 3) 'string)
    -"OOF"
    -

    For the rest, please use your imagination.

    The link to the git repository is available from Github.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-fad.html b/clones/lisp/www.cliki.net/cl-fad.html deleted file mode 100644 index 8c56ea39..00000000 --- a/clones/lisp/www.cliki.net/cl-fad.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: cl-fad - - - - - - - -
    cl-fad
    CL-FAD is a portable pathname library based on code from Peter Seibel's book Practical Common Lisp, providing a way to work with files and directories.

    License: BSD

    Homepage: http://weitz.de/cl-fad/

    Maintainer: Edi Weitz


    -Personal opinion: cl-fad was a great improvement when it first appeared, but it has way too much implementation-dependent pitfalls. I recommend uiop, which is of vastly higher quality, and also has the advantage of already be in your implementation as part of asdf 3. And if you need finer control on filesystem access, use iolib. — Fare Rideau -
    -system programming
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-famix.html b/clones/lisp/www.cliki.net/cl-famix.html deleted file mode 100644 index 11c8a846..00000000 --- a/clones/lisp/www.cliki.net/cl-famix.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: cl-famix - - - - - - - -
    cl-famix
    CL-Famix is a model extractor application, that extract FAMIX-Lisp compliant models from Lisp systems. -CL-Famix receives as entry the directory of the project and produces a FAMIX-Lisp compliant model of the system, which can be exported in the MSE format.

    The FAMIX-Lisp meta-model is an extension of the FAMIX meta-model. The FAMIX-Lisp meta-model extends the FAMIX meta-model with capabilities to model Lisp systems by adding some new entities, like Macros and CLOS entities.

    CL-Famix is not a toy implementation; it was successfully applied for extracting models from an important number of real-world systems ranging in size from 5KLOC to large-scale systems of 350KLOC.

    The Lisp models extracted with cl-famix can be imported and analyzed with the MoosLi plugin for the Moose re-engineering environment.

    CL-Famix has been developed by Adrian Dozsa in 2007 as a validation of his diploma thesis, Reverse Engineering Techniques for Lisp Systems.

    Compatible/tested implementations: LispWorks

    Download: cl-famix-0.1.tar.gz


    -BSD license
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-fann.html b/clones/lisp/www.cliki.net/cl-fann.html deleted file mode 100644 index 4de13a39..00000000 --- a/clones/lisp/www.cliki.net/cl-fann.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-fann - - - - - - - -
    cl-fann
    cl-fann is a neural network library for common lisp. It is a CFFI wrapper of the C library libfann. As of Dec. 2010, it is actively in development, but in alpha stage at best. It is maintained by Mason Smith.

    cl-fann can be downloaded on Github. cl-fann requires libfann 2.* and is currently based on the 2.0.0 API.


    -AI
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-fbclient.html b/clones/lisp/www.cliki.net/cl-fbclient.html deleted file mode 100644 index f4ba4614..00000000 --- a/clones/lisp/www.cliki.net/cl-fbclient.html +++ /dev/null @@ -1,61 +0,0 @@ - - - - - CLiki: cl-fbclient - - - - - - - -
    cl-fbclient
    cl-fbclient is an interface to Firebird SQL databases.

    Source: https://github.com/klimenko-serj/cl-fbclient

    Wiki: http://github.com/klimenko-serj/cl-fbclient/wiki

    -Example: -

    -(require 'cl-fbclient)
    -
    -(cl-fbclient:fb-with-database (DB :path "/path-to-db/db-file.fdb")
    -     (cl-fbclient:fb-query "SELECT * FROM T1" :db DB)
    -     (cl-fbclient:fb-query "INSERT INTO T1(A1,A2) VALUES(121, 42)" :db DB)
    -     (cl-fbclient:fb-query "SELECT * FROM T1" :db DB))
    -
    -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-fftw3.html b/clones/lisp/www.cliki.net/cl-fftw3.html deleted file mode 100644 index 3a7c3fc0..00000000 --- a/clones/lisp/www.cliki.net/cl-fftw3.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-fftw3 - - - - - - - -
    cl-fftw3
    cl-fftw3 provides a CFFI interface for Common Lisp programs to use the FFTW3 Fourier transform library. A number of higher-level interfaces has been added in addition to the native interface to the FFTW3 C-based library. cl-fftw3 depends on kmrcl.

    Repository: http://git.kpe.io/?p=cl-fftw3.git;a=summary

    License: LLGPL


    -Topics: mathematics signal processing
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-fix.html b/clones/lisp/www.cliki.net/cl-fix.html deleted file mode 100644 index c094fc22..00000000 --- a/clones/lisp/www.cliki.net/cl-fix.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-fix - - - - - - - -
    cl-fix
    cl-fix enables you to write FIX-based systems using Common Lisp. FIX (Financial Information eXchange) is a protocol that underpins the communications between many major players in the finance and capital markets space.

    Project homepage: https://fix9.net/cl-fix/


    -Topics: networking
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-flow.html b/clones/lisp/www.cliki.net/cl-flow.html deleted file mode 100644 index fd21134b..00000000 --- a/clones/lisp/www.cliki.net/cl-flow.html +++ /dev/null @@ -1,61 +0,0 @@ - - - - - CLiki: cl-flow - - - - - - - -
    cl-flow
    Asynchronous non-blocking concurrency in Common Lisp, similar to what green threads are for.

    Usage examples:

    The run-flow form returns immediately; string is printed later: -

    (run-flow (flow:atomically :default () - (sleep 1) - (print "Hello, flowing World!" *output*))) -

    Execute serially (i.e., consecutively) and pass an argument from a previous block: -

    (run-flow (flow:serially - (flow:atomically :default () - "Hello, flowing World!") - (flow:atomically :default (argument) - (print argument *output*)))) -

    More details at the project's Getting Started page.

    Homepage: GitHub.io

    Repository: GitHub

    License: MIT

    See Also: green-threads

    Topics: concurrency, dataflow

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-flowd.html b/clones/lisp/www.cliki.net/cl-flowd.html deleted file mode 100644 index 5f9d28f8..00000000 --- a/clones/lisp/www.cliki.net/cl-flowd.html +++ /dev/null @@ -1,57 +0,0 @@ - - - - - CLiki: cl-flowd - - - - - - - -
    cl-flowd
    cl-flowd is an native Common Lisp interface to the flowd Netflow collector.

    Authors: Mike Maul

    License: BSD

    Homepage: https://github.com/mmaul/cl-flowd

      Availability: -
    • cl-flowd is available is source form via the its github repository home page. -
    • -
    • installable via Quicklisp as cl-flowd
    • - -

    Notes:

    This package allows provides the ability to read Netflow capture files generated by flowd. -The core of this code originally appeared in the small-cl-source@common-lisp.net mailling list. The original author is Ingvar Mattison. The code has been updated to work with modern flowd Netflow log files and extended functionality.

    networking

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-fltk.html b/clones/lisp/www.cliki.net/cl-fltk.html deleted file mode 100644 index 809d6b8d..00000000 --- a/clones/lisp/www.cliki.net/cl-fltk.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-fltk - - - - - - - -
    cl-fltk
    cl-fltk is a set of CFFI bindings to the FLTK GUI toolkit.

    It was first created by Dario Lah and now it's mantained by Felip Alaez Nadal <superratoli@gmail.com>.

    Repository: https://gitlab.common-lisp.net/cl-fltk/cl-fltk

    License: BSD

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-fond.html b/clones/lisp/www.cliki.net/cl-fond.html deleted file mode 100644 index 0baddbf6..00000000 --- a/clones/lisp/www.cliki.net/cl-fond.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-fond - - - - - - - -
    cl-fond
    A bindings library to libfond, a simple OpenGL text rendering engine by the same author.

    Homepage: GitHub.io

    License: Artistic

    Topics: graphics library

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-freetype2.html b/clones/lisp/www.cliki.net/cl-freetype2.html deleted file mode 100644 index f2452182..00000000 --- a/clones/lisp/www.cliki.net/cl-freetype2.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-freetype2 - - - - - - - -
    cl-freetype2
    cl-freetype2 is a CFFI wrapper for FreeType 2. While not doing anything particularly graphical itself, it may be considered a graphics library. It is licensed under the BSD license and LLGPL, similar to FreeType itself.

    It provides a wrapper for much of FreeType, and presents a simple interface. The documentation has more details.

    It can be downloaded from github.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-fswatch.html b/clones/lisp/www.cliki.net/cl-fswatch.html deleted file mode 100644 index 1f22a2f7..00000000 --- a/clones/lisp/www.cliki.net/cl-fswatch.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-fswatch - - - - - - - -
    cl-fswatch
    Wrapper for fswatch, a cross-platform file change monitor.

    Depends on: CFFI, bordeaux-threads

    Repository: https://github.com/muyinliu/cl-fswatch

    License: ISC


    -filesystem
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-ftgl.html b/clones/lisp/www.cliki.net/cl-ftgl.html deleted file mode 100644 index 804f61f3..00000000 --- a/clones/lisp/www.cliki.net/cl-ftgl.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-ftgl - - - - - - - -
    cl-ftgl
    cl-ftgl is a set of bindings to the FTGL OpenGL font rendering library.

    Source repository: https://repo.or.cz/cl-ftgl.git

    License: public domain

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-fu.html b/clones/lisp/www.cliki.net/cl-fu.html deleted file mode 100644 index 5caea49e..00000000 --- a/clones/lisp/www.cliki.net/cl-fu.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-fu - - - - - - - -
    cl-fu
    CFFI library for NCURSES.

    Repository: https://github.com/cl-fui/cl-fu

    License: BSD 3-Clause

    See also: cl-charms


    -console
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-fuse-meta-fs.html b/clones/lisp/www.cliki.net/cl-fuse-meta-fs.html deleted file mode 100644 index 4af82d23..00000000 --- a/clones/lisp/www.cliki.net/cl-fuse-meta-fs.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-fuse-meta-fs - - - - - - - -
    cl-fuse-meta-fs
    CL-FUSE-Meta-FS is a layer above CL-FUSE that provides a Lispy wrapper around FUSE functionality.

    For example, you can write something like

    (mk-dir "" :root t :just (mk-file "README" "Hello World"))

    (and pass it to corresponding function) to have mountpoint with one file README containing "Hello Wold".

    Homepage: https://common-lisp.net/project/cl-fuse/

    License: LLGPL

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-fuse.html b/clones/lisp/www.cliki.net/cl-fuse.html deleted file mode 100644 index 9a017dd7..00000000 --- a/clones/lisp/www.cliki.net/cl-fuse.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-fuse - - - - - - - -
    cl-fuse
    CL-FUSE provides Common Lisp bindings for FUSE (file system in user space).

    Compatibility: SBCL and CCL work; Clisp fails because fusermount gets run with wrong permissions, ECL 12.7.1 complains about memory corruption.

    cl-fuse-meta-fs provides a Lispy layer on top of cl-fuse.

    Homepage: https://common-lisp.net/project/cl-fuse/

    License: LLGPL


    -Topics: system programming filesystem
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-future.html b/clones/lisp/www.cliki.net/cl-future.html deleted file mode 100644 index 229c54eb..00000000 --- a/clones/lisp/www.cliki.net/cl-future.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-future - - - - - - - -
    cl-future
    Cl-future is a simple way to achieve parallelism for common lisp on multiprocessor shared memory Unix machines.

    It provides a "future" macro that can be used to fork a child process to evaluate an expression in parallel.

    Cl-future requires the most recent version of Osicat. For that reason, we recommend you use repo-install to install it.

    The git repository is located at git://github.com/jpalmucci/cl-future.git.


    Topics: concurrency -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-fxml.html b/clones/lisp/www.cliki.net/cl-fxml.html deleted file mode 100644 index 9fdaab56..00000000 --- a/clones/lisp/www.cliki.net/cl-fxml.html +++ /dev/null @@ -1,59 +0,0 @@ - - - - - CLiki: cl-fxml - - - - - - - -
    cl-fxml
    cl-fxml is an XML template engine similar to PHP, but without context switching tags.

    Homepage: https://github.com/Goheeca/cl-fxml

    License: MIT

    Usage:

    -(named-readtables:in-readtable cl-fxml:syntax)
    -
    -((:html)
    -  ((:head)
    -    ((:title) "Html example"))
    -  ((:body)
    -    ((:a :href "#") "Lorem ipsum dolor sit amet")))
    -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-gcalc.html b/clones/lisp/www.cliki.net/cl-gcalc.html deleted file mode 100644 index 95fd005e..00000000 --- a/clones/lisp/www.cliki.net/cl-gcalc.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-gcalc - - - - - - - -
    cl-gcalc
    cl-gcalc is a wrapper for Google Calculator.

    Official home

    web api

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-gd.html b/clones/lisp/www.cliki.net/cl-gd.html deleted file mode 100644 index 302aa37d..00000000 --- a/clones/lisp/www.cliki.net/cl-gd.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-gd - - - - - - - -
    cl-gd
    CL-GD is a library enabling CL implementations to use the GD graphics library via UFFI.

    It was written by Edi Weitz.

    Home page and documentation: -https://edicl.github.io/cl-gd/

    License: BSD

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-gdata.html b/clones/lisp/www.cliki.net/cl-gdata.html deleted file mode 100644 index e618b6fe..00000000 --- a/clones/lisp/www.cliki.net/cl-gdata.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-gdata - - - - - - - -
    cl-gdata
    cl-gdata is an API to access the Google GData API's from Common Lisp.

    It's currently shipped through Quicklisp. The source repository is at: https://github.com/lokedhs/cl-gdata

    License: BSD

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-gendoc.html b/clones/lisp/www.cliki.net/cl-gendoc.html deleted file mode 100644 index bf70f33b..00000000 --- a/clones/lisp/www.cliki.net/cl-gendoc.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-gendoc - - - - - - - -
    cl-gendoc
    cl-gendoc is a simple but flexible modular document generator for Common Lisp. See the generated documentation for cl-gendoc.

    Depends on: cl-who, 3bmd

    Repository: https://github.com/rpav/cl-gendoc

    License: LLGPL, BSD


    -Documentation Tool
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-geometry.html b/clones/lisp/www.cliki.net/cl-geometry.html deleted file mode 100644 index 0e03947c..00000000 --- a/clones/lisp/www.cliki.net/cl-geometry.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-geometry - - - - - - - -
    cl-geometry
    cl-geometry is a Common Lisp package for simple two dimensional computational geometry.

    Homepage: https://github.com/Ramarren/cl-geometry

    License: BSD


    -Topics: mathematics
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-geonames.html b/clones/lisp/www.cliki.net/cl-geonames.html deleted file mode 100644 index 8609958a..00000000 --- a/clones/lisp/www.cliki.net/cl-geonames.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-geonames - - - - - - - -
    cl-geonames
    A Common Lisp wrapper around the geonames web service.

    Depends on: drakma, cl-json, s-xml

    Repository: https://github.com/nlamirault/cl-geonames

    License: LLGPL


    -Web API
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-gettext.html b/clones/lisp/www.cliki.net/cl-gettext.html deleted file mode 100644 index 11e6daa6..00000000 --- a/clones/lisp/www.cliki.net/cl-gettext.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-gettext - - - - - - - -
    cl-gettext
    cl-gettext is a binding the the GNU gettext internationalization library. It is available at http://github.com/krzysz00/cl-gettext, and it depends on cffi.

    License: LLGPL

    Author: Krzysztof Drewniak <krzysdrewniak <AT> gmail <DOT> com> -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-github.html b/clones/lisp/www.cliki.net/cl-github.html deleted file mode 100644 index 9f7f6334..00000000 --- a/clones/lisp/www.cliki.net/cl-github.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-github - - - - - - - -
    cl-github
    cl-github is a library for working with the github version control web API.

    Source repository: http://github.com/nixeagle/cl-github

    This library should be a full implementation of the github v2 apis. If any parts are missing please drop a bug on the github issue tracker.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-gitlab.html b/clones/lisp/www.cliki.net/cl-gitlab.html deleted file mode 100644 index 0f594023..00000000 --- a/clones/lisp/www.cliki.net/cl-gitlab.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-gitlab - - - - - - - -
    cl-gitlab
    cl-gitlab is a library to connect to GitLab's version control web API following a minimalistic (and thus solid) approach.

    Depends on: quri, dexador, str, cl-json

    It is not available on Quicklisp (yet).


    -MIT-LICENSE
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-glfw.html b/clones/lisp/www.cliki.net/cl-glfw.html deleted file mode 100644 index 84ab46cd..00000000 --- a/clones/lisp/www.cliki.net/cl-glfw.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-glfw - - - - - - - -
    cl-glfw
    Is a public domain set of CFFI bindings for the GLFW OpenGL helper library. Also included are some automatically-generated OpenGL bindings (from gl.spec et al. files from http://www.opengl.org/registry/), a hand-written GLU binding, some convenience OpenGL macros (in the opengl: package), and a few examples.

    This binding is for GLFW 2.X. For the binding for GLFW 3.X, please see cl-glfw3.

    License: public domain

    Source repository: http://repo.or.cz/w/cl-glfw.git

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-glfw3.html b/clones/lisp/www.cliki.net/cl-glfw3.html deleted file mode 100644 index af4c9f4e..00000000 --- a/clones/lisp/www.cliki.net/cl-glfw3.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-glfw3 - - - - - - - -
    cl-glfw3
    Is a BSD licensed set of CFFI bindings for version 3.x of the GLFW OpenGL helper library. Some convenience functions and macros are included. Quicklisp installable.

    Homepage: https://github.com/AlexCharlton/cl-glfw3

    License: BSD license

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-gpu.html b/clones/lisp/www.cliki.net/cl-gpu.html deleted file mode 100644 index 300de4a2..00000000 --- a/clones/lisp/www.cliki.net/cl-gpu.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-gpu - - - - - - - -
    cl-gpu
    cl-gpu is a translator from a subset of Common Lisp to CUDA for writing GPU kernels.

    Homepage: https://github.com/angavrilov/cl-gpu

    License: LLGPL


    -Topics: concurrency
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-gpx.html b/clones/lisp/www.cliki.net/cl-gpx.html deleted file mode 100644 index 8f7da81f..00000000 --- a/clones/lisp/www.cliki.net/cl-gpx.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-gpx - - - - - - - -
    cl-gpx
    cl-gpx is a library to work with the GPX (the GPS Exchange Format) GPS XML file format.

    Homepage: https://github.com/ryepup/cl-gpx

    License: ???


    -Topics: geospatial
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-graph.html b/clones/lisp/www.cliki.net/cl-graph.html deleted file mode 100644 index 7aaadead..00000000 --- a/clones/lisp/www.cliki.net/cl-graph.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-graph - - - - - - - -
    cl-graph
    CL-Graph is a set of Common Lisp utilities for manipulating graphs.

    Its home page is at http://common-lisp.net/project/graph and that is probably much more up to date.

    CL-Graph is one of Gary King's Common Lisp mathematics packages. Blame him!

    Question: How fast is the path finder. (Probably it could use some more pathfinding functions? Like with a function giving cost, finding just one of the shortest for speed/memoization.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-graphicsmagick.html b/clones/lisp/www.cliki.net/cl-graphicsmagick.html deleted file mode 100644 index dcb9e426..00000000 --- a/clones/lisp/www.cliki.net/cl-graphicsmagick.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-graphicsmagick - - - - - - - -
    cl-graphicsmagick
    cl-graphicsmagick is a set of lisp bindings for the GraphicsMagick graphics library.

    Since other Common Lisp bindings for ImageMagick or GraphicsMagick was dead, I create this library. There may be lack of test cases for cl-graphicsmagick but I'm sure most of them work fine!

    Author: muyinliu

    Source repository: https://github.com/muyinliu/cl-graphicsmagick

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-graphviz.html b/clones/lisp/www.cliki.net/cl-graphviz.html deleted file mode 100644 index d59d724b..00000000 --- a/clones/lisp/www.cliki.net/cl-graphviz.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-graphviz - - - - - - - -
    cl-graphviz
    cl-graphviz is a CFFI interface to graphviz with cl-graph integration.

    Its home page is at http://common-lisp.net/project/cl-graphviz.

    It is kind of a graphics library, to show up on that list.

    cl-graphviz is one of Attila Lendvai's Common Lisp packages.


    -graph visualization
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-grip.html b/clones/lisp/www.cliki.net/cl-grip.html deleted file mode 100644 index 59059e2e..00000000 --- a/clones/lisp/www.cliki.net/cl-grip.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-grip - - - - - - - -
    cl-grip
    cl-grip is a high-level logging system for Common Lisp, focusing on a clear user interface, support for flexible structured logging, and easy extensibility for different backends to support direct logging to various inputs.

    Depends on: local-time, cl-strings, trivial-types

    Repository: https://github.com/tychoish/cl-grip

    License: Apache 2


    -JSON
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-grnm.html b/clones/lisp/www.cliki.net/cl-grnm.html deleted file mode 100644 index 8bee2fe3..00000000 --- a/clones/lisp/www.cliki.net/cl-grnm.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-grnm - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-groupby.html b/clones/lisp/www.cliki.net/cl-groupby.html deleted file mode 100644 index df46bec2..00000000 --- a/clones/lisp/www.cliki.net/cl-groupby.html +++ /dev/null @@ -1,92 +0,0 @@ - - - - - CLiki: cl-groupby - - - - - - - -
    cl-groupby
    Short implementation of Scalas groupBy functionality for Common Lisp

    Homepage: https://github.com/wlbr/cl-groupby

    Dependencies: none (except asdf)
    -License: MIT
    -Author: Michael Wolber

    Motivation

    Let's think of the task "find the first unique character" in a given string. -

    (defparameter str "lisp rulez")
    -
    -The naive approach in Lisp is as simple as elegant: -
    -(char (remove-if #'(lambda (x) (> (count x str) 1)) str) 0)
    -
    -For simplicity let's ignore the point that it will throw an error when there is no uniqe char in str. Unfortunately the performance of the function is quite bad, quadratic runtime.

    A quicker solution would look like the following lines. While this is fast, it is not as intuitive as the first solution. -

    -(defun first-uniq-char (str)
    -  (let* ((size (length str))
    -         (cnt (make-hash-table :size size)))
    -    (do
    -        ((i 0 (incf i)) )
    -        ((<= size i))
    -      (incf (gethash (char str i) cnt 0)))
    -    (do 
    -        ((i 0 (incf i))
    -         (c nil))
    -        ((<= size i) 
    -         c)
    -

    -Compare both funnctions with a long string: -

    -(defparameter strlong 
    -  (coerce (loop for i to 10000 
    -            collect (code-char (+ (char-code #\a) (random 24)))) 
    -    'string))
    -
    -(time (char (remove-if #'(lambda (x) (> (count x str) 1)) strlong) 0))
    -(time (first-uniq-char strlong))
    -
    -A factor of almost 4000 on my machine.

    Now we make use of our new groubby function: -

    -(time (remove-if #'(lambda (x) (> (second x) 1)) 
    -         (mapcar #'(lambda (x) (list (first x) (length (second x)))) 
    -                 (gb:groupby #'(lambda (x) x) strlong))))
    -
    -This seems to be only a little bit slower than the second, quick function above, while being a an intuitive and quick solution again. First group the data by its identity, then count each of the groups and remove the groups with more than one elements.

    As you can see, with the groupby higher order function it is possible to write very comprehensive code, that takes the standard lisp solutions to the next level. Its drawback seems to be, that it is quite not simple to identify the good use of this feature to proper solve problems.

    -language extension convenience library

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-growl.html b/clones/lisp/www.cliki.net/cl-growl.html deleted file mode 100644 index c431f66c..00000000 --- a/clones/lisp/www.cliki.net/cl-growl.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-growl - - - - - - - -
    cl-growl
    Growl is a notification system for Mac OS X. It supports a small networking protocol called Growl Talk. This is a Common Lisp library that implements the Growl Talk protocol.

    For a usage description and other ways to obtain the code see the CL-Growl web page.

    To use this package, you probably want to install either ironclad or md5. You will also need flexi-streams, usocket-udp, and trivial-utf-8.

    [Now patched by Alexandre Paes to work with CCL, too.]

    -by Patrick Stein

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-gsl.html b/clones/lisp/www.cliki.net/cl-gsl.html deleted file mode 100644 index 091a5edd..00000000 --- a/clones/lisp/www.cliki.net/cl-gsl.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-gsl - - - - - - - -
    cl-gsl
    cl-gsl provides bindings to the GNU Scientific Library (GSL) of mathematics routines.

    Depends on: uffi, kmrcl, cl-ppcre

    Repository: https://gitlab.common-lisp.net/cl-gsl/cl-gsl

    License: GPL

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-gtk.html b/clones/lisp/www.cliki.net/cl-gtk.html deleted file mode 100644 index e6f47cf3..00000000 --- a/clones/lisp/www.cliki.net/cl-gtk.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-gtk - - - - - - - -
    cl-gtk
    Gilbert Baumann's GTK bindings for Common Lisp (for CMUCL, CLISP and Allegro CL). Like CLM, it talks down a pipe or socket to a server process, avoiding icky foreign function call issues.

    Tim Daly, Jr. is working on a version supporting GTK+2. http://tenkan.org/clgtk/index.html

    October 22, 2004: Version 0.3 Beta has been released.

    Feb 8, 2003: Version 0.2 Beta has been released. Be sure to yell at Tim and tell him why it doesn't work for you. :)

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-gtk2.html b/clones/lisp/www.cliki.net/cl-gtk2.html deleted file mode 100644 index 19d64c00..00000000 --- a/clones/lisp/www.cliki.net/cl-gtk2.html +++ /dev/null @@ -1,166 +0,0 @@ - - - - - CLiki: cl-gtk2 - - - - - - - -
    cl-gtk2
    CL-GTK2 is a Common Lisp GUI library that provides access to the Gtk+ cross-platform GUI library in idiomatic Lisp style.

    CL-GTK2 should portably work in most modern Lisps that support CFFI and MOP (works at least in SBCL, Clozure CL on Linux and Windows). Current version is 0.1.1 released on 2009.12.30.

    cl-gtk2 blog contains news on development of CL-GTK2. There is also a common-lisp.net website, with more documentation.

    CL-GTK2 is ASDF-installable (install the :CL-GTK2-GTK, :CL-GTK2-CAIRO and :CL-GTK2-GTKGLEXT systems).

    Requirements:

    -
      -
    • FFI with callbacks (via CFFI)
    • -
    • Threading (via Bordeaux-Threads)
    • -
    • Weak references (weak hash-tables) and finalizers (via Trivial-Garbage)
    • -
    • CLOS Metaobject Protocol (via Closer-MOP)
    • -

    Features:

    -
      -
    • Provides Gtk+ API in a Lispy way
    • -
    • (Almost) Complete Gtk+ API
    • -
    • Objects and classes are mapped into CLOS objects and classes
    • -
    • Gtk+ objects are garbage collected
    • -
    • Error in objects' signal handlers are restartable
    • -
    • Provides some higher-level abstractions over Gtk+ facilities: -
        -
      • Calling code in GUI thread (call-within-main-loop, call-within-main-loop-and-wait)
      • -
      • Displaying progress-bar for long-running code (with-progress-bar)
      • -
      • Displaying errors (with-gtk-message-error-handler)
      • -
      -
    • -

    Examples:

    -

    - - - - - - -
    Source codeScreenshot
    -
    -(defun run ()
    -  (let ((output *standard-output*))
    -    (gtk:within-main-loop
    -      (let ((window (make-instance 'gtk:gtk-window
    -                                   :type :toplevel
    -                                   :window-position :center
    -                                   :title "Hello world!"
    -                                   :default-width 300
    -                                   :default-height 100))
    -            (button (make-instance 'gtk:button :label "Hello, world!"))
    -            (counter 0))
    -        (gobject:g-signal-connect button "clicked"
    -                                  (lambda (b)
    -                                    (declare (ignore b))
    -                                    (format output "Hello, world!~%")
    -                                    (setf (gtk:button-label button)
    -                                          (format nil
    -                                                  "Hello, world! (clicked ~D times)"
    -                                                  (incf counter)))))
    -        (gtk:container-add window button)
    -        (gtk:widget-show window :all t)))))
    -
    -(run)

    - - - - - -

    -(defun demo-class-browser ()
    -  (let ((output *standard-output*))
    -    (gtk:within-main-loop
    -      (let* ((window (make-instance 'gtk:gtk-window
    -                                    :window-position :center
    -                                    :title "Class Browser"
    -                                    :default-width 400
    -                                    :default-height 600))
    -             (search-entry (make-instance 'gtk:entry))
    -             (search-button (make-instance 'gtk:button :label "Search"))
    -             (scroll (make-instance 'gtk:scrolled-window
    -                                    :hscrollbar-policy :automatic
    -                                    :vscrollbar-policy :automatic))
    -             (slots-model (make-instance 'gtk:array-list-store))
    -             (slots-list (make-instance 'gtk:tree-view :model slots-model)))
    -        (let ((v-box (make-instance 'gtk:v-box))
    -              (search-box (make-instance 'gtk:h-box)))
    -          (gtk:container-add window v-box)
    -          (gtk:box-pack-start v-box search-box :expand nil)
    -          (gtk:box-pack-start search-box search-entry)
    -          (gtk:box-pack-start search-box search-button :expand nil)
    -          (gtk:box-pack-start v-box scroll)
    -          (gtk:container-add scroll slots-list))
    -        (gtk:store-add-column slots-model "gchararray"
    -                              (lambda (slot)
    -                                (format nil "~S" (closer-mop:slot-definition-name slot))))
    -        (let ((col (make-instance 'gtk:tree-view-column :title "Slot name"))
    -              (cr (make-instance 'gtk:cell-renderer-text)))
    -          (gtk:tree-view-column-pack-start col cr)
    -          (gtk:tree-view-column-add-attribute col cr "text" 0)
    -          (gtk:tree-view-append-column slots-list col))
    -        (labels ((display-class-slots (class)
    -                   (format output "Displaying ~A~%" class)
    -                   (loop
    -                      repeat (gtk:store-items-count slots-model)
    -                      do (gtk:store-remove-item slots-model (gtk:store-item slots-model 0)))
    -                   (closer-mop:finalize-inheritance class)
    -                   (loop
    -                      for slot in (closer-mop:class-slots class)
    -                      do (gtk:store-add-item slots-model slot)))
    -                 (on-search-clicked (button)
    -                   (declare (ignore button))
    -                   (gtk:with-gtk-message-error-handler
    -                     (let* ((class-name (read-from-string (gtk:entry-text search-entry)))
    -                            (class (find-class class-name)))
    -                       (display-class-slots class)))))
    -          (gobject:g-signal-connect search-button "clicked" #'on-search-clicked))
    -        (gtk:widget-show window)))))
    -
    -(demo-class-browser)
    - - - - -

    -


    -Gtk GTK binding
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-gui.html b/clones/lisp/www.cliki.net/cl-gui.html deleted file mode 100644 index 0df7f0b1..00000000 --- a/clones/lisp/www.cliki.net/cl-gui.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-gui - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-hash-util.html b/clones/lisp/www.cliki.net/cl-hash-util.html deleted file mode 100644 index 4c20ab74..00000000 --- a/clones/lisp/www.cliki.net/cl-hash-util.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-hash-util - - - - - - - -
    cl-hash-util
    cl-hash-util is a very basic library for dealing with CL's hash tables.

    Repository: https://github.com/orthecreedence/cl-hash-util


    -convenience library, MIT-LICENSE
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-heap.html b/clones/lisp/www.cliki.net/cl-heap.html deleted file mode 100644 index e74d6061..00000000 --- a/clones/lisp/www.cliki.net/cl-heap.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-heap - - - - - - - -
    cl-heap
    CL-HEAP implements the binary heap, Fibonacci heap, and priority queue data structures.

    The Fibonacci heap has interesting run time constraints, with many operations occurring in constant or amortised constant time, making it ideal for use in implementing other algorithms, such as Dijkstra's shortest path and Prim's minimum spanning tree algorithms.

    CL-HEAP is licensed under the GPL. Its web page can be found at http://common-lisp.net/project/cl-heap/.

    You can install this using quicklisp.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-heredoc.html b/clones/lisp/www.cliki.net/cl-heredoc.html deleted file mode 100644 index 4372eaca..00000000 --- a/clones/lisp/www.cliki.net/cl-heredoc.html +++ /dev/null @@ -1,62 +0,0 @@ - - - - - CLiki: cl-heredoc - - - - - - - -
    cl-heredoc
    cl-heredoc is an implementation of "here documents" that allow the user to -embed literal strings into code or data without any need for quoting, something -that is missing in both ANSI CL and popular implementations.

    cl-heredoc primarily exports a single function, READ-HEREDOC, that is meant to -be used with the CL reader by attaching it to a dispatch character, e.g.

    -CL-USER> (set-dispatch-macro-character #\# #\&gt; #'cl-heredoc:read-heredoc)
    -CL-USER> #&gt;eof&gt;Write whatever (you) "want",
    -  no matter how many lines or what characters until
    -the magic end sequence has been reached!eof
    -

    Will read everything starting after "#>eof>" until the given sequence, here "eof", is found and return the result as a string. The enclosed text is not -subject to any kind of evaluation and needs no quoting. -If used in a non-interactive fashion, i.e. outside the REPL, an error will be -signaled if EOF is reached.

    The underlying implementation uses ring buffers as described by Paul Graham in "ANSI Common Lisp" so partial end sequence matches will not prevent an immediately following real match that re-uses part of the discarded one.

    Categories: development, text

    The link to the git repository is available from Github.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-hooks.html b/clones/lisp/www.cliki.net/cl-hooks.html deleted file mode 100644 index 81485139..00000000 --- a/clones/lisp/www.cliki.net/cl-hooks.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-hooks - - - - - - - -
    cl-hooks
    cl-hooks allows the description of extension points in software using a concept of hooks (borrowed from Emacs). Hooks are, for example, used in the extensible text editor Emacs. cl-hooks provides a slightly generalized notion of hooks allowing hook implementations based on global variables, instance slots or other storage implementations. Other novel aspects are integration with the Common Lisp documentation system and a concept of hook combination.

    Depends on: alexandria, iterate, bind, closer-mop

    Repository: https://bazaar.launchpad.net/~scymtym/+junk/cl-hooks/files

    Documentation: https://common-lisp.net/project/cl-hooks/

    License: LLGPL


    -Topics: language extension
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-horde3d.html b/clones/lisp/www.cliki.net/cl-horde3d.html deleted file mode 100644 index f3919a4c..00000000 --- a/clones/lisp/www.cliki.net/cl-horde3d.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-horde3d - - - - - - - -
    cl-horde3d
    CL-HORDE3D provides CFFI bindings to the Horde3D graphics engine.

    The project is hosted on github.

    The code is alpha. Though it should be portable to all Lisp implementations CFFI supports, it currently crashes in the native code with all implementations except CCL.


    -Topics: graphics library game
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-html-parse.html b/clones/lisp/www.cliki.net/cl-html-parse.html deleted file mode 100644 index 5f17be81..00000000 --- a/clones/lisp/www.cliki.net/cl-html-parse.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: CL-HTML-Parse - - - - - - - -
    CL-HTML-Parse
    This system is nominally maintained by Gary King.

    A portable version of Franz's HTML parser from xmlutils.

    Gary King: -Since I couldn't find it out there already yesterday (many years ago!), I packaged up Franz's open source HTML parser as CL-HTML-Parse, a simple HTML parser. It converts HTML into a Lispy representation. It's also the inverse of lml2. Spiffy?! You decide.

    Download

    -The code is now on github: https://github.com/gwkkwg/cl-html-parse

    Comments

    -Marco Baringer points out that pxmlutils already has Franz's stuff ported! Cool.

    Max Mouratov says that pxmlutils also includes an XML parser and requires ACL-COMPAT. CL-HTML-Parse is a lighter package which includes just an HTML parser and doesn't require ACL-COMPAT.

    Please direct questions or problems to Gary King.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-html-template.html b/clones/lisp/www.cliki.net/cl-html-template.html deleted file mode 100644 index f6dda401..00000000 --- a/clones/lisp/www.cliki.net/cl-html-template.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-html-template - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-html5-parser.html b/clones/lisp/www.cliki.net/cl-html5-parser.html deleted file mode 100644 index 23c750e6..00000000 --- a/clones/lisp/www.cliki.net/cl-html5-parser.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-html5-parser - - - - - - - -
    cl-html5-parser
    cl-html5-parser is a HTML5 parser for Common Lisp.

    Homepage: https://github.com/copyleft/cl-html5-parser

    License: LGPL


    -Topics: HTML parser
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-hue.html b/clones/lisp/www.cliki.net/cl-hue.html deleted file mode 100644 index 5a57488a..00000000 --- a/clones/lisp/www.cliki.net/cl-hue.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-hue - - - - - - - -
    cl-hue
    Common Lisp client for Philips Hue API.

    Depends on: drakma, yason, alexandria

    Repository: https://github.com/jd/cl-hue

    License: Apache 2


    -web API
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-i18n.html b/clones/lisp/www.cliki.net/cl-i18n.html deleted file mode 100644 index a70eb655..00000000 --- a/clones/lisp/www.cliki.net/cl-i18n.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-i18n - - - - - - - -
    cl-i18n
    cl-i18n is a GNU gettext-style internationalization library originally written by Leslie P. Polzer.

    Code can be found @ https://notabug.org/cage/cl-i18n.git

    License: LLGPL

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-icalendar.html b/clones/lisp/www.cliki.net/cl-icalendar.html deleted file mode 100644 index 83f1b11c..00000000 --- a/clones/lisp/www.cliki.net/cl-icalendar.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-icalendar - - - - - - - -
    cl-icalendar
    An implementation of the iCalendar (RFC 5545) file format.

    Homepage: https://github.com/davazp/cl-icalendar

    License: GPL3


    -Topics: email
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-icebox.html b/clones/lisp/www.cliki.net/cl-icebox.html deleted file mode 100644 index 6aa5b270..00000000 --- a/clones/lisp/www.cliki.net/cl-icebox.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-icebox - - - - - - - -
    cl-icebox
    cl-icebox is a Cross-Platform GUI framework written in Common Lisp, with help from ltk

    The main reason you would like to choose cl-icebox is:

    - You can easily deploy your application in One Single Executable across Windows / Linux / macOS


    It is used to build the cl-pkr, the Cross-Platform Color Picker Written in Common Lisp

    GUI

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-icu.html b/clones/lisp/www.cliki.net/cl-icu.html deleted file mode 100644 index b0d4bdfc..00000000 --- a/clones/lisp/www.cliki.net/cl-icu.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-icu - - - - - - - -
    cl-icu
    cl-icu is a common lisp interface to the ICU internationalization library.

    Caveat Emptor: This was never put into production, has not been maintained in the past year and is limited to ICU 2.6 -Marco Baringer

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-image2text.html b/clones/lisp/www.cliki.net/cl-image2text.html deleted file mode 100644 index 734b85e8..00000000 --- a/clones/lisp/www.cliki.net/cl-image2text.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: cl-image2text - - - - - - - -
    cl-image2text
    cl-image2text is a command-line tool that converts images to text (to ANSI color codes, images we can see in the terminal).

    -


    -graphics library
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-indeterminism.html b/clones/lisp/www.cliki.net/cl-indeterminism.html deleted file mode 100644 index 57cd9913..00000000 --- a/clones/lisp/www.cliki.net/cl-indeterminism.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: cl-indeterminism - - - - - - - -
    cl-indeterminism
    Find and manipulate undefined variables and functions in forms

    A tiny convenience wrapper around HU.DWIM.WALKER cl-walker.

    FIND-UNDEFS is the analog of INDETS operator in MAPLE, if that can help your intuition.

    For more info, see README on the homepage.

    The branch 'transform-undefs' in git-repo on homepage contains MACROEXPAND-ALL-TRANSFORMING-UNDEFS -macro, which allows to conveniently transform calls to undefined functions and variables on the fly into -something new.

    It is not merged into 'master', since it requires the latest HU.DWIM.WALKER -(which can be checked-out using darcs repo)

    'darcs get --lazy http://dwim.hu/darcs/hu.dwim.walker'

    Licence: GPL

    Homepage: https://github.com/mabragor/cl-indeterminism

    metaprogramming

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-inflector.html b/clones/lisp/www.cliki.net/cl-inflector.html deleted file mode 100644 index 7f1b608d..00000000 --- a/clones/lisp/www.cliki.net/cl-inflector.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-inflector - - - - - - - -
    cl-inflector
    cl-inflector is a branch of vana-inflector to make it more standard and loadable / testable. It has the same goal of allowing easy singularization / pluralization of english words.

    cl-inflector at github


    -Topics: Text, AccelerationNet
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-influxdb.html b/clones/lisp/www.cliki.net/cl-influxdb.html deleted file mode 100644 index 1d8ab8c3..00000000 --- a/clones/lisp/www.cliki.net/cl-influxdb.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-influxdb - - - - - - - -
    cl-influxdb
    cl-influxdb is an native Common Lisp interface to the InfluxDB time-series and event database.

    Authors: Mike Maul

    License: MIT

    Homepage: https://github.com/mmaul/cl-influxdb


    StructuredStorage

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-inotify.html b/clones/lisp/www.cliki.net/cl-inotify.html deleted file mode 100644 index 2e8de2a6..00000000 --- a/clones/lisp/www.cliki.net/cl-inotify.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-inotify - - - - - - - -
    cl-inotify
    cl-inotify is an interface to the Linux inotify facility for file change notifications.

    Homepage: https://github.com/Ferada/cl-inotify

    License: BSD license


    -Topics: system programming
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-intbytes.html b/clones/lisp/www.cliki.net/cl-intbytes.html deleted file mode 100644 index 360a9f5a..00000000 --- a/clones/lisp/www.cliki.net/cl-intbytes.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-intbytes - - - - - - - -
    cl-intbytes
    Encode/decode any-base integers and byte arrays interchangeably.

    Depends on: fast-io

    Repository: https://github.com/EuAndreh/cl-intbytes

    License: LLGPL


    -serialization
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-interpol.html b/clones/lisp/www.cliki.net/cl-interpol.html deleted file mode 100644 index b87458c3..00000000 --- a/clones/lisp/www.cliki.net/cl-interpol.html +++ /dev/null @@ -1,57 +0,0 @@ - - - - - CLiki: cl-interpol - - - - - - - -
    cl-interpol
    CL-INTERPOL modifies the reader so that you can have interpolation of strings similar to Perl or Unix Shell scripts. It is a text processing convenience library. It also provides various ways to insert arbitrary characters into literal strings even if your editor/IDE doesn't support them.

    Here's an example:

    -* (let ((a 42))
    -    #?"foo: \xC4\N{Latin capital letter U with diaeresis}\nbar: ${a}")
    -"foo: ÄÜ
    -bar: 42"
    -

    -It was written by Edi Weitz and now maintained by community at Github.

    CL-INTERPOL can also be used for HTML templating: http://paste.lisp.org/display/146518

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-irc.html b/clones/lisp/www.cliki.net/cl-irc.html deleted file mode 100644 index a03cb396..00000000 --- a/clones/lisp/www.cliki.net/cl-irc.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: cl-irc - - - - - - - -
    cl-irc
    cl-irc is an IRC library written in Common Lisp. It features DCC, -CTCP and most, if not all, of the IRC client protocol.

    More information can be obtained at common-lisp.net (but the SVN links on that page are broken).

    The latest release as of the last modification of this page is 0.9.2 (cl-irc_latest.tar.gz).

    Repository: https://gitlab.common-lisp.net/charmon/cl-irc


    -MIT-LICENSE
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-irregsexp.html b/clones/lisp/www.cliki.net/cl-irregsexp.html deleted file mode 100644 index cc10b720..00000000 --- a/clones/lisp/www.cliki.net/cl-irregsexp.html +++ /dev/null @@ -1,59 +0,0 @@ - - - - - CLiki: cl-irregsexp - - - - - - - -
    cl-irregsexp
    A fast regular expression library with a lispy alternative to traditional syntax for text matching.

    The current syntax: instead of writing -

    (register-groups-bind (method url version-major version-minor) - ("(\\S+)\\s+(\\S+)\\s+HTTP/<!-- -->(\\d+).(\\d+)$" line) - ...)
    - write -
    (match-bind (method (+ (space)) url (+ (space)) "HTTP/" (version-major (integer)) "." (version-minor (integer)) (last)) - line - ...)
    -Which might be clearer and doesn't involve mentioning the captured variables twice.

    cl-ppcre also has a similar sexpy alternative for its regular expressions called terse-ppcre

    Homepage: at common-lisp.net

    License: Not specified

    Topics: regular expression

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-iso3166.html b/clones/lisp/www.cliki.net/cl-iso3166.html deleted file mode 100644 index 0d79dfd4..00000000 --- a/clones/lisp/www.cliki.net/cl-iso3166.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-iso3166 - - - - - - - -
    cl-iso3166
    cl-iso3166 is a country units library providing data from ISO 3166 : Codes for the representation of names of countries and their subdivisions.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-iso4217.html b/clones/lisp/www.cliki.net/cl-iso4217.html deleted file mode 100644 index b1782a19..00000000 --- a/clones/lisp/www.cliki.net/cl-iso4217.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-iso4217 - - - - - - - -
    cl-iso4217
    cl-iso4217 is a currency units library providing data from ISO 4217 : Codes for the representation of currencies and funds.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-itertools.html b/clones/lisp/www.cliki.net/cl-itertools.html deleted file mode 100644 index 5a556c7b..00000000 --- a/clones/lisp/www.cliki.net/cl-itertools.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-itertools - - - - - - - -
    cl-itertools
    Write iterators in CL in a way close to Python ones.

    Also, ports Python's itertools module to CL, using these defined iteration primitives.

    Homepage: GitHub

    License: MIT

    See Also: pygen, snakes

    Topics: language extension

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-iup.html b/clones/lisp/www.cliki.net/cl-iup.html deleted file mode 100644 index 1a17dc51..00000000 --- a/clones/lisp/www.cliki.net/cl-iup.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-iup - - - - - - - -
    cl-iup
    cl-iup is a binding for the IUP GUI library.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-jointgen.html b/clones/lisp/www.cliki.net/cl-jointgen.html deleted file mode 100644 index 9ae0639c..00000000 --- a/clones/lisp/www.cliki.net/cl-jointgen.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-jointgen - - - - - - - -
    cl-jointgen
    CL-JOINTGEN is a Common Lisp implementation of the Joint Generation Algorithm for computing the dual of a monotone boolean function.

    cl-jointgen was written by Utz-Uwe Haus and Tamon Stephen. It's homepage with API documentation is located on primaldual.de, and the code is hosted at sourceforge.

    cl-jointgen should run under all ANSI compliant Common Lisp Implementations.

    cl-jointgen uses asdf.


    -Topics: mathematics signal processing
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-jpeg.html b/clones/lisp/www.cliki.net/cl-jpeg.html deleted file mode 100644 index bea3e4fb..00000000 --- a/clones/lisp/www.cliki.net/cl-jpeg.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-jpeg - - - - - - - -
    cl-jpeg
    CL-JPEG (Common Lisp JPEG Library) can compress and decompress raster-images to/from the JPEG image file format. But not the C2 JPEG format!

    CL-JPEG was developed by Eugene Zaikonnikov with sponsorship by Kelly E. Murray. It is hosted on github.

    Dave Watson: Note that this library is NOT thread safe.

    License: BSD

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-jpl-util.html b/clones/lisp/www.cliki.net/cl-jpl-util.html deleted file mode 100644 index 8710ff8c..00000000 --- a/clones/lisp/www.cliki.net/cl-jpl-util.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-jpl-util - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-json.html b/clones/lisp/www.cliki.net/cl-json.html deleted file mode 100644 index 01bbad6d..00000000 --- a/clones/lisp/www.cliki.net/cl-json.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-json - - - - - - - -
    cl-json
    cl-json is a JSON parser and generator.

    See the cl-json page at common-lisp.net and the json homepage.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-kappa.html b/clones/lisp/www.cliki.net/cl-kappa.html deleted file mode 100644 index 1e8d764c..00000000 --- a/clones/lisp/www.cliki.net/cl-kappa.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: cl-kappa - - - - - - - -
    cl-kappa
    cl-kappa is a general purpose web agent in the spirit of WWW::Mechanize. Based around Drakma and using CLOS, it is thread-safe, supports forms, and is easily sub-classed.

    Written on SBCL.

    Homepage: https://launchpad.net/cl-kappa

    License: BSD


    -Topics: HTTP client -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-keycloak.html b/clones/lisp/www.cliki.net/cl-keycloak.html deleted file mode 100644 index cc906cf6..00000000 --- a/clones/lisp/www.cliki.net/cl-keycloak.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-keycloak - - - - - - - -
    cl-keycloak
    A basic Common Lisp library to connect with Keycloak OIDC and request user info.

    Depends on: drakma, flexi-streams, yason

    Repository: https://github.com/ikbenlike/cl-keycloak

    License: GPL3


    -protocol
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-l10n.html b/clones/lisp/www.cliki.net/cl-l10n.html deleted file mode 100644 index fd18e26f..00000000 --- a/clones/lisp/www.cliki.net/cl-l10n.html +++ /dev/null @@ -1,61 +0,0 @@ - - - - - CLiki: cl-l10n - - - - - - - -
    cl-l10n
    cl-l10n is a portable library for handling program localization. The project home is at common-lisp.net.

    It currently supports locale specific printing of numbers, monetary values and dates/times, as well as provides support for string localization through a gettext-like mechanism.

    It currently runs on SBCL, ECL, ACL, CMUCL, CLISP, and Lispworks although porting to new implementations should simply be a matter of defining a new getenv function.

    Depends on: uiop, alexandria, iterate, cl-ppcre, bind, cl-fad, flexi-streams, cxml, local-time, closer-mop

    Repository: https://gitlab.common-lisp.net/cl-l10n/cl-l10n

    License: BSD 3-Clause

    brief example

    Possibly evil features.

    Beware of the misguiding documentation - in current (i.e. 0.4) version - i18n API as described in documentation doesn't match the source code at all.

    FORMAT and FORMATTER are unexported symbols in the cl-l10n package. -SHADOWING-IMPORTing them it will give you 3 new format directives.

      -
    • ~N: For printing numbers.
    • -
    • ~M: For formatting monetary values.
    • -
    • ~U: For dates and times (universal time).
    • -

    Examples

    (format nil "~v,,vU" "en_ZA" 0 3321593252) - => "Mon 04 Apr 2005 08:47:32 +0000"

    (format nil "~vN" "en_ZA" 19932.399) - => "19,932.399"

    (format nil "~vM" "sv_SE" 19932.399) - => "19 932,40 kr"

    (I've found these to be a lot easier to use than ~/cl-l10n:format-?/ calls)

    NB: All output from these directives are dependent on the current -locale (but not on the phase of the moon).

    Number and date/time parsing is also supported now (1 April 2005).


    -internationalization
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-larval.html b/clones/lisp/www.cliki.net/cl-larval.html deleted file mode 100644 index 6900a76a..00000000 --- a/clones/lisp/www.cliki.net/cl-larval.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-larval - - - - - - - -
    cl-larval
    S-Exp syntax to write assembler for AVR microcontrollers.

    See README for snippets of code and details of API.

    Licence: GPL

    Homepage: https://github.com/mabragor/cl-larval

    s-exp syntax machine code embedded

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-lastfm.html b/clones/lisp/www.cliki.net/cl-lastfm.html deleted file mode 100644 index ade012d2..00000000 --- a/clones/lisp/www.cliki.net/cl-lastfm.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-lastfm - - - - - - - -
    cl-lastfm
    cl-lastfm is a Common Lisp wrapper to the Last.fm API.

    Repository: https://github.com/nlamirault/cl-lastfm

    Author: Nicolas Lamirault

    License: MIT


    -web API
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-launch.html b/clones/lisp/www.cliki.net/cl-launch.html deleted file mode 100644 index b0a6864a..00000000 --- a/clones/lisp/www.cliki.net/cl-launch.html +++ /dev/null @@ -1,923 +0,0 @@ - - - - - CLiki: cl-launch - - - - - - - -
    cl-launch
    cl-launch is a unix utility to make your Lisp software easily invokable from the shell command-line.

    License: MIT

    Source repository: git clone https://gitlab.common-lisp.net/xcvb/cl-launch.git
    -Or with the proper account, git clone ssh://git@gitlab.common-lisp.net/git/cl-launch.git

    View the repository: -https://gitlab.common-lisp.net//xcvb/cl-launch

    Download it: http://common-lisp.net/project/xcvb/cl-launch/

    Install it in Debian:

    sudo apt-get install cl-launch

    cl-launch will help you invoke your Lisp software from the Unix command-line or as a #! script. -We encourage you to install cl-launch 4.1.2 or later and write scripts using #!/usr/bin/cl. -A trivial shim written in C is required for it to work on BSD kernels. -It is a self-contained shell-script by Fare Rideau -that will abstract away the details of the underlying Lisp implementation -by generating the proper Lisp and shell code. -Extensive automated testing ensures that it works -in thousands of valid combined operation modes, Lisp and shell implementations.

    Examples: -

    -#!/usr/bin/cl -sp lisp-stripper -E main
    -(defun main (argv)
    -  (if argv
    -      (map () 'print-loc-count argv)
    -      (print-loc-count *standard-input*)))
    -

    Or to compare evaluation of a form on all supported implementations: -

    -for l in sbcl ccl clisp cmucl ecl abcl scl allegro lispworks gcl xcl ; do
    -   cl-launch -l $l -i '(format t "'$l': ~S~%" `#5(1 ,@`(2 3)))' \
    -   2>&1 | grep "^$l:" # LW, GCL are verbose
    -done
    -

    Here follows the output of /usr/bin/cl --more-help: -

    -cl-launch.sh 4.1.3 "(April 2015)" "Francois-Rene Rideau's" "shell wrapper for Common Lisp"
    -============
    -
    -Name
    -----
    -cl-launch - shell wrapper for Common Lisp
    -
    -Synopsis
    ---------
    -    cl [options] '(lisp (form) to evaluate)'
    -        evaluate specified form, print the results followed by newline
    -        as in: cl -l sbcl -sp my-system-and-package '(some form)'
    -
    -    cl [options] script-file arguments...
    -        run specified Lisp script, passing arguments, as in a script with
    -        #!/usr/bin/cl -sp my-system-and-package -E main
    -
    -    cl [options] [--execute] [options] [-- arguments...]
    -        run the specified software without generating a script (default)
    -
    -    cl [options] --output EXECUTABLE [options]
    -        generate an executable script or binary from the software specification
    -
    -Special modes
    --------------
    -    -h  or  -?  --help           display a short help message
    -    -H          --more-help      show complete help (you may use a $PAGER)
    -    -V          --version        display cl-launch version and configuration
    -    -u FILE     --update FILE    update a cl-launch script to current version
    -
    -Software specification
    -----------------------
    -    -w CODE     --wrap CODE          shell wrapper CODE to run in cl-launch
    -    -l LISP...  --lisp LISP...       try use these LISP implementations
    -    -m IMAGE    --image IMAGE        build from Lisp image IMAGE
    -    -f FILE     --file FILE          include lisp FILE while building
    -    -L FILE     --load FILE          load lisp FILE while building
    -    -S X        --source-registry X  override source registry of asdf systems
    -    -s SYSTEM   --system SYSTEM      load asdf SYSTEM while building
    -                --load-system SYSTEM same as above (buildapp compatibility)
    -    -p PACKAGE  --package PACKAGE    change current package to PACKAGE
    -    -sp SP      --system-package SP  combination of -s SP and -p SP
    -    -e FORM     --eval FORM          evaluate FORM while building
    -                --require MODULE     require MODULE while building
    -    -r FUNC     --restart FUNC       restart from build by calling (FUNC)
    -    -E FUNC     --entry FUNC         restart from build by calling (FUNC argv)
    -    -DE N/F  --dispatched-entry N/F  if exec'ed as N, restart from (F argv)
    -    -i FORM     --init FORM          evaluate FORM after restart
    -    -ip FORM    --print FORM         evaluate and princ FORM after restart
    -    -iw FORM    --write FORM         evaluate and write FORM after restart
    -    -F FORM     --final FORM         evaluate FORM before dumping IMAGE
    -    -I PATH     --include PATH       runtime PATH to cl-launch installation
    -    +I          --no-include         disable cl-launch installation feature
    -    -R          --rc                 try read /etc/cl-launchrc, ~/.cl-launchrc
    -    +R          --no-rc              skip /etc/cl-launchrc, ~/.cl-launchrc
    -    -Q          --quicklisp          use quicklisp (see --more-help)
    -    +Q          --no-quicklisp       do not use quicklisp
    -    -b          --clbuild            use clbuild (see --more-help)
    -    +b          --no-clbuild         do not use clbuild
    -    -v          --verbose            be quite noisy while building
    -    -q          --quiet              be quite quiet while building (default)
    -
    -Output options
    ---------------
    -    -x   -o !   --execute            run the specified software NOW (default)
    -    -o FILE     --output FILE        create executable FILE
    -    -d IMAGE    --dump IMAGE         dump IMAGE for faster startup
    -    -X ... --   (see more help)      use #!/.../cl-launch as script interpreter
    -    --          --                   end of arguments when using -x or -X
    -
    -Invocation of cl-launch
    ------------------------
    -
    -`cl-launch` will evaluate Common Lisp code or create shell scripts or
    -executable binaries that evaluate Common Lisp code. cl-launch follows
    -the invocation conventions of both Unix script interpreters
    -and Common Lisp implementations.
    -
    -A suggested short-hand name for `cl-launch` is `cl` (you may create a
    -symlink if it isn't included in your operating system's `cl-launch` package).
    -We'd like to homestead the path `/usr/bin/cl` while we can, so that
    -script authors can reasonably expect a script to work when it starts with:
    -        `#!/usr/bin/cl`
    -(See *Simple cl-launch scripts* below for caveats with `#!` scripts though.)
    -Recent Linux kernels support a script interpreter itself being a script;
    -BSD kernels don't and require a small C program cl-shim to be compiled and
    -installed as /usr/bin/cl to use cl-launch this way.
    -
    -To work properly, `cl-launch` 4.1.3 depends on `ASDF` 3.1.2 or later, and
    -on its portability layer `UIOP`, to manage compilation and image life cycle.
    -
    -The software is specified as the evaluation of code in several phases;
    -the distinction matters most for creating executable binaries,
    -but understanding the evaluation model can avoid surprises in other cases too.
    -
    -In the first phase, the Lisp image is initialized:
    -
    -* optionally having your Lisp start from a Lisp `IMAGE`
    -  (option `-I --image`)
    -* loading a small header of code that provides common `cl-launch` functionality
    -* loading `ASDF3`.
    -  The `cl-launch` header will try hard to load `ASDF 3.1.2` or later.
    -  If your implementation does not provide it via `(require "asdf")`,
    -  you can configure your implementation's `ASDF` (if any) to find it.
    -  Or you can put it in your home, under `~/common-lip/asdf/`
    -  and `cl-launch` will find it.
    -  Or it may be installed in `/usr/share/common-lisp/source/cl-asdf/`
    -  in which case `cl-launch` will also find it.
    -  Failing any of the above, `cl-launch` will be unable to proceed.
    -* optionally loading [quicklisp](http://beta.quicklisp.org/)
    -  (option `-Q --quicklisp`)
    -
    -In a second phase, your software is built, based on the following options,
    -in order of appearance:
    -
    -* evaluating one or several `FORMS` (option `-e --eval`)
    -  in the current package. The series of forms is evaluated
    -  as by `LOAD`, in a context where the `*package*`
    -  has been set to the current package (see below explanations on packages).
    -* compiling a `FILE` and load the fasl (option `-L --load`)
    -  Files are loaded with `*package*` bound to the current package (see below).
    -* including a `FILE`, compiling it and loading the fasl (option `-f --file`)
    -  The contents of the `FILE`, which will have be included in the output script,
    -  will be compiled and the fasl loaded as if by option `-L --load`.
    -  The difference matters mostly when creating an output script,
    -  as opposed to executing the code immediately or dumping an image.
    -  Only one file may be specified this way.
    -  If a filename specified with `-f --file` is `-` (after stripping quotes),
    -  then the standard input is used. You may thus concatenate several files
    -  and feed them to `cl-launch` through a pipe.
    -  To use a file named `-`, pass the argument `./-`
    -  (same trick as for `cat` and other Unix commands).
    -* A script file, as specified by `-X ... --` or by use of `#!`
    -  or by following options with an immediate filename that does not start with
    -  `(` or `-`, counts as if preceded by `--package cl-user --load`
    -  and followed by `--execute --`
    -* requiring an implementation-provided `MODULE` (option `--require`)
    -* having `ASDF3` compile and load a `SYSTEM`
    -  (option `-s --system --load-system`).
    -  Option `-sp --system-package` loads the `SYSTEM` like `-s --system`
    -  and also changes the current `*package*` like `-p --package`
    -  (see below on packages).
    -* optionally having your Lisp `DUMP` an image to restart from
    -  (option `-d --dump`), and just before
    -  evaluating one or several `FINAL` forms (option `-F --final`).
    -  See section *Dumping images*.
    -
    -If you are creating a shell script with option `-o --output` but
    -without using option `-d --dump`, then these first two phases only happen
    -when the script is invoked. If you are using option `-d --dump`,
    -then these two phases happen immediately, and
    -no compilation happen when invoking the output.
    -Note that compiled files are cached, so that the compilation only happens
    -the first time a file is loaded via `--load of --system`,
    -or if the source file has been modified.
    -This may cause slower startup the first time over.
    -The cache is controlled by `ASDF`'s `output-translations` mechanism.
    -See your `ASDF` manual regarding the configuration of this cache,
    -which is typically under `~/.cache/common-lisp/`
    -
    -In a third phase, your software is run via `UIOP:RESTORE-IMAGE`.
    -This happens immediately if using option `-x --execute` or
    -calling `cl-launch` as a Unix interpreter on a script e.g. via `#!`;
    -or it can happen later if you use option `-o --output` in combination
    -with (or without) option `-d --dump` to dump an image (which gives you faster
    -startup and single-file or double-file delivery, at the expense of disk space),
    -at which point it happens when you invoke the executable output file:
    -
    -* Hooks from `ASDF3`'s `UIOP:*IMAGE-RESTORE-HOOK*` are called
    -  (in FIFO order).
    -* a series of `FORMS` specified via options `-i --init`,
    -  `-ip --print`, `-iw --write`, stored as a text string,
    -  are read and evaluated in order of appearance, each in the context
    -  of the package that was current at the time it was requested.
    -  (Concatenated together with separating whitespace, these forms constitute
    -  the `UIOP:*IMAGE-PRELUDE*` as handled by `RESTORE-IMAGE`).
    -  Arguments that start with an open parenthesis are assumed to be `FORMS`
    -  that follow an implicit `--print`.
    -  Loading from a stream means you don't have to worry about nasty read-time
    -  issues; forms will be read by the fully built Lisp image; however it also
    -  means that if you care a lot about the very last drop of startup delay when
    -  invoking a dumped image, you'll only use option `-r --restart`
    -  or `-E --entry` and avoid using `--init` and its variants.
    -  Option `-ip --print` specifies `FORMS` such that the result of
    -  the last form will be printed as if by `PRINC`, followed by a newline.
    -  Option `-iw --write` is similar to `--print`,
    -  using `WRITE` instead of `PRINC`.
    -* An optional `FUNCTION` provided option `-r --restart` or `-E --entry`
    -  is invoked. If the function was provided with option `-r --restart`
    -  (compatible with earlier versions of `cl-launch`),
    -  it will be called with no argument. If it was provided with
    -  option `-E --entry` (compatible with `buildapp`), it will be called
    -  with one argument, being the list of arguments passed to the program,
    -  not including `argv[0]`, which is available on most implementations via the
    -  function `uiop:argv0` (available in `ASDF` 3.1.2 and later).
    -  Using either option, the argument may be a function name
    -  or a lambda expression, that is read from the current package
    -  (see below option `-p --package` and `-sp --system-package`).
    -  Only one restart or entry function may be specified;
    -  if multiple are provided, the last one provided overrides previous ones.
    -  If you want several functions to be called, you may `DEFUN` one that calls
    -  them and use it as a restart, or you may use multiple init forms as below.
    -  See also below options `-DE --dispatch-entry`, `-sm --system-main`,
    -  `-Ds --dispatch-system` that behave as if `-E --entry` had been specified
    -  among other things.
    -* If neither restart nor entry function is provided, the program will exit with
    -  status `0` (success). If a function was provided, the program will exit
    -  after the function returns (if it returns), with status `0` if and only if
    -  the primary return value of result is generalized boolean true, and
    -  with status 1 if this value is `NIL`.
    -  See documentation for `UIOP:RESTORE-IMAGE` for details.
    -
    -The current package can be controlled by option `-p --package` and its variant
    -`-sp --system-package` that also behaves like `-s --system`.
    -All forms passed to `--eval`, `--init`, `--print`, `--write`,
    -`--final`, `--restart`, `--entry`, etc., are read in the current package.
    -Files specified with `-f --file --load` are read in the current package.
    -Current means the package specified by the latest option `-p --package` or
    -`-sp --system-package` preceding the option being processed,
    -or `cl-user` if there was none.
    -Note that multiple `-i --init` or `-F --final` forms
    -may be evaluated consecutively after a package has been changed, and that
    -if one of these form itself modifies the package, or some other syntax control
    -mechanism such as the reader, it may adversely affect later forms in the same
    -category, but not those in other categories (if reached).
    -
    -
    -The following derived options work as if by a combination of simpler options:
    -
    -* As mentioned above, option `-sp --system-package` combines `--system` and
    -  `--package` in one option, so that given the argument `SYSTEM`, the system
    -  is loaded as if by `--system SYSTEM` that creates a package `SYSTEM` that
    -  then becomes the current package.
    -
    -* If option `-DE --dispatch-entry` is used, then the next argument must follow
    -  the format `NAME/ENTRY`, where `NAME` is a name that the program may be
    -  invoked as (the basename of the `uiop:argv0` argument), and `ENTRY` is
    -  a function to be invoked as if by `--entry` when that is the case.
    -  If the `ENTRY` is left out, function `main` in current package is used.
    -  Support for option `-DE --dispatch-entry` is delegated to a dispatch library,
    -  distributed with `cl-launch` but not part of `cl-launch` itself, by
    -  (1) registering a dependency on the dispatch library as if by
    -  `--system cl-launch/dispatch` (if not already)
    -  (2) if neither `--restart` nor `--entry` was specified yet, registering a
    -  default entry function as if by `--entry cl-launch/dispatch:dispatch-entry`.
    -  (3) registering a build-form that registers the dispatch entry as if by
    -  `--eval '(cl-launch/dispatch:register-name/entry "NAME/ENTRY" :PACKAGE)'`
    -  where `PACKAGE` is the current package.
    -  See the documentation of said library for further details.
    -
    -* If option `-Ds --dispatch-system` is used with `SYSTEM` as its argument,
    -  it is as if option `-s --system` had been used with the same argument,
    -  followed by option `-DE --dispatch-entry` for the basename of the system
    -  (last `/` (slash) separated component of the system name) and the function `main`
    -  in the package of the system, but without otherwise changing the current package.
    -
    -* If option `-sm --system-main` is used with `SYSTEM` as its argument,
    -  it is as if option `-s --system` had been used with the same argument,
    -  followed by option `-E --entry` with the `main` function
    -  in the package of the system, but without otherwise changing the current package.
    -
    -
    -General note on `cl-launch` invocation:
    -options are processed from left to right;
    -usually, repeated options accumulate their effects,
    -with the earlier instances taking effect before latter instances.
    -In case of conflicting or redundant options, the latter override the former.
    -
    -`cl-launch` defines a package `cl-launch` that exports the following symbol:
    -   `compile-and-load-file`
    -Runtime functionality formerly provided by `cl-launch`
    -is now provided by `UIOP`, the portability layer provided by `ASDF3`.
    -See below section *cl-launch runtime API*.
    -
    -When the first non-recognized option is a filename, `cl-launch` will try to
    -load this filename as a script, as if by `--load`,
    -then execute it immediately as if by `--execute --`,
    -with the rest of the command line passed as arguments.
    -The file name may not start with the character `-` or a `(` ---
    -To use a file with one of these (or something unknown) as a first character,
    -prepend `./` to the filename. Note that it is a security risk to let
    -adversaries control the names of files passed to cl-launch or other commands.
    -
    -When option `--execute` is specified, the specified software is executed.
    -Command-line arguments may be given to software being executed by putting
    -them after a special marker `--`, that ends `cl-launch` option processing.
    -
    -When option `--output FILE` is used, code will be generated
    -into the specified `FILE`. The output file itself
    -will be created atomically from complete generated contents
    -and may thus have the same pathname as the input file.
    -The restart function and init forms will not be evaluated, but kept for
    -when the output file is executed.
    -If `-` (after quoting) is specified, then the standard output is used.
    -If `!` (after quoting) is specified, then option `--execute` is assumed.
    -
    -When no `--output` file is specified,
    -option `--execute` is implicitly assumed.
    -The last `--output` or `--execute` option
    -takes precedence over the previous ones.
    -
    -If only one argument exists and it doesn't start with `-`
    -then the argument is considered as if given to option `-ip`,
    -to be evaluated and printed immediately.
    -
    -
    -The `ASDF3` source-registry configuration can be overridden with option
    -`--source-registry SOURCE_REGISTRY`. The provided configuration will take
    -priority over anything provided by the environment or configuration files,
    -though it may inherit from them as usual. See the `ASDF3` manual about that.
    -
    -
    -Options `-l --lisp` and `-w --wrap` may be used to control the way that
    -a Common Lisp implementation is found when the software is run.
    -Option `-l --lisp` specifies the list of implementations to try to use;
    -the list is whitespace-separated, and consists in
    -nicknames recognized by `cl-launch`.
    -Option `-w --wrap` supplies arbitrary code to be evaluated
    -by the shell wrapper, after it has read its configuration
    -and defined its internal functions, but before it tries
    -to find and run a Lisp implementation. Such wrapper code is typically used to
    -modify the variables that control the run-time behaviour of generated scripts,
    -as documented below. Use of other internals of `cl-launch` is possible,
    -but not supported, which means that it is your responsibility to keep a copy
    -of the specific version of cl-launch with which your code works and to
    -update your code if you later make an upgrade to an incompatible `cl-launch`.
    -For instance, `--lisp "foo bar"` is equivalent
    -to `--wrap 'LISPS="foo bar"'`.
    -See below the documentation section on *Lisp implementation invocation*.
    -
    -
    -Option `--no-include` specifies that cl-launch should generate a standalone
    -script that includes the configuration, shell wrapper, Lisp header, and
    -user-provided Lisp code (from `--file`). If you can rely on the presence of
    -a recent Lisp implementation that provides `ASDF`, then the script is pretty
    -much standalone indeed and may be moved around the filesystem and still used.
    -However the size of the output will be the size of the user Lisp code
    -plus about 36KiB.
    -
    -Option `--include PATH` specifies that `cl-launch` should generate
    -a very small script (typically under 1KiB) that when run
    -will read the `cl-launch` shell wrapper and Lisp header
    -from a specified installation directory `PATH`.
    -Also, if option `--include` is used, and
    -Lisp code is specified with `--file`
    -and an absolute pathname starting with `/` as opposed to a relative pathname
    -or to the standard input, then Lisp code will also be loaded from the specified
    -location at runtime rather than embedded into the script at generation time.
    -This option generates leaner scripts, but may not be applicable when
    -the very same script is to used in a variety of situations
    -that lack common coherent filesystem management.
    -
    -Which of `--include` or `--no-include` is the default
    -may depend on your cl-launch installation.
    -The version of `cl-launch` distributed by the author
    -uses `--no-include` by default, but
    -the version of `cl-launch` available in your operating system distribution may
    -rely on a well-managed include path (this is the case with debian for instance).
    -You may query the configuration of an instance of `cl-launch`
    -with option `--version`.
    -
    -For instance, one may expect a debian version of cl-launch to use:
    -        `/usr/share/common-lisp/source/cl-launch/`
    -as a system-managed include path. One may also expect that Lisp implementations
    -managed by the system would come with `cl-launch` precompiled in Lisp images.
    -Since `cl-launch` provides feature `:cl-launch`,
    -and since the `cl-launch` Lisp header is conditionalized to not be read
    -with this feature, this would make `cl-launch` startup faster,
    -while still allowing non-system-managed Lisp implementations to run fine.
    -
    -You may create an installation of cl-launch with such a command as:
    -
    -        cl-launch --include /usr/share/common-lisp/source/cl-launch \
    -                --lisp 'sbcl ccl clisp' \
    -                --rc \
    -                --output /usr/bin/cl-launch -B install
    -
    -You can use command `-B install_bin` if you only want to configure cl-launch
    -(with a different default for `--lisp` but no `--include`, for instance),
    -and command `-B install_path` if you only want to create support files.
    -Note that the `--backdoor` option `-B` must come last in your invocation.
    -
    -
    -Option `+R --no-rc` specifies that `cl-launch` should not try to
    -read resource files `/etc/cl-launchrc` and `~/.cl-launchrc`.
    -
    -Option `-R --rc` specifies that cl-launch should try to read resource
    -files `/etc/cl-launchrc` and `~/.cl-launchrc`.
    -These files are notably useful to define override the value of `$LISP`
    -depending on `$SOFTWARE_SYSTEM`. A shell function `system_preferred_lisps`
    -is provided so that your `cl-launchrc` might contain lines as follows:
    -
    -        system_preferred_lisps stumpwm cmucl sbcl clisp
    -        system_preferred_lisps exscribe clisp cmucl sbcl
    -
    -Beware that for the sake of parsing option `--no-rc`, the resource files
    -are run *after* options are processed, and that
    -any overriding of internal variables will thus preempt user-specified options.
    -A warning will be printed on the standard error output
    -when such an override happens.
    -Note that such overrides only happen at script-creation time.
    -A script created by `cl-launch`
    -will not try to read the `cl-launch` resource files.
    -
    -
    -Option `+Q --no-quicklisp` specifies that `cl-launch`
    -should not use `quicklisp`.
    -Option `-Q --quicklisp` specifies that `cl-launch` should use `quicklisp`.
    -Which is the default depends on your installation.
    -The default default is `+Q`.
    -Quicklisp is loaded from `~/quicklisp/setup.lisp` if available,
    -or else `~/.quicklisp/setup.lisp`.
    -
    -Option `-b --clbuild` specifies that `cl-launch` should rely
    -on `clbuild` to find and invoke the Common Lisp implementation.
    -Option `+b --no-clbuild` specifies that `cl-launch` should not rely
    -on `clbuild` to find and invoke the Common Lisp implementation.
    -Which is the default depends on your installation.
    -The default default is `+b`.
    -
    -
    -Files generated by `cl-launch` are made of several well-identifiable sections.
    -These sections may thus be considered as distinct software, each available
    -under its own regime of intellectual property (if any). In case of an accident,
    -you may still retrieve the exact original code provided with option `--file`
    -by stripping the wrapper, as delimited by well-identified markers.
    -Search for the marker string `"BEGINS HERE:"`.
    -Everything after it is not `cl-launch`.
    -This can be done automatically with backdoor option `-B extract_lisp_content`.
    -`cl-launch` uses this functionality implicitly when embedding a file specified
    -with the option `--file`, so that you may process
    -a script previously generated by `cl-launch` and change the options
    -with which it wraps the embedded Lisp code into runnable software.
    -
    -As an alternative, you may also upgrade a previously generated script to use
    -the current version of `cl-launch` while preserving
    -its original wrapping options with option `--update`.
    -In this case, software specification options are ignored.
    -Output options still apply. Specifying `-` (after quoting) as the file to
    -update means to read the contents to be read from the standard input.
    -This feature might not work with scripts generated by very early versions
    -of the `cl-launch` utility. It should work with versions later than 1.47.
    -
    -
    -Supported Lisp implementations
    -------------------------------
    -
    -The implementations supported by current version of cl-launch are:
    -
    -        abcl allegro ccl clisp cmucl ecl gcl lispworks sbcl scl xcl
    -
    -Also defined are aliases:
    -
    -        clozurecl gclcvs lisp openmcl
    -
    -which are name variations for `ccl`, `gcl`, `cmucl` and `ccl`
    -again respectively.
    -
    -Fully supported, including standalone executables:
    -
    -    sbcl:  SBCL 1.2.2
    -    clisp:  GNU CLISP 2.49
    -    ecl:  ECL 13.5.1
    -    cmucl:  CMUCL 20D
    -    ccl:  ClozureCL 1.10
    -    lispworks:  LispWorks Professional 6.1.0  (no personal ed, banner)
    -
    -Fully supported, but no standalone executables:
    -
    -    gcl (GCL 2.7):  GCL 2.7.0 ansi mode  (get a very recent git checkout)
    -    allegro:  Allegro 9.0  (also used to work with 5)
    -    scl:  Scieneer CL 1.3.9
    -
    -Incomplete support:
    -
    -    abcl:  ABCL 1.3.1 (no image dumping support, but you may use abcl-jar)
    -    xcl:  XCL 0.0.0.291 (cannot dump an image) (get a recent checkout)
    -
    -
    -`GCL` is only supported in ANSI mode. `cl-launch` does export GCL_ANSI=t
    -in the hope that the `gcl` wrapper script does the right thing
    -as it does in Debian. Also `ASDF3` requires a very recent `GCL 2.7`.
    -Note that `GCL` seems to not be very actively maintained anymore.
    -
    -There are some issues regarding standalone executables on `CLISP`.
    -See below in the section regarding *Standalone executables*.
    -
    -`LispWorks` requires the Professional Edition; the Personal Edition isn't
    -supported as it won't let you either control the command line or dump images.
    -Dumped images will print a banner, unless you dump a standalone executable.
    -To dump an image, make sure you have a license file in your target directory
    -and/or to .../lispworks/lib/6-1-0-0/config/lwlicense
    -(or use a trampoline shell script to `exec /path/to/lispworks "$@"`),
    -create a build script with:
    -
    -       echo '(hcl:save-image "lispworks-console" :environment nil)' > si.lisp
    -       lispworks-6-1-0-x86-linux -siteinit - -init - -build si.lisp
    -
    -LispWorks also requires that you have `ASDF 3.1.2` or later;
    -make sure you have it installed and configured in your source registry.
    -There is no standard name for a console-only variant of LispWorks;
    -older versions of cl-launch assume a default `lispworks`; since 4.1.2.1,
    -`lispworks-console` is assumed instead, to avoid conflicts. You can
    -control the name you use with the shell variable `$LISPWORKS`, or you
    -can just leave `lispworks-console` in your path, and use a symlink, copy,
    -shell alias or trivial wrapper script to enable your favorite shorter name
    -`lispworks`, `lw`, `lwcon`, `lw-console`, etc.
    -
    -Similarly, a mlisp image for allegro can be created as follows:
    -
    -        alisp -e '(progn
    -                   (build-lisp-image "sys:mlisp.dxl"
    -                    :case-mode :case-sensitive-lower
    -                    :include-ide nil :restart-app-function nil)
    -                   (when (probe-file "sys:mlisp") (delete-file "sys:mlisp"))
    -                   (sys:copy-file "sys:alisp" "sys:mlisp"))'
    -
    -Additionally, `cl-launch` supports the use of `clbuild` as a wrapper
    -to invoke the Lisp implementation, with the `--clbuild` option.
    -
    -
    -Supported shells
    -----------------
    -
    -`cl-launch` was tested with all of
    -`posh` 0.4.7, `bash` 2.05, `bash` 3.1, `zsh` 4.3.2,
    -`dash` 0.5.3 and `busybox` 1.01 `ash`.
    -
    -
    -Lisp implementation invocation
    -------------------------------
    -
    -When a `cl-launch` generated script is invoked,
    -the `cl-launch` shell wrapper will try to execute the Lisp code
    -with the first Common Lisp implementation it finds in a given list,
    -which can be specified through option `--lisp`.
    -The runtime behaviour of the `cl-launch` shell wrapper
    -is very configurable through a series of environment variables.
    -These variables can be controlled by the user
    -by exporting them in his environment, or
    -they can be restricted at the time of script generation
    -by using cl-launch option `--wrap`.
    -
    -If variable `LISP` is defined, the shell wrapper will first try
    -the implementation named by variable `LISP`. If that fails,
    -it will try the list of implementations provided at script generation time.
    -The list of implementations generated will be
    -the argument to option `--lisp` if specified.
    -Otherwise, `cl-launch` will supply its default value.
    -This default value for the current instance of `cl-launch` is:
    -
    -        sbcl ccl clisp abcl allegro lispworks scl cmucl ecl mkcl gcl xcl
    -
    -This `LISP` selection only happens at system preparation time.
    -If you dump an image then the script will always use the Lisp implementation
    -for which an image was dumped.
    -If you don't then the user may override the implementation.
    -
    -
    -Note that these are nicknames built into the `cl-launch` shell wrapper,
    -and not necessarily names of actual binary. You may control the mapping of
    -implementation nickname to actual binary pathname to call with an environment
    -variable. For a given implementation nickname, the environment variable will be
    -the capitalization of the given nickname.
    -Hence, variable `$SBCL` controls where to look for the `sbcl` implementation,
    -and variable `$CMUCL` controls where to look for the `cmucl` implementation.
    -If a binary is found with a matching pathname (using the standard unix `$PATH`
    -as required), then said implementation will be used, using proper command line
    -options, that may be overridden with an environment variable similar to the previous
    -but with `_OPTIONS` appended to its name.
    -Hence, `$CMUCL_OPTIONS` for `cmucl`, `$CLISP_OPTIONS` for `clisp`, etc.
    -Sensible defaults are provided for each implementation, so as to execute the
    -software in non-interactive mode, with debugger disabled, without reading
    -user-specific configuration files, etc.
    -
    -If you want to insist on using a given implementation with given options,
    -you may use option `--lisp` and `--wrap`, as follows:
    -
    -    --lisp 'sbcl clisp' --wrap '
    -        LISP= # do not allow the user to specify his implementation
    -        SBCL=/usr/bin/sbcl # not any experimental thing by the user
    -        SBCL_OPTIONS="--noinform --sysinit /dev/null --userinit /dev/null \
    -        --disable-debugger" # predictable Lisp state
    -        CLISP=/usr/bin/clisp # fall back on machines that lack SBCL
    -        CLISP_OPTIONS=" -norc --quiet --quiet"
    -        # configure ASDF:
    -        CL_SOURCE_REGISTRY=/usr/local/share/common-lisp/source//:
    -        # assuming precompiled fasls there:
    -        ASDF_OUTPUT_TRANSLATIONS=/my/cl/src:/my/fasl/cache:
    -        '
    -
    -If you dump an image, you need not unset the `LISP` variable, but you
    -might still want to override any user-specified `SBCL` and `SBCL_OPTIONS`
    -(or corresponding variables for your selected implementation) from what
    -the user may specify.
    -
    -Note that you can use option `--wrap "$(cat your_script)"`
    -to embed into your program a full fledged script from a file.
    -Your script may do arbitrary computations before the shell wrapper is run.
    -It may make some consistency checks and abort before to run Lisp.
    -Or it may analyze invocation arguments and make according adjustments
    -to Lisp implementation options. This can be useful for setting options
    -that cannot be set from the Lisp code, such the path to a runtime image,
    -interactive or non-interactive execution, size of heaps,
    -locale settings for source file encoding, etc.
    -
    -Reading the source code of `cl-launch` can be completely crazy.
    -You may have great fun understanding why things are how they are
    -and adding features without breaking anything! However,
    -adding support for a new CL implementation should be straightforward enough:
    -just search the sources for `clisp` or `sbcl` and mimic what I did for them.
    -Be sure to send me what will get your favorite Lisp flavor of the month rolling.
    -
    -
    -Limited clbuild support
    ------------------------
    -
    -`cl-launch` 2.12 and later support using `clbuild` as a wrapper
    -to configure your Lisp implementation, with option `--clbuild`
    -(which can be disabled with option `--no-clbuild` if it was enabled by default
    -in your `cl-launch` installation).
    -
    -Note that when you use `clbuild`, you can no longer override implementation
    -options with say `SBCL_OPTIONS`, as clbuild takes care of the options for you.
    -Any implementation banner will not be removed unless you instruct clbuild
    -to do so. Also, you cannot use clbuild with a non-executable image different
    -from `clbuild`'s, which precludes image dumping with `cmucl` or `allegro`
    -(`allegro` could probably be updated, but I don't have a recent licence
    -to test and develop).
    -
    -`clbuild` support is not fully tested at this point. Please report any bug.
    -
    -
    -Simple cl-launch scripts
    -------------------------
    -
    -In simple cases, you may create a Common Lisp shell script with `cl-launch`
    -without a script generation step, just because you'll spend a lot of time
    -editing the script and distributing it, and little time waiting for script
    -startup time anyway. This notably is a good idea if you're not spawning many
    -instances of the same version of a script on a given computer. If that's
    -what you want, you may use `cl-launch` as a script interpret the following way
    -(stripping leading spaces):
    -
    -    #!/path/to/cl-launch ...options...
    -
    -For instance, you may write the following script (stripping leading spaces):
    -
    -    #!/usr/bin/cl --entry main
    -    (defun main (argv)
    -      (format t "Hello, World!~%~S~%" argv))
    -
    -On a recent Linux kernel, the options may include spaces, parentheses, etc.,
    -provided they are quoted as in a shell script.
    -Also, using `-X` as your very first option and `--` as your last
    -will ensure that the script works even if its name starts with
    -a `(` or a `-`, in addition to working with older versions of `cl-launch`.
    -
    -Note however that Darwin (MacOS X) and other BSD kernels or old Linux kernels
    -don't like the `#!` interpreter to itself be interpreted.
    -On these operating system kernels, the system administrator must
    -compile and install a small shim written in C, `cl-shim.c`,
    -that will handle the proper script invocation.
    -
    -Most kernels have restrictions on how they handle arguments to a `#!` script,
    -that prevent e.g. using `/usr/bin/env` as a trampoline;
    -however, you may use the fully portable solution as follows,
    -where the `":" ;` ensures that the script should remain valid
    -bilingual shell and Lisp code:
    -
    -    #!/bin/sh
    -    ":" ; exec cl-launch -X -sp my-package -E main -- "$0" ${1+"$@"} || exit
    -
    -(Actually `"$@"` instead of `${1+"$@"}` should work just fine,
    -unless you have an antique shell.)
    -
    -Note that if you don't need Lisp code to be loaded from your script,
    -with everything happening in the build specification, then you may instead
    -use a simple `#!/bin/sh` shell script from which you:
    -
    -    exec /path/to/cl-launch -x ... -- "$@".
    -
    -Also, in case you can't rely on `cl-launch` being at a fixed path,
    -or if your shell and/or kernel combination doesn't support using `cl-launch`
    -as a script interpreter, then you may instead start your script
    -with the following lines:
    -
    -    #!/bin/sh
    -    ":" ; exec cl-launch -X -- "$0" "$@" || exit
    -    (format t "It works!~%")
    -
    -Note that a mainline Linux kernel only supports the recursive `#!`
    -implicit in `#!/usr/bin/cl-launch` since 2.6.27.9.
    -
    -
    -Dumping images
    ---------------
    -
    -You can dump an image (for static compilation and fast startup) with option
    -`--dump IMAGE` where `IMAGE` specifies
    -the path where the image will be dumped.
    -
    -If you use option `--include PATH` then the image will be loaded back from
    -that specified directory instead of the directory where you dumped it.
    -This is useful if you're preparing a script to be installed at another place
    -maybe on another computer.
    -
    -This option is currently supported on all CL implementations available
    -with `cl-launch`.
    -
    -As a limitation, `LispWorks` will print a banner on standard output,
    -unless you use the standalone executable option below.
    -
    -As another limitation, `ECL` will not be able to dump an image when running
    -from a previously dumped image (with `--image`). This is because of the
    -link model of ECL, whereby you'd need to be able to locate which object files
    -were used in linking the original image, keep track of these files,
    -and prepend the list of them to to the object files linked into the dump.
    -This is not conceptually impossible and patches are welcome.
    -However, we hope to support that someday with a real build system
    -that does it for you, such as XCVB.
    -
    -
    -
    -Standalone executables
    -----------------------
    -
    -You can create standalone executables with the option `--dump '!'`
    -(or by giving a `--dump` argument identical to the `--output` argument).
    -
    -This option is currently only supported with
    -`SBCL`, `ECL`, `CLISP`, `CMUCL`, `CCL` and `LispWorks` Professional.
    -Moreover `CLISP` has the issues below.
    -
    -`CLISP` standalone executables will react magically if invoked with options
    -such as `--clisp-help` or `--clisp-x '(sys::main-loop)'`.
    -That's a pretty far-fetched thing to hit by mistake, and
    -the `CLISP` maintainers consider it a feature (I don't).
    -Don't use such executables as `setuid`, and don't let untrusted users
    -control arguments given to such executables that are run with extra privileges.
    -
    -
    -cl-launch runtime API
    ----------------------
    -
    -`cl-launch` provides the following Lisp functions:
    -
    -Function `cl-launch:compile-and-load-file` takes as an argument
    -a source pathname designator, and keyword arguments
    -`force-recompile` (default `NIL`) and `verbose` (default `NIL`).
    -It will arrange to compile the specified source file if it is
    -explicitly requested, or if the file doesn't exist,
    -or if the fasl is not up-to-date.
    -It will compile and load with the specified verbosity.
    -It will take use `uiop:compile-file-pathname*` to determine the fasl pathname.
    -
    -The following variables and functions previously provided by `cl-launch`
    -have the following replacement from `ASDF` and `UIOP`:
    -
    -Variable `cl-launch:*arguments*`
    -is replaced by `uiop:*command-line-arguments*`.
    -
    -Function `cl-launch:getenv` is replaced by `uiop:getenv`.
    -
    -Function `cl-launch:load-system` is replaced by `asdf:load-system`.
    -
    -Function `cl-launch:quit` is replaced by `uiop:quit`
    -(beware: the lambda-list is slightly different).
    -
    -Additionally, environment variables `CL_LAUNCH_PID` and `CL_LAUNCH_FILE`
    -will be set to the process ID and the script invocation filename respectively.
    -
    -
    -Verbose output mode
    --------------------
    -
    -If the shell variable `CL_LAUNCH_VERBOSE` is exported and non-`nil`,
    -then `cl-launch` and the scripts it generates will produce
    -an abundance of output, display such things as the Lisp invocation command,
    -compiling and loading files with `:verbose t` and `:print t`, etc.
    -This is only useful for debugging `cl-launch` and/or your build process.
    -Option `--verbose` sets this variable, whereas option `--quiet` resets it.
    -
    -
    -Makefile examples
    ------------------
    -
    -    ### Automatically download of the current version of cl-launch if not present
    -    cl-launch.sh:
    -            wget -O cl-launch.sh http://fare.tunes.org/files/cl-launch/cl-launch.sh
    -            chmod a+x cl-launch.sh
    -
    -    ### Making a shell script executable from a simple Lisp file named foo.lisp
    -    foo.sh: cl-launch.sh foo.lisp
    -            ./cl-launch.sh --output foo.sh --file foo.lisp
    -
    -    ### A more complex example using all options.
    -    run-foo.sh: cl-launch.sh preamble.lisp
    -            ./cl-launch.sh --output run-foo.sh \
    -            --file preamble.lisp --system foo \
    -            --init "(foo:main uiop:*command-line-arguments*)" \
    -            --source-registry ${PREFIX}/cl-foo/systems: \
    -            --lisp "ccl sbcl" --wrap 'SBCL=/usr/local/bin/sbcl-no-unicode' \
    -            --no-include
    -
    -    ### An example with horrible nested makefile, shell and Lisp quoting
    -    hello:
    -            opera=wORlD ; ./cl-launch.sh --execute --init \
    -            "(format t \"~25R~A~A~%\" 6873049 #\\space '$$opera)"
    -
    -
    -Caveat Lispor
    --------------
    -
    -`cl-launch` begins evaluation of your Lisp software
    -in the `cl-user` package, or whichever package you specify.
    -By the time your initialization forms are evaluated,
    -the package may or may not have changed,
    -depending on the fine-grained semantics of `load`.
    -Be sure to use `in-package` if these things matter.
    -If you change the readtable, even weirder things may happen.
    -
    -There are lots of ways of making mistakes by improperly quoting things when
    -you write shell commands. `cl-launch` does the right thing,
    -but you still must be careful with the nested quoting mechanisms
    -of `make`, shell, and Lisp.
    -
    -Here is a simple example use of cl-launch to quickly compare the result of
    -a same computation on a variety of systems:
    -
    -    for l in sbcl cmucl clisp gcl ccl ; do
    -      ./cl-launch.sh --lisp $l --execute --init \
    -        '(format t "'$l' ~A~%" most-positive-fixnum)' ; done
    -
    -Internally, `cl-launch` includes many self-test functions.
    -You may for instance try (from a directory where it may create junk):
    -
    -    ./cl-launch.sh -l 'sbcl cmucl clisp gclcvs' -B tests
    -
    -Share and Enjoy!
    -
    -See our web page on:
    -        <http://www.cliki.net/cl-launch>
    -
    -Note: if this help is too long for you, you may scroll back, or use:
    -
    -        cl --more-help | less
    -


    -deployment
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-launchpad.html b/clones/lisp/www.cliki.net/cl-launchpad.html deleted file mode 100644 index 18d5ceef..00000000 --- a/clones/lisp/www.cliki.net/cl-launchpad.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-launchpad - - - - - - - -
    cl-launchpad
    cl-launchpad is a library for the launchpad.net web API

    Homepage: http://common-lisp.net/project/cl-launchpad/

    License: MIT

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-leb128.html b/clones/lisp/www.cliki.net/cl-leb128.html deleted file mode 100644 index 5f9397a0..00000000 --- a/clones/lisp/www.cliki.net/cl-leb128.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-leb128 - - - - - - - -
    cl-leb128
    Leb-128 data format implementation in Common Lisp.

    Repository: https://github.com/mahirvaylooj/cl-leb128


    -MIT-LICENSE
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-ledger.html b/clones/lisp/www.cliki.net/cl-ledger.html deleted file mode 100644 index 9b7bd05f..00000000 --- a/clones/lisp/www.cliki.net/cl-ledger.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-ledger - - - - - - - -
    cl-ledger
    CL-Ledger is a powerful, double-entry accounting system for Common Lisp. A port of the C++ based Ledger by the same author (John Wiegley).

    Source code: https://github.com/ledger/cl-ledger

    License: BSD


    -Business application
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-lex.html b/clones/lisp/www.cliki.net/cl-lex.html deleted file mode 100644 index 461d45cf..00000000 --- a/clones/lisp/www.cliki.net/cl-lex.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-lex - - - - - - - -
    cl-lex
    cl-lex is a set of Common Lisp macros for generating lexical analyzers automatically. Registers (including named registers) can be accessed by number or name in token generation code. The cl-ppcre regex library is used for implementing regular expressions. Lexers generated using cl-lex can be used with cl-yacc.

    Repository: https://github.com/djr7C4/cl-lex

    License: GPL

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-liballegro-nuklear.html b/clones/lisp/www.cliki.net/cl-liballegro-nuklear.html deleted file mode 100644 index 82738848..00000000 --- a/clones/lisp/www.cliki.net/cl-liballegro-nuklear.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-liballegro-nuklear - - - - - - - -
    cl-liballegro-nuklear
    CFFI wrapper for the Nuklear IM GUI library with liballegro backend, to be used with cl-liballegro.

    Repository: https://gitlab.com/lockie/cl-liballegro-nuklear

    License: MIT

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-liballegro.html b/clones/lisp/www.cliki.net/cl-liballegro.html deleted file mode 100644 index 93748921..00000000 --- a/clones/lisp/www.cliki.net/cl-liballegro.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-liballegro - - - - - - - -
    cl-liballegro
    CFFI interface and bindings to the Allegro 5 game programming library.

    Depends on: CFFI, trivial-garbage

    Source: https://github.com/resttime/cl-liballegro

    License: Allegro 5

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-libserialport.html b/clones/lisp/www.cliki.net/cl-libserialport.html deleted file mode 100644 index a6325346..00000000 --- a/clones/lisp/www.cliki.net/cl-libserialport.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-libserialport - - - - - - - -
    cl-libserialport
    cl-libserialport is a Common Lisp CFFI interface to the sigrok libserialport library, a cross-platform, minimal, C library for interfacing with serial ports.

    Repository: https://github.com/jetmonk/cl-libserialport

    Dependencies: babel, cffi

    Sigrok C-library home page: https://sigrok.org/wiki/Libserialport

    It allows listing of available serial ports, opening ports, blocking and non-blocking IO, and has an event listner. It's nice because the sigrok folks have done the tricky cross-platform stuff.

    License: MIT


    -protocol system programming
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-libsvm.html b/clones/lisp/www.cliki.net/cl-libsvm.html deleted file mode 100644 index f60b23ca..00000000 --- a/clones/lisp/www.cliki.net/cl-libsvm.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-libsvm - - - - - - - -
    cl-libsvm
    Common Lisp wrapper for the libsvm support vector machine machine learning library by Ravenpack and Gabor Melis.

    It can be found at https://github.com/melisgl/cl-libsvm.


    An alternative to cl-libsvm is cl-svm, which is implemented in pure lisp.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-libusb.html b/clones/lisp/www.cliki.net/cl-libusb.html deleted file mode 100644 index d5210dff..00000000 --- a/clones/lisp/www.cliki.net/cl-libusb.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-libusb - - - - - - - -
    cl-libusb
    cl-libusb provides an interface to libusb, a library that provides access to USB devices across many different operating systems.

    Homepage: https://github.com/soemraws/cl-libusb

    License: ???


    -Topics: system programming
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-libxml2.html b/clones/lisp/www.cliki.net/cl-libxml2.html deleted file mode 100644 index 47376f80..00000000 --- a/clones/lisp/www.cliki.net/cl-libxml2.html +++ /dev/null @@ -1,66 +0,0 @@ - - - - - CLiki: cl-libxml2 - - - - - - - -
    cl-libxml2
    cl-libxml2 is high-level wrapper around libxml2 and libxslt libraries. For details, read documentation.

    Features: -

      -
    • Interfaces for tree manipulation (like cxml-stp)
    • -
    • Interface for an HTML 4.0 non-verifying parser
    • -
    • Specific APIs to process HTML tree, especially serialization
    • -
    • -XPath API
    • -
    • XSLT API
    • -
    • Custom URL resolvers
    • -
    • XPath extension functions
    • -
    • XSLT extension elements
    • -
    • Translate libxml2 and libxslt errors to Lisp conditions
    • -
    • -iterate drivers for enumerate child nodes and etc.
    • -
    • Simple and compact syntax for generating XML (xfactory)
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-locale.html b/clones/lisp/www.cliki.net/cl-locale.html deleted file mode 100644 index 229a3a4f..00000000 --- a/clones/lisp/www.cliki.net/cl-locale.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-locale - - - - - - - -
    cl-locale
    cl-locale is a simple i18n (internationalization) library for Common Lisp.

    Homepage: https://github.com/fukamachi/cl-locale

    License: LLGPL

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-log.html b/clones/lisp/www.cliki.net/cl-log.html deleted file mode 100644 index 101fa89f..00000000 --- a/clones/lisp/www.cliki.net/cl-log.html +++ /dev/null @@ -1,61 +0,0 @@ - - - - - CLiki: cl-log - - - - - - - -
    cl-log
    CL-LOG is a general purpose logging utility, loosely modelled in some respects after Gary King's Log5.

    Typically, logging utilities only support the one, simple paradigm of formatting objects to a text-stream. Removing this restriction allows you to:

      -
    • log random objects instead of plain text, -
    • -
    • generate internationalized log messages, -
    • -
    • create specialised binary logs, -
    • -
    • base the test-suite of complex applications around logging. -
    • -
    -CL-LOG is released with an MIT-style license.

    Repository: https://github.com/nicklevine/cl-log

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-m4.html b/clones/lisp/www.cliki.net/cl-m4.html deleted file mode 100644 index 09f4893e..00000000 --- a/clones/lisp/www.cliki.net/cl-m4.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-m4 - - - - - - - -
    cl-m4
    cl-m4 is a complete M4 programming language implementation from scratch targeted at GNU M4 -compatibility.

    It has been created by Alexander Kahl from a branch of evol in order to reach a broader audience. One might ask, "why in hell do we need another implementation of this terrifying language?" - it is because generating an AST from M4 code is impossible and GNU M4 doesn't offer enough means of hooking up into macro evaluation, thus only a powerful CL version might enable one to convert M4 or re-utilize libraries like GNU Autoconf.

    Warning: Alpha stage!

    The link to the git repository is available from Github.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-magic-cad.html b/clones/lisp/www.cliki.net/cl-magic-cad.html deleted file mode 100644 index 990631d9..00000000 --- a/clones/lisp/www.cliki.net/cl-magic-cad.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-magic-cad - - - - - - - -
    cl-magic-cad
    cl-magic-cad is a set of tools to generate files in Calma GDS-II and MAGIC VLSI CAD design programs.

    Homepage: http://josephoswald.nfshost.com/magic-cad/summary.html

    License: ???


    -Topics: electronics
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-magick.html b/clones/lisp/www.cliki.net/cl-magick.html deleted file mode 100644 index 60d659d9..00000000 --- a/clones/lisp/www.cliki.net/cl-magick.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-magick - - - - - - - -
    cl-magick
    cl-magick is a set of lisp bindings for the ImageMagick graphics library, a comprehensive image manipulation library. It is useful for loading and manipulating almost any image format. The bindings are licensed under the MIT license, and the library itself is under a similar license held by the ImageMagick corporation.

    Warning! The headers it is based on are from '06, some imagemagick functions have changed. However, presumably ah2cl.lisp with which is was created with can make newer versions with newer headers. Wish it would allow me to hook into the variable names and such(get rid of camelcase, prefixes easier, wrote one that removed prefixes with a macrohook instead), though.. (ah2cl is included in cl-magick too.)

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-marc.html b/clones/lisp/www.cliki.net/cl-marc.html deleted file mode 100644 index 29ea21ca..00000000 --- a/clones/lisp/www.cliki.net/cl-marc.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-marc - - - - - - - -
    cl-marc
    Minimal support for reading MARC (ISO2709 / ANSI Z39.2) records.

    Depends on: cl-ppcre, cl-unicode, cl-interpol

    Repository: https://github.com/TreeRex/cl-marc

    License: Apache 2


    -data format, standards
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-markdown.html b/clones/lisp/www.cliki.net/cl-markdown.html deleted file mode 100644 index 118e2ed8..00000000 --- a/clones/lisp/www.cliki.net/cl-markdown.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-markdown - - - - - - - -
    cl-markdown
    CL-Markdown is a Common Lisp implementation of John Gruber's Markdown document format language.

    Depends on: metatilities-base (0.6.0), bind, cl-containers (0.11.5), dynamic-classes, anaphora, cl-ppcre

    Repository: https://github.com/gwkkwg/cl-markdown

    Author: Gary King


    -MIT-LICENSE
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-markup.html b/clones/lisp/www.cliki.net/cl-markup.html deleted file mode 100644 index 440207b7..00000000 --- a/clones/lisp/www.cliki.net/cl-markup.html +++ /dev/null @@ -1,182 +0,0 @@ - - - - - CLiki: cl-markup - - - - - - - -
    cl-markup
    CL-MARKUP - Modern HTML generator library for Common Lisp.

      -
    • Fast (even faster if you compile it) -
    • -
    • Safety -
    • -
    • Support multiple document types (markup, xml, html, xhtml) -
    • -
    • Output with doctype -
    • -
    • Direct output to stream -
    • -

    Homepage: https://github.com/arielnetworks/cl-markup

    License: LLGPL

    Some experiments:

    (defpackage :cl-markup-test (use :cl))
    -
    -(in-package :cl-markup-test)
    -
    -;; central feature is MARKUP:
    -
    -(markup (:p 123))
    -=> "<p>123</p>"
    -
    -;; MARKUP expects list arguments, atoms are being rejected
    -
    -(markup "abc")
    -=> The value "abc" is not of type LIST.
    -   [Condition of type TYPE-ERROR]
    -
    -;; arguments can be multiple lists
    -
    -(markup (:p 123) (:p 234))
    -=> "<p>123</p><p>234</p>"
    -
    -;; first element of list is used as tag, not bothering what type it is
    -;; and wether it smells like HTML
    -
    -(markup ("p" 123))
    -=> "<p>123</p>"
    -
    -(markup (p 123))
    -=> "<p>123</p>"
    -
    -(markup ('p 123))
    -=> "<'p>123</'p>" ; oops
    -
    -(markup (123 p))
    -=> error: The variable P is unbound.
    -   [Condition of type UNBOUND-VARIABLE]
    -
    -(markup (123 "p"))
    -=> "<123>p</123>"  ; !!
    -
    -;; whole HTML pages can be produced with cl-markup macros HTML, HTML5,
    -;; XHTML and XML.
    -
    -(html5 (:p 42))
    -=> "<!DOCTYPE html><html><p>42</p></html>"
    -
    -;; lisp expressions can be inserted everywhere except first position of list
    -
    -(markup (:p (concatenate 'string "1" "2" "3")))
    -=> "<p>123</p>"
    -
    -;; these expressions are considered good citizens when they produce
    -;; string results, else:
    -
    -(markup (:p (+ 100 20 3)))
    -=> The value 123 is not of type STRING.
    -   [Condition of type TYPE-ERROR]
    -
    -;; weird things seem to happen when combining snippets
    -
    -(let ((snip (markup (:p "abc"))))
    -  (markup (:div snip)))
    -=> "<div>&lt;p&gt;abc&lt;/p&gt;</div>" ; !!
    -
    -;; This is a feature called auto-escape and it provides correct
    -;; solutions for these kind of tasks:
    -
    -(markup (:p "1<3"))
    -=> "<p>1&lt;3</p>"
    -
    -(markup (:p "R&B"))
    -=> "<p>R&amp;B</p>"
    -
    -;; auto-escaping can be turned off like this
    -
    -(let* ((*auto-escape* nil)
    -       (snip (markup (:p "abc"))))
    -  (markup (:div snip)))
    -=> "<div><p>abc</p></div>"
    -
    -;; another way to shelter strings against greedy auto-escape
    -;; is wrapping them in a list
    -
    -(let ((snip (markup (:p "abc"))))
    -  (markup (:div (list snip))))
    -=> "<div><p>abc</p></div>"
    -
    -;; same result using backquote syntax
    -
    -(let ((snip (markup (:p "abc"))))
    -  (markup (:div `(,snip))))
    -=> "<div><p>abc</p></div>"
    -
    -;; and this can also be done with CL-MARKUPs RAW macro.  RAW sounds
    -;; like a kind of strange name for a list-wrapping feature.  Maybe the
    -;; name tries to express that this procedure treats the string
    -;; like the raw markup from which it evolved.
    -
    -(let ((snip (markup (:p "abc"))))
    -  (markup (:div (raw snip))))
    -=> "<div><p>abc</p></div>"
    -
    -;; and now for the best of all: it is possible to write cl macros
    -;; producing HTML snippets.
    -
    -(defmacro snip (name)
    -  `(markup (:p ,name)))
    -
    -(snip "foo")
    -=> "<p>foo</p>"
    -
    -;; It is save to handle string results.
    -
    -;; Trying to pass markup asks for trouble
    -
    -(defmacro snip-markup (name)
    -  `(:p ,name))
    -
    -(markup (snip-markup "foo"))
    -=> "<snip-markup>foo</snip-markup>" ;; oops
    -
    -;; MARKUP is a macro, it does not evaluate its arguments
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-marshal.html b/clones/lisp/www.cliki.net/cl-marshal.html deleted file mode 100644 index 88464fc1..00000000 --- a/clones/lisp/www.cliki.net/cl-marshal.html +++ /dev/null @@ -1,99 +0,0 @@ - - - - - CLiki: cl-marshal - - - - - - - -
    cl-marshal
    Simple and fast marshalling of all kinds of Lisp data structures. -Convert any object into a s-expression, put it on a stream an revive it from there. Only minimal changes required to make your CLOS objects serializable. Actually you only need to add 1 method per baseclass.

    Homepage: https://github.com/wlbr/cl-marshal

    Dependencies: none (except asdf)
    -License: MIT
    -Author: Michael Wolber

    Examples

    Serialization of simple data:

    -
    -$ (ms:marshal (list 1 2 3 "Foo" "Bar" (make-array '(3) :initial-contents '(a b c))))
    ---> (:PCODE 1
    -          (:LIST 1 1 2 3 (:SIMPLE-STRING 2 "Foo") (:SIMPLE-STRING 3 "Bar")
    -          (:ARRAY 4 (3) T (A B C))))   
    -
    -

    Deserialization:

    -
    -$ (ms:unmarshal '(:PCODE 1
    -      (:LIST 1 1 2 3 (:SIMPLE-STRING 2 "Foo") (:SIMPLE-STRING 3 "Bar")
    -      (:ARRAY 4 (3) T (A B C)))))
    ---> (1 2 3 "Foo" "Bar" #(A B C))
    -

    That means that a -

    (ms:unmarshal (ms:marshal myobject))
    -returns a deep clone of myobject.

    -

    Objects:A more complex example

    -
    -(defclass ship () 
    -   ((name :initform "" :initarg :name :accessor name)
    -    (dimensions :initform '(:width 0 :length 0) :initarg :dimensions :accessor dimensions)
    -    (course :initform 0 :initarg :course :accessor course)
    -    (cruise :initform 0 :initarg :cruise :accessor cruise) ; shall be transient
    -    (dinghy :initform NIL :initarg :dinghy :accessor dinghy :initarg :dinghy)) ; another ship -> ref
    -   (:documentation "A democlass. Some 'persistant slots', one transient. 
    -  Some numbers, string, lists and object references."))
    -
    -
    -(defparameter ark (make-instance 'ship :name "Ark" :course 360 
    -                            :dimensions '(:width 30 :length 90)))
    -
    -Nothing happens if we try to serialize this, as one important piece is missing: -
    -$ (ms:marshal ark)
    ---> (:PCODE 1 NIL)
    -

    For your classes you need to add one special method:

    ms:class-persistant-slots
    There you are going to define the slots that shall be serialized, so that you can have persistant and transient slots in your class. -
    -(defmethod ms:class-persistant-slots ((self ship))
    -  '(name dimensions course dinghy))
    -
    -Note that the slot cruise is not listed. Therefore it will not be serialized.

    -$ (ms:marshal ark)
    --->  (:PCODE 1
    -            (:OBJECT 1 SHIP (:SIMPLE-STRING 2 "Ark") (:LIST 3 :WIDTH 30 :LENGTH 90) 360
    -            (:LIST 4)))
    -

    Fine. Try a

    (ms:unmarshal (ms:marshal ark))
    and you will get a clone of the object ark.

    The whole thing works with arrays, hashtables, lists, classes/objects, subclasses incl. multiple inheritance, all of this nested and with circular references. See README.md for more detailed examples.

    serialization wire format

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-match.html b/clones/lisp/www.cliki.net/cl-match.html deleted file mode 100644 index 07a53ade..00000000 --- a/clones/lisp/www.cliki.net/cl-match.html +++ /dev/null @@ -1,73 +0,0 @@ - - - - - CLiki: cl-match - - - - - - - -
    cl-match
    [unmaintained, optima recommended] extended ML-style pattern matching library

    cl-match is now unmaintained. We recommend optima instead for pattern-matching.

    As far as I can tell, this library is dead. Links to the author's home page from the project page are busted, and the mailing list is morbid. The library was written using the author's idiosyncratic standard lisp library, so it will be difficult for an outsider to maintain. Suggest staying away.

    -An important bug fix (against 0.1.8) that prevented matching of arrays of length 1 is available at https://github.com/tonyg/cl-match.

      -
    • Multiple values are supported. -
    • -
    • Multiple occurances of the same variable name are implicitly tested for (EQL) equality. -
    • -
    • Alternative patterns can have their own individual guards. -
    • -
    • New patterns can be defined by the user. -
    • -
    -
    -obsolete
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-mathstats.html b/clones/lisp/www.cliki.net/cl-mathstats.html deleted file mode 100644 index 680a6dde..00000000 --- a/clones/lisp/www.cliki.net/cl-mathstats.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-mathstats - - - - - - - -
    cl-mathstats
    CL-MathStats is a set of miscellaneous Common Lisp mathematics and statistics utilities.

    Documentation on Quickdocks

    GitHub repository

    Its home page is at http://common-lisp.net/project/cl-mathstats and it is just a placeholder

    CL-MathStats is one of Gary King's Common Lisp packages. Blame him!

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-maxminddb.html b/clones/lisp/www.cliki.net/cl-maxminddb.html deleted file mode 100644 index fda155be..00000000 --- a/clones/lisp/www.cliki.net/cl-maxminddb.html +++ /dev/null @@ -1,70 +0,0 @@ - - - - - CLiki: cl-maxminddb - - - - - - - -
    cl-maxminddb
    CL-MAXMINDDB is a file format library for reading MaxMind DB databases.

    sources on github cl-maxminddb

    -> (with-mmdb (mmdb "/var/lib/GeoIP/GeoLite2-City.mmdb")
    -    (mmdb-query mmdb "8.8.8.8"))
    -
    -(("continent" ("code" . "NA") ("geoname_id" . 6255149)
    -  ("names" ("de" . "Nordamerika") ("en" . "North America")
    -   ("es" . "Norteamérica") ("fr" . "Amérique du Nord") ("ja" . "北アメリカ")
    -   ("pt-BR" . "América do Norte") ("ru" . "Северная Америка")
    -   ("zh-CN" . "北美洲")))
    - ("country" ("geoname_id" . 6252001) ("iso_code" . "US")
    -  ("names" ("de" . "USA") ("en" . "United States") ("es" . "Estados Unidos")
    -   ("fr" . "États-Unis") ("ja" . "アメリカ合衆国") ("pt-BR" . "Estados Unidos")
    -   ("ru" . "США") ("zh-CN" . "美国")))
    - ("location" ("accuracy_radius" . 1000) ("latitude" . 37.751d0)
    -  ("longitude" . -97.822d0) ("time_zone" . "America/Chicago"))
    - ("registered_country" ("geoname_id" . 6252001) ("iso_code" . "US")
    -  ("names" ("de" . "USA") ("en" . "United States") ("es" . "Estados Unidos")
    -   ("fr" . "États-Unis") ("ja" . "アメリカ合衆国") ("pt-BR" . "Estados Unidos")
    -   ("ru" . "США") ("zh-CN" . "美国"))))
    -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-mechanize.html b/clones/lisp/www.cliki.net/cl-mechanize.html deleted file mode 100644 index 044c95c4..00000000 --- a/clones/lisp/www.cliki.net/cl-mechanize.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-mechanize - - - - - - - -
    cl-mechanize
    cl-mechanize is a port of the WWW::Mechanize Perl module for stateful programmatic web browsing, used for automating interaction with websites.

    Depends on: puri, drakma, closure-html, cxml-stp, cl-ppcre

    Homepage: https://github.com/joachifm/cl-mechanize

    Fork: https://github.com/ilook/cl-mechanize

    License: BSD 2-Clause


    -Topics: HTTP client
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-menusystem.html b/clones/lisp/www.cliki.net/cl-menusystem.html deleted file mode 100644 index 3b2b0a55..00000000 --- a/clones/lisp/www.cliki.net/cl-menusystem.html +++ /dev/null @@ -1,76 +0,0 @@ - - - - - CLiki: cl-menusystem - - - - - - - -
    cl-menusystem
    cl-menusystem is a library for making pretty menus for controlling an application and editing the multitude of special variables which invariably exist to control an app's settings. This page reflects the 2003-09-19 release. Also see the common-lisp.net project page.

    Development is at gitlab.common-lisp.net, and a new release will accompany the first release of system-menu.

    There's an example page there which shows a simple menu definition and an -example of using it in practice.

    Features: -

      -
    • -CLOS-based and should be suitable for multiple backends (right now only a -simple terminal backend exists) -
    • -
    • Allows menu-based control of programs, which makes it much easier to give -demos -
    • -
    • Uses restarts for all exits from a menu, which allows exits to a prior -level of menu that's not the immediate parent -
    • -
    • Uses ASDF -
    • -

    Other stuff: -I've put it in the public domain, just so it can be used as broadly as -possible.

    To be done: -

      -
    • Continue to flesh out preferences editing for more types of settings -
    • -
    • -CLIM backend -
    • -


    -console configuration
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-migrations.html b/clones/lisp/www.cliki.net/cl-migrations.html deleted file mode 100644 index ed34f144..00000000 --- a/clones/lisp/www.cliki.net/cl-migrations.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-migrations - - - - - - - -
    cl-migrations
    cl-migrations is a port of Ruby on Rails migrations feature to CL. It provides a simple way to version-control your database changes. As a web project grows, it's database will go through numerous structural changes, but if things go wrong with a new version, there should be a proper way to disable new changes to database and bring it back to a previously known good position. Rails has a very simple and neat way of doing this, so I have ported the feature to CL.

    Homepage: http://common-lisp.net/project/cl-migrations/.

    Author: Vamsee Kanakala

    Licence: MIT


    -database SQL
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-migratum.html b/clones/lisp/www.cliki.net/cl-migratum.html deleted file mode 100644 index be142ea8..00000000 --- a/clones/lisp/www.cliki.net/cl-migratum.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-migratum - - - - - - - -
    cl-migratum
    Database schema migration system for Common Lisp.

    Repository: https://github.com/dnaeon/cl-migratum

    License: BSD 2-Clause


    -SQL CL-DBI
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-mill.html b/clones/lisp/www.cliki.net/cl-mill.html deleted file mode 100644 index f2cdc339..00000000 --- a/clones/lisp/www.cliki.net/cl-mill.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-mill - - - - - - - -
    cl-mill
    CL-MILL is a CNC milling application generating G-Code, built in Common Lisp.

    Homepage: https://github.com/wesen/cl-mill

    License: ???


    -Topics: CAD
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-mime.html b/clones/lisp/www.cliki.net/cl-mime.html deleted file mode 100644 index 9a09a60a..00000000 --- a/clones/lisp/www.cliki.net/cl-mime.html +++ /dev/null @@ -1,63 +0,0 @@ - - - - - CLiki: CL-MIME - - - - - - - -
    CL-MIME
    CL-MIME is a library for constructing and manipulating MIME objects in Common Lisp. It supports creating MIME content for emails or web pages and can also parse existing MIME content to create MIME objects for manipulation. Supports (semi-)automatic encoding and decoding of MIME parts in quoted-printable or base64 form.

    This package requires use of cl-qprint, cl-base64 and cl-ppcre.

    Homepage: http://www.bobturf.org/software/cl-mime/

    CL-MIME was written by Robert Marlow

    Download CL-MIME from http://www.bobturf.org/software/cl-mime/

    Usage example

    Small example to parse Thunderbird messages in mbox format:

    (defun thunderbird-mbox-msg-to-text (email) - (with-open-file (msg email :direction :input) - (with-open-file (out (concatenate 'string (pathname-name x) ".txt") :direction :output :if-exists :supersede) - (let ((mime (parse-mime msg))) - (case (type-of mime) - (text-mime (print (content mime) out)) - (multipart-mime - (dolist (part (content mime)) - (if (and (string-equal (content-type part) "text") - (string-equal (content-subtype part) "plain")) - (print-mime out part nil nil)))) - (mime (print "mime")) ;? - (t (print "other"))))))) ;?

    The MIME class is the mixin which TEXT-MIME and MULTIPART-MIME inherit from. Most plain text messages will be of type TEXT-MIME and you can read the body with the CONTENT function. MULTIPART-MIME messages have multiple parts, you will have to iterate over them inspecting the type and subtype of each and choose what to do with them. In the example above, I was extracting the plain text version of html emails. See the wikipedia page on MIME and help yourself.

    Maintained fork

    https://github.com/40ants/cl-mime

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-mock.html b/clones/lisp/www.cliki.net/cl-mock.html deleted file mode 100644 index 9f0ff884..00000000 --- a/clones/lisp/www.cliki.net/cl-mock.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-mock - - - - - - - -
    cl-mock
    cl-mock (in quicklisp) is a small stubbing and mocking library for Common Lisp. Used when specified functions in a test should not be computed but should instead return a provided constant value.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-modlisp.html b/clones/lisp/www.cliki.net/cl-modlisp.html deleted file mode 100644 index 97eae848..00000000 --- a/clones/lisp/www.cliki.net/cl-modlisp.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-modlisp - - - - - - - -
    cl-modlisp
    cl-modlisp is a Web library that implements a Common Lisp interface to Marc Battyani's mod_lisp apache module. cl-modlisp works with Allegro Common Lisp (ACL), SBCL, LispWorks, and CMU Common Lisp (CMUCL).

    It requires mod_lisp, Apache 1.3, kmrcl, and asdf.

    There is documentation on cl-modlisp's home page.


    -CGI
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-moneris.html b/clones/lisp/www.cliki.net/cl-moneris.html deleted file mode 100644 index 4685f514..00000000 --- a/clones/lisp/www.cliki.net/cl-moneris.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-moneris - - - - - - - -
    cl-moneris
    cl-moneris provides access to the Moneris payment processing web API.

    -Homepage: https://github.com/vsedach/cl-moneris

    License: ISC (BSD)

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-mongo.html b/clones/lisp/www.cliki.net/cl-mongo.html deleted file mode 100644 index 859a9317..00000000 --- a/clones/lisp/www.cliki.net/cl-mongo.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-mongo - - - - - - - -
    cl-mongo
    cl-mongo is an interface to the MongoDB document database.

    Author: Fons Haffmans

    Licence: MIT

    Homepage: http://github.com/fons/cl-mongo


    StructuredStorage

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-mongrel2.html b/clones/lisp/www.cliki.net/cl-mongrel2.html deleted file mode 100644 index ae5e2ea5..00000000 --- a/clones/lisp/www.cliki.net/cl-mongrel2.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-mongrel2 - - - - - - - -
    cl-mongrel2
    cl-mongrel2 is an interface to the mongrel2 web-server.

    Homepage: https://github.com/vseloved/cl-mongrel2

    License: BSD


    -Topics: CGI

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-mop.html b/clones/lisp/www.cliki.net/cl-mop.html deleted file mode 100644 index 95850087..00000000 --- a/clones/lisp/www.cliki.net/cl-mop.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-mop - - - - - - - -
    cl-mop
    Basic tools to make dealing with CLOS easier and portable

    The goal of this library is to provide portable Common Lisp facilities for working with CLOS instances. This first release is minimal because I'm following my usual MO of only implementing things as I need them. There is therefore no call for me to go beyond slot-names, map-slots, shallow-copy and deep-copy yet (and I've used deep-copy in exactly one place so far, so be wary of that one; the others have been at least slightly battle-tested).

    Github page here, which includes use and project documentation in markdown format.

    Utilities CLOS

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-mpi.html b/clones/lisp/www.cliki.net/cl-mpi.html deleted file mode 100644 index 524e9265..00000000 --- a/clones/lisp/www.cliki.net/cl-mpi.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-mpi - - - - - - - -
    cl-mpi
    CL-MPI provides portable, CFFI-based Common Lisp bindings for the Message-Passing Interface (MPI). It was written by Marco Heisig.

    CL-MPI enables parallel programming in Common Lisp using a message-passing model on either a distributed cluster of machines, or a single multicore machine. It has been successfully tested with SBCL, CCL and ECL, and fot the MPI implementations MPICH, OpenMPI and IntelMPI.

    CL-MPI can also be used to provide "true" multiprocessing for some Common Lisp implementations which have no native threading capabilities.

    Homepage: http://github.com/marcoheisig/cl-mpi

    License: MIT

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-mssql.html b/clones/lisp/www.cliki.net/cl-mssql.html deleted file mode 100644 index 59831198..00000000 --- a/clones/lisp/www.cliki.net/cl-mssql.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-mssql - - - - - - - -
    cl-mssql
    cl-mssql is an interface to Microsoft SQL Server databases.

    Depends on: FreeTDS, CFFI, iterate, garbage-pools, parse-number

    Repository: https://github.com/archimag/cl-mssql

    License: LLGPL

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-muproc.html b/clones/lisp/www.cliki.net/cl-muproc.html deleted file mode 100644 index 39b287bf..00000000 --- a/clones/lisp/www.cliki.net/cl-muproc.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: cl-muproc - - - - - - - -
    cl-muproc
    CL-MUPROC is an Erlang-inspired concurrency library available under the BSD license for Lispworks, OpenMCL, SBCL, CMUCL, and ACL.

    On GitHub is a fork that ported the library to ECL: https://github.com/ska80/cl-muproc

    -


    -thread concurrency actors
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-mw.html b/clones/lisp/www.cliki.net/cl-mw.html deleted file mode 100644 index 1951b289..00000000 --- a/clones/lisp/www.cliki.net/cl-mw.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-mw - - - - - - - -
    cl-mw
    CL-MW is a library for rapid authoring of master/slave style distributed algorithms whose design promotes easy integration with high throughput batch processing systems like Condor, PBS, etc.

    Live sources, official release, manuals, a mini tutorial, etc, may be found at its home page.

    It was written by Peter Keller.


    -Apache 2
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-mysql.html b/clones/lisp/www.cliki.net/cl-mysql.html deleted file mode 100644 index 41b761ab..00000000 --- a/clones/lisp/www.cliki.net/cl-mysql.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-mysql - - - - - - - -
    cl-mysql
    cl-mysql is an interface to MySQL SQL databases. Unlike CLSQL, it supports stored procedures and multiple statements/result sets.

    Homepage: http://www.hackinghat.com/index.php/cl-mysql/

    License: MIT

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-naive-store.html b/clones/lisp/www.cliki.net/cl-naive-store.html deleted file mode 100644 index 8d7662e6..00000000 --- a/clones/lisp/www.cliki.net/cl-naive-store.html +++ /dev/null @@ -1,61 +0,0 @@ - - - - - CLiki: cl-naive-store - - - - - - - -
    cl-naive-store
    cl-naive-store is a database (document store to be more precise) which is persisted, in memory (lazy loading), indexed and written completely in Common Lisp.

    The naive bit comes from the fact that data is persisted as plists in files to make them human and machine readable, also there is no rocket science code.

    The store was designed to be customisable, just about anything can be customised, have a look at the implementation api to get an idea of what is possible.

    -Licence: MIT

    Homepage: https://gitlab.com/Harag/cl-naive-store

    Features

    Persisted

    Data can be written to file per document update or as a batch update.

    In memory

    Data is loaded into memory for querying and lookups, that makes them fast.

    Lazy Loading

    Data is only loaded when needed and not before. If you use the store - correctly it means that you will only have the data that users - requested up to that point in memory.

    Indexed

    Documents and key values can be indexed, and a user can specify their - own additional indexes as well. Queries and lookups can both be done using - indexes which speeds up the retrieval of data considerably.

    Sharding

    Sharding is the breaking down of files into smaller files, in the case - of naive-store that means that instead of one file per collection there - could be many.

    Sharding is done based on the actual data in collections. The user - specifies which elements of a document it wants to use for sharding on - a collection. If none is specified no sharding is done.

    -


    StructuredStorage

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-namegen.html b/clones/lisp/www.cliki.net/cl-namegen.html deleted file mode 100644 index 514d0d23..00000000 --- a/clones/lisp/www.cliki.net/cl-namegen.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-namegen - - - - - - - -
    cl-namegen
    cl-namegen reads wordlists and produces similar words, i.e. "name generation". Useful for games, mainly.


    It's written by John Connors and can be found at http://www.yagc.ndo.co.uk/code/cl-namegen/

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-ncurses.html b/clones/lisp/www.cliki.net/cl-ncurses.html deleted file mode 100644 index 09bac609..00000000 --- a/clones/lisp/www.cliki.net/cl-ncurses.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: CL-Ncurses - - - - - - - -
    CL-Ncurses
    An interface to the ncurses and pdcurses console user interface libraries for Common Lisp.

    Bug-reports and tests very appreciated.

    You can visit CL-Ncurses's home page for more details and release notes.

    I'll mention that ncurses is a version of curses, just so that people who search for "curses" will find this page. For the same reason, let me mention that this package could have been named cl-curses (especially since it's no longer ncurses-specific).

    cl-ncurses uses UFFI which is much less portable than CFFI, for foreign bindings. Consider cl-charms or croatoan which provide CFFI bindings to curses.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-neo4j.html b/clones/lisp/www.cliki.net/cl-neo4j.html deleted file mode 100644 index 9043bbaf..00000000 --- a/clones/lisp/www.cliki.net/cl-neo4j.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-neo4j - - - - - - - -
    cl-neo4j
    cl-neo4j is an interface to the Neo4j graph database. It uses the Neo4j REST API.

    Authors: Kevin Raison, Mikhail Novikov

    License: MIT

    Homepage: http//commonlisp.net/project/cl-neo4j

    Newest code: http://github.com/kraison/cl-neo4j/

    Stable release: -http://chatsubo.net/~raison/cl-neo4j_0.1.tar.gz


    StructuredStorage

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-net-snmp.html b/clones/lisp/www.cliki.net/cl-net-snmp.html deleted file mode 100644 index da9a7d0a..00000000 --- a/clones/lisp/www.cliki.net/cl-net-snmp.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-net-snmp - - - - - - - -
    cl-net-snmp
    cl-net-snmp is an SNMP library for Common Lisp.

    Project page on common-lisp.net, and SourceForge.

    Contact Chun Tian (binghe) if you need any help on using this package.

    Latest source code is on GitHub.

    Dependency:

    ironclad, usocket

    Sub-projects:

    * SNMP: core SNMP package

    * LispWorks-UDP: UDP networking for LispWorks (merged into usocket 0.5)

    * Usocket-UDP: UDP patch for USOCKET (merged into usocket 0.5)

    * ASN.1: Standalone ASN.1 utility and compiler (merged into snmp 6.0)

    Release History

    * [2011-3-19] SNMP 6.0 (include ASN.1)

    * [2008-11-16] SNMP_5.19, ASN.1_4.14, USOCKET-UDP_2.4

    * [2008-10-28] SNMP_5.16, ASN.1_4.12, USOCKET-UDP_2.3

    * [2008-9-24] SNMP_5.5, ASN.1_4.5, LispWorks-UDP_3.2, USOCKET-UDP_2.2

    * [2008-9-8] SNMP_5.0, ASN.1_4.0, LispWorks-UDP_3.1, USOCKET-UDP_2.1

    * [2008-7-21] SNMP_3.0, ASN.1_2.3, LispWorks-UDP_2.1, USOCKET-UDP_1.2


    -Topics: networking
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-netstrings.html b/clones/lisp/www.cliki.net/cl-netstrings.html deleted file mode 100644 index 6963dae7..00000000 --- a/clones/lisp/www.cliki.net/cl-netstrings.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-netstrings - - - - - - - -
    cl-netstrings
    cl-netstrings is a tiny CL library for handling netstrings. It was written by Daniel Janus.


    -protocol
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-notify.html b/clones/lisp/www.cliki.net/cl-notify.html deleted file mode 100644 index 7ed955dd..00000000 --- a/clones/lisp/www.cliki.net/cl-notify.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-notify - - - - - - - -
    cl-notify
    cl-notify is a set of bindings for the libnotify desktop notification library.

    Source repository: git://repo.or.cz/cl-notify.git

    License: GPLv3


    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-ntriples.html b/clones/lisp/www.cliki.net/cl-ntriples.html deleted file mode 100644 index d8562c20..00000000 --- a/clones/lisp/www.cliki.net/cl-ntriples.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-ntriples - - - - - - - -
    cl-ntriples
    CL-NTRIPLES provides a simple parser for the N-Triples data format as defined by the W3C for storing RDF/Semantic information. N-Triples is a line-based, plain text format for encoding an RDF graph.


    -Semantic Web, BSD License
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-num-utils.html b/clones/lisp/www.cliki.net/cl-num-utils.html deleted file mode 100644 index e4557313..00000000 --- a/clones/lisp/www.cliki.net/cl-num-utils.html +++ /dev/null @@ -1,61 +0,0 @@ - - - - - CLiki: CL-NUM-UTILS - - - - - - - -
    CL-NUM-UTILS
    Simple numerical functions, including intervals, Chebyshev polynomials and univariate rootfinding

    This library implements simple numerical functions for Common Lisp, including -

      -
    • “num=”, a comparison operator for floats
    • -
    • simple arithmeric functions, like “sum” and “l2norm”
    • -
    • elementwise operations for arrays
    • -
    • intervals
    • -
    • special matrices and shorthand for their input
    • -
    • sample statistics
    • -
    • Chebyshev polynomials
    • -
    • univariate rootfinding
    • -

    All the functionality has corresponding unit tests.

    There are symbol conflicts with alexandria because of the need for certain statistical functions, e.g. mean, median, to operate on both sequences and on distribution models.

    The successor of cl-numlib, superseded by numerical-utilities

    Homepage: GitHub

    License: MS-PL

    Topics: mathematics

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-oauth.html b/clones/lisp/www.cliki.net/cl-oauth.html deleted file mode 100644 index d1ebb6d5..00000000 --- a/clones/lisp/www.cliki.net/cl-oauth.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-oauth - - - - - - - -
    cl-oauth
    cl-oauth is an implementation of the OAuth 1.0a API authorization protocol.

    Homepage: https://github.com/skypher/cl-oauth

    License: LLGPL


    -Topics: networking web API
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-octave.html b/clones/lisp/www.cliki.net/cl-octave.html deleted file mode 100644 index 7de64856..00000000 --- a/clones/lisp/www.cliki.net/cl-octave.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-octave - - - - - - - -
    cl-octave
    An FFI to the Octave linear algebra language (CMUCL-only).

    Home page (with 0.1 download): https://common-lisp.net/project/cl-octave/

    Mini-fork: https://github.com/MBcode/cl-kme/blob/master/src/cl-octave.lisp

    See also: ext-octave.lisp, an Octave interface written for CCL.


    -BSD License
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-ode.html b/clones/lisp/www.cliki.net/cl-ode.html deleted file mode 100644 index 7310c4ce..00000000 --- a/clones/lisp/www.cliki.net/cl-ode.html +++ /dev/null @@ -1,60 +0,0 @@ - - - - - CLiki: cl-ode - - - - - - - -
    cl-ode
    CL-ODE is a CFFI interface to the Open Dynamics Engine. It was written by Thomas Atkins.

    ODE is an open source, high performance library for simulating rigid body dynamics. It is fully featured, stable, mature and platform independent with an easy to use C/C++ API. It has advanced joint types and integrated collision detection with friction. ODE is useful for simulating vehicles, objects in virtual reality environments and virtual creatures. It is currently used in many computer games, 3D authoring tools and simulation tools.

    Other (more recent) CL-ODE packages

    -
    -game
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-one-time-passwords.html b/clones/lisp/www.cliki.net/cl-one-time-passwords.html deleted file mode 100644 index 4d7001c2..00000000 --- a/clones/lisp/www.cliki.net/cl-one-time-passwords.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-one-time-passwords - - - - - - - -
    cl-one-time-passwords
    cl-one-time-passwords implements HOTP (RFC 4226) and TOTP (RFC 6238) in Common Lisp.

    Repository: https://github.com/bhyde/cl-one-time-passwords

    License: Apache 2

    Warning: "This code has not yet been used in production."


    -Cryptography
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-op.html b/clones/lisp/www.cliki.net/cl-op.html deleted file mode 100644 index bb6eb26c..00000000 --- a/clones/lisp/www.cliki.net/cl-op.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-op - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-openal.html b/clones/lisp/www.cliki.net/cl-openal.html deleted file mode 100644 index c6a23498..00000000 --- a/clones/lisp/www.cliki.net/cl-openal.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-openal - - - - - - - -
    cl-openal
    cl-openal is a basic set of bindings to the OpenAL audio library. AL, ALC, and ALUT all have bindings written for them.

    License: Public Domain

    Homepage: https://github.com/zkat/cl-openal

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-openbox.html b/clones/lisp/www.cliki.net/cl-openbox.html deleted file mode 100644 index d5303ecf..00000000 --- a/clones/lisp/www.cliki.net/cl-openbox.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-openbox - - - - - - - -
    cl-openbox
    cl-openbox provides and interface to the box.net file storage service web API.

    Homepage: https://github.com/stassats/cl-openbox

    License: public domain -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-opencalais.html b/clones/lisp/www.cliki.net/cl-opencalais.html deleted file mode 100644 index 7d2b3844..00000000 --- a/clones/lisp/www.cliki.net/cl-opencalais.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-opencalais - - - - - - - -
    cl-opencalais
    cl-opencalais is a wrapper for the Thomson Reuters Calais web API. It depends on Drakma to make HTTP requests.

    The Thomson Reuters Calais Web Service takes unstructured text and returns Resource Description Framework (RDF) formatted results identifying entities, facts and events within the content.

    Homepage: https://github.com/RobBlackwell/cl-opencalais

    License: BSD

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-opengl.html b/clones/lisp/www.cliki.net/cl-opengl.html deleted file mode 100644 index f05b12ac..00000000 --- a/clones/lisp/www.cliki.net/cl-opengl.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-opengl - - - - - - - -
    cl-opengl
    cl-opengl is a set of CFFI bindings to the OpenGL, GLU and GLUT.

    See its project page at common-lisp.net.


    I had some problems on this install on SBCL under OS X: After some searching, I am of the opinion that OS X does not come with a version of GLUT. Further, installing GLUT from MacPorts installs GLUT, not OpenGLUT, which is actually the version that these bindings talk to. So I had to manually download, build and install OpenGLUT, which was an uneventful success, then create symlinks of the proper GLUT names (libglut.dylib and libglut.a) to the corresponding OpenGLUT libraries so the proper files can be found by name. I hope this helps. --Zach Smith

    Mac OS X does come with GLUT, but it's a framework not a library. I don't know what changes you'd need to make for cl-opengl, but for a C program, it's a matter of #include'ing instead of the standard , and linking with -framework GLUT -framework OpenGL instead of the standard -lGL -lGLU -lglut. -- Keith Bauer

    There's a version of cl-opengl that works on osx here: http://www.esden.net/content/lisp/cl-mac-native-opengl-thomas-0.1.tar.bz2

    Current cl-opengl/cl-glut should work on osx, with the limitation that GL/glut code (possibly including loading the libraries) can only be run from the first thread.

    cl-opengl on github: http://github.com/3b/cl-opengl


    lispbuilder-sdl is an alternative to the glut binding for some purposes (i.e. games).

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-openid.html b/clones/lisp/www.cliki.net/cl-openid.html deleted file mode 100644 index e7594f36..00000000 --- a/clones/lisp/www.cliki.net/cl-openid.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - CLiki: cl-openid - - - - - - - -
    cl-openid
    Cl-OpenID is an implementation of OpenID protocol in Common Lisp. It -implements OpenID Authentication 2.0 standard and is compatible with -OpenID Authentication 1.1. Both Relying Party (formerly called OpenID -Consumer), and OpenID Provider are implemented.

    License: LLGPL


    -networking web API
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-opossum.html b/clones/lisp/www.cliki.net/cl-opossum.html deleted file mode 100644 index 5a5af889..00000000 --- a/clones/lisp/www.cliki.net/cl-opossum.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-opossum - - - - - - - -
    cl-opossum
    CL-Opossum is a Common Lisp implementation of a Parsing Expression Grammar parser generator. It boostraps itself. Memoization is supported. If you like cl-peg and metapeg but have seen their shortcomings, this is for you.

    Homepage: http://primaldual.de/cl-opossum

    Source repository: http://repo.or.cz/w/cl-opossum.git

    License: LLGPL

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-pack.html b/clones/lisp/www.cliki.net/cl-pack.html deleted file mode 100644 index 44d38d8c..00000000 --- a/clones/lisp/www.cliki.net/cl-pack.html +++ /dev/null @@ -1,61 +0,0 @@ - - - - - CLiki: cl-pack - - - - - - - -
    cl-pack
    CL-PACK supplies Perl/PHP/Ruby/Python compatible pack() and unpack() functions to allow easy use of binary format protocols and files with the above mentioned languages and C. CL-PACK was released by Dan Ballard (http://mindstab.net/wordpress/archives/tag/cl-pack) in August 2009.

    git: github.com/dballard/cl-pack

    The purpose of pack is to take native Lisp data like numbers, floats, and strings and encode it in a safe binary format in string that can then be written to a file or exchanged with another program while unpack can extract data from binary formats and protocols.

    cl-pack has nearly full support for all features offered by perl's pack. It boasts full support for most data types and formating rules from numbers and string to formating rules and grouping and templates. cl-pack also supports endian safe floats as outlined by ruby. cl-pack is supports ASDF so as to make it easy to integrate into your existing system.

    Example: -

    -CL-PACK> (pack "VgA*c*" #x41424344 161.99 " a string " 69 70 71)
    -"DCBAC!ýq a string EFG"
    -
    -CL-PACK> (unpack "B8H2Ng" "ABCDEFC!ýq")
    -"01000001"
    -"42"
    -1128547654
    -161.99
    -

    Documentation is currently a bit sparse, but is contained in cl-pack.lisp. Additionally, a good overview of pack and unpack functions can be seen at http://perldoc.perl.org/functions/pack.html.

    Nearly every feature except a few esoteric ones are supported, check the documentation inside cl-pack.lisp if in doubt and if a feature you need isn't currently supported feel free to contact me and I'll see if I can add it.

    Note: I think this release is about as feature complete as I feel I need to get at the moment so I'm pushing it out.

    Cavets: cl-pack was developed on an x86 running Ubuntu with SBCL. It should be endian safe where required and conform to host CPU endianness where required but I haven't been able to test on anything but x86. I would hope that it would work with most Lisps out there. Please feel free to get ahold of me if you have issues that need fixing.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-package-aliases.html b/clones/lisp/www.cliki.net/cl-package-aliases.html deleted file mode 100644 index fa6bde75..00000000 --- a/clones/lisp/www.cliki.net/cl-package-aliases.html +++ /dev/null @@ -1,68 +0,0 @@ - - - - - CLiki: cl-package-aliases - - - - - - - -
    cl-package-aliases
    Extends the standard CL package system with the ability to define package-local aliases (nicknames) to other packages in a transparent way. It tries to integrate with the rest of CL, so functions like RENAME-PACKAGE are aware of these aliases. It is written by Oliver Markovic.

    Since this needs additional support beyond ANSI to work properly, cl-package-aliases isn't really a portable library. The current version works on Allegro CL 6.2, CMUCL, LispWorks 4.3, OpenMCL 0.14 and SBCL 0.8.5.

    Using cl-package-aliases

    After loading the library, you can either add aliases by hand or use the new :ALIAS option in DEFPACKAGE.

    -* (defpackage :foo (:use :cl) (:alias (:common-lisp :bar)))
    -
    -# <PACKAGE "FOO">
    -* (in-package :foo)
    -
    -# <PACKAGE "FOO">
    -* (bar:format t "Hello World~%")
    -Hello World
    -NIL
    -

    License

    -BSD without advertising clause.

    Download

    -https://common-lisp.net/~dlichteblau/inofficial/cl-package-aliases.tar.bz2

    TODO

    -
      -
    • think about how to avoid the patching. This could be done with a reader hook and function wrappers (encapsulation?) -
    • -


    -Topics: language extension
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-parametric-types.html b/clones/lisp/www.cliki.net/cl-parametric-types.html deleted file mode 100644 index 5d5930c0..00000000 --- a/clones/lisp/www.cliki.net/cl-parametric-types.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - CLiki: cl-parametric-types - - - - - - - -
    cl-parametric-types
    [BETA] A tool to repeatedly compile the same source code with different types. This library adds C++-style template classes, structs and functions to Common Lisp. Written by Massimiliano Ghilardi, maintainer of stmx.

    Currently (2018-03-06) tested on SBCL, ABCL, CCL, CLISP and CMUCL.

    For rationale, see the following excerpt from the homepage:

      -
    • C++ templates are very useful: somebody can implement general algorithms and classes, which can be later specialized by somebody else on concrete cases (instantiated), producing very efficient machine code, without duplicating the source code.
    • -
    • Common Lisp does not directly provide any equivalent mechanism, because macros operate on a different level: they can produce arbitrary code, but actually programming them is up to the programmer. Macros are general tools to build a programming language, rather than a specialized tool to repeatedly compile the same source code with different types.
    • -
    • If Common Lisp macros are to be considered "better" (for some definition of better) than C++ templates, then it should be possible to implement C++ templates using them.
    • -

    “This is a very interesting project. […] I see a utility problem similar to pre-quicklisp era. There are bunch of datastructure libraries but it's hard to say CL has the enough number of reliable, benchmarked, extensible SoA (state-of-art) algorithms/datastructure libraries.” — Matasaro Asai

    Homepage: GitHub

    License: LLGPL

    Topics: language extension

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-parsec.html b/clones/lisp/www.cliki.net/cl-parsec.html deleted file mode 100644 index 420dc03f..00000000 --- a/clones/lisp/www.cliki.net/cl-parsec.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-parsec - - - - - - - -
    cl-parsec
    cl-parsec is an experiment to create the analog of Haskell's Parsec library (an alternative to parser generators) in ANSI CL.

    Homepage: https://github.com/vseloved/cl-parsec

    License: MIT

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-pass.html b/clones/lisp/www.cliki.net/cl-pass.html deleted file mode 100644 index deafc523..00000000 --- a/clones/lisp/www.cliki.net/cl-pass.html +++ /dev/null @@ -1,59 +0,0 @@ - - - - - CLiki: cl-pass - - - - - - - -
    cl-pass
    cl-pass is a password hashing (via PBKDF2) and verification library. In Quicklisp.

    Usage:

    -cl-user> (cl-pass:hash "test")
    -"PBKDF2$sha256:20000$5cf6ee792cdf05e1ba2b6325c41a5f10$19c7f2ccb3880716bf7cdf999b3ed99e07c7a8140bab37af2afdc28d8806e854"
    -cl-user> (cl-pass:check-password "test" *)
    -t
    -cl-user> (cl-pass:check-password "nope" **)
    -nil
    -

    Depends on: ironclad, trivial-utf-8, split-sequence

    License: MIT


    -cryptography
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-password-store.html b/clones/lisp/www.cliki.net/cl-password-store.html deleted file mode 100644 index e762fab4..00000000 --- a/clones/lisp/www.cliki.net/cl-password-store.html +++ /dev/null @@ -1,72 +0,0 @@ - - - - - CLiki: cl-password-store - - - - - - - -
    cl-password-store
    Password management for Common Lisp (web) applications.

    cl-password-store provides a light-weight and extendible solution to -user/password management:

      -
    • safe password storage: -
        -
      • cleartext-free, using your choice of hash algorithm through -ironclad, -
      • -
      • storage in an SQL database through -clsql, in a database your application -already uses anyway, or in a separate one, and using any backend -supported by clsql,
      • -
      -
    • -
    • password reset mechanism with one-time tokens (suitable for mailing -to users for confirmation),
    • -
    • user creation optionally with confirmation tokens (suitable for -mailing to users),
    • -
    • (obviously) user authentication.
    • -

    Users can be identified by strings or by subclassing - user-token-mixin.

    The code is available under LLGPL at github.

    For documentation check out the -API documentation.


    -Cryptography
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-pastebin.html b/clones/lisp/www.cliki.net/cl-pastebin.html deleted file mode 100644 index 53719a61..00000000 --- a/clones/lisp/www.cliki.net/cl-pastebin.html +++ /dev/null @@ -1,58 +0,0 @@ - - - - - CLiki: cl-pastebin - - - - - - - -
    cl-pastebin
    CL-PASTEBIN is a Common Lisp wrapper to the Pastebin.com API
    -License: GPLv3

    GitHub repository:
    - - -https://github.com/pocket7878/cl-pastebin -

    -


    -web API
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-pattern.html b/clones/lisp/www.cliki.net/cl-pattern.html deleted file mode 100644 index b20efcd8..00000000 --- a/clones/lisp/www.cliki.net/cl-pattern.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-pattern - - - - - - - -
    cl-pattern
    [superseded by optima] cl-pattern is a very fast ML-like pattern matching library for Common Lisp.

    cl-pattern has been superseded by optima. Please use optima instead.

    Homepage: https://github.com/arielnetworks/cl-pattern

    License: LLGPL


    -obsolete
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-paymill.html b/clones/lisp/www.cliki.net/cl-paymill.html deleted file mode 100644 index 86cd0fad..00000000 --- a/clones/lisp/www.cliki.net/cl-paymill.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-paymill - - - - - - - -
    cl-paymill
    cl-paymill provides access to the Paymill payment processing web API.

    Homepage: https://github.com/a0-prw/cl-paymill

    License: BSD 2-Clause

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-paypal.html b/clones/lisp/www.cliki.net/cl-paypal.html deleted file mode 100644 index b5bca205..00000000 --- a/clones/lisp/www.cliki.net/cl-paypal.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-paypal - - - - - - - -
    cl-paypal
    cl-paypal is an interface to the PayPal Express Checkout web API.

    Please refer cl-paypal-test.lisp for usage.


    -The source code repository is at http://github.com/standin000/cl-paypal/tree/master
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-pdb.html b/clones/lisp/www.cliki.net/cl-pdb.html deleted file mode 100644 index 59d75731..00000000 --- a/clones/lisp/www.cliki.net/cl-pdb.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-pdb - - - - - - - -
    cl-pdb
    cl-pdb parses Palm database files (PDB files) into CLOS classes. This is to facilitate applications which need to read these files. It is based on the Binary-types library.

    It can be downloaded from its home page on SourceForge.

    Comments are always welcome.

    --Mark Simpson


    -file format

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-pdf.arglists.html b/clones/lisp/www.cliki.net/cl-pdf.arglists.html deleted file mode 100644 index b2374592..00000000 --- a/clones/lisp/www.cliki.net/cl-pdf.arglists.html +++ /dev/null @@ -1,69 +0,0 @@ - - - - - CLiki: cl-pdf.arglists - - - - - - - -
    cl-pdf.arglists
    cl-pdf.arglists improves the argument lists of CL-PDF and cl-typesetting, for easier interactive development. No more wondering which arguments are valid where!

    For instance, it will turn -

    (with-document (&rest args - &key (max-number-of-pages 'pdf:*max-number-of-pages*) - &allow-other-keys) - &body body)
    -into -
    (with-document (&rest args - &key (max-number-of-pages 'pdf:*max-number-of-pages*) - empty mode layout (creator "") author title subject - keywords &allow-other-keys) - &body body)
    -and -
    (paragraph (&rest style) &body body)
    -into a vastly more helpful -
    (paragraph (&rest style - &key font font-size text-x-scale color - background-color h-align left-margin right-margin - pre-decoration post-decoration leading-ratio) - &body body)

    Arglist setting is currently limited to SBCL and Clisp.

    Topics: convenience library, document preparation

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-pdf.html b/clones/lisp/www.cliki.net/cl-pdf.html deleted file mode 100644 index c3c62929..00000000 --- a/clones/lisp/www.cliki.net/cl-pdf.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: CL-PDF - - - - - - - -
    CL-PDF
    CL-PDF is a cross-platform file format library for generating PDF files. It can be used for document preparation.

    It does not need any third-party tools from Adobe or others.

    It is released with a BSD-style license.

    It can be downloaded with quicklisp.

    The CL_PDF github repository can be found here.

    The old CL-PDF home page: http://www.fractalconcept.com/asp/cl-pdf

    A old version of the documentation can be found in cl-typesetting: cl-pdf-doc.pdf.



    There are mailing lists and a code repository now. See home page for details.

    CL-PDF is used by cl-typesetting, a Common Lisp typesetting engine.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-peg.html b/clones/lisp/www.cliki.net/cl-peg.html deleted file mode 100644 index 9972f736..00000000 --- a/clones/lisp/www.cliki.net/cl-peg.html +++ /dev/null @@ -1,59 +0,0 @@ - - - - - CLiki: cl-peg - - - - - - - -
    cl-peg
    Cl-peg is a PEG packrat parser generator by John Leuner. cl-peg is released under the MIT License.

    PEG (Parsing Expression Grammars) and packrat parsers are described in -The Packrat Parsing and Parsing Expression Grammars Page.

    A darcs repository is available at http://subvert-the-dominant-paradigm.net/repos/cl-peg/

    Similar works:

    -


    -Text
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-perec.html b/clones/lisp/www.cliki.net/cl-perec.html deleted file mode 100644 index 739b178b..00000000 --- a/clones/lisp/www.cliki.net/cl-perec.html +++ /dev/null @@ -1,62 +0,0 @@ - - - - - CLiki: cl-perec - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-period.html b/clones/lisp/www.cliki.net/cl-period.html deleted file mode 100644 index c8792f2d..00000000 --- a/clones/lisp/www.cliki.net/cl-period.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-period - - - - - - - -
    cl-period
    cl-period allows one to express and check time periods in a terse but readable way.

    See the documentation for examples.


    -MIT-LICENSE
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-permutation.html b/clones/lisp/www.cliki.net/cl-permutation.html deleted file mode 100644 index bcbda899..00000000 --- a/clones/lisp/www.cliki.net/cl-permutation.html +++ /dev/null @@ -1,70 +0,0 @@ - - - - - CLiki: cl-permutation - - - - - - - -
    cl-permutation
    CL-PERMUTATION is a Mathematics library for doing permutation and permutation group calculations written by Robert Smith.

    CL-PERMUTATION can be downloaded with Quicklisp. Source code is here, which includes a README.

    Example from the README:

    -(defparameter rubik-3x3
    -  (group-from
    -   '((3 5 8 2 7 1 4 6 33 34 35 12 13 14 15 16 9 10 11 20 21 22 23 24 17 
    -      18 19 28 29 30 31 32 25 26 27 36 37 38 39 40 41 42 43 44 45 46 47 48)
    -     (17 2 3 20 5 22 7 8 11 13 16 10 15 9 12 14 41 18 19 44 21 46 23 24 
    -      25 26 27 28 29 30 31 32 33 34 6 36 4 38 39 1 40 42 43 37 45 35 47 48) 
    -     (1 2 3 4 5 25 28 30 9 10 8 12 7 14 15 6 19 21 24 18 23 17 20 22 43 
    -      26 27 42 29 41 31 32 33 34 35 36 37 38 39 40 11 13 16 44 45 46 47 48) 
    -     (1 2 38 4 36 6 7 33 9 10 11 12 13 14 15 16 17 18 3 20 5 22 23 8 27 
    -      29 32 26 31 25 28 30 48 34 35 45 37 43 39 40 41 42 19 44 21 46 47 24) 
    -     (14 12 9 4 5 6 7 8 46 10 11 47 13 48 15 16 17 18 19 20 21 22 23 24
    -      25 26 1 28 2 30 31 3 35 37 40 34 39 33 36 38 41 42 43 44 45 32 29 27) 
    -     (1 2 3 4 5 6 7 8 9 10 11 12 13 22 23 24 17 18 19 20 21 30 31 32 25
    -      26 27 28 29 38 39 40 33 34 35 36 37 14 15 16 43 45 48 42 47 41 44 46))))
    -
    -PERM> (group-order rubik-3x3)
    -43252003274489856000
    -
    -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-pgplot.html b/clones/lisp/www.cliki.net/cl-pgplot.html deleted file mode 100644 index c30c916f..00000000 --- a/clones/lisp/www.cliki.net/cl-pgplot.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-pgplot - - - - - - - -
    cl-pgplot
    CL-PGPLOT is a front end for Pearson's C/Fortran vintage scientific plotting library

    This supports various outputs like an non-blocking X11-server window, GIF, PS, and (if other packages are enabled) PDF.

    The git code can be obtained from -https://github.com/jetmonk/cl-pgplot.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-phonetic.html b/clones/lisp/www.cliki.net/cl-phonetic.html deleted file mode 100644 index afa99ddd..00000000 --- a/clones/lisp/www.cliki.net/cl-phonetic.html +++ /dev/null @@ -1,71 +0,0 @@ - - - - - CLiki: cl-phonetic - - - - - - - -
    cl-phonetic
    [work in progress] A phonetic pattern matching library for Common Lisp

    Usage examples:

    (let ((my-dict (from-cmudict "path/to/cmudict-compatible-file"))) - - ;; Look up all pronunciations for word - (pronounce-word my-dict "creepy") - ;; => #<(K R IY P IY)> - - ;; Find words which match a phonetic regex - (find-words my-dict "# AE T") - ;; => '("Bat" "Vat" "Cat" "That" "Sat") - - (find-words my-dict "#<v,,f> AE T") - ;; => '("Vat" "That") - - ;; Find words which match a phonetic metapattern - (find-metapattern my-dict 'perfect-rhyme "Chatter") - ;; => '("Matter" "Blatter" "Clatter") - - (find-metapattern my-dict 'near-rhyme "Chatter") - ;; => '("Matter" "Blatter" "Clatter" "Antler" "Actor" "Adapter") - ) -

    Repository: GitHub

    License: MIT

    See Also: soundex

    Topics: Natural Language Processing

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-photo.html b/clones/lisp/www.cliki.net/cl-photo.html deleted file mode 100644 index 4e9c3ce3..00000000 --- a/clones/lisp/www.cliki.net/cl-photo.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-photo - - - - - - - -
    cl-photo
    cl-photo is a graphics library of calculators for photographic functions. Angle of view, field of view, circle of confusion, and depth of field calculations are well supported.

    Reference Manual: https://quickref.common-lisp.net/cl-photo.html

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-plplot.html b/clones/lisp/www.cliki.net/cl-plplot.html deleted file mode 100644 index 6c3949dd..00000000 --- a/clones/lisp/www.cliki.net/cl-plplot.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-plplot - - - - - - - -
    cl-plplot
    cl-plplot provides a CFFI based interface to the open source scientific plotting library PLplot.

    More information about cl-plplot is available at cl-plplot's home page on common-lisp.net.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-plus-ssl.html b/clones/lisp/www.cliki.net/cl-plus-ssl.html deleted file mode 100644 index b9a343d8..00000000 --- a/clones/lisp/www.cliki.net/cl-plus-ssl.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: CL-PLUS-SSL - - - - - - - -
    CL-PLUS-SSL
    This library is a fork of SSL-CMUCL. The original SSL-CMUCL source code was written by Eric Marsden and includes contributions by Jochen Schmidt. Development into CL+SSL was done by David Lichteblau. License: MIT-style.

    Distinguishing features: CL+SSL is portable code based on CFFI and gray streams. It defines its own libssl BIO method, so that SSL I/O can be written over portable Lisp streams instead of bypassing the streams and sending data over Unix file descriptors directly. (But the traditional approach is still used if possible.)

    Repository: https://github.com/cl-plus-ssl/cl-plus-ssl

    Home page: https://common-lisp.net/project/cl-plus-ssl/


    -networking protocol cryptography
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-pop.html b/clones/lisp/www.cliki.net/cl-pop.html deleted file mode 100644 index 935de92f..00000000 --- a/clones/lisp/www.cliki.net/cl-pop.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-pop - - - - - - - -
    cl-pop
    CL-POP is a lisp networking library that provides a POP email client based on RFC 1939.

    Depends on: usocket, split-sequence, cl-ppcre

    Homepage: https://common-lisp.net/project/cl-pop/

    License: LLGPL/LGPL

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-portaudio.html b/clones/lisp/www.cliki.net/cl-portaudio.html deleted file mode 100644 index 31b0e6a8..00000000 --- a/clones/lisp/www.cliki.net/cl-portaudio.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-portaudio - - - - - - - -
    cl-portaudio
    CL-PortAudio is an audio package for interfacing with the PortAudio library.

    It is currently at version 1.0.0

    License: MIT

    Repository: https://github.com/filonenko-mikhail/cl-portaudio

    Author: Michael Filonenko

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-posix-dirent-susv3-lisp.html b/clones/lisp/www.cliki.net/cl-posix-dirent-susv3-lisp.html deleted file mode 100644 index 46f6367a..00000000 --- a/clones/lisp/www.cliki.net/cl-posix-dirent-susv3-lisp.html +++ /dev/null @@ -1,632 +0,0 @@ - - - - - CLiki: cl-posix-dirent-susv3-lisp - - - - - - - -
    cl-posix-dirent-susv3-lisp
    cl-posix-dirent

    -;;****************************************************************************
    -;;FILE:               susv3.lisp
    -;;LANGUAGE:           Common-Lisp
    -;;SYSTEM:             CLISP
    -;;USER-INTERFACE:     NONE
    -;;DESCRIPTION
    -;;    
    -;;    This packages exports SUSV3 functions.
    -;;    This is the CLISP specific implementation of the SUSV3 API.
    -;;
    -;;
    -;;    The Open Group Base Specifications Issue 6
    -;;    IEEE Std 1003.1, 2003 Edition
    -;;
    -;;    http://www.opengroup.org/onlinepubs/007904975/index.html
    -;;
    -;;AUTHORS
    -;;    <PJB> Pascal Bourguignon
    -;;MODIFICATIONS
    -;;    2003-06-13 <PJB> Added dirent stuff.
    -;;    2003-05-13 <PJB> Created
    -;;BUGS
    -;;
    -;;    Check if the name is correct: there is a hierarchy of specifications
    -;;    in sus3. I want to avoid using #+XSI, but rather have different
    -;;    interfaces: (:USE SUSV3) (:USE SUSV3-XSI).
    -;;
    -;;
    -;;LEGAL
    -;;    GPL
    -;;    
    -;;    Copyright Pascal Bourguignon 2003 - 2003
    -;;    mailto:pjb@informatimago.com
    -;;    
    -;;    This program is free software; you can redistribute it and/or
    -;;    modify it under the terms of the GNU General Public License
    -;;    as published by the Free Software Foundation; either version
    -;;    2 of the License, or (at your option) any later version.
    -;;    
    -;;    This program is distributed in the hope that it will be
    -;;    useful, but WITHOUT ANY WARRANTY; without even the implied
    -;;    warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
    -;;    PURPOSE.  See the GNU General Public License for more details.
    -;;    
    -;;    You should have received a copy of the GNU General Public
    -;;    License along with this program; if not, write to the Free
    -;;    Software Foundation, Inc., 59 Temple Place, Suite 330,
    -;;    Boston, MA 02111-1307 USA
    -;;****************************************************************************
    -
    -
    -(DECLARE-PACKAGE COM.INFORMATIMAGO.CLISP.SUSV3
    -  ;; (:NICKNAMES SUSV3)
    -  (:DOCUMENTATION "This packages exports SUSV3 functions.
    -    This is the CLISP specific implementation of the SUSV3 API.")
    -  (:FROM COMMON-LISP :IMPORT :ALL)
    -  (:USE LINUX)
    -  (:USE EXT)
    -  (:EXPORT
    -   
    -   ;; NOT IN SUSV3 API (Lisp/C support stuff):
    -   BOUND-STRING ;; type (BOUND-STRING min max)
    -   SUSV3-ERROR ;; (SIGNAL 'SUSV3-ERROR errno)
    -
    -   ;; 
    -   GETENV
    -
    -   ;; sys/types.h
    -   INO-T
    -
    -
    -   ;; sys/stat.h
    -
    -   
    -   ;; limits.h
    -   +NAME-MAX+
    -
    -   ;; dirent.h
    -   DIR DIRENT
    -   OPENDIR READDIR REWINDDIR CLOSEDIR
    -   ;; readdir_r ;; TSF ;; not implemented, do we need it? 
    -   SEEKDIR TELLDIR ;; XSI
    -
    -
    -
    -   
    -   ;; NOT IN SUSV3 API (TEST FUNCTIONS):
    -   DIRENT-TEST
    -   ))
    -
    -
    -
    -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    -;; Lisp/C support stuff
    -
    -
    -(DEFTYPE BOUND-STRING (MIN MAX)
    -  "A TYPE REPRESENTING STRINGS OF MINIMUM SIZE MIN AND MAXIMUM SIZE MAX."
    -  (IF (= (EVAL MIN) (EVAL MAX))
    -    `(STRING ,(EVAL MIN))
    -    `STRING) ;; TODO: (OR (STRING MIN) (STRING (1+ MIN)) ... (STRING MAX))
    -  );;BOUND-STRING
    -
    -
    -(DEFINE-CONDITION SUSV3-ERROR ()
    -  (
    -   (ERRNO :INITARG :ERRNO
    -          :ACCESSOR ERRNO
    -          :TYPE (SIGNED-BYTE 32))
    -   ));;SUSV3-ERROR
    -
    -  
    -(DEFMACRO CHECK-ERRNO (&BODY BODY)
    -  `(PROGN
    -     (SETQ LINUX:|errno| 0)
    -     (LET ((RESULT (PROGN ,@BODY)))
    -       (IF (/= 0 LINUX:|errno|)
    -         (SIGNAL (MAKE-CONDITION 'SUSV3-ERROR  :ERRNO LINUX:|errno|))
    -         RESULT)))
    -  );;CHECK-ERRNO
    -
    -     
    -
    -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    -;; ???
    -
    -
    -(DECLARE (FTYPE (FUNCTION (STRING) (OR NULL STRING)) GETENV))
    -
    -
    -(DEFUN GETENV (NAME)
    -  "
    -URL:        http://www.opengroup.org/onlinepubs/007904975/functions/getenv.html
    -RETURN:     NIL or the value of the environment variable named NAME.
    -"
    -  (EXT:GETENV NAME)
    -  );;GETENV
    -
    -
    -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    -;; sys/types.h
    -
    -
    -(DEFTYPE INO-T ()
    -  "The type of file serial numbers."
    -  `(UNSIGNED-BYTE 32)
    -  );;INO-T
    -
    -
    -(DEFTYPE DEV-T ()
    -  "Device ID."
    -  `(UNSIGNED-BYTE 32)
    -  );;DEV-T
    -
    -
    -(DEFTYPE MODE-T ()
    -  "Mode of file."
    -  `(UNSIGNED-BYTE 32)
    -  );;MODE-T
    -
    -
    -(DEFTYPE NLINK-T ()
    -  "Number of hard links to the file."
    -  `(UNSIGNED-BYTE 32)
    -  );;NLINK-T
    -
    -
    -(DEFTYPE UID-T ()
    -  "User ID."
    -  `(UNSIGNED-BYTE 32)
    -  );;UID-T
    -
    -
    -(DEFTYPE GID-T ()
    -  "Group ID."
    -  `(UNSIGNED-BYTE 32)
    -  );;GID-T
    -
    -
    -(DEFTYPE TIME-T ()
    -  "Time in seconds since epoch."
    -  `(UNSIGNED-BYTE 32)
    -  );;TIME-T
    -
    -
    -
    -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    -;; sys/stat.h
    -
    -
    -(DEFTYPE BLKSIZE-T
    -  ""
    -  `(UNSIGNED-BYTE 32)
    -  );;BLKSIZE-T
    -
    -
    -(DEFTYPE BLKCNT-T
    -  ""
    -  `(UNSIGNED-BYTE 32)
    -  );;BLKCNT-T
    -
    -
    -  
    -(DEFSTRUCT STAT
    -  (DEV     0 :TYPE DEV-T) ;; Device ID of device containing file. 
    -  (INO     0 :TYPE INO-T) ;; File serial number. 
    -  (MODE    0 :TYPE MODE-T) ;; Mode of file (see below).
    -  (NLINK   0 :TYPE NLINK-T) ;; Number of hard links to the file.
    -  (UID     0 :TYPE UID-T) ;; User ID of file.
    -  (GID     0 :TYPE GID-T) ;; Group ID of file.
    -  (RDEV    0 :TYPE DEV-T) ;; XSI: Device ID (if file is char or block special).
    -  (SIZE    0 :TYPE OFF-T) ;; For regular files, the file size in bytes. 
    -  ;;                      For symbolic links, the length in bytes of the 
    -  ;;                      pathname contained in the symbolic link. 
    -  ;;                      SHM: For a shared memory object, the length in bytes.
    -  ;;                      TYM: For a typed memory object, the length in bytes. 
    -  ;;                      For other file types, the use of this field is 
    -  ;;                      unspecified.
    -  (ATIME   0 :TYPE TIME-T) ;; Time of last access.
    -  (MTIME   0 :TYPE TIME-T) ;; Time of last data modification.
    -  (CTIME   0 :TYPE TIME-T) ;; Time of last status change.
    -  (BLKSIZE 0 :TYPE BLKSIZE-T) ;; XSI: A file system-specific preferred I/O 
    -  ;;                      block size for this object. In some file system 
    -  ;;                      types, this may vary from file to file.
    -  (BLOCKS  0 :TYPE BLKCNT-T) ;; XSI: Num. of blocks allocated for this object.
    -  );;STAT
    -
    -
    -;; The st_ino and st_dev fields taken together uniquely identify the
    -;; file within the system. The blkcnt_t, blksize_t, dev_t, ino_t,
    -;; mode_t, nlink_t, uid_t, gid_t, off_t, and time_t types shall be
    -;; defined as described in <sys/types.h> . Times shall be given in
    -;; seconds since the Epoch.
    -
    -;; Unless otherwise specified, the structure members st_mode, st_ino,
    -;; st_dev, st_uid, st_gid, st_atime, st_ctime, and st_mtime shall have
    -;; meaningful values for all file types defined in IEEE Std
    -;; 1003.1-2001.
    - 
    -;; For symbolic links, the st_mode member shall contain meaningful
    -;; information, which can be used with the file type macros described
    -;; below, that take a mode argument. The st_size member shall contain
    -;; the length, in bytes, of the pathname contained in the symbolic
    -;; link. File mode bits and the contents of the remaining members of
    -;; the stat structure are unspecified. The value returned in the
    -;; st_size field shall be the length of the contents of the symbolic
    -;; link, and shall not count a trailing null if one is present.
    - 
    -
    -;; The following symbolic names for the values of type mode_t shall
    -;; also be defined.
    - 
    -;; File type:
    -;; 
    -;; S_IFMT
    -;;     [XSI] [Option Start] Type of file.
    -;; 
    -;;     S_IFBLK
    -;;     Block special.S_IFCHR
    -;;     Character special.S_IFIFO
    -;;     FIFO special.S_IFREG
    -;;     Regular.S_IFDIR
    -;;     Directory.S_IFLNK
    -;;     Symbolic link.S_IFSOCK
    -;;     Socket. [Option End]
    -
    -(DEFCONSTANT S-IFMT  #O0170000)
    -(DEFCONSTANT S-IFDIR  #O040000)
    -(DEFCONSTANT S-IFCHR  #O020000)
    -(DEFCONSTANT S-IFBLK  #O060000)
    -(DEFCONSTANT S-IFREG  #O100000)
    -(DEFCONSTANT S-IFIFO  #O010000)
    -(DEFCONSTANT S-IFLNK  #O120000)
    -(DEFCONSTANT S-IFSOCK #O140000)
    -
    -
    -;; File mode bits:
    -;; 
    -;; S_IRWXU
    -;;     Read, write, execute/search by owner.
    -;; 
    -;;     S_IRUSR
    -;;     Read permission, owner.S_IWUSR
    -;;     Write permission, owner.S_IXUSR
    -;;     Execute/search permission, owner.
    -;; S_IRWXG
    -;;     Read, write, execute/search by group.
    -;; 
    -;;     S_IRGRP
    -;;     Read permission, group.S_IWGRP
    -;;     Write permission, group.S_IXGRP
    -;;     Execute/search permission, group.
    -;; S_IRWXO
    -;;     Read, write, execute/search by others.
    -;; 
    -;;     S_IROTH
    -;;     Read permission, others.S_IWOTH
    -;;     Write permission, others.S_IXOTH
    -;;     Execute/search permission, others.
    -;; S_ISUID
    -;; Set-user-ID on execution.S_ISGID
    -;; Set-group-ID on execution.S_ISVTX
    -;; [XSI] [Option Start] On directories, restricted deletion flag. [Option End]
    - 
    -;; The bits defined by S_IRUSR, S_IWUSR, S_IXUSR, S_IRGRP, S_IWGRP,
    -;; S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH, S_ISUID, S_ISGID, [XSI] [Option
    -;; Start]  and S_ISVTX [Option End]  shall be unique.
    - 
    -;; S_IRWXU is the bitwise-inclusive OR of S_IRUSR, S_IWUSR, and S_IXUSR.
    -;; 
    -;; S_IRWXG is the bitwise-inclusive OR of S_IRGRP, S_IWGRP, and S_IXGRP.
    -;; 
    -;; S_IRWXO is the bitwise-inclusive OR of S_IROTH, S_IWOTH, and S_IXOTH.
    - 
    -;; Implementations may OR other implementation-defined bits into
    -;; S_IRWXU, S_IRWXG, and S_IRWXO, but they shall not overlap any of
    -;; the other bits defined in this volume of IEEE Std 1003.1-2001. The
    -;; file permission bits are defined to be those corresponding to the
    -;; bitwise-inclusive OR of S_IRWXU, S_IRWXG, and S_IRWXO.
    -
    -
    -(DEFCONSTANT S-ISUID  #O004000)
    -(DEFCONSTANT S-ISGID  #O002000)
    -(DEFCONSTANT S-ISVTX  #O001000)
    -
    -(DEFINE-SYMBOL-MACRO S-IREAD S-IRUSR)
    -(DEFINE-SYMBOL-MACRO S-IWRITE S-IWUSR)
    -(DEFINE-SYMBOL-MACRO S-IEXEC S-IXUSR)
    -
    -(DEFCONSTANT S-IRUSR  #O000400)
    -(DEFCONSTANT S-IWUSR  #O000200)
    -(DEFCONSTANT S-IXUSR  #O000100)
    -(DEFCONSTANT S-IRWXU  (LOGIOR S-IRUSR S-IWUSR S-IXUSR))
    -(DEFCONSTANT S-IRGRP  #O000040)
    -(DEFCONSTANT S-IWGRP  #O000020)
    -(DEFCONSTANT S-IXGRP  #O000010)
    -(DEFCONSTANT S-IRWXG  (LOGIOR S-IRGRP S-IWGRP S-IXGRP))
    -(DEFCONSTANT S-IROTH  #O000004)
    -(DEFCONSTANT S-IWOTH  #O000002)
    -(DEFCONSTANT S-IXOTH  #O000001)
    -(DEFCONSTANT S-IRWXO  (LOGIOR S-IROTH S-IWOTH S-IXOTH))
    -
    -
    -;; The following macros shall be provided to test whether a file is of
    -;; the specified type. The value m supplied to the macros is the value
    -;; of st_mode from a stat structure. The macro shall evaluate to a
    -;; non-zero value if the test is true; 0 if the test is false.
    - 
    -;; S_ISBLK(m)
    -;; 
    -;; Test for a block special file.S_ISCHR(m)
    -;; Test for a character special file.S_ISDIR(m)
    -;; Test for a directory.S_ISFIFO(m)
    -;; Test for a pipe or FIFO special file.S_ISREG(m)
    -;; Test for a regular file.S_ISLNK(m)
    -;; Test for a symbolic link.S_ISSOCK(m)
    -;; Test for a socket.
    -
    -(DEFMACRO S-ISDIR  (M) `(= (LOGAND ,M S-IFMT) S-IFDIR))
    -(DEFMACRO S-ISCHR  (M) `(= (LOGAND ,M S-IFMT) S-IFCHR))
    -(DEFMACRO S-ISBLK  (M) `(= (LOGAND ,M S-IFMT) S-IFBLK))
    -(DEFMACRO S-ISREG  (M) `(= (LOGAND ,M S-IFMT) S-IFREG))
    -(DEFMACRO S-ISFIFO (M) `(= (LOGAND ,M S-IFMT) S-IFFIFO))
    -(DEFMACRO S-ISLNK  (M) `(= (LOGAND ,M S-IFMT) S-IFLNK))
    -(DEFMACRO S-ISSOCK (M) `(= (LOGAND ,M S-IFMT) S-IFSOCK))
    -
    -
    -;; The implementation may implement message queues, semaphores, or
    -;; shared memory objects as distinct file types. The following macros
    -;; shall be provided to test whether a file is of the specified
    -;; type. The value of the buf argument supplied to the macros is a
    -;; pointer to a stat structure. The macro shall evaluate to a non-zero
    -;; value if the specified object is implemented as a distinct file
    -;; type and the specified file type is contained in the stat structure
    -;; referenced by buf. Otherwise, the macro shall evaluate to zero.
    - 
    -;; S_TYPEISMQ(buf)
    -;; Test for a message queue.S_TYPEISSEM(buf)
    -;; Test for a semaphore.S_TYPEISSHM(buf)
    -;; Test for a shared memory object.
    - 
    -;; [TYM] [Option Start] The implementation may implement typed memory
    -;; objects as distinct file types, and the following macro shall test
    -;; whether a file is of the specified type. The value of the buf
    -;; argument supplied to the macros is a pointer to a stat
    -;; structure. The macro shall evaluate to a non-zero value if the
    -;; specified object is implemented as a distinct file type and the
    -;; specified file type is contained in the stat structure referenced
    -;; by buf. Otherwise, the macro shall evaluate to zero.
    - 
    -;; S_TYPEISTMO(buf)
    -;; Test macro for a typed memory object.
    -;; [Option End]
    - 
    -;; The following shall be declared as functions and may also be
    -;; defined as macros. Function prototypes shall be provided.
    - 
    -;; int    chmod(const char *, mode_t);
    -;; int    fchmod(int, mode_t);
    -;; int    fstat(int, struct stat *);
    -;; int    lstat(const char *restrict, struct stat *restrict);
    -;; int    mkdir(const char *, mode_t);
    -;; int    mkfifo(const char *, mode_t);
    -;; [XSI][Option Start]
    -;; int    mknod(const char *, mode_t, dev_t);
    -;; [Option End]
    -;; int    stat(const char *restrict, struct stat *restrict);
    -;; mode_t umask(mode_t);
    -
    -(DECLARE
    - (FTYPE (FUNCTION (STRING MODE-T)  NIL)    CHMOD)
    - (FTYPE (FUNCTION (INTEGER MODE-T) NIL)    FCHMOD)
    - (FTYPE (FUNCTION (INTEGER)        STAT)   FSTAT)
    - (FTYPE (FUNCTION (STRING)         STAT)   LSTAT)
    - (FTYPE (FUNCTION (STRING)         STAT)   STAT)
    - (FTYPE (FUNCTION (STRING MODE-T)  NIL)    MKDIR)
    - (FTYPE (FUNCTION (STRING MODE-T)  NIL)    MKFIFO)
    - (FTYPE (FUNCTION (MODE-T)         MODE-T) UMASK)
    - )
    -
    -(DECLARE ;; XSI
    - (FTYPE (FUNCTION (STRING MODE-T DEV-T) NIL) MKNOD)
    -)
    -
    -
    -
    -(DEFUN CHMOD (PATH MODE)
    -  (CHECK-ERRNO (LINUX:|chmod| PATH MODE))
    -  (VALUES)
    -  );;CHMOD
    -
    -
    -(DEFUN FCHMOD (FD MODE)
    -  (CHECK-ERRNO (LINUX:|fchmod| FD MODE))
    -  (VALUES)
    -  );;FCHMOD
    -
    -
    -(DEFMACRO LINUX-STAT->SUSV3-STAT (SB)
    -  "
    -PRIVATE
    -"
    -  `(MAKE-STAT 
    -    :DEV (LINUX:|stat-st_dev| ,SB)
    -    :INO (LINUX:|stat-st_ino| ,SB)
    -    :MODE (LINUX:|stat-st_mode| ,SB)
    -    :NLINK (LINUX:|stat-st_nlink| ,SB)
    -    :UID (LINUX:|stat-st_uid| ,SB)
    -    :GID (LINUX:|stat-st_gid| ,SB)
    -    :RDEV (LINUX:|stat-st_rdev| ,SB)
    -    :SIZE (LINUX:|stat-st_size| ,SB)
    -    :ATIME (LINUX:|stat-st_atime| ,SB)
    -    :MTIME (LINUX:|stat-st_mtime| ,SB)
    -    :CTIME (LINUX:|stat-st_ctime| ,SB)
    -    :BLKSIZE (LINUX:|stat-st_blksize| ,SB)
    -    :BLOCKS (LINUX:|stat-st_blocks| ,SB))
    -  );;LINUX-STAT->SUSV3-STAT
    -
    -
    -(DEFUN STAT (PATH)
    -    (LINUX-STAT->SUSV3-STAT (CHECK-ERRNO (LINUX:|stat| PATH)))
    -  );;STAT
    -
    -
    -(DEFUN LSTAT (PATH)
    -    (LINUX-STAT->SUSV3-STAT (CHECK-ERRNO (LINUX:|lstat| PATH)))
    -  );;LSTAT
    -
    -
    -(DEFUN FSTAT (FD)
    -    (LINUX-STAT->SUSV3-STAT (CHECK-ERRNO (LINUX:|fstat| FD)))
    -  );;FSTAT
    -
    -
    -(DEFUN MKDIR (PATH MODE)
    -  (CHECK-ERRNO (LINUX:|mkdir| PATH MODE))
    -  (VALUES)
    -  );;MKDIR
    -
    -
    -(DEFUN MKFIFO (PATH MODE)
    -  (CHECK-ERRNO (LINUX:|mkfifo| PATH MODE))
    -  (VALUES)
    -  );;MKFIFO
    -
    -
    -(DEFUN UMASK (MODE)
    -  (LINUX:|umask| MODE)
    -  );;UMASK
    -
    -
    -  ;;XSI
    -(DEFUN MKNOD (PATH MODE DEVICE)
    -  (CHECK-ERRNO (LINUX:|mknod| PATH MODE DEVICE))
    -  (VALUES)
    -  );;MKNOD
    -
    -
    -
    -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    -;; dirent.h
    -
    -(DEFCONSTANT +NAME-MAX+ 255)
    -
    -
    -(DEFTYPE DIR () 
    -  "A type representing a directory stream."
    -  `T
    -  );;DIR
    -
    -
    -(DEFSTRUCT DIRENT 
    -  (INO  0  :TYPE INO-T) ;; File serial number
    -  (NAME "" :TYPE (BOUND-STRING 0 +NAME-MAX+)) ;; Name of entry
    -  );;DIRENT
    -
    -
    -(DECLAIM
    - (FTYPE (FUNCTION (DIR)    INTEGER)          CLOSEDIR)
    - (FTYPE (FUNCTION (STRING) (OR NULL DIR))    OPENDIR)
    - (FTYPE (FUNCTION (DIR)    (OR NULL DIRENT)) READDIR)
    - (FTYPE (FUNCTION (DIR)    NIL)              REWINDDIR)
    - )
    -
    -
    -(DECLAIM ;; XSI
    - (FTYPE (FUNCTION (DIR INTEGER) NIL)         SEEKDIR)
    - (FTYPE (FUNCTION (DIR)         INTEGER)     TELLDIR)
    - )
    -
    -
    -(DEFUN OPENDIR (PATH)
    -  (CHECK-ERRNO (LINUX:|opendir| PATH))
    -  );;OPENDIR
    -
    -
    -(DEFUN CLOSEDIR (DIR-STREAM)
    -  (CHECK-ERRNO (LINUX:|closedir| DIR-STREAM))
    -  );;CLOSEDIR
    -
    -
    -(DEFUN READDIR (DIR-STREAM)
    -  (LET ((C-DIRENT (CHECK-ERRNO (LINUX:|readdir| DIR-STREAM))))
    -    (AND C-DIRENT
    -         (MAKE-DIRENT :INO (LINUX::|dirent-d_ino| C-DIRENT)
    -                      :NAME (LINUX::|dirent-d_name| C-DIRENT))))
    -  );;READDIR
    -
    -
    -(DEFUN REWINDDIR (DIR-STREAM)
    -  (CHECK-ERRNO (LINUX:|rewinddir| DIR-STREAM))
    -  (VALUES)
    -  );;REWINDDIR
    -
    -
    -
    -(DEFUN SEEKDIR (DIR-STREAM POSITION)
    -  (CHECK-ERRNO (LINUX:|seekdir| DIR-STREAM POSITION))
    -  (VALUES)
    -  );;SEEKDIR
    -
    -
    -(DEFUN TELLDIR (DIR-STREAM)
    -  (CHECK-ERRNO (LINUX:|telldir| DIR-STREAM))
    -  );;TELLDIR
    -
    -
    -
    -
    -(DEFUN DIRENT-TEST ()
    -  (DO* ((DIR-STREAM (OPENDIR "/tmp"))
    -        (ENTRY (READDIR DIR-STREAM) (READDIR DIR-STREAM)))
    -      ((NULL ENTRY))
    -    (FORMAT T "entry: ~8D ~S~%" (DIRENT-INO ENTRY) (DIRENT-NAME ENTRY)))
    -  );;DIRENT-TEST
    -
    -
    -
    -
    -;;;; susv3.lisp                       -- 2003-06-14 09:59:29 -- pascal   ;;;;
    -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-posix-dirent.html b/clones/lisp/www.cliki.net/cl-posix-dirent.html deleted file mode 100644 index 290b416c..00000000 --- a/clones/lisp/www.cliki.net/cl-posix-dirent.html +++ /dev/null @@ -1,378 +0,0 @@ - - - - - CLiki: cl-posix-dirent - - - - - - - -
    cl-posix-dirent

    Common-Lisp-POSIX API - SUSv3 - dirent

    Fetch an implementation of the dirent API for CLISP (using the LINUX package): cl-posix-dirent-susv3-lisp

    -

    Common-Lisp Specific Definitions

    Type SUSV3:BOUND-STRING

    [***SEE***: Find a better name!]

    [***Suggestion***: What about SUSV3:LIMITED-STRING ?]

    -
    -(DEFTYPE BOUND-STRING (MIN MAX)
    -  "A TYPE REPRESENTING STRINGS OF MINIMUM SIZE MIN AND MAXIMUM SIZE MAX."
    -  (IF (= (EVAL MIN) (EVAL MAX))
    -    `(STRING ,(EVAL MIN))
    -    `STRING) ;; TODO: (OR (STRING MIN) (STRING (1+ MIN)) ... (STRING MAX))
    -  );;BOUND-STRING
    -

    -

    Condition SYSV3:SYSCALL-ERROR

    -(DEFINE-CONDITION SYSCALL-ERROR ()
    -  (
    -   (ERRNO :INITARG :ERRNO
    -          :ACCESSOR SYSCALL-ERRNO
    -          :TYPE (SIGNED-BYTE 32))
    -   ));;SYSCALL-ERROR
    -

    -

    SUSv3 Definitions

    - -sys/types.h -

    -

    Type SUSV3:BLKCNT-T

    -   (DEFTYPE SUSV3:BLKCNT-T ()
    -     "Used for file block counts."
    -     ;; implementation dependent
    -    );;SUSV3:BLKCNT-T
    -
    -   (ASSERT (SUBTYPEP 'SUSV3:BLKCNT-T 'INTEGER)

    Type SUSV3:BLKSIZE-T

    -   (DEFTYPE SUSV3:BLKSIZE-T ()
    -     "Used for block sizes."
    -     ;; implementation dependent
    -    );;SUSV3:BLKSIZE-T
    -
    -   (ASSERT (SUBTYPEP 'SUSV3:BLKSIZE-T 'INTEGER)

    Type SUSV3-XSI:CLOCK-T

    -   (DEFTYPE SUSV3-XSI:CLOCK-T ()
    -     "Used for system times in clock ticks or CLOCKS_PER_SEC; see <time.h> ."
    -     ;; implementation dependent
    -    );;SUSV3-XSI:CLOCK-T
    -
    -   (ASSERT (SUBTYPEP 'SUSV3-XSI:CLOCK-T '(OR INTEGER FLOAT))

    Type SUSV3-TMR:CLOCKID-T

    -   (DEFTYPE SUSV3-TMR:CLOCKID-T ()
    -     "Used for clock ID type in the clock and timer functions."
    -     ;; implementation dependent
    -    );;SUSV3-TMR:CLOCKID-T
    -
    -

    Type SUSV3:DEV-T

    -   (DEFTYPE SUSV3:DEV-T ()
    -     "Used for device IDs."
    -     ;; implementation dependent
    -    );;SUSV3:DEV-T
    -
    -

    Type SUSV3-XSI:FSBLKCNT-T

    -   (DEFTYPE SUSV3-XSI:FSBLKCNT-T ()
    -     "Used for file system block counts."
    -     ;; implementation dependent
    -    );;SUSV3-XSI:FSBLKCNT-T
    -
    -   (ASSERT (SUBTYPEP 'SUSV3-XSI:FSBLKCNT-T '(INTEGER 0))

    Type SUSV3-XSI:FSFILCNT-T

    -   (DEFTYPE SUSV3-XSI:FSFILCNT-T ()
    -     "Used for file system file counts."
    -     ;; implementation dependent
    -    );;SUSV3-XSI:FSFILCNT-T
    -
    -   (ASSERT (SUBTYPEP 'SUSV3-XSI:FSFILCNT-T '(INTEGER 0))

    Type SUSV3:GID-T

    -   (DEFTYPE SUSV3:GID-T ()
    -     "Used for group IDs."
    -     ;; implementation dependent
    -    );;SUSV3:GID-T
    -
    -   (ASSERT (SUBTYPEP 'SUSV3:GID-T 'INTEGER)

    Type SUSV3-XSI:ID-T

    -   (DEFTYPE SUSV3-XSI:ID-T ()
    -     "Used as a general identifier; can be used to contain at least a pid_t, uid_t, or gid_t."
    -     ;; implementation dependent
    -    );;SUSV3-XSI:ID-T
    -
    -   (ASSERT (AND (SUBTYPEP 'SUSV3-XSI:ID-T 'INTEGER)
    -                (SUBTYPEP 'SUSV3-XSI:ID-T 'SUSV3:PID-T)
    -                (SUBTYPEP 'SUSV3-XSI:ID-T 'SUSV3:UID-T)
    -                (SUBTYPEP 'SUSV3-XSI:ID-T 'SUSV3:GID-T)))
    -)
    -

    Type SUSV3:INO-T

    -   (DEFTYPE SUSV3:INO-T ()
    -     "Used for file serial numbers."
    -     ;; implementation dependent
    -    );;SUSV3:INO-T
    -
    -   (ASSERT (SUBTYPEP 'SUSV3:INO-T '(INTEGER 0))

    Type SUSV3-XSI:KEY-T

    -   (DEFTYPE SUSV3-XSI:KEY-T ()
    -     "Used for XSI interprocess communication."
    -     ;; implementation dependent
    -    );;SUSV3-XSI:KEY-T
    -
    -

    Type SUSV3:MODE-T

    -   (DEFTYPE SUSV3:MODE-T ()
    -     "Used for some file attributes."
    -     ;; implementation dependent
    -    );;SUSV3:MODE-T
    -
    -   (ASSERT (SUBTYPEP 'SUSV3:MODE-T 'INTEGER)

    Type SUSV3:NLINK-T

    -   (DEFTYPE SUSV3:NLINK-T ()
    -     "Used for link counts."
    -     ;; implementation dependent
    -    );;SUSV3:NLINK-T
    -
    -   (ASSERT (SUBTYPEP 'SUSV3:NLINK-T 'INTEGER)

    Type SUSV3:OFF-T

    -   (DEFTYPE SUSV3:OFF-T ()
    -     "Used for file sizes."
    -     ;; implementation dependent
    -    );;SUSV3:OFF-T
    -
    -   (ASSERT (SUBTYPEP 'SUSV3:OFF-T 'INTEGER)

    Type SUSV3:PID-T

    -   (DEFTYPE SUSV3:PID-T ()
    -     "Used for process IDs and process group IDs."
    -     ;; implementation dependent
    -    );;SUSV3:PID-T
    -
    -   (ASSERT (SUBTYPEP 'SUSV3:PID-T 'INTEGER)

    Type SUSV3-THR:PTHREAD-ATTR-T

    -   (DEFTYPE SUSV3-THR:PTHREAD-ATTR-T ()
    -     "Used to identify a thread attribute object."
    -     ;; implementation dependent
    -    );;SUSV3-THR:PTHREAD-ATTR-T
    -
    -

    Type SUSV3-BAR:PTHREAD-BARRIER-T

    -   (DEFTYPE SUSV3-BAR:PTHREAD-BARRIER-T ()
    -     "Used to identify a barrier."
    -     ;; implementation dependent
    -    );;SUSV3-BAR:PTHREAD-BARRIER-T
    -
    -

    Type SUSV3-BAR:PTHREAD-BARRIERATTR-T

    -   (DEFTYPE SUSV3-BAR:PTHREAD-BARRIERATTR-T ()
    -     "Used to define a barrier attributes object."
    -     ;; implementation dependent
    -    );;SUSV3-BAR:PTHREAD-BARRIERATTR-T
    -
    -

    Type SUSV3-THR:PTHREAD-COND-T

    -   (DEFTYPE SUSV3-THR:PTHREAD-COND-T ()
    -     "Used for condition variables."
    -     ;; implementation dependent
    -    );;SUSV3-THR:PTHREAD-COND-T
    -
    -

    Type SUSV3-THR:PTHREAD-CONDATTR-T

    -   (DEFTYPE SUSV3-THR:PTHREAD-CONDATTR-T ()
    -     "Used to identify a condition attribute object."
    -     ;; implementation dependent
    -    );;SUSV3-THR:PTHREAD-CONDATTR-T
    -
    -

    Type SUSV3-THR:PTHREAD-KEY-T

    -   (DEFTYPE SUSV3-THR:PTHREAD-KEY-T ()
    -     "Used for thread-specific data keys."
    -     ;; implementation dependent
    -    );;SUSV3-THR:PTHREAD-KEY-T
    -
    -

    Type SUSV3-THR:PTHREAD-MUTEX-T

    -   (DEFTYPE SUSV3-THR:PTHREAD-MUTEX-T ()
    -     "Used for mutexes."
    -     ;; implementation dependent
    -    );;SUSV3-THR:PTHREAD-MUTEX-T
    -
    -

    Type SUSV3-THR:PTHREAD-MUTEXATTR-T

    -   (DEFTYPE SUSV3-THR:PTHREAD-MUTEXATTR-T ()
    -     "Used to identify a mutex attribute object."
    -     ;; implementation dependent
    -    );;SUSV3-THR:PTHREAD-MUTEXATTR-T
    -
    -

    Type SUSV3-THR:PTHREAD-ONCE-T

    -   (DEFTYPE SUSV3-THR:PTHREAD-ONCE-T ()
    -     "Used for dynamic package initialization."
    -     ;; implementation dependent
    -    );;SUSV3-THR:PTHREAD-ONCE-T
    -
    -

    Type SUSV3-THR:PTHREAD-RWLOCK-T

    -   (DEFTYPE SUSV3-THR:PTHREAD-RWLOCK-T ()
    -     "Used for read-write locks."
    -     ;; implementation dependent
    -    );;SUSV3-THR:PTHREAD-RWLOCK-T
    -
    -

    Type SUSV3-THR:PTHREAD-RWLOCKATTR-T

    -   (DEFTYPE SUSV3-THR:PTHREAD-RWLOCKATTR-T ()
    -     "Used for read-write lock attributes."
    -     ;; implementation dependent
    -    );;SUSV3-THR:PTHREAD-RWLOCKATTR-T
    -
    -

    Type SUSV3-SPI:PTHREAD-SPINLOCK-T

    -   (DEFTYPE SUSV3-SPI:PTHREAD-SPINLOCK-T ()
    -     "Used to identify a spin lock."
    -     ;; implementation dependent
    -    );;SUSV3-SPI:PTHREAD-SPINLOCK-T
    -
    -

    Type SUSV3-THR:PTHREAD-T

    -   (DEFTYPE SUSV3-THR:PTHREAD-T ()
    -     "Used to identify a thread."
    -     ;; implementation dependent
    -    );;SUSV3-THR:PTHREAD-T
    -
    -

    Type SUSV3:SIZE-T

    -   (DEFTYPE SUSV3:SIZE-T ()
    -     "Used for sizes of objects."
    -     ;; implementation dependent
    -    );;SUSV3:SIZE-T
    -
    -   (ASSERT (SUBTYPEP 'SUSV3:SIZE-T '(INTEGER 0))

    Type SUSV3:SSIZE-T

    -   (DEFTYPE SUSV3:SSIZE-T ()
    -     "Used for a count of bytes or an error indication."
    -     ;; implementation dependent
    -    );;SUSV3:SSIZE-T
    -
    -   (ASSERT (AND (SUBTYPEP 'SUSV3:SSIZE-T 'INTEGER)
    -                (SUBTYPEP (INTEGER -1 SUSV3:SSIZE-MAX) SUSV3:SSIZE-T)))
    -)
    -

    Type SUSV3-XSI:SUSECONDS-T

    -   (DEFTYPE SUSV3-XSI:SUSECONDS-T ()
    -     "Used for time in microseconds."
    -     ;; implementation dependent
    -    );;SUSV3-XSI:SUSECONDS-T
    -
    -

    Type SUSV3:TIME-T

    -   (DEFTYPE SUSV3:TIME-T ()
    -     "Used for time in seconds."
    -     ;; implementation dependent
    -    );;SUSV3:TIME-T
    -
    -   (ASSERT (SUBTYPEP 'SUSV3:TIME-T '(OR INTEGER FLOAT))

    Type SUSV3-TMR:TIMER-T

    -   (DEFTYPE SUSV3-TMR:TIMER-T ()
    -     "Used for timer ID returned by timer_create()."
    -     ;; implementation dependent
    -    );;SUSV3-TMR:TIMER-T
    -
    -

    Type SUSV3-TRC:TRACE-ATTR-T

    -   (DEFTYPE SUSV3-TRC:TRACE-ATTR-T ()
    -     "Used to identify a trace stream attributes object."
    -     ;; implementation dependent
    -    );;SUSV3-TRC:TRACE-ATTR-T
    -
    -

    Type SUSV3-TRC:TRACE-EVENT-ID-T

    -   (DEFTYPE SUSV3-TRC:TRACE-EVENT-ID-T ()
    -     "Used to identify a trace event type."
    -     ;; implementation dependent
    -    );;SUSV3-TRC:TRACE-EVENT-ID-T
    -
    -

    Type SUSV3-TRC-TEF:TRACE-EVENT-SET-T

    -   (DEFTYPE SUSV3-TRC-TEF:TRACE-EVENT-SET-T ()
    -     "Used to identify a trace event type set."
    -     ;; implementation dependent
    -    );;SUSV3-TRC-TEF:TRACE-EVENT-SET-T
    -
    -

    Type SUSV3-TRC:TRACE-ID-T

    -   (DEFTYPE SUSV3-TRC:TRACE-ID-T ()
    -     "Used to identify a trace stream."
    -     ;; implementation dependent
    -    );;SUSV3-TRC:TRACE-ID-T
    -
    -

    Type SUSV3:UID-T

    -   (DEFTYPE SUSV3:UID-T ()
    -     "Used for user IDs."
    -     ;; implementation dependent
    -    );;SUSV3:UID-T
    -
    -   (ASSERT (SUBTYPEP 'SUSV3:UID-T 'INTEGER)

    Type SUSV3-XSI:USECONDS-T

    -   (DEFTYPE SUSV3-XSI:USECONDS-T ()
    -     "Used for time in microseconds."
    -     ;; implementation dependent
    -    );;SUSV3-XSI:USECONDS-T
    -
    -

    - -limits.h -

    Constant SUSV3:+NAME-MAX+

    -   (DEFCONSTANT SUSV3:+NAME-MAX+
    -     "Maximum number of bytes in a filename (not including terminating null)."
    -     ;; implementation dependent.
    -    )
    -
    -   (ASSERT (<= SUSV3:+POSIX-NAME-MAX+ SUSV3:+NAME-MAX+))
    -   ;; [XSI]:
    -   (ASSERT (<= SUSV3:+XOPEN-NAME-MAX+ SUSV3:+NAME-MAX+))
    -
    -

    -

    - -dirent.h -

    Type SUSV3:DIR

    -   (DEFTYPE SUSV3:DIR ()
    -     "A type representing a directory stream.
    -      Note: this is NOT a Common-Lisp stream."
    -     ;; opaque
    -    );;SUSV3:DIR
    -

    Type SUSV3:DIRENT

    -   (DEFSTRUCT SUSV3:DIRENT 
    -     (INO  0  :TYPE SUSV3:INO-T) ;; [XSI] File serial number
    -     (NAME "" :TYPE (SUSV3:BOUND-STRING 0 SUSV3:+NAME-MAX+)) ;; Name of entry
    -    );;SUSV3:DIRENT
    -

    Function SUSV3:OPENDIR

    -   (DECLAIM (FTYPE (FUNCTION (STRING) (OR NULL DIR)) SUSV3:OPENDIR))
    -   (DEFUN SUSV3:OPENDIR (PATH)
    -     ;; implementation dependent
    -     )
    -

    -

    Function SUSV3:READDIR

    -   (DECLAIM (FTYPE (FUNCTION (DIR) (OR NULL DIRENT)) SUSV3:READDIR))
    -   (DEFUN SUSV3:READDIR (DIR-STREAM)
    -     ;; implementation dependent
    -     )
    -

    Function SUSV3:REWINDDIR

    -   (DECLAIM (FTYPE (FUNCTION (DIR) NIL) SUSV3:REWINDDIR))
    -   (DEFUN SUSV3:REWINDDIR (DIR-STREAM)
    -     ;; implementation dependent
    -     (VALUES)
    -     )
    -

    Function SUSV3:CLOSEDIR

    -   (DECLAIM (FTYPE (FUNCTION (DIR) NIL) SUSV3:CLOSEDIR))
    -   (DEFUN SUSV3:CLOSEDIR (DIR-STREAM)
    -     ;; implementation dependent
    -     (VALUES)
    -     )
    -

    -

    Function SUSV3-TSF:READDIR-R

    [***SEE***: Must we implement this function? Or is it C-specific API?

    Function SUSV3-XSI:SEEKDIR

    -   (DECLAIM (FTYPE (FUNCTION (DIR INTEGER) NIL) SUSV3-XSI:SEEKDIR))
    -   (DEFUN SUSV3-XSI:SEEKDIR (DIR-STREAM POSITION)
    -     ;; implementation dependent
    -     (VALUES)
    -     )
    -

    Function SUSV3-XSI:TELLDIR

    -   (DECLAIM (FTYPE (FUNCTION (DIR) INTEGER) SUSV3-XSI:TELLDIR))
    -   (DEFUN SUSV3-XSI:TELLDIR (DIR-STREAM)
    -     ;; implementation dependent
    -     )
    -

    cl-posix-dirent-susv3-lisp cl-posix-generalities

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-posix-generalities.html b/clones/lisp/www.cliki.net/cl-posix-generalities.html deleted file mode 100644 index aaa5eae1..00000000 --- a/clones/lisp/www.cliki.net/cl-posix-generalities.html +++ /dev/null @@ -1,246 +0,0 @@ - - - - - CLiki: cl-posix-generalities - - - - - - - -
    cl-posix-generalities

    Generalities about the Common-Lisp-POSIX API

    Note: This page gathers some remarks made by people on news:comp.lang.lisp

    Principles

    We're not merging Common-Lisp and POSIX!

    We want to have access to POSIX primitives from Common-Lisp -applications as easily as from a C application. The POSIX API being -the Operating System Interface for the applications.

    In particular, we won't convert between PATHNAMES and strings -containing unix paths, and we won't convert between unix file -descriptors and Common-Lisp streams. (There may already exist such a -conversion function in the Common-Lisp implementation extension -packages).

    -

    Packages

    The main API

    - This API is defined by the Single UNIX Specification version 3.

    It is recommended that the various implementations reside in -packages named like:

    -     COM.INFORMATIMAGO.COMMON-LISP.SUSV3
    -     NET.SOURCEFORGE.CLISP.SUSV3
    -     COM.SMART-LISP-CORP.SUSV3
    -  

    The user can then choose one implementation or the other, and -re-nickname it to the reserved package name SUSV3.

    Note: The package name POSIX is already taken in various -implementations. Moreover, it's not descriptive enough.

    Alternative: -

      -
    • Perhaps it should be named:
    • -
    SUS3.

    Extensions

    SUSv3 defines various optional or extension API. -(See codes).

    These extensions will be defined in additional packages nicknamed:

    -    Nickname:       Example of package name:
    -    -------------   -------------------------------
    -    SUSV3-ADV       COM.INFORMATIMAGO.COMMON-LISP.SUSV3.ADV
    -    SUSV3-AIO       COM.INFORMATIMAGO.COMMON-LISP.SUSV3.AIO
    -    SUSV3-BAR       COM.INFORMATIMAGO.COMMON-LISP.SUSV3.BAR
    -    SUSV3-CPT       etc...
    -    SUSV3-CS
    -    SUSV3-FSC
    -    SUSV3-IP6
    -    SUSV3-MC1 (See: abreviation of a combination of options)
    -    SUSV3-MC2 (See: abreviation of a combination of options)
    -    SUSV3-MC3 (See: abreviation of a combination of options)
    -    SUSV3-MF
    -    SUSV3-MF-SHM (A combination)
    -    SUSV3-ML
    -    SUSV3-MR
    -    SUSV3-MON
    -    SUSV3-MPR
    -    SUSV3-MSG
    -    SUSV3-MX
    -    SUSV3-PIO
    -    SUSV3-PS
    -    SUSV3-RS
    -    SUSV3-RTS
    -    SUSV3-REM
    -    SUSV3-SHM
    -    SUSV3-SIO
    -    SUSV3-SPI
    -    SUSV3-SPN
    -    SUSV3-SS
    -    SUSV3-TCT
    -    SUSV3-TEF
    -    SUSV3-THR
    -    SUSV3-TMO
    -    SUSV3-TMR
    -    SUSV3-TPI
    -    SUSV3-TPP
    -    SUSV3-TPS
    -    SUSV3-TRC
    -    SUSV3-TRI
    -    SUSV3-TRL
    -    SUSV3-TSA
    -    SUSV3-TSF
    -    SUSV3-TSH
    -    SUSV3-TSP
    -    SUSV3-TSS
    -    SUSV3-TYM
    -    SUSV3-XSI
    -    SUSV3-XSR
    -

    Some code may not be relevant to a Common-Lisp API.

    - Alternatives: -

      -
    • Use the *FEATURES* system. - I don't like this option, leading to the use of #+ and #-. -
    • -

    Note: When defining lisp structures, we put all the fields, even -the optional ones that will be used only when the optional feature is -available.

    - [***SEE***: We need a mean to determine if a given extension is available. - Should each package export an AVAILABLE-P predicate? ]

    The Symbols

    A symbol name is derived from the C binding's name, by: -

      -
    1. uppercasing, then -
    2. -
    3. replacing underscore (#\_) characters with the hyphen (#\-) -
    4. -
    5. where the fields of a C structure all have a common prefix - (for example, "st_"), we omit it. -
    6. -
    7. constant names get prefix and suffix '+'s. -
    8. -
    - No other changes to "Lispify" symbol names are made, so creat() -becomes CREAT, not CREATE.

    Parameters

    Lisp constants, types, and structures are defined corresponding to -the constants, types and structures in the C API.

    The API is defined in terms of Common-Lisp.

    1. length arguments are omitted or optional where the sensible value -is obvious. For example: -
    2. -
    -(read fd buffer &optional (length (length buffer))) => bytes-read
    -

  • where C simulates "out" parameters using pointers (for instance, -in pipe() or socketpair()) we shall use multiple return values -instead, primary return value always first, then the others in left to -right order. - [***SEE***: This doesn't apply to data transfer functions that fill buffers.]
  • Note: We won't allow passing pathnames as unix path string -parameters. Common-Lisp pathnames are messy, no two implementation -can agree on their exact semantic, so it would defeat portability.


    - -The above statement defeats the whole purpose of having a CL POSIX API.
    Pathnames are part of CL and personally I expect them to work in any extension. The fact that there are rough edges in the spec does not condone falling back to a string based approach as the above suggests. -
    - -Marco Antoniotti 20040513 -

    Return values

    The return value is usually the same as for the C binding, except in -error cases: where the C function is defined as returning some -sentinel value and setting "errno" on error, we instead signal a -condition of type SYSCALL-ERROR. The actual error value ("errno") is -stored in this condition and can be accessed with SYSCALL-ERRNO. -[***SEE***: some interface to strerror, to get the user-readable translation -of the error number]

    We do not automatically translate the returned value into "Lispy" -objects - for example, POSIX:OPEN returns a small integer, not a -stream.

    However, we do convert the returned values into Common-Lisp values.

    Rationale: This is an interface to POSIX, not a high-level interface -that uses POSIX, and many people using it will actually want to mess -with the file descriptors directly. People needing Lispy interfaces -can implement them atop this - or indeed, use the existing COMMON-LISP -package, which already has many high-level constructs built on top of -the operating system.

    Issues

    • Constants may be replaced by keywords (for example: error codes).

    • -
    • What to do with variable-length functions - like execvp()? Do they take a list, or vector or either? - Don't forget that execlp etc. IMHO have no place in a foreign language - binding. These are just C wrappers to execv(), execve() and execv().

    • -
    • there are functions whose semantics are to initialize a C object, - like sigemptyset(). You probably want to keep it that way, rather - than turn sigemptyset() into a constructor that returns a a brand - new, empty signal set. Or it could have both behaviors: the set - could be returned as a second value, which is identical to the - optional argument if it is present, or a new object if the - argument is missing.

    • -
    • (Seems to be more a FFI issue): - Similarly, interfacing to [f]printf() is superfluous. vfprintf() is - mandatory when coming from a foreign language. Which is *not* to say - that there should be no POSIX:PRINTF. I'm all in favour of it! But it - is more likely to expand to a call to vprintf(), especially in some - implementations which create calls at run-time, instead of - generating compile-time native-code. -
    • -
    -    (defun posix:fprintf (fp format &rest args)
    -      (posix:vfprintf fp format (coerce args 'vector)))
    -    
    - A compiler-macro optimization might handle the case when posix:printf - is called literally, i.e. with a known number of arguments, on those - systems which generate native-code. - I have yet to see non-wrapper FFI definitions for variable-arg functions.

    - Which leads to another question: how to deal with [vsnf]printf and its - sisters' arguments which are all polymorphic?? -

      -
    1. -
    -            (typecase
    -             ((unsigned-int 32) ...
    -              (signed-int   32) ...
    -              single-float      ...
    -              string            ...
    -              (array fixnum)
    -              (array ...
    -              ...
    -              FFI-pointer
    -        
    -
  • ? - -
  • - There are a few cases where C parameters are "optional out", - e.g. sigaction(). C programmers can elect to pass in either a NULL or - a data pointer. I'm not sure whether this is covered by your rule. - - sigaction() is more like [newact] [oldact] whereas &optional always - implies [newact [oldact]], i.e. you cannot leave out the first. - The performance penalty of choosing to always create and return a - sigact structure vs. the C programmer's freedom to choose is debatable.

    -

  • - Also, reading into Lisp string buffers may be very - problematic. E.g. CLISP internally uses 16 or 32 bit characters - because it supports UNICODE, whereas most western day-to-day use - involves one byte ASCII or ISO-8859-1. - Do you plan to support reading into existing Lisp strings as part of - your API? Or would you just return new strings (using which encoding?)? - - Note: SUSv3 has provision of locales and multibytes characters!
  • References

    - -

    Commentary

    I would like to second Marco's comment earlier on this page. A CL binding for POSIX should integrate well with Lisp. I agree that the rules should be simple, so that a CL programmer looking at POSIX documentation could easily extrapolate the corresponding CL interfaces. So keep the rules simple, but make them lispy. It would be a great surprise to any CL programmer if a function expecting a file or directory name wouldn't accept a CL pathname. -- DanMuller 2004-10-05


    -standards
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-posix-header-list.html b/clones/lisp/www.cliki.net/cl-posix-header-list.html deleted file mode 100644 index 5b2a3181..00000000 --- a/clones/lisp/www.cliki.net/cl-posix-header-list.html +++ /dev/null @@ -1,255 +0,0 @@ - - - - - CLiki: cl-posix-header-list - - - - - - - -
    cl-posix-header-list
    -------------------- ---- ----------------- -------- --------------------------
    -  Header            Opt  Action            Ct+Ty+Fn Remarks
    -------------------- ---- ----------------- -------- --------------------------
    -* aio.h             AIO  ToBeSpecified     8+1+8
    -                          
    -                         I/O: C buffer (malloc'ed) or Common-Lisp buffer?
    -                              (passed as void*).
    -------------------- ---- ----------------- -------- --------------------------
    -* arpa/inet.h       -    ToBeSpecified     0+0+8    A few converting functions.
    -------------------- ---- ----------------- -------- --------------------------
    -* assert.h          CX   Ignored.                   COMMON-LISP:ASSERT
    -------------------- ---- ----------------- -------- --------------------------
    -* complex.h         CX   Ignored.                   COMMON-LISP:COMPLEX
    -------------------- ---- ----------------- -------- --------------------------
    -* cpio.h            XSI  ToBeSpecified     21+0+0   Only constants.
    -------------------- ---- ----------------- -------- --------------------------
    -* ctype.h           CX   Perhaps.                   COMMON-LISP:CHAR
    -
    -                         There seem to be more character classification
    -                         functions in ctype than in COMMON-LISP.
    -------------------- ---- ----------------- -------- --------------------------
    -* dirent.h          -    Specified
    -------------------- ---- ----------------- -------- --------------------------
    -* dlfcn.h           XSI  ToBeSpecified     4+0+4
    -------------------- ---- ----------------- -------- --------------------------
    -* errno.h           CX   ToBeSpecified     26+0+0   COMMON-LISP:CONDITION
    -
    -                         We only keep the constants.
    -                         Note: We cannot use keywords, because errno may take
    -                         values not listed among the defined constants.
    -------------------- ---- ----------------- -------- --------------------------
    -* fcntl.h                ToBeSpecified     37+1+5
    -------------------- ---- ----------------- -------- --------------------------
    -* fenv.h            CX   ?                 11+2+11
    -                                           
    -                         Floating point environment control.
    -                         Is this needed in Common-Lisp?
    -                         (Implementation may overide or go around
    -                         this low-level stuff).
    -------------------- ---- ----------------- -------- --------------------------
    -* float.h           CX
    -                         Floating point parameters. 
    -                         Most probably, we won't need this,
    -                         but let's check that we have all the
    -                         parameters in Common-Lisp.
    -------------------- ---- ----------------- -------- --------------------------
    -* fmtmsg.h               ToBeSpecified     25+0+1
    -------------------- ---- ----------------- -------- --------------------------
    -* fnmatch.h              ToBeSpecified     5+0+1
    -
    -                         The functionality of MATCH-PATHNAME-P 
    -                         but for unix paths!
    -------------------- ---- ----------------- -------- --------------------------
    -* ftw.h             XSI  ToBeSpecified     11+1+2   Directory Tree Walking
    -------------------- ---- ----------------- -------- --------------------------
    -* glob.h                 ToBeSpecified     11+1+2   
    -------------------- ---- ----------------- -------- --------------------------
    -* grp.h                  ToBeSpecified     0+1+7
    -------------------- ---- ----------------- -------- --------------------------
    -* iconv.h                ToBeSpecified     0+1+3    Charset Conversion !CLISP
    -------------------- ---- ----------------- -------- --------------------------
    -* inttypes.h        CX   Probably Not      *+*+6
    -
    -                         Defines known size integers (8bit, 16bit, 32bit),
    -                         and corresponding macros to be used in printf or
    -                         scanf. Perhaps needed along with printf and scanf?
    -------------------- ---- ----------------- -------- --------------------------
    -* iso646.h          CX   Definitely NOT!   (Alternative spelling for C ops :-)
    -------------------- ---- ----------------- -------- --------------------------
    -* langinfo.h             ToBeSpecified     55+0+1
    -------------------- ---- ----------------- -------- --------------------------
    -* libgen.h          XSI  ToBeSpecified     0+0+2    basename,dirname
    -------------------- ---- ----------------- -------- --------------------------
    -* limits.h               ToBeSpecified     *+0+0
    -
    -                         There are functions to determine the limits
    -                         at run-time.  fpathconf(), pathconf(), and sysconf()
    -                         Nice to implement the API in Common-Lisp!
    -
    -------------------- ---- ----------------- -------- --------------------------
    -* locale.h               ToBeSpecified     7+1+2
    -------------------- ---- ----------------- -------- --------------------------
    -* math.h                 Probably Not      *+2+*    COMMON-LISP:NUMBER
    -                         Let's check if we miss any function.
    -------------------- ---- ----------------- -------- --------------------------
    -* monetary.h             ToBeSpecified     0+0+1
    -------------------- ---- ----------------- -------- --------------------------
    -* mqueue.h  
    -------------------- ---- ----------------- -------- --------------------------
    -* ndbm.h  
    -------------------- ---- ----------------- -------- --------------------------
    -* net/if.h  
    -------------------- ---- ----------------- -------- --------------------------
    -* netdb.h  
    -------------------- ---- ----------------- -------- --------------------------
    -* netinet/in.h  
    -------------------- ---- ----------------- -------- --------------------------
    -* netinet/tcp.h  
    -------------------- ---- ----------------- -------- --------------------------
    -* nl_types.h  
    -------------------- ---- ----------------- -------- --------------------------
    -* poll.h  
    -------------------- ---- ----------------- -------- --------------------------
    -* pthread.h  
    -------------------- ---- ----------------- -------- --------------------------
    -* pwd.h  
    -------------------- ---- ----------------- -------- --------------------------
    -* regex.h  
    -------------------- ---- ----------------- -------- --------------------------
    -* sched.h  
    -------------------- ---- ----------------- -------- --------------------------
    -* search.h  
    -------------------- ---- ----------------- -------- --------------------------
    -* semaphore.h  
    -------------------- ---- ----------------- -------- --------------------------
    -* setjmp.h  
    -------------------- ---- ----------------- -------- --------------------------
    -* signal.h  
    -------------------- ---- ----------------- -------- --------------------------
    -* spawn.h  
    -------------------- ---- ----------------- -------- --------------------------
    -* stdarg.h  
    -------------------- ---- ----------------- -------- --------------------------
    -* stdbool.h  
    -------------------- ---- ----------------- -------- --------------------------
    -* stddef.h  
    -------------------- ---- ----------------- -------- --------------------------
    -* stdint.h  
    -------------------- ---- ----------------- -------- --------------------------
    -* stdio.h  
    -------------------- ---- ----------------- -------- --------------------------
    -* stdlib.h  
    -------------------- ---- ----------------- -------- --------------------------
    -* string.h  
    -------------------- ---- ----------------- -------- --------------------------
    -* strings.h  
    -------------------- ---- ----------------- -------- --------------------------
    -* stropts.h  
    -------------------- ---- ----------------- -------- --------------------------
    -* sys/ipc.h  
    -------------------- ---- ----------------- -------- --------------------------
    -* sys/mman.h  
    -------------------- ---- ----------------- -------- --------------------------
    -* sys/msg.h  
    -------------------- ---- ----------------- -------- --------------------------
    -* sys/resource.h  
    -------------------- ---- ----------------- -------- --------------------------
    -* sys/select.h  
    -------------------- ---- ----------------- -------- --------------------------
    -* sys/sem.h  
    -------------------- ---- ----------------- -------- --------------------------
    -* sys/shm.h  
    -------------------- ---- ----------------- -------- --------------------------
    -* sys/socket.h  
    -------------------- ---- ----------------- -------- --------------------------
    -* sys/stat.h  
    -------------------- ---- ----------------- -------- --------------------------
    -* sys/statvfs.h  
    -------------------- ---- ----------------- -------- --------------------------
    -* sys/time.h  
    -------------------- ---- ----------------- -------- --------------------------
    -* sys/timeb.h  
    -------------------- ---- ----------------- -------- --------------------------
    -* sys/times.h  
    -------------------- ---- ----------------- -------- --------------------------
    -* sys/types.h  
    -------------------- ---- ----------------- -------- --------------------------
    -* sys/uio.h  
    -------------------- ---- ----------------- -------- --------------------------
    -* sys/un.h  
    -------------------- ---- ----------------- -------- --------------------------
    -* sys/utsname.h  
    -------------------- ---- ----------------- -------- --------------------------
    -* sys/wait.h  
    -------------------- ---- ----------------- -------- --------------------------
    -* syslog.h  
    -------------------- ---- ----------------- -------- --------------------------
    -* tar.h  
    -------------------- ---- ----------------- -------- --------------------------
    -* termios.h  
    -------------------- ---- ----------------- -------- --------------------------
    -* tgmath.h  
    -------------------- ---- ----------------- -------- --------------------------
    -* time.h  
    -------------------- ---- ----------------- -------- --------------------------
    -* trace.h  
    -------------------- ---- ----------------- -------- --------------------------
    -* ucontext.h  
    -------------------- ---- ----------------- -------- --------------------------
    -* ulimit.h  
    -------------------- ---- ----------------- -------- --------------------------
    -* unistd.h  
    -------------------- ---- ----------------- -------- --------------------------
    -* utime.h  
    -------------------- ---- ----------------- -------- --------------------------
    -* utmpx.h  
    -------------------- ---- ----------------- -------- --------------------------
    -* wchar.h  
    -------------------- ---- ----------------- -------- --------------------------
    -* wctype.h  
    -------------------- ---- ----------------- -------- --------------------------
    -* wordexp.h  
    -------------------- ---- ----------------- -------- --------------------------
    -

    standards

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-ppcre.html b/clones/lisp/www.cliki.net/cl-ppcre.html deleted file mode 100644 index ff14537d..00000000 --- a/clones/lisp/www.cliki.net/cl-ppcre.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-ppcre - - - - - - - -
    cl-ppcre
    A portable, Perl-compatible regular expression library by Edi Weitz.

    CL-PPCRE was also used to implement The Regex Coach.

    Homepage: at github.io

    Repository: GitHub

    License: BSD

    Topics: regular expression

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-prevalence.html b/clones/lisp/www.cliki.net/cl-prevalence.html deleted file mode 100644 index b636618b..00000000 --- a/clones/lisp/www.cliki.net/cl-prevalence.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-prevalence - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-proj.html b/clones/lisp/www.cliki.net/cl-proj.html deleted file mode 100644 index fd31445b..00000000 --- a/clones/lisp/www.cliki.net/cl-proj.html +++ /dev/null @@ -1,61 +0,0 @@ - - - - - CLiki: cl-proj - - - - - - - -
    cl-proj
    cl-proj is a geospatial library that provides CFFI-based Common Lisp bindings for the Proj.4 geographic projections library.

    Current version provides low-level bindings. Future versions might provide a higher-level wrapper around native functions and data structures.

    In addition to Proj4 library bindings this package contains a number of utility functions, including:

      -
    • Parsing degrees from a string and conversion between degree-minutes-seconds and decimal representations -
    • -
    • Simplification of polygons/polylines (reducing number of vertices) using the Ramer–Douglas–Peucker algorithm -
    • -
    • Projecting points from a geographic space onto a screen with the given dimensions and viewport -
    • -
    • Construction of circular lines with the given radius and center (like missile ranges, etc.) -
    • -
    -it also provides bindings to the set of geodesic calculations API from the recent Proj4 distributions.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-protobufs.html b/clones/lisp/www.cliki.net/cl-protobufs.html deleted file mode 100644 index ce1bb6af..00000000 --- a/clones/lisp/www.cliki.net/cl-protobufs.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-protobufs - - - - - - - -
    cl-protobufs
    CL-PROTOBUFS is a library to use Google Protocol Buffers in Common Lisp, originally written by Scott McKay at ITA by Google.

    Its rivals seem to be protobuf and s-protobuf. The library documentation is included in the sources in a ReST document cl-protobufs.rst. You can git clone https://gitlab.common-lisp.net/qitab/cl-protobufs.git (If you're a developer, use git@gitlab.common-lisp.net/qitab/cl-protobufs.git). Or you can browse the git web interface at https://gitlab.common-lisp.net/qitab/cl-protobufs

    Home page: http://common-lisp.net/project/qitab/


    -wire format
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-pubmed.html b/clones/lisp/www.cliki.net/cl-pubmed.html deleted file mode 100644 index 656f5cb4..00000000 --- a/clones/lisp/www.cliki.net/cl-pubmed.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-pubmed - - - - - - - -
    cl-pubmed
    cl-pubmed is an interface to the PubMed medical literature Database. It is written by Kevin Rosenberg.

    Depends on: kmrcl and AllegroServe

    Repository: http://git.kpe.io/?p=pubmed.git;a=summary

    License: LGPL

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-qprint.html b/clones/lisp/www.cliki.net/cl-qprint.html deleted file mode 100644 index a3179121..00000000 --- a/clones/lisp/www.cliki.net/cl-qprint.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-qprint - - - - - - - -
    cl-qprint
    cl-qprint is a library for encoding to and decoding the quoted-printable (MIME) data format.

    cl-qprint was written by Robert Marlow and is now maintained by Max Rottenkolber.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-quickcheck.html b/clones/lisp/www.cliki.net/cl-quickcheck.html deleted file mode 100644 index 558f7db6..00000000 --- a/clones/lisp/www.cliki.net/cl-quickcheck.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-quickcheck - - - - - - - -
    cl-quickcheck
    cl-quickcheck is a test framework for property-based testing. It is a Common Lisp port of QuickCheck.

    Homepage: https://github.com/mcandre/cl-quickcheck

    License: MIT

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-randist.html b/clones/lisp/www.cliki.net/cl-randist.html deleted file mode 100644 index 24581c29..00000000 --- a/clones/lisp/www.cliki.net/cl-randist.html +++ /dev/null @@ -1,75 +0,0 @@ - - - - - CLiki: cl-randist - - - - - - - -
    cl-randist
    This package is a manual translation from C to common lisp of some random number generation functions of GSL library. The package also include the alias method implementation of Mario S. Mommer and my implementation of cut point method for discrete random variable generation.

    Implements random number generation for the following distributions: -

      -
    • Normal (Gaussian) -
    • -
    • Bivariate Normal -
    • -
    • Gamma -
    • -
    • Dirichlet -
    • -
    • Beta -
    • -
    • Binomial -
    • -
    • Negative Binomial -
    • -
    • Poisson -
    • -
    • Multinomial -
    • -
    • General discrete distribution by Alias Method -
    • -

    Home page: http://code.google.com/p/cl-randist/.

    Git repository: https://github.com/lvaruzza/cl-randist/.

    License: BSD

    Author: Leonardo Varuzza

    New release: 0.4.4, Fix compilation problem with asdf3. -New release: 0.4.3, with Paul Khung changes.


    -Topics: Statistics
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-random.html b/clones/lisp/www.cliki.net/cl-random.html deleted file mode 100644 index 59a54e63..00000000 --- a/clones/lisp/www.cliki.net/cl-random.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: cl-random - - - - - - - -
    cl-random
    [unmaintained, maintainers welcome] A library for uni- and multivariate probability distributions and statistics functions.


    -Prolific author of this library has switched to another language. According to him, would-be maintainer should fork and maintain for a year, announce the library resurrection, drop him an e-mail so he would redirect users, and convince Zach Beane to use the fork in Quicklisp. -

    The library is well-tested and functional, but the API is still in flux. Please refer to the unit-tests directory for examples.

    Homepage: GitHub

    License: MIT

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-raytracer.html b/clones/lisp/www.cliki.net/cl-raytracer.html deleted file mode 100644 index ac9a6e74..00000000 --- a/clones/lisp/www.cliki.net/cl-raytracer.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-raytracer - - - - - - - -
    cl-raytracer
    A bare-bones ray tracer written in Common Lisp.

    Repository: https://github.com/mqvist/cl-raytracer

    License: Apache 2


    -graphics library
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-rdbms.html b/clones/lisp/www.cliki.net/cl-rdbms.html deleted file mode 100644 index b6dc74da..00000000 --- a/clones/lisp/www.cliki.net/cl-rdbms.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-rdbms - - - - - - - -
    cl-rdbms
    cl-rdbms is a SQL database interface. It was created as an alternative to CLSQL.

    Databases supported: PostgreSQL, Oracle, and SQLite

    License: public domain

    Homepage: http://dwim.hu/darcs/hu.dwim.rdbms

    Authors: Levente Mészáros, Tamás Borbély and Attila Lendvai.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-read-macro-tokens.html b/clones/lisp/www.cliki.net/cl-read-macro-tokens.html deleted file mode 100644 index 09ae4fc2..00000000 --- a/clones/lisp/www.cliki.net/cl-read-macro-tokens.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: cl-read-macro-tokens - - - - - - - -
    cl-read-macro-tokens
    Modify lisp reader, so that it could dispatch not only on characters, but also on arbitrary symbols in CAR -position of a list.

    It also adds DEFMACRO!! macros, which lets you define macro, which modify lisp-reader inside their body.

    For more info and usage, see README on the homepage.

    Licence: GPL

    Homepage: https://github.com/mabragor/cl-read-macro-tokens

    Depends on: defmacro-enhance


    -language extension
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-readline.html b/clones/lisp/www.cliki.net/cl-readline.html deleted file mode 100644 index 011d4a07..00000000 --- a/clones/lisp/www.cliki.net/cl-readline.html +++ /dev/null @@ -1,139 +0,0 @@ - - - - - CLiki: CL-READLINE - - - - - - - -
    CL-READLINE
    Common - Lisp bindings to GNU Readline -library.

    The Readline library provides a set of functions for use by applications - that allow users to edit command lines as they are typed in. Both Emacs - and vi editing modes are available. The Readline library includes -additional functions to maintain a list of previously-entered command -lines, to recall and perhaps reedit those lines, and perform csh-like -history expansion on previous commands.

    These bindings provide Lispy interface to GNU Readline somewhat reducing - its hair. Some minor features are omitted, they may be added by -request. Open an -issue if you have any propositions.

    GitHub repository: https://github.com/vindarel/cl-readline

    You - can install it via Quicklisp:

    (ql:quickload "cl-readline") -

    I created this bindings because Linedit didn't work for me. Also, Linedit doesn't have decent documentation, -that README file describing 4 functions doesn't count. So I did my best -to write proper documentation too.

    Here is an example of cl-readline in action:

    ;;; Load some systems and define a package... - -(asdf:load-system :alexandria) -(asdf:load-system :cl-readline) - -(cl:defpackage :example - (:use #:common-lisp - #:alexandria) - (:export #:run-example)) - -(in-package :example) - -;;; Now let's define lists of verbs and fruits: - -(defvar *verbs* '("eat" "get" "throw" "quit")) -(defvar *fruits* '("banana" "apple" "orange" "banana_two")) - -;;; Define and register function that does custom completion: if user enters -;;; first word, it will be completed as a verb, second and later words will -;;; be completed as fruits. - -(defun custom-complete (text start end) - (declare (ignore end)) - (labels ((common-prefix (items) - (subseq - (car items) 0 - (position - nil - (mapcar - (lambda (i) - (every (lambda (x) - (char= (char (car items) i) - (char x i))) - (cdr items))) - (iota (reduce #'min (mapcar #'length items))))))) - (select-completions (list) - (let ((els (remove-if-not (curry #'starts-with-subseq text) - list))) - (if (cdr els) - (cons (common-prefix els) els) - els)))) - (if (zerop start) - (select-completions *verbs*) - (select-completions *fruits*)))) - -(rl:register-function :complete #'custom-complete) - -;;; Let's also create a custom command and bind it to some key sequence so -;;; user can invoke it. In this example user can automagically insert phrase -;;; 'inserted text' pressing Control-o. - -(defun print-some-text (arg key) - (declare (ignore arg key)) - (rl:insert-text "inserted text")) - -(rl:bind-keyseq "\\C-o" #'print-some-text) - -;;; Let's write novelty-check, so if the actual line is equal to the most -;;; recent history line it will not be added to the history. - -(defun novelty-check (x y) - (string/= (string-trim " " x) - (string-trim " " y))) - -;;; Finally, this is our main function. To exit from the loop, enter 'quit'. - -(defun run-example () - (do ((i 0 (1+ i)) - (text "")) - ((string= "quit" (string-trim " " text))) - (setf text - (rl:readline :prompt (format nil "[~a]> " i) - :add-history t - :novelty-check #'novelty-check)))) -

    cl-readline is written and maintained by Mark Karpov.

    It's distributed under GNU GPL.


    Relevant topics: library, text, console

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-recaptcha.html b/clones/lisp/www.cliki.net/cl-recaptcha.html deleted file mode 100644 index 0ec25c14..00000000 --- a/clones/lisp/www.cliki.net/cl-recaptcha.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-recaptcha - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-redis.html b/clones/lisp/www.cliki.net/cl-redis.html deleted file mode 100644 index 128c14ce..00000000 --- a/clones/lisp/www.cliki.net/cl-redis.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: cl-redis - - - - - - - -
    cl-redis
    CL-Redis: Common Lisp client library for Redis database, an advanced key/value store. It is thoroughly tested with the Redis-2.0.0-rc2 release.

    The source code can be found at: GitHub (Manual).

    Since version 1.6.0, we switched to iolib backend. Version 1.5.0 is the last release with usocket backend.

    -


    -StructuredStorage
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-reexport.html b/clones/lisp/www.cliki.net/cl-reexport.html deleted file mode 100644 index 2f71f240..00000000 --- a/clones/lisp/www.cliki.net/cl-reexport.html +++ /dev/null @@ -1,109 +0,0 @@ - - - - - CLiki: cl-reexport - - - - - - - -
    cl-reexport
    cl-reexport makes a package reexport symbols which are external symbols in other packages. This functionality is intended to be used with (virtual) hierarchical packages.

    Usage

    Think about a (virtual) hierarchical package structure. Since Common Lisp standard has just a flat package system, the three packages are naturally at the same level, but you can regard the packages constituting a hierarchy virtually.

    FOO-package
    -- FOO-PACKAGE.BAR
    -- FOO-PACKAGE.BAZ

    Here, their definitions are:

    (in-package :cl-user) - -(defpackage foo-package.bar - (:use :cl) - (:export :x)) - -(defpackage foo-package.baz - (:use :cl) - (:export :y)) - -(defpackage foo-package - (:use :cl))

    If you want reexport external symbols in FOO-PACKAGE.BAR and FOO-PACKAGE.BAZ from FOO-PACKAGE, you may just write as below:

    (in-package :foo-package) -(cl-reexport:reexport-from :foo-package.bar) -(cl-reexport:reexport-from :foo-package.baz) - -(in-package :cl-user) - -(describe 'x) ->> FOO-PACKAGE.BAR:X ->> [symbol] - -(describe 'y) ->> FOO-PACKAGE.BAZ:Y ->> [symbol]

    :INCLUDE and :EXCLUDE options

    You can also reexport the only symbols you specify or the symbols other than you specify using :INCLUDE option or :EXCLUDE option. Since they are exclusive, you cannot use :INCLUDE option and :EXCLUDE option at the same time.

    (in-package :cl-user) - -(defpackage bar-package.a - (:use :cl) - (:export :x :y :z)) - -(defpackage bar-package.b - (:use :cl) - (:export :p :q :r)) - -(defpackage bar-package - (:use :cl)) - -(in-package :bar-package) - -(cl-reexport:reexport-from :bar-package.a - :include '(:x)) - -(cl-reexport:reexport-from :bar-package.b - :include '(:p)) - -(in-package :cl-user) - -(do-external-symbols (x :bar-package) - (print x)) ->> BAR-PACKAGE.A:X ->> BAR-PACKAGE.B:Q ->> BAR-PACKAGE.B:R

    Installation

    You can install cl-reexport via Quicklisp:

    (ql:quicklisp :cl-reexport)

    Difference from ASDF 3's one-package-per-file functionality

    ASDF 3 has one-package-per-file functionality and its runtime support. The structural difference between (virtual) hierarchical packages and ASDF 3's one-package-per-file functionality is:

      -
    • (Virtual) hierarchical packages have one system definition and several packages constitute a hierarchical structure.
    • -
    • -ASDF 3's one-package-per-file style has hierarchical system definitions and hierarchical packages, which are corresponding each other.
    • -
    -When you use former style, you can use cl-reexport.


    -convenience library
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-reversi.html b/clones/lisp/www.cliki.net/cl-reversi.html deleted file mode 100644 index 7b3ecdec..00000000 --- a/clones/lisp/www.cliki.net/cl-reversi.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: cl-reversi - - - - - - - -
    cl-reversi
    cl-reversi is a Common Lisp application of the classic -reversi or Othello® game. The code is based on Peter Norvig's -example code in his Paradigms of Artificial Intelligence Programing book. cl-reversi has code added by Kevin Rosenberg -which adds significant optimizations, asdf-based package loading, and a CLIM-based graphical user interface.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-rfc4251.html b/clones/lisp/www.cliki.net/cl-rfc4251.html deleted file mode 100644 index a3e2d5ef..00000000 --- a/clones/lisp/www.cliki.net/cl-rfc4251.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-rfc4251 - - - - - - - -
    cl-rfc4251
    cl-rfc4251 is a Common Lisp system, which provides support for parsing RFC 4251 encoded binary data, as described in the Data Type Representations Used in the SSH Protocols section of the document.

    Depends on: trivial-gray-streams, uiop

    Repository: https://github.com/dnaeon/cl-rfc4251

    License: BSD 2-Clause


    -binary format
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-riff.html b/clones/lisp/www.cliki.net/cl-riff.html deleted file mode 100644 index d2c1fcab..00000000 --- a/clones/lisp/www.cliki.net/cl-riff.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-riff - - - - - - - -
    cl-riff
    The Resource Interchange File Format (RIFF) is a generic file container format for storing data in tagged chunks. It is primarily used to store multimedia such as sound and video, though it may also be used to store any arbitrary data. Chunks are represented as plists, with accessor methods defined for chunk-id, chunk-data-size, chunk-data and file-type.

    Repository: https://github.com/RobBlackwell/cl-riff


    -BSD License
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-rmath.html b/clones/lisp/www.cliki.net/cl-rmath.html deleted file mode 100644 index 69cdcf94..00000000 --- a/clones/lisp/www.cliki.net/cl-rmath.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: cl-rmath - - - - - - - -
    cl-rmath
    [unmaintained, maintainers welcome] A simple, autogenerated foreign interface for the standalone R API.


    -Prolific author of this library has switched to another language. According to him, would-be maintainer should fork and maintain for a year, announce the library resurrection, drop him an e-mail so he would redirect users, and convince Zach Beane to use the fork in Quicklisp. -

    A wrapper for libRmath.

    Homepage: GitHub

    License: Boost

    See Also: RCL, rclg

    Topics: mathematics

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-routes.html b/clones/lisp/www.cliki.net/cl-routes.html deleted file mode 100644 index 443f6cd8..00000000 --- a/clones/lisp/www.cliki.net/cl-routes.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-routes - - - - - - - -
    cl-routes
    cl-routes is Common Lisp re-implementation of the Rails routes system for mapping URL's (also, see https://routes.readthedocs.io/en/latest/)


    -URI
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-rss-gen.html b/clones/lisp/www.cliki.net/cl-rss-gen.html deleted file mode 100644 index 3eb74de9..00000000 --- a/clones/lisp/www.cliki.net/cl-rss-gen.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: cl-rss-gen - - - - - - - -
    cl-rss-gen
    cl-rss-gen is a tiny Common Lisp library that generates RSS (RDF Site Summary). -It's released under the LGPL license. -It's capable of generating RSS items directly from any CLOS class instances by mapping each slot to specific RSS tag (you just specify which slots map to which tags).

    The code is hosted on GitHub (https://github.com/lukaramishvili/cl-rss-gen).

    cl-rss-gen depends on cl-who by Edi Weitz, and thanks to him cl-rss-gen is so short. -You should load cl-who by your favorite package manager before loading cl-rss-gen. It's (asdf:operate 'asdf:load-op 'cl-who) for ASDF, and (ql:quickload :cl-who) for Quicklisp.

    cl-rss-gen is in draft stage. I needed and couldn't find such functionality, so wrote my own. I suggest looking at the code (it's really tiny) before using it.

    Anyway, for simple needs cl-rss-gen already works. Feel free to send suggestions. corrections, patches and bug-fixes to mail@luka.ge. I will add your name to this page if the changes get incorporated (very likely so).

    This library is written by Luka Ramishvili (luka.ge), in the hope that it will be useful.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-rss.html b/clones/lisp/www.cliki.net/cl-rss.html deleted file mode 100644 index d825fc24..00000000 --- a/clones/lisp/www.cliki.net/cl-rss.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: cl-rss - - - - - - - -
    cl-rss
    This package provides a Common Lisp library for fetching and parsing Remote Site Summary data via HTTP. Currently, it supports RSS versions 0.90, 0.91, and - 0.92.

    Download: http://git.kpe.io/?p=cl-rss.git;a=summary

    License: BSD 3-Clause


    -Topics: RSS
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-rsvg.html b/clones/lisp/www.cliki.net/cl-rsvg.html deleted file mode 100644 index 7835228e..00000000 --- a/clones/lisp/www.cliki.net/cl-rsvg.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-rsvg - - - - - - - -
    cl-rsvg
    cl-rsvg is a set of bindings for the librsvg SVG image file library. It renders SVGs to cl-cairo, from whence output can be made to SVG, PNG, PDF, PS, and possibly other formats.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-rttemplate.html b/clones/lisp/www.cliki.net/cl-rttemplate.html deleted file mode 100644 index a5afbb62..00000000 --- a/clones/lisp/www.cliki.net/cl-rttemplate.html +++ /dev/null @@ -1,58 +0,0 @@ - - - - - CLiki: cl-rttemplate - - - - - - - -
    cl-rttemplate
    cl-rttemplate is a quotation system which works in a similar way like the quasiquotation, but during the read-time. The homepage of project is http://ql-goheecus.goheeca.ga/lisp/cl-rttemplate/ (the old site is: http://lisp.hyperprostor.g6.cz/lisp/cl-rttemplate/). It's released in the public domain. -

    Usage

    -Enable the syntax by: -
    (cl-rttemplate:enable-syntax)
    -or: -
    (rtt:enable-syntax)
    -
    -Topics: language extension
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-sane.html b/clones/lisp/www.cliki.net/cl-sane.html deleted file mode 100644 index 58f8f9ca..00000000 --- a/clones/lisp/www.cliki.net/cl-sane.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-sane - - - - - - - -
    cl-sane
    cl-sane is a set of bindings for the SANE (Scanner Access Now Easy) image scanner library.

    Depends on: iterate, CFFI, trivial-gray-streams

    Source repository: https://repo.or.cz/cl-sane.git

    License: GPLv3


    -Topics: graphics library
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-sanitize.html b/clones/lisp/www.cliki.net/cl-sanitize.html deleted file mode 100644 index bc8f192b..00000000 --- a/clones/lisp/www.cliki.net/cl-sanitize.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-sanitize - - - - - - - -
    cl-sanitize
    cl-sanitize is a whitelist-based HTML sanitizer. Given a list of acceptable elements and attributes, cl-sanitize will remove all unacceptable HTML from a string.

    Homepage: https://github.com/archimag/cl-sanitize

    License: LLGPL


    -Topics: HTML parser
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-sap.html b/clones/lisp/www.cliki.net/cl-sap.html deleted file mode 100644 index 93c31fe8..00000000 --- a/clones/lisp/www.cliki.net/cl-sap.html +++ /dev/null @@ -1,70 +0,0 @@ - - - - - CLiki: cl-sap - - - - - - - -
    cl-sap
    SimpleAudioPlayer is a simple audio player library for windows which utilizes DirectShow.

    The library has Common Lisp interface, cl-sap

    Source code is available on Github.

    Usage example:

    -(defparameter *url* "http://example.com/music.mp3") - -(defparameter *player* - (make-instance 'cl-sap:simple-audio-player - :autoplay t - :callback (lambda (sap state) - (declare (ignore sap)) - (format t "New state: ~:(~a~)~%" state)))) - -;; Initialize COM runtime on current thread -(cl-sap:sap-init-com) - -;; set player source. :autoplay initarg forces player to start playback automatically on successful media opening -(setf (cl-sap:sap-source *player*) *url*) - -;; observe "New state: Playing" on stdout and listen the audio -;; ...wait for audio playback completion -(cl-sap:sap-wait *player*) -

    audio Windows

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-sasl.html b/clones/lisp/www.cliki.net/cl-sasl.html deleted file mode 100644 index f6e1dedf..00000000 --- a/clones/lisp/www.cliki.net/cl-sasl.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-sasl - - - - - - - -
    cl-sasl
    cl-sasl is a client implementation of the Simple Authentication and Security Layer (SASL) networking protocol.

    Currently the PLAIN, DIGEST-MD5 and ANONYMOUS mechanisms are implemented. -It can be found at xn--9dbdkw.se/cl-sasl.html and github.com/legoscia/cl-sasl/.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-satwrap.html b/clones/lisp/www.cliki.net/cl-satwrap.html deleted file mode 100644 index 3b209c7a..00000000 --- a/clones/lisp/www.cliki.net/cl-satwrap.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-satwrap - - - - - - - -
    cl-satwrap
    A thin generic SAT (propositional satisfiability problem) solver interface to your favorite “industrial-strength” SAT solver. Whichever code wins the next SATRace competition, it is easily glued on as a new backend, no need to change your CL code.

    For a start it include PrecoSat, from PrecoSAT (jku.at) and Minisat v2, from minisat.se, but more backends can easily be added.

    License: LLGPL

    Repository: at repo.or.cz

    See Also: cl-cudd


    -Topics: algorithm, mathematics
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-schedule.html b/clones/lisp/www.cliki.net/cl-schedule.html deleted file mode 100644 index 77c5534d..00000000 --- a/clones/lisp/www.cliki.net/cl-schedule.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-schedule - - - - - - - -
    cl-schedule

    cl-schedule: A scheduling library in CL

    A task scheduler library for lisp. It's forked from Gabor Melis's Clon which can be found at http://quotenil.com/clon/clon-latest.tar.gz. This was forked near 2014 with some bug-fix.

    It's then forked again by Jin-Cheng Guu in mid 2021 into his repo, aiming to replace traditional cron managers. It provides more examples, documents and features. In particular, in an example below we show how to make a schedule that does what a traditional cron manager would do for the control string

    */25 5-6,10 * 7 1-2

    Long story short, it can be expressed as the following.

    (make-typed-cron-schedule

    :minute '(satisfies twenty-five-p)

    :hour '(or (integer 5 6) (member 10))

    :month 7

    :day-of-week '(integer 0 1))

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-scripting.html b/clones/lisp/www.cliki.net/cl-scripting.html deleted file mode 100644 index b8957a8e..00000000 --- a/clones/lisp/www.cliki.net/cl-scripting.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-scripting - - - - - - - -
    cl-scripting
    cl-scripting is a collection of scripting utilities written by Fare Rideau

    I (Fare Rideau) have been moving out of writing shell scripts and instead writing scripts in Common Lisp. This is the collection of functions that I grow to support scripting in CL as a substitute to writing shell scripts, perl scripts, Makefile's, python scripts, etc. See my article Common Lisp as a Scripting Language, 2015 edition. See fare-scripts for examples of using cl-scripting; see also the tools/ directory in the asdf source repository.

    See the git repository at: https://github.com/fare/cl-scripting

    The collection is made of mostly independent files and relies on asdf 3's package-inferred-system support so that, e.g. commands.lisp can be loaded with (asdf:load-system :cl-scripting/commands). cl-scripting relies on uiop and inferior-shell for system access including spawning subprocesses. Various utilities may have their own additional dependencies.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-scrobbler.html b/clones/lisp/www.cliki.net/cl-scrobbler.html deleted file mode 100644 index 71db53fe..00000000 --- a/clones/lisp/www.cliki.net/cl-scrobbler.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-scrobbler - - - - - - - -
    cl-scrobbler
    cl-scrobbler is a binding to the Last.fm scrobbling API. It was designed for use as a Shuffletron plugin.

    Homepage: https://github.com/redline6561/cl-scrobbler

    License: BSD

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-sdl.html b/clones/lisp/www.cliki.net/cl-sdl.html deleted file mode 100644 index ea48feb9..00000000 --- a/clones/lisp/www.cliki.net/cl-sdl.html +++ /dev/null @@ -1,64 +0,0 @@ - - - - - CLiki: CL-SDL - - - - - - - -
    CL-SDL
    CL-SDL is a set of Common Lisp bindings for the SDL graphics library, and OpenGL, using UFFI.


    Unless you have a specific need for CL-SDL you should use lispbuilder-sdl. The CL-SDL project is not maintained anymore.


    It currently runs, to some extent, on a number of platforms, such as -

      -
    • CMUCL/x86
    • -
    • ACL: Allegro/Linux/x86 and Allegro/win32
    • -
    • LispWorks/Linux/x86 and LispWorks/win32 (but only 2D so far)
    • -
    • SBCL/x86 and SBCL/PowerPC (but only certain demos don't crash)
    • -
    • OpenMCL/Darwin (it compiles/loads and hopefully might even work soon!)
    • -
    • CLISP using the UFFI wrapper macros from Sourceforge's CLISP Patches section. The demos report the same FPS rate as for CMUCL, which shows that their limiting speed factor is not bytecodes vs. native code, but probably the OpenGL/MESA libraries and hardware. -It doesn't quite work. Does anyone has info how to make at least part of it work on win32? Note: There are Win32 DLLs on the project website, dated March 14, 2004. -
    • -

    The project page is at http://cl-sdl.sourceforge.net/.

    Using CL-SDL with CLISP

    You need the above UFFI wrappers. Additionally, I put - my patches to CL-SDL - on Sourceforge. That's how I got it running on Linux. I didn't try out MS-Windows. -- Jörg Höhle


    Problem with the popular Nvidia proprietary binary OpenGL drivers on Linux and CL-SDL on CMUCL:

    There is a problem with the "Thread Local Storage" (TLS) libraries of the nvidia drivers (and probably any other TLS libraries) in conjunction with CMUCL. A workaround is to set the environment variable LD_ASSUME_KERNEL=2.3.98 in the unix environment of your lisp process.

    Upgrading to 0.6111 GNU/Linux driver version, problems related to Nvidia and TLS seem to be fixed.


    -obsolete
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-sdl2.html b/clones/lisp/www.cliki.net/cl-sdl2.html deleted file mode 100644 index 4bd90c86..00000000 --- a/clones/lisp/www.cliki.net/cl-sdl2.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: cl-sdl2 - - - - - - - -
    cl-sdl2
    cl-sdl2 is a wrapper for SDL 2.0.

    License: MIT.

    Available via QuickLisp or github as above. -


    -game, graphics library
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-secure-read.html b/clones/lisp/www.cliki.net/cl-secure-read.html deleted file mode 100644 index 04aa9dfe..00000000 --- a/clones/lisp/www.cliki.net/cl-secure-read.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-secure-read - - - - - - - -
    cl-secure-read
    Define constrained versions of READ, READ-PRESERVING-WHITESPACE and READ-FROM-STRING -in spirit of Let Over Lambda.

    For the idea, why this is useful, see section named "Reader security" of LOL.

    For documentation, see README.md in the repository, and for examples of usage, see file tests.lisp.

    Licence: GPLv3

    Homepage: https://github.com/mabragor/cl-secure-read

    language extension

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-semantic.html b/clones/lisp/www.cliki.net/cl-semantic.html deleted file mode 100644 index 8ebfae3d..00000000 --- a/clones/lisp/www.cliki.net/cl-semantic.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-semantic - - - - - - - -
    cl-semantic
    cl-semantic is a collection of RDF/OWL extraction and relationship parsing macros.

    The cl-semantic project is hosted at common-lisp.net (some broken links—obsolete or are the installation instructions still applicable?)

    Repository: https://github.com/brandwe/cl-semantic

    License: Apache 2.0


    -Semantic Web
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-serializer.html b/clones/lisp/www.cliki.net/cl-serializer.html deleted file mode 100644 index f046953d..00000000 --- a/clones/lisp/www.cliki.net/cl-serializer.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-serializer - - - - - - - -
    cl-serializer
    cl-serializer reads and writes a graph of objects into a byte stream or vector. For more details see its web site.

    It's not unlike cl-store, Rucksack and the other such libs, but it's faster and conses less at the time of writing. The serialization can also be customized in a more finer grained manner and per invocation, giving means to control what is written as an identity or as a value (thinking of uninterned symbols, or the speed/space balance when serializing strings by reference or by value, etc).

    Topics: serialization

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-sgdos-csv.html b/clones/lisp/www.cliki.net/cl-sgdos-csv.html deleted file mode 100644 index 0941a3c2..00000000 --- a/clones/lisp/www.cliki.net/cl-sgdos-csv.html +++ /dev/null @@ -1,62 +0,0 @@ - - - - - CLiki: cl-sgdos-csv - - - - - - - -
    cl-sgdos-csv
    cl-sgdos-csv is a library for mapping CSV files to LISP lists and CLOS objects and viceversa. - Some of the features are: -
      -
    • Tuned performance of mapping
    • -
    • Binding data to fields in alists or slots in objects
    • -
    • Internationalized and multiline data.
    • -
    • Parseable formats extensible by templates (using define-csv-template)
    • -
    • High-order file mapping by rows using map-csv function.
    • -

    It's licensed under de GPLv3 so it's free software.

    Github: https://github.com/kmruiz/cl-sgdos-csv - You can download ASDF packages of any stable version here: https://github.com/kmruiz/cl-sgdos-csv/downloads -


    -Tags: CSV, file format
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-sipc.html b/clones/lisp/www.cliki.net/cl-sipc.html deleted file mode 100644 index 79d7374f..00000000 --- a/clones/lisp/www.cliki.net/cl-sipc.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-sipc - - - - - - - -
    cl-sipc
    Unix domain socket message passing for IPC in Common Lisp.

    Repository: https://github.com/notflan/cl-sipc


    -CFFI
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-skip-list.html b/clones/lisp/www.cliki.net/cl-skip-list.html deleted file mode 100644 index c61d67b0..00000000 --- a/clones/lisp/www.cliki.net/cl-skip-list.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-skip-list - - - - - - - -
    cl-skip-list
    cl-skip-lisp is a lock-free skip list implementation that works with SBCL 1.0.42 and above. Its source can be found here: http://github.com/kraison/cl-skip-list.

    Author: Kevin Raison

    License: MIT

    Homepage: http://github.com/kraison/cl-skip-list


    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-slice.html b/clones/lisp/www.cliki.net/cl-slice.html deleted file mode 100644 index 07a782e5..00000000 --- a/clones/lisp/www.cliki.net/cl-slice.html +++ /dev/null @@ -1,59 +0,0 @@ - - - - - CLiki: cl-slice - - - - - - - -
    cl-slice
    This library was unmaintained for several years. It has been resurrected under the name 'select' as part of the Lisp-Stat project.

    This library provides:

      -
    1. An API for taking slices (elements selected by the Cartesian product of vectors of subscripts for each axis) of array-like objects. The most important function is select. Unless you want to define additional methods for select, this is pretty much all you need from this library. See the documentation for a tutorial. -
    2. -
    3. An extensible DSL for selecting a subset of valid subscripts. This is useful if, for example, you want to resolve column names in a data frame in your implementation of select. -
    4. -
    5. A set of utility functions for traversing selections in array-like objects. -
    6. -
    -Homepage: GitHub

    License: MS-PL

    See Also: xarray

    Topics: language extension, data structure

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-slug.html b/clones/lisp/www.cliki.net/cl-slug.html deleted file mode 100644 index 2e03ca1c..00000000 --- a/clones/lisp/www.cliki.net/cl-slug.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: cl-slug - - - - - - - -
    cl-slug
    cl-slug is a small library to make slugs, mainly for URIs, from english and beyond.

    Example:

    -(slugify "My new cool article, for the blog (V. 2).") -; => "my-new-cool-article-for-the-blog-v-2" -

    We can also put another symbol than a dash as delimiter or use CamelCase.

    cl-slug is in Quicklisp.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-smoke.html b/clones/lisp/www.cliki.net/cl-smoke.html deleted file mode 100644 index d5ecac2a..00000000 --- a/clones/lisp/www.cliki.net/cl-smoke.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-smoke - - - - - - - -
    cl-smoke
    cl-smoke is a SMOKE-based wrapper for the Qt and KDE GUI frameworks.

    Homepage: http://tobias.rautenkranz.ch/lisp/cl-smoke/

    License: GPL with linking exception

    As of 2012-04-01, according to http://tobias.rautenkranz.ch/lisp/ this project is no longer under development.

    See also: CommonQt eql

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-smtp.html b/clones/lisp/www.cliki.net/cl-smtp.html deleted file mode 100644 index 3a12ba4d..00000000 --- a/clones/lisp/www.cliki.net/cl-smtp.html +++ /dev/null @@ -1,93 +0,0 @@ - - - - - CLiki: CL-SMTP - - - - - - - -
    CL-SMTP
    CL-SMTP is an SMTP (RFC 5321) client.

    It works in ACL, SBCL, CMUCL, OPENMCL, LISPWORKS and CLISP.

    Project Page: https://common-lisp.net/project/cl-smtp/

    License: LLGPL

    See also Franz's imap which has an SMTP client.

    Version: 2019-10-31

      -
    • Fix rfc2045-q-encode-string for ascii character strings - and longer than 74 characters, make newline on next space in string -
    • -
    • add new test -
    • -

    Version: 2015-10-23

      -
    • Fix error with single line with 1 dot -
    • -
    • Thanks Francesco Bracchi for the bug report and patch -
    • -
    • Add more tests for handle single line dot in mask-dot and -in rfc2045-q-encode-string-to-stream -
    • -
    • Add optional argument CATCH-ERRORS to run-tests, default is T -
    • -

    Version: 2014-01-28

      -
    • Add patch for converted username and password to base64 string, -
    • -
    • ignore default wrap columns 80, so that no newline is inserted. -
    • -
    • Thanks Helmut G. Enders for the bug report and patch -
    • -

    Version: 2010-06-21

      -
    • Rewrite base64-encode-file in attachments.lisp, fixed wrap at column -
    • -
    • and add #\Return#\Newline after each column, ignore keyword buffer-size. -
    • -
    • Fixed string-to-base64-string allegro part in cl-smtp.lisp (wrap-at-column nil). -
    • -
    • Fixed finish-smtp-mail in cl-smtp, not use fresh-line on stream, send #\Return#\Newline. -
    • -
    • Add test for base64-encode-file. -
    • -

    Version: 2010-05-05

      -
    • Rewrite encoding functions, now it is possible to use non ascii characters in header values and in attachment filenames. -
    • -
    • New keyword argument external-format (default :utf-8). -
    • -
    • New class attachment, with slots attachment-name and attachment-mime-type, and a constructor function make-attachment. -
    • -


    -Topics: email
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-smugmug.html b/clones/lisp/www.cliki.net/cl-smugmug.html deleted file mode 100644 index 9bee5f75..00000000 --- a/clones/lisp/www.cliki.net/cl-smugmug.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-smugmug - - - - - - - -
    cl-smugmug
    cl-smugmug is a Common Lisp interface to the SmugMug web API.

    Homepage: http://code.google.com/p/cl-smugmug/

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-soil.html b/clones/lisp/www.cliki.net/cl-soil.html deleted file mode 100644 index 2e345025..00000000 --- a/clones/lisp/www.cliki.net/cl-soil.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-soil - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-speedy-queue.html b/clones/lisp/www.cliki.net/cl-speedy-queue.html deleted file mode 100644 index 12b78264..00000000 --- a/clones/lisp/www.cliki.net/cl-speedy-queue.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-speedy-queue - - - - - - - -
    cl-speedy-queue
    cl-speedy-queue is a portable, non-consing, optimized queue implementation. It was originally written by Adlai Chandrasekhar for use in ChanL.

    Repository: https://github.com/zkat/cl-speedy-queue

    License: MIT


    -data structure
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-sphinx-search.html b/clones/lisp/www.cliki.net/cl-sphinx-search.html deleted file mode 100644 index f4fb825d..00000000 --- a/clones/lisp/www.cliki.net/cl-sphinx-search.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-sphinx-search - - - - - - - -
    cl-sphinx-search
    cl-sphinx-search is an interface to the Sphinx Search SQL database full-text search engine.

    License: MIT

    Homepage: http://github.com/thijs/cl-sphinx-search/

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-splicing-macro.html b/clones/lisp/www.cliki.net/cl-splicing-macro.html deleted file mode 100644 index a386c275..00000000 --- a/clones/lisp/www.cliki.net/cl-splicing-macro.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-splicing-macro - - - - - - - -
    cl-splicing-macro
    Define macros, that splice multiple forms directly into body of enclosing macro, without any PROGN's left.

    More info can be found on the homepage

    Licence: GPL

    Homepage: https://github.com/mabragor/cl-splicing-macro

    language extension

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-sqlite.html b/clones/lisp/www.cliki.net/cl-sqlite.html deleted file mode 100644 index 82431517..00000000 --- a/clones/lisp/www.cliki.net/cl-sqlite.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-sqlite - - - - - - - -
    cl-sqlite
    cl-sqlite is a library for interacting with sqlite databases through SQL.

    Homepage: http://common-lisp.net/project/cl-sqlite/

    License: Public Domain

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-srpc.html b/clones/lisp/www.cliki.net/cl-srpc.html deleted file mode 100644 index d94be9a3..00000000 --- a/clones/lisp/www.cliki.net/cl-srpc.html +++ /dev/null @@ -1,74 +0,0 @@ - - - - - CLiki: cl-srpc - - - - - - - -
    cl-srpc

    cl-srpc - Common Lisp Secure RPC, evaluating lisp expressions over the network using Ironclad encryption

    A package that uses ironclad, usocket, and cl-marshal to evaluate lisp expressions over an encrypted network connection, permitting both immediate and deferred (promise) results.

    -Available at: https://github.com/jetmonk/cl-srpc

    License: Public Domain except for file based on trivial-utf-8-srpc.lisp, which is also redistributable but credited to original author.

    Example

    -
    -;; on both client and server
    -(asdf:load-system "cl-srpc")
    -

    On Server -

    -(defparameter *server*
    -  (make-instance 'cl-srpc:server
    -    :cipher-args cl-srpc::*default-cipher* ;; or your own ironclad cipher
    -    :address "127.0.0.1"  
    -    :port 50000))
    -

    On Client -

    -(defparameter *client*
    -  (make-instance 'cl-srpc:client
    -    :cipher-args cl-srpc::*default-cipher*
    -    :remote-address "127.0.0.1"  ;; same as server
    -    :remote-port 50000))         ;; same as server
    -
    -(cl-srpc:execute-remote-call *client* :expression '(+ 1 2))
    -  ==> (3)  ;; values returned inside list
    -


    -Distributed
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-statsd.html b/clones/lisp/www.cliki.net/cl-statsd.html deleted file mode 100644 index 43725025..00000000 --- a/clones/lisp/www.cliki.net/cl-statsd.html +++ /dev/null @@ -1,58 +0,0 @@ - - - - - CLiki: cl-statsd - - - - - - - -
    cl-statsd
    Statsd client.

    Example -

    -(let ((statsd::*client* (statsd:make-sync-client))) - (loop for i from 0 to 99 do - (statsd:counter "example" (random 100)) - (sleep 1))) -

    For more information, see the repository

    License: MIT


    -Topics: Distributed Monitoring
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-stirling-engine.html b/clones/lisp/www.cliki.net/cl-stirling-engine.html deleted file mode 100644 index 839f3f85..00000000 --- a/clones/lisp/www.cliki.net/cl-stirling-engine.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-stirling-engine - - - - - - - -
    cl-stirling-engine
    Second-order Stirling Engine analysis program

    Currently only works under Lispworks 6.1 (including Personal) for Windows

    Source: https://bitbucket-archive.softwareheritage.org/projects/bu/budden/cl-stirling-engine.html

    Category: CAD

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-stomp.html b/clones/lisp/www.cliki.net/cl-stomp.html deleted file mode 100644 index 5816c14a..00000000 --- a/clones/lisp/www.cliki.net/cl-stomp.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-stomp - - - - - - - -
    cl-stomp
    cl-stomp is an implementation of STOMP (Streaming Text Orientated Messaging Protocol). It notably allows you to interface to systems like ActiveMQ.

    Homepage: https://common-lisp.net/project/cl-stomp/

    Repository: https://gitlab.common-lisp.net/cl-stomp/cl-stomp

    Depends on: usocket, babel, bordeaux-threads

    License: MIT-license


    -wire format, messaging, distributed
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-store.html b/clones/lisp/www.cliki.net/cl-store.html deleted file mode 100644 index f85a8a43..00000000 --- a/clones/lisp/www.cliki.net/cl-store.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-store - - - - - - - -
    cl-store
    cl-store serializes and deserializes Common Lisp objects to and from streams. -It currently runs on SBCL, CMUCL, CLISP, ACL, OpenMCL, Lispworks and ECL.

    The cl-store home page is here.

    Topics: serialization

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-stream.html b/clones/lisp/www.cliki.net/cl-stream.html deleted file mode 100644 index c65a35eb..00000000 --- a/clones/lisp/www.cliki.net/cl-stream.html +++ /dev/null @@ -1,73 +0,0 @@ - - - - - CLiki: cl-stream - - - - - - - -
    cl-stream
    cl-stream is an attempt to have portable streams that allow any kind of data and non-blocking semantics.

    https://github.com/cl-stream/cl-stream

    Packages that use cl-stream : -

    Maintainers : thodg.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-strftime.html b/clones/lisp/www.cliki.net/cl-strftime.html deleted file mode 100644 index 08226ad8..00000000 --- a/clones/lisp/www.cliki.net/cl-strftime.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-strftime - - - - - - - -
    cl-strftime
    Common Lisp compiler for the strftime language.

    Depends on: alexandria, serapeum, cl-ppcre, local-time

    Repository: https://github.com/ruricolist/cl-strftime


    -MIT-LICENSE
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-string-complete.html b/clones/lisp/www.cliki.net/cl-string-complete.html deleted file mode 100644 index 91c0289b..00000000 --- a/clones/lisp/www.cliki.net/cl-string-complete.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-string-complete - - - - - - - -
    cl-string-complete
    A small library for string completion by Robert Smith.

    https://bitbucket.org/tarballs_are_good/cl-string-complete/src/default/

    https://github.com/cldm/cldm-repo/blob/gh-pages/cld/cl-string-complete.cld

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-string-match.html b/clones/lisp/www.cliki.net/cl-string-match.html deleted file mode 100644 index e656c187..00000000 --- a/clones/lisp/www.cliki.net/cl-string-match.html +++ /dev/null @@ -1,62 +0,0 @@ - - - - - CLiki: cl-string-match - - - - - - - -
    cl-string-match
    Provides substring (subsequence) search and text processing algorithms implementations including regular expression, prefix/suffix tree data structures, etc.

    This library implements such algorithms as: -

      -
    • Brute-force (also known as naïve algorithm) -
    • -
    • Boyer-Moore -
    • -
    • Rabin-Karp -
    • -
    • Knuth-Morris-Pratt -
    • -
    -and others.

    It also offers a portable version of the RE regular expression engine developed by Jeffrey Massung. The RE engine is a small, lightweight, and quick, regular expression library. It is a non-recursive, backtracking VM. The syntax is similar to Lua-style pattern matching, but has added support for additional regex features (e.g. a|b, (?..), etc). It's certainly not the fastest, but is easy to understand and extend.

    The project has a Wiki that provides information about the string matching in general and a survey of regular expression engines implementation in Common Lisp in particular.

    Homepage: https://github.com/vityok/cl-string-match

    Topics: data structure, regular expression, string

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-strings.html b/clones/lisp/www.cliki.net/cl-strings.html deleted file mode 100644 index e4e882ab..00000000 --- a/clones/lisp/www.cliki.net/cl-strings.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-strings - - - - - - - -
    cl-strings
    cl-strings is a portable, dependency-free set of utilities to manipulate strings in Common Lisp (split, join, replace, insert, clean, change case,…). -

    It provides functions to split, join, replace, insert, repeat, clean, read and format numbers, change the case, do string interpolation, … and more !

    cl-strings github page

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-svg.html b/clones/lisp/www.cliki.net/cl-svg.html deleted file mode 100644 index 36fada11..00000000 --- a/clones/lisp/www.cliki.net/cl-svg.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-svg - - - - - - - -
    cl-svg
    cl-svg offers a somewhat friendlier way to produce SVG image files than hand-rolling XML.

    CL-SVG doesn't attempt to cover all the nooks and crannies of SVG, but the library should be usable for most needs. The source comes with the file testing.lisp which has many examples you can experiment with via SLIME.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-svm.html b/clones/lisp/www.cliki.net/cl-svm.html deleted file mode 100644 index 77906c7f..00000000 --- a/clones/lisp/www.cliki.net/cl-svm.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-svm - - - - - - - -
    cl-svm
    CL-SVM is a pure lisp implementation of support vector machines (SVMs).

    The library can be used to train an SVM-based classifier from a set of training examples. Each training example is a pair where the CAR is a n-dimensional vector of real values, and the CDR is 1 or -1 to indicate positive or negative training example, respectively. Given a set of training examples, CL-SVM will output a function that takes as input a vector and returns as output T or NIL depending on whether it believes the input vector is a positive or negative example.

    CL-SVM is part of the Suave project. It can be found at https://common-lisp.net/project/suave/.

    You can currently get CL-SVM from its own git repository: https://gitlab.common-lisp.net/suave/cl-svm


    An alternative to cl-svm is cl-libsvm, which is a wrapper around a C library.


    -Topics: machine learning AI
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-swap-file.html b/clones/lisp/www.cliki.net/cl-swap-file.html deleted file mode 100644 index 842e23dc..00000000 --- a/clones/lisp/www.cliki.net/cl-swap-file.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-swap-file - - - - - - - -
    cl-swap-file
    Swap file is a fixed block size storage library implemented in Common Lisp.

    Swap file format is utilized as a storage in cl-btree and clufs projects.

    Repository: https://github.com/GitoriousLispBackup/cl-swap-file

    License: MIT


    -StructuredStorage
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-syntax-sugar.html b/clones/lisp/www.cliki.net/cl-syntax-sugar.html deleted file mode 100644 index 8962a7f4..00000000 --- a/clones/lisp/www.cliki.net/cl-syntax-sugar.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-syntax-sugar - - - - - - - -
    cl-syntax-sugar
    cl-syntax-sugar is a convenience library of reader macros and of helper functions to create new syntax extensions and to use them with ASDF and Slime without enabling them in the global readtable.

    It is public domain software.

    Repository: http://dwim.hu/darcsweb/darcsweb.cgi?r=HEAD%20hu.dwim.syntax-sugar;a=tree


    -read-macros is a similar library.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-syntax.html b/clones/lisp/www.cliki.net/cl-syntax.html deleted file mode 100644 index dc228192..00000000 --- a/clones/lisp/www.cliki.net/cl-syntax.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-syntax - - - - - - - -
    cl-syntax
    CL-SYNTAX provides Reader Syntax Conventions for Common Lisp and SLIME.

    Depends on: trivial-types, named-readtables

    Repository: https://github.com/m2ym/cl-syntax

    License: LLGPL

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-syslog.html b/clones/lisp/www.cliki.net/cl-syslog.html deleted file mode 100644 index 7764ae13..00000000 --- a/clones/lisp/www.cliki.net/cl-syslog.html +++ /dev/null @@ -1,60 +0,0 @@ - - - - - CLiki: cl-syslog - - - - - - - -
    cl-syslog
    Common Lisp interface to local and remote Syslog facilities

    Authors/Maintainers: Mike Maul

    License: BSD

    Homepage/Source Code: https://github.com/mmaul/cl-syslog

      Availability: -
    • cl-flowd is available is source form via the its github repository home page. -
    • -
    • installable via Quicklisp as cl-flowd
    • - -

    Documentation is available in the CL-SYSLOG Quickdocs project page :http://quickdocs.org/cl-syslog/

    History: -OnShore's ODCL library contained log.lisp which is a Common Lisp -interface to the Unix syslog facility. Erik Enge, converted log.lisp to a ASDF -package and rewrote to utilize CFFI instead of CMUCL-specific code. -Mike Maul implemented UDP syslog client and now maintains cl-syslog.

    system programming logging

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-tc.html b/clones/lisp/www.cliki.net/cl-tc.html deleted file mode 100644 index 79f3a8b1..00000000 --- a/clones/lisp/www.cliki.net/cl-tc.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-tc - - - - - - - -
    cl-tc
    cl-tc is a set of bindings for the Tokyo Cabinet database.

    License: MIT

    Homepage: https://github.com/unya/cl-tc


    -FFI StructuredStorage
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-tcod.html b/clones/lisp/www.cliki.net/cl-tcod.html deleted file mode 100644 index 50db1eeb..00000000 --- a/clones/lisp/www.cliki.net/cl-tcod.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-tcod - - - - - - - -
    cl-tcod
    Common lisp bindings for the Doryen Library, a "free, fast, portable API for roguelike developers providing an advanced true color console, input, and lots of other utilities frequently used in roguelikes". While there are library functions that specifically support game programming (such as line-of-sight, perlin noise and so on), libtcod can also be used as a modernised alternative to (n)curses if an application needs a 'console' look and feel. Note that libtcod uses OpenGL/SDL for rendering, so it cannot actually be used to build applications that will run without a windowing system.

    Depends on: CFFI, defstar

    Repository: https://github.com/podiki/cl-tcod/

    License: Public Domain

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-template.html b/clones/lisp/www.cliki.net/cl-template.html deleted file mode 100644 index b5627229..00000000 --- a/clones/lisp/www.cliki.net/cl-template.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-template - - - - - - - -
    cl-template
    Simple, output-agnostic template engine for Common Lisp, inspired by ERb.

    Repository: https://github.com/alpha123/cl-template


    -MIT-LICENSE, HTML template
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-termbox.html b/clones/lisp/www.cliki.net/cl-termbox.html deleted file mode 100644 index 922c26b2..00000000 --- a/clones/lisp/www.cliki.net/cl-termbox.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-termbox - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-terrace.html b/clones/lisp/www.cliki.net/cl-terrace.html deleted file mode 100644 index 2aae6611..00000000 --- a/clones/lisp/www.cliki.net/cl-terrace.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-terrace - - - - - - - -
    cl-terrace
    cl-terrace is the VC part of a hypothetical MVC web framework. It uses Hunchentoot for a webserver, Djula for HTML templating and a few abstractions over the url-as-file-in-the-filesystem metaphor for deciding how to reply to HTTP requests.

    Repository: https://github.com/nallen05/old-cl-terrace

    Author: Nick Allen

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-test-grid.html b/clones/lisp/www.cliki.net/cl-test-grid.html deleted file mode 100644 index 70464723..00000000 --- a/clones/lisp/www.cliki.net/cl-test-grid.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-test-grid - - - - - - - -
    cl-test-grid
    cl-test-grid is a project for collaborative testing of Quicklisp libraries on different platforms and implementations. cl-test-grid runs the test suites of dozens of libraries available through Quicklisp on your machine on whatever Common Lisp implementations you have available, then submits a report about the test runs to a public repository. This helps catch and fix bugs in Lisp libraries and implementations.

    All the reports are available at http://common-lisp.net/project/cl-test-grid/. A quick summary can be found at http://common-lisp.net/project/cl-test-grid/test-runs-report.html

    You can get cl-test-grid and run the tests yourself from https://github.com/cl-test-grid/cl-test-grid


    -test framework
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-textmagic.html b/clones/lisp/www.cliki.net/cl-textmagic.html deleted file mode 100644 index 570776f1..00000000 --- a/clones/lisp/www.cliki.net/cl-textmagic.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-textmagic - - - - - - - -
    cl-textmagic
    CL-TEXTMAGIC is a Common Lisp interface to the TextMagic. It enables send sms, get account info, get status of sended message, receive messages, delete of reply and check of phone number.

    It requires DEXADOR and CL-JSON.

    https://github.com/trumae/cl-textmagic

    Tested on SBCL.

    Author: Trumae da Ilha


    -web API
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-tga.html b/clones/lisp/www.cliki.net/cl-tga.html deleted file mode 100644 index ff5bc764..00000000 --- a/clones/lisp/www.cliki.net/cl-tga.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-tga - - - - - - - -
    cl-tga
    CL-TGA reads tga image files. It is a native common lisp library, and was written for loading image data into OpenGL textures. It should work well with cl-opengl.

    License: MIT

    Homepage: cl-tga on GitHub.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-tk.html b/clones/lisp/www.cliki.net/cl-tk.html deleted file mode 100644 index 0a583a7a..00000000 --- a/clones/lisp/www.cliki.net/cl-tk.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-tk - - - - - - - -
    cl-tk
    CL-TK provides a simple bridge to Tcl/Tk. It will fire up a Tk window, handle events, and allow you to evaluate Tcl code.

    License: zlib

    Homepage: http://marijnhaverbeke.nl/cl-tk/

    See also: clTcl


    -GUI FFI
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-toolbox.html b/clones/lisp/www.cliki.net/cl-toolbox.html deleted file mode 100644 index e8148e42..00000000 --- a/clones/lisp/www.cliki.net/cl-toolbox.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: cl-toolbox - - - - - - - -
    cl-toolbox
    This package is now obsolete.

    cl-toolbox is library of -common utilities. The package exists for historical reasons and shall be deleted -and replaced with existing better utility package. Some projects depend on it -and to make their installation easier cl-toolbox is also put in here.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-trane.html b/clones/lisp/www.cliki.net/cl-trane.html deleted file mode 100644 index 426c2206..00000000 --- a/clones/lisp/www.cliki.net/cl-trane.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-trane - - - - - - - -
    cl-trane
    CL-Trane is a loose collection of utilities that together form a web framework. Project's aim is to provide a comprehensive, yet simple and magic-free Common Lisp framework for easy creation of RESTful Web applications.

    CL-Trane is built upon Hunchentoot Web server, and Postmodern interface to PostgreSQL database. Py-configparser is used for configuration.

    http://common-lisp.net/project/cl-trane/

    Evaluation, 20100901

    A very brief assessment of all web frameworks listed in cliki was carried out in September 2010. This assessment comprised: check websites, download source if available, attempt to compile, review documentation.

    The review found that cl-trane was not yet ready for production use. According to the project page at http://common-lisp.net/project/cl-trane/ 'Code is currently at early development stage; docs are incomplete, there is no fully operating infrastructure yet.'

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-transmission.html b/clones/lisp/www.cliki.net/cl-transmission.html deleted file mode 100644 index 823f0160..00000000 --- a/clones/lisp/www.cliki.net/cl-transmission.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-transmission - - - - - - - -
    cl-transmission
    A Common Lisp library to interface with Transmission using its RPC.

    Depends on: rutils, drakma, named-readtables, cl-ppcre, uiop, jonathan

    Repository: https://github.com/libre-man/cl-transmission

    License: MIT


    -Distributed
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-travis.html b/clones/lisp/www.cliki.net/cl-travis.html deleted file mode 100644 index 82cddda0..00000000 --- a/clones/lisp/www.cliki.net/cl-travis.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-travis - - - - - - - -
    cl-travis
    cl-travis allows you to test your Common Lisp projects across a number of implementations on the continuous integration service Travis, which lacks built-in support for the language.


    -Virtualization, MIT-LICENSE
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-treemaps.html b/clones/lisp/www.cliki.net/cl-treemaps.html deleted file mode 100644 index 05eee976..00000000 --- a/clones/lisp/www.cliki.net/cl-treemaps.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-treemaps - - - - - - - -
    cl-treemaps
    cl-treemaps is a lightweight and fast implementation of binary trees. The current version only features red black trees. The interface is similar to the one of Common Lisp Hash Maps and is therefore very easy to understand and use. See the README for further details. The package is only tested with SBCL.

    The sourcecode is hosted on github (github.com/sake/cl-treemaps). Tarballs can also be found there.

    This package does not implement the Treemapping method for displaying tree-structured data by using nested rectangles.


    -Topics: data structure
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-tumblr.html b/clones/lisp/www.cliki.net/cl-tumblr.html deleted file mode 100644 index 2f7b93c9..00000000 --- a/clones/lisp/www.cliki.net/cl-tumblr.html +++ /dev/null @@ -1,71 +0,0 @@ - - - - - CLiki: cl-tumblr - - - - - - - -
    cl-tumblr
    CL-TUMBLR provides a simple interface to Tumblr's API.

    Here's some example code:

    ;; Set the tumblr URI -(setf cl-tumblr:*tumblr-uri* "http://sub.tumblr.com") - -;; Grab the 30 latest regular items -(defvar *reg-items* (cl-tumblr:get-items :start 0 :num 30 :type "regular")) - -;; Collect the titles -(mapcar (lambda (x) (cl-tumblr:item-data x "title")) *reg-items*) - -;; Get the 10 latest items -(defvar *items* (cl-tumblr:get-items :num 10)) - -;; Collect the types of the items -(mapcar #'cl-tumblr:item-type *items*) - -;; Collect the URIs for items -(mapcar (lambda (x) (cl-tumblr:item-metadata x "url")) *items*) - -;; Fetch a specific item -(cl-tumblr:get-item 2044201)

    It was written by Matt Revelle and can be found at https://code.google.com/archive/p/cl-tumblr/. It has only been tested on SBCL.

    Requires S-XML and Drakma.


    -web API
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-tuples.html b/clones/lisp/www.cliki.net/cl-tuples.html deleted file mode 100644 index 02930295..00000000 --- a/clones/lisp/www.cliki.net/cl-tuples.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-tuples - - - - - - - -
    cl-tuples
    cl-tuples is a library for writing optimised vector math.

    Source repository: https://repo.or.cz/cl-tuples.git

    License: MIT


    -Topics: linear algebra
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-twitter.html b/clones/lisp/www.cliki.net/cl-twitter.html deleted file mode 100644 index 8d061563..00000000 --- a/clones/lisp/www.cliki.net/cl-twitter.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: cl-twitter - - - - - - - -
    cl-twitter
    This is an interface to the twitter api. It extends the api originally written by Ian Eslick.

    Original Author: Ian Eslick

    -Author: Fons Haffmans

    Licence: LLGPL

    Homepage: https://github.com/fons/cl-twitter

    -


    Chirp is a more recent alternative that is perhaps easier to use.


    Web API

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-typed.html b/clones/lisp/www.cliki.net/cl-typed.html deleted file mode 100644 index 3a341d7d..00000000 --- a/clones/lisp/www.cliki.net/cl-typed.html +++ /dev/null @@ -1,66 +0,0 @@ - - - - - CLiki: cl-typed - - - - - - - -
    cl-typed
    ML-like syntax for ftypes with library-side type-checking

    Examples: -

    (annot:enable-annot-syntax) - -@! (number numbernumber) -(defun add (a b) - (print "I will never print, even with invalid inputs at runtime.") - (+ a b)) - -(defun broken-call () (add "x" "y")) ;; Will not compile - -(defun add-x (a b) - (print "I will happily print, even with invalid inputs at runtime.") - (+ a b)) - -(defun broken-call-x () (add-x "x" "y")) ;; Will compile with just a warning -

    Homepage: GitHub

    License: GPLv3

    Topics: language extension

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-typesetting.html b/clones/lisp/www.cliki.net/cl-typesetting.html deleted file mode 100644 index 3d20d767..00000000 --- a/clones/lisp/www.cliki.net/cl-typesetting.html +++ /dev/null @@ -1,60 +0,0 @@ - - - - - CLiki: cl-typesetting - - - - - - - -
    cl-typesetting
    cl-typesetting is a Common Lisp typesetting application about on the level of TeX. It generates PDF document format output via CL-PDF.

    -
    -document preparation
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-uglify-js.html b/clones/lisp/www.cliki.net/cl-uglify-js.html deleted file mode 100644 index a512d8fa..00000000 --- a/clones/lisp/www.cliki.net/cl-uglify-js.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-uglify-js - - - - - - - -
    cl-uglify-js
    A JavaScript compressor (minifier). Given an AST generated by parse-js, it is able to:

    - rename variables to short versions (usually single characters)

    - generate shorter code for IF statements (various optimizations are implemented)

    - discard unnecessary blocks and parentheses

    - join consecutive var declarations

    - discard some obviously unreachable code

    - join consecutive statements with the comma operator (which sometimes reduces a block to a single statement and therefore the block brackets can be discarded).

    - remove comments and all unnecessary whitespace.

    The generated code is usually half the size of the original (depending on indentation level).

    The code generator can also produce nicely indented output (good for debugging, as well as inspecting minified scripts).

    Get it at GitHub: http://github.com/mishoo/cl-uglify-js. This is a port to Common Lisp of http://github.com/mishoo/UglifyJS.


    JavaScript

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-unicode.html b/clones/lisp/www.cliki.net/cl-unicode.html deleted file mode 100644 index 0f3ea39a..00000000 --- a/clones/lisp/www.cliki.net/cl-unicode.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-unicode - - - - - - - -
    cl-unicode
    CL-UNICODE provides Common Lisp implementations with knowledge about Unicode characters including their name, their general category, the scripts and blocks they belong to, their numerical value, and several other properties. It also provides the ability to replace the standard syntax for reading Lisp characters with one that is Unicode-aware and is used to enhance CL-PPCRE with Unicode properties.

    While Babel and flexi-streams provide character encodings (to convert strings to bytes), cl-unicode provides various Unicode features like access to character names and character class names. It was written by Edi Weitz and can be found at https://edicl.github.io/cl-unicode/.


    -internationalization
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-unification.html b/clones/lisp/www.cliki.net/cl-unification.html deleted file mode 100644 index 05aa5e53..00000000 --- a/clones/lisp/www.cliki.net/cl-unification.html +++ /dev/null @@ -1,82 +0,0 @@ - - - - - CLiki: cl-unification - - - - - - - -
    cl-unification
    Provides unification (as used in Prolog) over fairly arbitrary Common Lisp objects.

    Examples:

    A simple match: -

    (unify 42 '?x) -;; => #<ENVIRONMENT xxxxxx> - -(find-variable-value '?x *) -;; => 42 -

    Unification over a list: -

    (unify '(1 2 3 4 5) #T(list 1 ?x &rest ?rest)) -;; => #<ENVIRONMENT xxxxxxx> - -(find-variable-value '?rest *) -;; => (3 4 5) -;; T -

    Unification over a vector: -

    (unify #(1 2 3 4 5) #T(vector 1 ?x &rest ?rest)) -;; => #<ENVIRONMENT xxxxxxx> - -(find-variable-value '?rest *) -;; => #(3 4 5) -

    Unification over a structure: -

    (defstruct foo () (a 42)) -;; => FOO - -(defstruct (baz (:include foo)) (b 33)) -;; => BAZ - -(unify (make-baz) #T(foo foo-a ?x)) -;; => #<ENVIRONMENT xxx> - -(find-variable-value '?x *) -;; => 42 -;; T

    Homepage: http://common-lisp.net/project/cl-unification/

    License: BSD

    Repository: common-lisp.net

    pattern matching, unification

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-unit-test.html b/clones/lisp/www.cliki.net/cl-unit-test.html deleted file mode 100644 index 5076b4a1..00000000 --- a/clones/lisp/www.cliki.net/cl-unit-test.html +++ /dev/null @@ -1,163 +0,0 @@ - - - - - CLiki: cl-unit-test - - - - - - - -
    cl-unit-test
    cl-unit-test has been tested by itself with 100% test code coverage.

    Introduction

    cl-unit-test package is a simple unit testing utility. cl-unit-test is -released under MIT license, see LICENSE file for details.

    cl-unit-test can be used in many ways in development process. Each -assert and test can be evaluated individually or whole test file can -be loaded to run all tests in a file. Since 0.3 cl-unit-test can be -easily integrated to asdf, too.

    cl-unit-test concepts are asserts, tests and test files. Asserts are the -simpliest forms of unit tests. Different kind of asserts exists for -different purposes. In fact only one would be feasible but to make -assert writing easier different asserts are provided for testing -true/false values and equality (in its all lisp forms).

    A test is thought as set of asserts to be all checked for one test.

    A test file may contain assert(s) or test(s) but usually file contains -set of named tests.

    -

    Using

    Tests can be run in several ways. Each assert can be evaluated, each -def-test can be evaluated, test file containing assertions or -def-tests can be loaded, or file(s) can be loaded using test-runner.

    The test output is controlled by unit-test:*show-details* parameter -and unit test formatter. Currently three different kind of -formatters are provided and more can be implemented if needed. -A simple unit test formatter outputs test results to stream, -list formatter formats lists to stream and silent formatter -does not output anything.

    The file example.lisp contains sample unit test definition. -Here is a sample run with Emacs+Slime+SBCL. -

    -CL-USER> unit-test:*show-details*
    -NIL
    -CL-USER> (unit-test:assert-eql 'foo 'foo)
    -T
    -CL-USER> (unit-test:assert-eql 'foo 'bar)
    -TEST: 'BAR => BAR                                 Expected: FOO             FAIL
    -NIL
    -CL-USER> (setq unit-test:*show-details* t)
    -T
    -CL-USER> (unit-test:assert-eql 'foo 'foo)
    -TEST: 'FOO => FOO                                                             OK
    -T
    -CL-USER> (unit-test:def-test (foo) (unit-test:assert-eql 'foo 'foo))
    -TEST: 'FOO => FOO                                                             OK
    -FOO: 1/1 assertions passed, 0 failed
    -NIL
    -CL-USER> (unit-test:def-test (foo) (unit-test:assert-eql 'foo 'bar))
    -TEST: 'BAR => BAR                                 Expected: FOO             FAIL
    -FOO: 0/1 assertions passed, 1 failed
    -NIL
    -CL-USER> (setq unit-test:*show-details* nil)
    -NIL
    -CL-USER> (load "example")
    -EXAMPLE-TEST-CASE: 5/5 assertions passed, 0 failed
    -SAMPLE-FAILURE: 0/1 assertions passed, 1 failed
    -TEST FAILURE: Sample test failure.
    -SAMPLE-FAIL: 0/1 assertions passed, 1 failed
    -; in: LAMBDA NIL
    -;     (+ 1 A)
    -; 
    -; caught WARNING:
    -;   undefined variable: A
    -
    -; 
    -; caught WARNING:
    -;   This variable is undefined:
    -;     A
    -; 
    -; compilation unit finished
    -;   caught 2 WARNING conditions
    -TEST: (+ 1 A) => The variable A is unbound.                                ERROR
    -SAMPLE-ERROR: 0/1 assertions passed, 1 failed
    -T
    -CL-USER> (unit-test:test-runner (directory "test/*.lisp"))
    --- /home/smo/lisp/unit-test/trunk/test/unit-test-test.lisp -- 
    -UNIT-TEST-TRACKER: 37/37 assertions passed, 0 failed
    -ASSERT-T: 8/8 assertions passed, 0 failed
    -ASSERT-NIL: 8/8 assertions passed, 0 failed
    -ASSERT-EQ: 8/8 assertions passed, 0 failed
    -ASSERT-EQL: 8/8 assertions passed, 0 failed
    -ASSERT-EQUAL: 8/8 assertions passed, 0 failed
    -ASSERT-EQUALP: 8/8 assertions passed, 0 failed
    -FAIL: 4/4 assertions passed, 0 failed
    -/home/smo/lisp/unit-test/trunk/test/unit-test-test.lisp: 8/8 tests passed, 0 failed
    -TOTAL FILES: 1, 8/8 TESTS PASSED, 0 FAILED
    -NIL
    -CL-USER> 
    -

    Using with ASDF

    Append a new defsystem after your existing defsystem and make new -system to depend on your system. New systems components is specified -by unit-test:unit-test-files component. unit-test-files takes a file -pattern parameter and all matching files are loaded as tests.

    Here is an simple example. Assuming the system is called 'sample' -and test files are located under 'test' directory with common -'-test.lisp' file postfix. -

    -(in-package :common-lisp-user)
    -
    -(require 'unit-test)
    -
    -(defpackage sample-system
    -  (:use :asdf :common-lisp))
    -
    -(in-package :sample-system)
    -
    -(defsystem sample
    -  :name "A sample system definition"
    -  :description "This is a sample."
    -  :author "Sami Makinen <sami.o.makinen@gmail.com>"
    -  :version "0.1"
    -  :components ((:file "package")
    -               (:file "main" :depends-on ("package"))))
    -
    -(defsystem sample-tests
    -  :name "Tests for sample"
    -  :description "This is a sample asdf system for integrated tests."
    -  :author "Sami Makinen <sami.o.makinen@gmail.com>"
    -  :version "0.1"
    -  :components ((unit-test:unit-test-files "test/*-test.lisp"))
    -  :depends-on (:sample))
    -

    Now evaluating (asdf:operate 'asdf:load-op 'sample-tests) -would first load sample system and then load tests associated -with it.

    Mock functions

    with-mock-function(s) macro is an experimental utility to override existing -defuns with a mock function within the macro scope.

    Installing

    cl-unit-test is available at https://sourceforge.net/projects/cl-unit-test/.


    - Test Framework
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-uri-templates.html b/clones/lisp/www.cliki.net/cl-uri-templates.html deleted file mode 100644 index 8ac6d96c..00000000 --- a/clones/lisp/www.cliki.net/cl-uri-templates.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-uri-templates - - - - - - - -
    cl-uri-templates
    cl-uri-templates is an implementation of URI-Templates that supports the full draft 03 URI Template standard.

    It was initially a fork of uri-template but has been mostly rewritten from scratch. Most notably implementation of operators has been added. The missing operators in uri-templates rendered it mostly useful for destructuring URIs.

    Some effort has been put in testing cl-uri-templates at least on SBCL. Please report any test failing in test.lisp.

    License: BSD

    Author: Thomas de Grivel

    Source repository: https://github.com/thodg/cl-uri-templates

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-utilities.html b/clones/lisp/www.cliki.net/cl-utilities.html deleted file mode 100644 index 12b63cc9..00000000 --- a/clones/lisp/www.cliki.net/cl-utilities.html +++ /dev/null @@ -1,72 +0,0 @@ - - - - - CLiki: cl-utilities - - - - - - - -
    cl-utilities
    A library of semi-standard utilities.

    This implements and supersedes the Common Lisp Utilities, things that everybody writes since they're not part of the official standard. The code is stable and mature, tested on multiple Lisp implementations, and it has the kind of copious error checking that everyone wants but few ever have time to write.

    What is included:

      -
    • SPLIT-SEQUENCE, SPLIT-SEQUENCE-IF, SPLIT-SEQUENCE-IF-NOT. Used for splitting sequences. -
    • -
    • EXTREMUM, EXTREMA, N-MOST-EXTREME: Finding extreme values in sequences based on user-defined criteria. -
    • -
    • READ-DELIMITED reads from a sequence delimited somehow, in a somewhat inconvenient but hopefully efficient way. -
    • -
    • EXPT-MOD, an interface for calculating (mod (expt n e) m) efficiently across implementations. -
    • -
    • WITH-UNIQUE-NAMES, née WITH-GENSYMS. A classic macro-writing macro for preventing variable capture. -
    • -
    • COLLECTING, WITH-COLLECTORS. Some macros for clearly and efficiently collecting items into lists. -
    • -
    • ONCE-ONLY, a classic macro-writing macro for preventing multiple evaluation. -
    • -
    • ROTATE-BYTE rotates bits in a byte -
    • -
    • COPY-ARRAY shallow copies arrays. -
    • -
    • COMPOSE. Composes functions. -
    • -

    License: Public Domain

    Homepage: http://common-lisp.net/project/cl-utilities/

    Manual: http://common-lisp.net/project/cl-utilities/doc/

    Maintainer: Peter Scott

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-variates.html b/clones/lisp/www.cliki.net/cl-variates.html deleted file mode 100644 index c59112a2..00000000 --- a/clones/lisp/www.cliki.net/cl-variates.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-variates - - - - - - - -
    cl-variates
    CL-Variates is a set of platform independent Common Lisp utilities for mucking with random number generation.

    This system is no longer being maintained (at least not by Gary King).

    Repository: https://gitlab.common-lisp.net/cl-variates/cl-variates


    -obsolete
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-vectors.html b/clones/lisp/www.cliki.net/cl-vectors.html deleted file mode 100644 index 5f9ede22..00000000 --- a/clones/lisp/www.cliki.net/cl-vectors.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-vectors - - - - - - - -
    cl-vectors
    cl-vectors is a pure CL vector rasterization and manipulation system.

    cl-vectors is available here.

    Repository: https://github.com/fjolliton/cl-vectors

    License: MIT

    2007-04-16 - I (Frederic Jolliton) have added a signature to the archive. My key dedicated to package signature can be found at http://projects.tuxee.net/key.


    -graphics library
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-video.html b/clones/lisp/www.cliki.net/cl-video.html deleted file mode 100644 index f804f61f..00000000 --- a/clones/lisp/www.cliki.net/cl-video.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-video - - - - - - - -
    cl-video
    Simple video decoder written in Common Lisp. AVI/MJPEG playback leverages CL-JPEG for frame processing and CL-RIFF for container format handling. It also supports GIF playback via Skippy.

    A primitive CLX media player is included. Playback of PCM encoded audio streams is supported.

    Depends on: bordeaux-threads, alexandria, flexi-streams, cl-riff, cl-jpeg, cl-portaudio, skippy, clx

    Repository: https://github.com/varjagg/cl-video

    License: BSD 2-Clause


    -file format
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-virtualbox.html b/clones/lisp/www.cliki.net/cl-virtualbox.html deleted file mode 100644 index 75a1471e..00000000 --- a/clones/lisp/www.cliki.net/cl-virtualbox.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-virtualbox - - - - - - - -
    cl-virtualbox
    cl-virtualbox is a library that allows you to control VirtualBox from Common Lisp, by calling the vboxmanage command.

    Depends on: cl-ppcre, uiop, alexandria, usocket

    Repository: https://github.com/eudoxia0/cl-virtualbox

    License: MIT


    -Virtualization
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-wal.html b/clones/lisp/www.cliki.net/cl-wal.html deleted file mode 100644 index 754c989f..00000000 --- a/clones/lisp/www.cliki.net/cl-wal.html +++ /dev/null @@ -1,57 +0,0 @@ - - - - - CLiki: cl-wal - - - - - - - -
    cl-wal
    cl-wal implements simple write ahead log. -Write ahead log maintains journal for a master file. Journal -is managed with commit, rollback and recover calls. Entries to journal -are added with write. The write ahead log does not define any semantics -for entries but the user must provide functions for reading and writing -both log and master file entries.

    Repository: https://github.com/danlentz/cl-wal

    License: MIT


    -StructuredStorage
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-walker.html b/clones/lisp/www.cliki.net/cl-walker.html deleted file mode 100644 index d8617b8a..00000000 --- a/clones/lisp/www.cliki.net/cl-walker.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-walker - - - - - - - -
    cl-walker
    cl-walker implements an sexp → CLOS AST tree transformation (and vice versa).

    It walks the sexp, expands macros, follows the lexical environment and resolves local functions/macros, etc. All these things are configurable, so it can be used for things like compiling an sexp based javascript (see cl-quasi-quote), lisp2 → lisp1 transformations, serializable delimited continuations (see cl-delico).

    It was originally written by Marco Baringer as part of his Arnesi library, and later factored out in a standalone library and further developed by Attila Lendvai.


    -Topics: serialization continuations metaprogramming
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-wav-synth.html b/clones/lisp/www.cliki.net/cl-wav-synth.html deleted file mode 100644 index 63f52e9f..00000000 --- a/clones/lisp/www.cliki.net/cl-wav-synth.html +++ /dev/null @@ -1,56 +0,0 @@ - - - - - CLiki: cl-wav-synth - - - - - - - -
    cl-wav-synth
    cl-wav-synth is a wav sample editor, a spectrum editor and a song editor.

    - The wav sample editor is driven from the lisp REPL: you can watch immediately the result of each applied functions. cl-wav-synth comes with some effects as echo, delay, pitch...

    The spectrum editor is here just for educational purpose. It show the effect of adding sinus together. But it can load spectrum from the sharc project and can be used to produce instruments sounds (the sample amplitude need to be modified to have a real sound).

    The song editor is a way to express a song. A song is just a list of events to write on a wav file. cl-wav-synth traverses the song list and evaluates the form of each song-sample, if the result is a wav sample, it is merged in the song wav file. -

    Screenshots, animations and more details are availables on -http://common-lisp.net/project/cl-wav-synth/ -


    -music, McCLIM
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-wbxml.html b/clones/lisp/www.cliki.net/cl-wbxml.html deleted file mode 100644 index cf1813df..00000000 --- a/clones/lisp/www.cliki.net/cl-wbxml.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-wbxml - - - - - - - -
    cl-wbxml
    CL-WBXML reads and writes WAP Binary XML.

    It was written by Edi Weitz and can be found at http://weitz.de/cl-wbxml/.


    -binary format
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-weather-util.html b/clones/lisp/www.cliki.net/cl-weather-util.html deleted file mode 100644 index a9aa98fd..00000000 --- a/clones/lisp/www.cliki.net/cl-weather-util.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-weather-util - - - - - - - -
    cl-weather-util
    Weather utilities for Common Lisp.

    Repository: https://github.com/muyinliu/cl-weather-util

    License: ISC


    -units
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-web-crawler.html b/clones/lisp/www.cliki.net/cl-web-crawler.html deleted file mode 100644 index 972d8f19..00000000 --- a/clones/lisp/www.cliki.net/cl-web-crawler.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-web-crawler - - - - - - - -
    cl-web-crawler
    cl-web-crawler is a web crawling library.

    License: MIT

    Homepage: https://code.google.com/archive/p/cl-web-crawler/

    It definitely works for SBCL, it probably works for other lisps as well. Little attention has been paid to efficiency, but since this is the only web-crawling library I can find for CL, hopefully it will get better.

    Patches are very welcome!


    -web HTTP Client
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-web-utils.html b/clones/lisp/www.cliki.net/cl-web-utils.html deleted file mode 100644 index 306b6057..00000000 --- a/clones/lisp/www.cliki.net/cl-web-utils.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: cl-web-utils - - - - - - - -
    cl-web-utils
    cl-web-utils is a set of utilities for producing Common Lisp bindings to web APIs.

    cl-web-utils was originally styled as cl-web-apis and written by Will Halliburton. The goal is to eliminate as much repitition from binding to web APIs as possible through judicious use of macros and a variety of other lisp niceties. We borrow heavily from existing and established lisp code where possible ranging from drakma, cxml and cl-json to bits of anaphora, metatilities and even a few symbol building functions from On Lisp.

    It's a pretty straightforward library with a chief emphasis on the functions -define-json-request and define-xml-request and a smattering of other helpers. -They are the chief exports of the cl-web-utils package. Other small niceties from the stylistic (concat ...) as an abbreviation of (concatenate 'string ...) to slightly more intuitive stdlib functions (last1 ...) in lieu of (car (last ...)) and others like (parse-float ...) and (md5 ...).

    Homepage: https://github.com/redline6561/cl-web-utils

    License: LLGPL

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-webkit.html b/clones/lisp/www.cliki.net/cl-webkit.html deleted file mode 100644 index e8b5e775..00000000 --- a/clones/lisp/www.cliki.net/cl-webkit.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-webkit - - - - - - - -
    cl-webkit
    cl-webkit is a binding to WebKitGtk+ for Common Lisp.

    Homepage: https://github.com/joachifm/cl-webkit


    -Topics: CFFI, GTK, MIT-LICENSE
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-weblocks.html b/clones/lisp/www.cliki.net/cl-weblocks.html deleted file mode 100644 index cbb13f3c..00000000 --- a/clones/lisp/www.cliki.net/cl-weblocks.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-weblocks - - - - - - - -
    cl-weblocks
    cl-weblocks is a continuation-based web framework written in Common Lisp. See its project page at http://weblocks-framework.info/ and its demo.

    Evaluation, 20100901

    A very brief assessment of all web frameworks listed in cliki was carried out in September 2010. This assessment comprised: check websites, download source if available, attempt to compile, review documentation.

    The review found that cl-weblocks had a polished installer, and after installation was easy to start working with. Documentation was limited but what there was was well presented. It was the most promising of the frameworks reviewed, definitely worth investigating further.

    Reblocks ongoing work, 2017

    A Lisp hacker has started to work on Weblocks. We can see a working quickstart for a todo-mvc app, a changelog, an app being constructed and a (closed-source) website of russians fairy-tales.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-wfx.html b/clones/lisp/www.cliki.net/cl-wfx.html deleted file mode 100644 index d635fe33..00000000 --- a/clones/lisp/www.cliki.net/cl-wfx.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-wfx - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-who.html b/clones/lisp/www.cliki.net/cl-who.html deleted file mode 100644 index d7cb95fc..00000000 --- a/clones/lisp/www.cliki.net/cl-who.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-who - - - - - - - -
    cl-who
    CL-WHO is yet another html generator library, that is, it's a Web library to create (X)HTML from S-expressions. If you've seen one, you've seen them all... :)

    This one's by Edi Weitz and is at http://weitz.de/cl-who/.

    -Darcs repo:

    http://common-lisp.net/~loliveira/ediware/cl-who


    HTML template

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-win32ole.html b/clones/lisp/www.cliki.net/cl-win32ole.html deleted file mode 100644 index 46da754a..00000000 --- a/clones/lisp/www.cliki.net/cl-win32ole.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-win32ole - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-xml-parser.html b/clones/lisp/www.cliki.net/cl-xml-parser.html deleted file mode 100644 index dd1f9d64..00000000 --- a/clones/lisp/www.cliki.net/cl-xml-parser.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-xml-parser - - - - - - - -
    cl-xml-parser
    An XML parser in Common Lisp.

    Depends on: cl-ppcre

    Repository: https://github.com/wisesimpson/cl-xml-parser

    License: Apache 2


    -parser, standards
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-xmlspam.html b/clones/lisp/www.cliki.net/cl-xmlspam.html deleted file mode 100644 index ba4c8cc7..00000000 --- a/clones/lisp/www.cliki.net/cl-xmlspam.html +++ /dev/null @@ -1,90 +0,0 @@ - - - - - CLiki: cl-xmlspam - - - - - - - -
    cl-xmlspam
    XML Stream PAttern Matcher - concise, regexp-like pattern matching on streaming XML.

    Cl-xmlspam -[common-lisp.net], an "XML Stream PAttern Matcher", (also known as xspam) is a -library adjunct to cxml to allow simple on-the-fly parsing of streaming XML -based on a non-backtracking regular-expression-like parser. It -provides a compact syntax for matching, borrowing terminology from -RELAX-NG, and also for -regular-expression-based parsing of text elements, inspired by Rob -Pike's structural regular -expressions.

    Here is a simple example of its use: -

    -* (with-xspam-source "&lt;?xml version=\"1.0\"?> &lt;a> &lt;b&gt;hello there&lt;/b&gt; &lt;b&gt;goodbye&lt;/b&gt;&lt;e/&gt; &lt;p&gt;345x675 234x754 786x532&lt;/p&gt; &lt;q when=\"23-11-2008\"/&gt;&lt;/a&gt;"
    -    (element :a
    -      (group
    -        (one-or-more
    -          (element :b (text (matches "[^ ]+" (format t "word ~s~%" _)))))
    -        (element :p
    -          (text
    -            (matches "([0-9]+)x([0-9]+)"
    -              (format t "got point [~s ~s]~%" (_ 0) (_ 1)))))
    -        (element :q
    -          (attribute :when
    -            (match "([0-9]+)-([0-9]+)-([0-9]+)"
    -              (format t "got date ~s/~s/~s~%" (_ 0) (_ 1) (_ 2))))))))
    -word "hello"
    -word "there"
    -word "goodbye"
    -got point ["345" "675"]
    -got point ["234" "754"]
    -got point ["786" "532"]
    -got date "23"/"11"/"2008"
    -NIL
    -* 
    -

    Some preliminary documentation can be found -here, -and one or two examples -here.

    Cl-xmlspam is currently in a young state - although it has been used to -do useful work on real-world XML data, it has so far only been tested under -SBCL, and the interface is subject to change. -Feedback -is much appreciated.

    Unofficial Github Mirror: Github

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-xmpp.html b/clones/lisp/www.cliki.net/cl-xmpp.html deleted file mode 100644 index 323d3dbd..00000000 --- a/clones/lisp/www.cliki.net/cl-xmpp.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-xmpp - - - - - - - -
    cl-xmpp
    cl-xmpp is an XMPP client implementation of RFCs 3920 and 3921 which can be thought of as the basis of any Jabber-compliant client. It provides messaging, roster, contact and presence management.

    Please find more information at the common-lisp.net project page.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-xspf.html b/clones/lisp/www.cliki.net/cl-xspf.html deleted file mode 100644 index f5318c1e..00000000 --- a/clones/lisp/www.cliki.net/cl-xspf.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-xspf - - - - - - - -
    cl-xspf
    A Common Lisp API for writing XSPF open XML playlists.

    Depends on: s-xml

    Repository: https://github.com/GitoriousLispBackup/cl-xspf

    License: LLGPL

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-xul.html b/clones/lisp/www.cliki.net/cl-xul.html deleted file mode 100644 index f5bee167..00000000 --- a/clones/lisp/www.cliki.net/cl-xul.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: cl-xul - - - - - - - -
    cl-xul
    Mozilla XUL bindings for Common Lisp

    Homepage -Source repository

    License: BSD


    -Topics: GUI
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-yacc.html b/clones/lisp/www.cliki.net/cl-yacc.html deleted file mode 100644 index ed222c52..00000000 --- a/clones/lisp/www.cliki.net/cl-yacc.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: CL-Yacc - - - - - - - -
    CL-Yacc
    CL-Yacc is a LALR(1) parser generator for Common Lisp, somewhat like Zebu or lalr.cl.

    CL-Yacc was written by JCh.

    See the CL-Yacc home page, the CL-Yacc source tree.


    -text parser
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-yaclyaml.html b/clones/lisp/www.cliki.net/cl-yaclyaml.html deleted file mode 100644 index d865a535..00000000 --- a/clones/lisp/www.cliki.net/cl-yaclyaml.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: cl-yaclyaml - - - - - - - -
    cl-yaclyaml
    Yet Another Common Lisp YAML processor.

    For details on YAML, see the official yaml site. - This processor tries to adhere to 1.2 specification, but a lot of work -still remains to be done. For details, see README on the homepage.

    Licence: GPL

    Homepage: https://github.com/mabragor/cl-yaclyaml

    data format -YAML

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-yahoo.html b/clones/lisp/www.cliki.net/cl-yahoo.html deleted file mode 100644 index 666ef703..00000000 --- a/clones/lisp/www.cliki.net/cl-yahoo.html +++ /dev/null @@ -1,103 +0,0 @@ - - - - - CLiki: cl-yahoo - - - - - - - -
    cl-yahoo
    CL-YAHOO is a Common Lisp interface to the Yahoo! API, a web API which enables searching the web through yahoo. Web-search, image-search, spelling, news-search, local search (searching for business in your area), contextual search, and term extraction are supported.

    Current version is 0.5.

    It requires S-XML and TRIVIAL-HTTP.

    Tested on SBCL, Clisp, and ACL 6.2, on RH9/x86.

    Author: Martin Elster

    Download: http://folk.uio.no/melster/cl-yahoo-latest.tar.gz

    Examples

    Searching the web for Lisp, returning 2 results starting at result number 3: -

    -(ysearch :web :query "lisp" :type 'any :results 2 :start 3)
    -

    This query returns a list of objects, each representing the results of the search. To see the "summary" field of the first response from yahoo, use the following:

    -CL-USER> (summary (first (ysearch :web :query "lisp" :type 'any :results 2 :start 3 :adult-ok 1)))
    -"... The benefits of Common Lisp and CLISP. why is ANSI Common Lisp such a great programming environment? ..."
    -CL-USER>
    -

    Searching for a lisp jpg image; -

    -(ysearch :image :query "lisp" :format 'jpg)
    -

    Checking spelling: -

    -CL-USER> (ysearch :spelling :query "improbabble")
    -improbable
    -CL-USER>
    -

    Finding the phone number of three pizza joints in zip code 94306: -

    -CL-USER> (mapcar #'phone (ysearch :local :query "pizza" :results 3 :zip 94306))
    -("(650) 494-2928" "(650) 424-9400" "(650) 326-6552")
    -CL-USER> 
    -

    Term extraction: -

    -CL-USER> (yahoo:ysearch :term-extraction :context "Italian sculptors and painters of the renaissance favored the Virgin Mary for inspiration." :query "madonna")
    -("italian sculptors" "virgin mary" "painters" "renaissance" "inspiration")
    -CL-USER> 
    -

    Notes

    I'm using SBCL 1.0.2 on Ubuntu Edgy and ran into problems getting Web search to work:

    -CL-USER> (asdf:oos 'asdf:load-op :cl-yahoo)                                                                                    
    -NIL                                                                                                                            
    -CL-USER> (use-package :cl-yahoo)                                                                                               
    -T                                                                                                                              
    -CL-USER> (ysearch :web :query "lisp" :type 'any :results 2)
    -                                               
    -XML parser encountered eof before end of entity.                                                                               
    -   [Condition of type S-XML:XML-PARSER-ERROR]                                                                                  
    -                                                                                                                               
    -Restarts:                                                                                                                      
    - 0: [ABORT] Return to SLIME's top level.                                                                                       
    - 1: [TERMINATE-THREAD] Terminate this thread (#<THREAD "repl-thread" {CC416A9}>)                                               
    -                                                                                                                               
    -Backtrace:                                                                                                                     
    -  0: (S-XML::RESOLVE-ENTITY                                                                                                    
    -      #<SB-SYS:FD-STREAM for "a constant string" {B477469}>                                               
    -      "invalid value: uri - http://api.search.yahoo.com/WebSearchService/V1/webSearch?"                                        
    -      #<HASH-TABLE :TEST EQUAL :COUNT 6 {B47C031}>                                                                             
    -      "appid=cl-yahoo&query=lisp&type=any&results=2&start=3&adult_ok=1</Message>                                             
    -     </Error>                                                                                                                
    -     <!-- ws02.search.scd.yahoo.com uncompressed Sat Mar  3 16:16:03 PST 2007 -->
    -     ")                                                                                                                        
    -  1: (S-XML::PARSE-TEXT                                                                                                        
    -      #<SB-SYS:FD-STREAM for "a constant string" {B477469}>
    -...
    -

    I tried to email the author, but the email bounced.

    -- 2007.03.04, Marc Abramowitz


    I'm getting the same problem in Allegro Lisp 8.0. It looks like Yahoo doesn't like something about the HTTP request, but I can't figure out what.

    -- 2007.06.08, Mike Travers


    -obsolete
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-yaml.html b/clones/lisp/www.cliki.net/cl-yaml.html deleted file mode 100644 index dd1a6d2c..00000000 --- a/clones/lisp/www.cliki.net/cl-yaml.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-yaml - - - - - - - -
    cl-yaml
    A YAML parser and emitter built on top of libyaml. Uses the cl-libyaml library.

    For details on YAML, see the official yaml site.

    Licence: MIT

    Homepage: https://quickref.common-lisp.net/cl-yaml.html

    data format -YAML

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-youtube.html b/clones/lisp/www.cliki.net/cl-youtube.html deleted file mode 100644 index 36f8ff65..00000000 --- a/clones/lisp/www.cliki.net/cl-youtube.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-youtube - - - - - - - -
    cl-youtube
    cl-youtube is a Common Lisp wrapper to the YouTube API.

    The project page: cl-youtube seems to be dead, some information can be found here.

    The current release: 0.2.1


    -Web API
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-z.html b/clones/lisp/www.cliki.net/cl-z.html deleted file mode 100644 index 4c459c83..00000000 --- a/clones/lisp/www.cliki.net/cl-z.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl-z - - - - - - - -
    cl-z
    cl-z is a set of CFFI bindings to the zlib compression library.

    Repository: https://github.com/andy128k/cl-z

    License: LGPL

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-z85.html b/clones/lisp/www.cliki.net/cl-z85.html deleted file mode 100644 index af72f3d0..00000000 --- a/clones/lisp/www.cliki.net/cl-z85.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-z85 - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-zlib.html b/clones/lisp/www.cliki.net/cl-zlib.html deleted file mode 100644 index 8cb7fbc3..00000000 --- a/clones/lisp/www.cliki.net/cl-zlib.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cl-zlib - - - - - - - -
    cl-zlib
    CL-ZLIB is a UFFI interface to the zlib compression library.

    Author: Alberto Riva

    Homepage: http://chip.org/~alb/lisp.html


    -obsolete
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl-zmq.html b/clones/lisp/www.cliki.net/cl-zmq.html deleted file mode 100644 index f4058d4b..00000000 --- a/clones/lisp/www.cliki.net/cl-zmq.html +++ /dev/null @@ -1,107 +0,0 @@ - - - - - CLiki: cl-zmq - - - - - - - -
    cl-zmq
    cl-zmq is a set of CFFI bindings for ZeroMQ messaging system.

    http://repo.or.cz/w/cl-zmq.git

    Some examples from the ZeroMQ page ported to CL:

    -;; Simple client server
    -
    -(defun server ()
    -  "Bind to socket and wait to receive a message.  After receipt,
    -  return the message \"OK\"."
    -  (zmq:with-context (ctx 1)
    -    (zmq:with-socket (socket ctx zmq:rep)
    -      (zmq:bind socket "tcp://lo:5555")
    -      (loop
    -       (let ((query (make-instance 'zmq:msg)))
    -         (zmq:recv socket query)
    -         (format t "Recieved query: '~A'~%"
    -                 (zmq:msg-data-as-string query) ))
    -       (zmq:send socket (make-instance 'zmq:msg :data "OK")) ))))
    -
    -(defun client ()
    -  "Connects to a socket and passes a message and waits to receive the
    -  \"OK\" from the server."
    -  (zmq:with-context (ctx 1)
    -    (zmq:with-socket (socket ctx zmq:req)
    -      (zmq:connect socket "tcp://localhost:5555")
    -      (zmq:send socket (make-instance 'zmq:msg
    -                                      :data "SELECT * FROM mytable" ))
    -      (let ((result (make-instance 'zmq:msg)))
    -        (zmq:recv socket result)
    -        (format t "Recieved string: '~A'~%"
    -                (zmq:msg-data-as-string result) )))))
    -
    -;; Publish/subscribe example (uses _(iterate) and _(packer))
    -
    -(defun publisher ()
    -  (zmq:with-context (ctx 1)
    -    (zmq:with-socket (socket ctx zmq:pub)
    -      (zmq:bind socket "tcp://lo:5555")
    -      (iter (for msg-id from 0)
    -            (zmq:send
    -             socket
    -             (make-instance
    -              'zmq:msg
    -              :data (coerce (packer:pack ">L" msg-id)
    -                            '(vector (unsigned-byte 8)) )))))))
    -
    -(defun subscriber ()
    -  (zmq:with-context (ctx 1)
    -    (zmq:with-socket (socket ctx zmq:sub)
    -      (zmq:setsockopt socket zmq:subscribe "")
    -      (zmq:connect socket "tcp://localhost:5555")
    -      (loop
    -        (let ((query (make-instance 'zmq:msg)))
    -          (zmq:recv socket query)
    -          (let ((msg-id (first (packer:unpack
    -                                ">L" (zmq:msg-data-as-array query) ))))
    -            (when (= 0 (mod msg-id 10000))
    -              (print msg-id) )))))))
    -

    Topics: -Distributed messaging

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cl4py.html b/clones/lisp/www.cliki.net/cl4py.html deleted file mode 100644 index 7821e2e1..00000000 --- a/clones/lisp/www.cliki.net/cl4py.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cl4py - - - - - - - -
    cl4py
    The library cl4py (pronounce as clappy) allows Python programs to call Common Lisp libraries.

    Homepage: https://github.com/marcoheisig/cl4py

    License: MIT

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/clTcl.html b/clones/lisp/www.cliki.net/clTcl.html deleted file mode 100644 index 5c29def9..00000000 --- a/clones/lisp/www.cliki.net/clTcl.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: clTcl - - - - - - - -
    clTcl
    clTcl provides an interface to Tcl/Tk via Tcl scripts embedded in Common Lisp.

    Homepage: http://lisper99.github.io/cltcl/

    License: MIT

    See also: cl-tk


    -Topics: GUI FFI
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/clack.html b/clones/lisp/www.cliki.net/clack.html deleted file mode 100644 index 83e23882..00000000 --- a/clones/lisp/www.cliki.net/clack.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: clack - - - - - - - -
    clack
    Clack is a Web Application Environment for Common Lisp inspired by Python's WSGI and Ruby's Rack. Your awesome web framework should base on this.

    Homepage: http://clacklisp.org
    -GitHub: https://github.com/fukamachi/clack

    License: LLGPL

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/class-options.html b/clones/lisp/www.cliki.net/class-options.html deleted file mode 100644 index ee195313..00000000 --- a/clones/lisp/www.cliki.net/class-options.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: class-options - - - - - - - -
    class-options
    class-options provides easy access to the defining class and its options during initialization or reinitialization of its subcomponents.

    See the project's home for all details.


    -Unlicense, Public Domain
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/classimp.html b/clones/lisp/www.cliki.net/classimp.html deleted file mode 100644 index 5c07e60e..00000000 --- a/clones/lisp/www.cliki.net/classimp.html +++ /dev/null @@ -1,69 +0,0 @@ - - - - - CLiki: classimp - - - - - - - -
    classimp
    common lisp/cffi bindings for Open Asset Import Library

    Should support assimp versions 3.0 to 3.3.x. Version to support is determined by querying c library at compile time (or load if not previously compiled), with errors if versions don't match at load or runtime. (Current assimp from git will be detected as 3.3, but isn't completely binary compatible so might have problems)

    Allows (among other things) loading of the following formats: -

    Collada ( .dae )
    -Blender 3D ( .blend )
    -3ds Max 3DS ( .3ds )
    -3ds Max ASE ( .ase )
    -Wavefront Object ( .obj )
    -Industry Foundation Classes (IFC/Step) ( .ifc )
    -XGL ( .xgl,.zgl )
    -Stanford Polygon Library ( .ply )
    -*AutoCAD DXF ( .dxf )
    -LightWave ( .lwo )
    -LightWave Scene ( .lws )
    -Modo ( .lxo )
    -Stereolithography ( .stl )
    -DirectX X ( .x )
    -AC3D ( .ac )
    -Milkshape 3D ( .ms3d )
    -* TrueSpace ( .cob,.scn )
    -

    Homepage: GitHub

    License: MIT

    Topics: graphics library

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/clath.html b/clones/lisp/www.cliki.net/clath.html deleted file mode 100644 index ab8b8142..00000000 --- a/clones/lisp/www.cliki.net/clath.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: clath - - - - - - - -
    clath
    Clath is single sign-on middleware for Clack. It allows basic login with OAuth1.0a, OAuth2 and OpenID Connect.

    Clath currently supports authentication from Google, Twitter, LinkedIn, StackExchange, Reddit and Github.

    Depends on: ningle, clack, alexandria, cl-hash-util, drakma, flexi-streams, cl-json, cl-who, ubiquitous, north

    Repository: https://github.com/BnMcGn/clath

    License: Apache 2


    -web API, protocol
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/clave.html b/clones/lisp/www.cliki.net/clave.html deleted file mode 100644 index cdd4f483..00000000 --- a/clones/lisp/www.cliki.net/clave.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: clave - - - - - - - -
    clave
    The Common Lisp Audio Video Engine (CLAVE) is a Lisp FFmpeg interface.

    Depends on: trivial-garbage, bordeaux-threads, cffi, uiop

    Repository: https://github.com/Lovesan/clave

    License: MIT


    -FFI
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/clavier.html b/clones/lisp/www.cliki.net/clavier.html deleted file mode 100644 index 7cda6588..00000000 --- a/clones/lisp/www.cliki.net/clavier.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Clavier - - - - - - - -
    Clavier
    General purpose validation library for Common Lisp.

    Depends on: alexandria, cl-ppcre, closer-mop, chronicity, cl-fad

    Repository: https://github.com/mmontone/clavier


    -MIT-LICENSE
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/clawk.html b/clones/lisp/www.cliki.net/clawk.html deleted file mode 100644 index 5467eb18..00000000 --- a/clones/lisp/www.cliki.net/clawk.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: CLAWK - - - - - - - -
    CLAWK
    CLAWK is an AWK text manipulation language implementation embedded into Common Lisp, by Michael Parker.

    Homepage: http://www.foldr.org/~michaelw/lisp/clawk/#clawk

    License: BSD

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/clbuild.html b/clones/lisp/www.cliki.net/clbuild.html deleted file mode 100644 index 6a90e3fd..00000000 --- a/clones/lisp/www.cliki.net/clbuild.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: clbuild - - - - - - - -
    clbuild
    clbuild is a shell script helping with the download, compilation, and invocation of Common Lisp applications. Download and installation instructions are available on the clbuild project page. It defaults to SBCL but otherwise tries to be somewhat independent of your local environment.

    clbuild was originally written by Luke Gorrie. (Idea from jhbuild by James Henstridge, a Gnome hacker).


    -installer
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/clem.html b/clones/lisp/www.cliki.net/clem.html deleted file mode 100644 index 8c4e9e79..00000000 --- a/clones/lisp/www.cliki.net/clem.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: clem - - - - - - - -
    clem
    A library for representing and performing various operations on matrices.

    CLEM represents matrices using lisp arrays, rather than an external representation for use by packages like BLAS and LAPACK. CLEM uses CLOS and the MOP to make classes specailized for particular lisp types, and provides a number of optimized methods for these matrix types that provide for non-consing (or minimally-consing) matrix operations such as addition, multiplication, scaling, affine transformation, discrete convolution, etc.

    Homepage: GitHub

    License: BSD

    Topics: linear algebra

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/clerk.html b/clones/lisp/www.cliki.net/clerk.html deleted file mode 100644 index 7900a220..00000000 --- a/clones/lisp/www.cliki.net/clerk.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: clerk - - - - - - - -
    clerk
    Clerk is a cron-like scheduler for tasks to execute at given intervals.

    Example:

    (job "Compose and send monthly report" - every 1.month (send-report (compose-monthly-report)))

    The original idea was for users to use the library to execute some sort of execution of a configuration file.


    -MIT-LICENSE
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/clesh.html b/clones/lisp/www.cliki.net/clesh.html deleted file mode 100644 index 3f2a819f..00000000 --- a/clones/lisp/www.cliki.net/clesh.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: clesh - - - - - - - -
    clesh
    Clesh is a library that makes it possible to embed -shell code in Common Lisp code in a manner similar to -perl's backtick operator.

    Depends on: trivial-shell, named-readtables

    Repository: https://github.com/Neronus/clesh

    License: FreeBSD


    -convenience library
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cleven.html b/clones/lisp/www.cliki.net/cleven.html deleted file mode 100644 index d6f8fa8d..00000000 --- a/clones/lisp/www.cliki.net/cleven.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cleven - - - - - - - -
    cleven
    Cleven is an experimental game engine with volume graphics written in Common Lisp.

    Cleven was tested on SBCL and GNU/Linux. Memory mapped voxel maps on Windows are not supported, but this support is planned.

    So far, it has a simple slice-based OpenGL renderer with an orthographic projection, basic support of volume sprites and a simple converter from polygonal models to voxel maps.

    Depends on: alexandria, cl-fad, sb-cga, cl-sdl2, cl-opengl

    Repository: https://github.com/afainer/cleven

    License: MIT


    -graphics library
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/clfswm.html b/clones/lisp/www.cliki.net/clfswm.html deleted file mode 100644 index abc0b111..00000000 --- a/clones/lisp/www.cliki.net/clfswm.html +++ /dev/null @@ -1,61 +0,0 @@ - - - - - CLiki: clfswm - - - - - - - -
    clfswm
    CLFSWM is a 100% Common Lisp X11 window manager (based on Tinywm and Stumpwm. Many thanks to them). -It can be driven only with the keyboard or with the mouse. -

    -A display contains a root frame and its children. A child can be a window or another frame. The root frame or its children can be the current root. The current root is fullscreen maximized (no decorations, no buttons, no menus: nothing, just the application fullscreen!).

    CLFSWM is highly dynamic. By default there is only one frame (the root frame). Other frames are created/deleted on the fly. A window can be in more than one frame, so it can have multiple views of the same windows.

    Using CLFSWM is like walking through a tree of frames and windows. Enter in a child to make it the current root and make it fullscreen maximized. Leave it to make its parent the current root.

    There is no more need for a pager: you are in the pager!

    For its binding, CLFSWM has two modes: A main mode with minimal keys and mouse grabbing to avoid conflicts with others applications. And a second mode with more keys and mouse actions. For details of its usage, have a look at the files doc/keys.txt or doc/keys.html.

    A lot of functions to manage CLFSWM can be found in the second mode menu. See the files doc/menu.txt or doc/menu.html for an overview.

    A frame can be placed anywhere in its parent frame. And can have different layouts to automatically manage its children (tile, tile to left, to bottom, no layout...).

    Some actions can be performed by clicking on screen corners. -For example a left click on the bottom right corner give you an OS X Exposé like. A left click on the top right corner show/hide a virtual keyboard . And a right click on the top left corner show/hide a terminal (like a quake console)... -See doc/corner.txt or doc/corner.html for a summary. -

    - Source code (GPL), screenshots, animations and more details are available on -http://common-lisp.net/project/clfswm/ -


    -CLX
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/clg.html b/clones/lisp/www.cliki.net/clg.html deleted file mode 100644 index e501b553..00000000 --- a/clones/lisp/www.cliki.net/clg.html +++ /dev/null @@ -1,65 +0,0 @@ - - - - - CLiki: clg - - - - - - - -
    clg
    Espen Johnsen's GTK bindings for CMUCL, SBCL and CLISP. It supports GTK+ 2. Now at version 0.93, was observed working under Linux and Solaris.

    CMUCL-specific notes: This is a single-process solution which integrates with SERVE-EVENT. You need to rebuild your CMUCL with -rdynamic added to the linker flags before clg will build (tip: get the Debian packages, they rebuild with a simple "make"). You can also look at cl-gtk, which uses a `talk down a pipe to a separate server' approach like CLM.

    clg works with Glade. The quickest route to "hello world" using CMUCL is

    -
    -1) fetch clg, ./configure && make cmucl 
    -2) fetch Glade.  Doodle.  Save your file somewhere
    -3) make test in cmucl (easiest way to get it to load all the foreign stuff)
    -4) 
    -* (load "../src/read-xml")   
    -T
    -* (load "../src/glade") 
    -T
    -* (load-interface #p"/home/dan/Projects/project1/project1.glade")
    -
    -;;; window pops up
    -
    -

    See http://sourceforge.net/projects/clg

    Running on recent lisp implementations

    As of 2012, the version of CLG on sourceforge.net hasn't been updated in some time. Because it uses internals of its host implementation's MOP, it has broken on recent SBCLs. I have a version up at github, which compiles at least (on SBCL). There are still problems with a couple of the tests on the standard GTK example, which I haven't yet fixed.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/clhp.html b/clones/lisp/www.cliki.net/clhp.html deleted file mode 100644 index 1314e4c6..00000000 --- a/clones/lisp/www.cliki.net/clhp.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - CLiki: clhp - - - - - - - -
    clhp
    CLHP is the Common Lisp Hypertext Preprocessor - a Web programming language. As you might infer from the name, it is similar in capabilities to PHP, only it uses Common Lisp as its underlying language, rather than the C-like language that PHP uses. It is copyrighted under the Lesser GNU Public License (or LGPL)

    The name CLHP implies that it can only be used in Hypertext contexts, however CLHP allows Lisp code to be embedded in XML via XML processing instructions, which means it can be included in any XML document and still allow the document to be considered valid XML. In this respect CLHP could be used in any application where a high level language is desirable as part of an XML solution.

    It is currently in an alpha stage, but is quite useable. At this point, it is implemented in and requires CMUCL. It is integrated as an Apache module, so Apache is required.

    --Anthony Ventimiglia


    -web framework
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/clhs ASDF wrapper.html b/clones/lisp/www.cliki.net/clhs ASDF wrapper.html deleted file mode 100644 index 20ea0582..00000000 --- a/clones/lisp/www.cliki.net/clhs ASDF wrapper.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: clhs ASDF wrapper - - - - - - - -
    clhs ASDF wrapper
    This installation helper makes it even easier to install a copy of the CLHS locally.

    See the project's home for all details.


    -convenience library
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/clickr.html b/clones/lisp/www.cliki.net/clickr.html deleted file mode 100644 index 113960bf..00000000 --- a/clones/lisp/www.cliki.net/clickr.html +++ /dev/null @@ -1,56 +0,0 @@ - - - - - CLiki: clickr - - - - - - - -
    clickr
    Clickr is a high-level binding library of the Flickr API for Common -Lisp. -The current version : 0.2

    -See this blog entry for documentation and a usage example.


    -web API -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cliki.html b/clones/lisp/www.cliki.net/cliki.html deleted file mode 100644 index d9c24a48..00000000 --- a/clones/lisp/www.cliki.net/cliki.html +++ /dev/null @@ -1,117 +0,0 @@ - - - - - CLiki: CLiki - - - - - - - -
    CLiki
    CLiki is the Common Lisp wiki, a community resource about various topics pertaining to the Common Lisp programming language, as well as a directory of Free Software Common Lisp libraries, implementations, and applications.

    Content creation

    If you can edit HTML, you can create CLiki pages. Heck, if you can -edit text you stand a fair chance. Before plunging in, read and absorb the CLiki Content and CLiki Style -guidelines, and the Text Formatting rules. You may want to play in -the CLiki Sandbox to get the hang of it before venturing out on the -road.

    Before contributing text to CLiki, please take a moment to familiarize yourself with the Privacy Statement.

    CLiki the web application

    CLiki2 is a free collaborative hypertext authoring program, written in Common Lisp. Modelled on Wiki, it is Free Software distributed under the terms of the Affero GPL license. Information about obtaining and installing CLiki2 is available on the CLiki2 project page: https://gitlab.common-lisp.net/vsedach/cliki2. Information about the old software behind cliki.net, called simply "CLiki," is available on the page The Old Cliki. CLiki2 was written by Andrey Moskvitin and Vladimir Sedach, with graphic design by Anastasiya Sterh.

    Bugs/Feedback

    Bugs in CLiki can be reported via the common-lisp.net GitLab issue tracker (https://gitlab.common-lisp.net/vsedach/cliki2/issues), or by emailing the CLiki2 maintainer (currently, Vladimir Sedach <vsedach@common-lisp.net>).

    Pages related to CLiki content

    -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/clim-chess.html b/clones/lisp/www.cliki.net/clim-chess.html deleted file mode 100644 index 234c7910..00000000 --- a/clones/lisp/www.cliki.net/clim-chess.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: clim-chess - - - - - - - -
    clim-chess
    clim-chess is a CLIM chess playing game.

    Homepage: https://github.com/stassats/clim-chess

    License: Public Domain


    -Topics: game application
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/clim-desktop.html b/clones/lisp/www.cliki.net/clim-desktop.html deleted file mode 100644 index 96f17c56..00000000 --- a/clones/lisp/www.cliki.net/clim-desktop.html +++ /dev/null @@ -1,123 +0,0 @@ - - - - - CLiki: clim-desktop - - - - - - - -
    clim-desktop
    CLIM-desktop integrates several McCLIM apps to make a Common Lisp development environment.


    This list stolen from IDE. -Tools provided by a Common Lisp IDE:

      -
    • Editor: -
      • State: Usable
      -
    • -
    • Listener -
      • State: Usable
      -
    • -
    • Inspector -
      • State: Usable. Integrated into Debugger.
      -
    • -
    • Apropos Dialog -
      • State: MISSING. There is an Apropos command in the Listener.
      -
    • -
    • Stepper -
      • State: MISSING
      -
    • -
    • Trace Dialog -
      • State: MISSING
      -
    • -
    • Backtrace Dialog -
      • State: Usable (from McCLIM debugger)
      -
    • -
    • Restarts Dialog -
      • State: Usable (from McCLIM debugger)
      -
    • -
    • Save Application Dialog -
      • State: What would this mean?
      -
    • -
    • Preferences Dialog -
      • State: MISSING. No ability to configure apps.
      -
    • -
    • Online Help -
      • State: Somewhat here. Closure is used to browse the CLHS.
      -
    • -
    • User Interface Builder -
      • State: MISSING. CLIB looked promising, but the source is nowhere to be found.
      -
    • -
    • Class Browser -
      • State: Somewhat here. Gilbert Baumann's class-browser.lisp is included. Not integrated.
      -
    • -
    • Generic Function Browser -
      • State: MISSING. Some of this functionality is in the Listener.
      -
    • -
    • System Browser -
      • State: MISSING
      -
    • -
    • Package Browser -
      • State: MISSING
      -
    • -
    • Process Browser -
      • State: MISSING
      -
    • -
    • Mail Client (!!) -
      • State: MISSING
      -
    • -


    -Application, MIT-License
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/clim.html b/clones/lisp/www.cliki.net/clim.html deleted file mode 100644 index 7a7ffb30..00000000 --- a/clones/lisp/www.cliki.net/clim.html +++ /dev/null @@ -1,110 +0,0 @@ - - - - - CLiki: CLIM - - - - - - - -
    CLIM
    The Common Lisp Interface Manager (CLIM) is a Lisp-based programming interface specification that provides a layered set of portable facilities for constructing GUIs. These include basic windowing, input, output, and graphics services; stream-oriented input and output extended with facilities such as output recording, presentations, and context sensitive input; high level "formatted output" facilities; application building facilities; command processing; and a compositional toolkit similar to those found in the X world that supports look and feel independence.

    McCLIM is a Free Software implementation of CLIM

    Information about CLIM: -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/climacs.html b/clones/lisp/www.cliki.net/climacs.html deleted file mode 100644 index e2f0d925..00000000 --- a/clones/lisp/www.cliki.net/climacs.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: climacs - - - - - - - -
    climacs
    Climacs is an Emacs-like text editor written in Common Lisp.

    It is a CLIM application. Its development resources are summarized at -its project page on common-lisp.net.

    As of July 2006, Climacs is a useful tool for writing Common Lisp code, but it does not have close integration with a REPL, debugger or inspector like SLIME. The CLIM-desktop project provides additional integration with Climacs into other applications (most notably the McCLIM Listener), but does not greatly enhance Climacs' capabilities for editing Common Lisp. Climacs can presently do parameter hinting, code evaluation, symbol completion, displaying of compiler notes and definition-editing.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/clinch.html b/clones/lisp/www.cliki.net/clinch.html deleted file mode 100644 index 3ef420fa..00000000 --- a/clones/lisp/www.cliki.net/clinch.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: CLinch - - - - - - - -
    CLinch
    CLinch is a simple, yet powerful 3d engine/graphics library in OpenGL for Lisp. In true Lisp fashion, it is more a build-your-own-engine hobby kit rather than striving to be a full graphics panacea. Much of the design is based on Horde3D. Although Horde3D is a very good design, it has limitations which it attempts to solve by adding domain specific languages. Items such as shaders, entities and, most importantly, the pipeline are specified using an XML language. Lisp, by being self-compiling seems like a better fit than requiring (yet) another language.

    Project homepage

    Author: Brad Beer


    -MIT-LICENSE
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/clinicap.html b/clones/lisp/www.cliki.net/clinicap.html deleted file mode 100644 index 094f6b03..00000000 --- a/clones/lisp/www.cliki.net/clinicap.html +++ /dev/null @@ -1,73 +0,0 @@ - - - - - CLiki: clinicap - - - - - - - -
    clinicap
    clinicap is a dialect of ini file format parser and writer, implemented in Common Lisp.

    author: Azamat S. Kalimoulline (aka turtle)

    sources: https://github.com/turtle-bazon/clinicap

    -turtle@turtle-laptop:~/scm-controlled/debian-lisp/clinicap$ cat /tmp/test.ini 
    -max-connections=20
    -
    -[general]
    -name="turtle"
    -org="bazon"
    -

    -CLINICAP> (setf *b* (read-ini-file "/tmp/test.ini"))
    -CLINICAP> (get-ini-property *b* '("max-connections")) => 20
    -CLINICAP> (get-ini-property *b* '("general" "name")) => "turtle"
    -CLINICAP> (set-ini-property *b* '("general" "interests") "lisp")
    -CLINICAP> (write-ini-file "/tmp/test.ini" *b*)
    -

    -turtle@turtle-laptop:~/scm-controlled/debian-lisp/clinicap$ cat /tmp/test.ini 
    -max-connections=20
    -
    -[general]
    -name="turtle"
    -org="bazon"
    -interests="lisp"
    -

    license: LLGPL


    -configuration
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/clisp-sqlite.html b/clones/lisp/www.cliki.net/clisp-sqlite.html deleted file mode 100644 index 68ad2f54..00000000 --- a/clones/lisp/www.cliki.net/clisp-sqlite.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: clisp-sqlite - - - - - - - -
    clisp-sqlite
    clisp-sqlite is an interface to the sqlite SQL database.

    Author: Scott Williams

    License: LGPL

    Repository: https://github.com/juancolarte/colarte-dev/tree/master/lisp/clisp/sqlite


    -CLISP
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/clisp.html b/clones/lisp/www.cliki.net/clisp.html deleted file mode 100644 index 76f41e53..00000000 --- a/clones/lisp/www.cliki.net/clisp.html +++ /dev/null @@ -1,84 +0,0 @@ - - - - - CLiki: CLISP - - - - - - - -
    CLISP
    CLISP is a Common Lisp implementation by Bruno Haible, then of Karlsruhe University, and Michael Stoll, then of Munich University, both in Germany. It mostly supports the Lisp described in the ANSI Common Lisp standard.

    CLISP includes an interpreter, a compiler, a debugger, CLOS, MOP, arbitrary precision floats, a foreign language interface and a socket interface.

    An X11 interface is available through CLX and Garnet.

    Command line editing is provided by GNU Readline which makes it one of the nicer Lisps to use interactively - you can auto-complete function and file names with tab, use up arrow to get previous commands and it does parenthesis-matching.

    Cross-platform preemptive multiprocessing is in alpha.

    Homepage: https://www.gnu.org/software/clisp/

    Source code repository: https://gitlab.com/gnu-clisp/clisp

    License: GPL-2.0-or-later

    Local CLISP links

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/clmath.html b/clones/lisp/www.cliki.net/clmath.html deleted file mode 100644 index ac392f56..00000000 --- a/clones/lisp/www.cliki.net/clmath.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: clmath - - - - - - - -
    clmath
    CLMATH is a modern re-packaging of an old Common Lisp scientific library by Gerald Roylance. I have found it to be a light-weight alternative to the GSL for my own purposes. (I was unable to get GSLL to even compile.)

      -
    • I built this using SBCL 1.0.55.0-abb03f9 on OS X 10.8.2.
    • I am submitting this "as-is" and make no claims as it its accuracy or stability.
    • Please note, that this code is copywrited by its owner, whom I have been unable to contact. I have made no changes to the code other than for repackaging, i.e. so that it builds using ASDF. I have also eliminated some references to obsolete CL implementations (MACLISP, etc.). The logic of the functions remains the same.
    • -

    Mathematics

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/clnuplot.html b/clones/lisp/www.cliki.net/clnuplot.html deleted file mode 100644 index 90f1bd2f..00000000 --- a/clones/lisp/www.cliki.net/clnuplot.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: CLNUPlot - - - - - - - -
    CLNUPlot
    CLNUPlot connects Common Lisp to GNUPlot. More information about this plotting library can be found on its project page.

    This is another one of Gary King's projects.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cloak.html b/clones/lisp/www.cliki.net/cloak.html deleted file mode 100644 index d999d1d3..00000000 --- a/clones/lisp/www.cliki.net/cloak.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cloak - - - - - - - -
    cloak
    cloak is an experimental implementation of the JVM for SBCL on Linux/x86. You can try running Java or other JVM-hosted programming languages on it.

    Homepage: http://lichteblau.blogspot.com/2007/08/cloak.html

    License: GPL

    Source repository: http://www.lichteblau.com/git/cloakbuild.git/ (GitHub mirror)

    Author: David Lichteblau

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/clocc-port.html b/clones/lisp/www.cliki.net/clocc-port.html deleted file mode 100644 index 03e29efe..00000000 --- a/clones/lisp/www.cliki.net/clocc-port.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: clocc-port - - - - - - - -
    clocc-port
    CLOCC includes a library PORT which unifies many things across different implementations, such as socket interfaces, shell access, and gray streams.

    A Debian package of it exists. It uses common-lisp-controller and should -be simple to install. Please look on the Debian-page for -details.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/clod.html b/clones/lisp/www.cliki.net/clod.html deleted file mode 100644 index 27c1c644..00000000 --- a/clones/lisp/www.cliki.net/clod.html +++ /dev/null @@ -1,59 +0,0 @@ - - - - - CLiki: clod - - - - - - - -
    clod
    CLOD is a Common Lisp doc-generator, similar to Albert, Cldoc and so on. It works by introspection rather than by parsing source files. It targets Emacs Org mode, which in turn can export it to HTML, PDF, DocBook, LaTeX or other formats.

    Features: -

      -
    • easy export to any format supported by org mode, from within Emacs
    • -
    • automatic syntax highlighting of lisp source code examples in HTML.
    • -
    • automatic generation of 'UML'-like class diagrams as PNG files, using GraphViz
    • -
    • comes with emacs lisp code that allows you to edit doc-strings using org mode INSIDE common lisp buffers (uses emacs mmm-mode). Never leave Emacs again!
    • -
    -Repository: https://bitbucket-archive.softwareheritage.org/projects/ee/eeeickythump/clod

    Comments are welcome.


    -Documentation Tool
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/clods-export.html b/clones/lisp/www.cliki.net/clods-export.html deleted file mode 100644 index df20b194..00000000 --- a/clones/lisp/www.cliki.net/clods-export.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: clods-export - - - - - - - -
    clods-export
    clods-export provides functionality for writing spreadsheet files in the OpenDocument Spreadsheet (.ods) file format.

    See the home page for documentation and examples.

    Topics: document preparation

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/clois-lane.html b/clones/lisp/www.cliki.net/clois-lane.html deleted file mode 100644 index a5fa1b62..00000000 --- a/clones/lisp/www.cliki.net/clois-lane.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: clois-lane - - - - - - - -
    clois-lane
    clois-lane provides bindings to the Object-Oriented Input System (OIS) for such things as game controllers.

    The Object-Oriented Input System (OIS) is the default input system for Ogre and these CFFI bindings work together with the Okra project which provides access to Ogre from Common Lisp.

    The project page is at https://github.com/PlumpMath/clois-lane

    Related libraries: Buclet

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/clon.html b/clones/lisp/www.cliki.net/clon.html deleted file mode 100644 index 8d111c68..00000000 --- a/clones/lisp/www.cliki.net/clon.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: Clon - - - - - - - -
    Clon
    There are three packages by the name of CLON, although the third one doesn't actually introduce any conflict because the package is named net.didierverna.clon.

    Clon: A cron-like scheduling library

    A task scheduler library much like cron for lisp that is implemented as a shallow layer on top of SBCL timers. It's written by Gabor Melis and can be found at http://quotenil.com/clon/clon-latest.tar.gz. It's forked near 2014 with some bug-fix.

    It's then forked again by Jin-Cheng Guu in mid 2021 into his repo, aiming to let clon replace traditional cron managers. (It's renamed to cl-schedule since v0.0.5 as there are too many name clashes.) The forked version also provides more examples, documents and features. In particular, in an example below we show how to make a schedule that does what a traditional cron manager would do for the control string

    */25 5-6,10 * 7 1-2

    Long story short, it can be expressed as the following.

    (make-typed-cron-schedule

    :minute '(satisfies twenty-five-p)

    :hour '(or (integer 5 6) (member 10))

    :month 7

    :day-of-week '(integer 0 1))

    Clon: Common Lisp Object Network

    CLON (Common Lisp Object Network) is a prototype-based object system for Common Lisp written by David O'Toole. The details of inheritance, message passing, and field lookup are inspired by the Io language and the Garnet UI toolkit (KR in particular). It doesn't seem to be available anywhere. CLON is used in RLX, a game engine for rogue-like games.

    Clon: the Command-Line Options Nuker

    Clon is a library for managing command-line options in standalone Common Lisp applications. It provides a unified option syntax with both short and long names, automatic completion of partial names and automatic retrieval/conversion of option arguments from the command-line, associated environment variables, fallback or default values. Clon comes with a set of extensible option types (switches, paths, strings etc.). Clon also provides automatic generation and formatting of help strings, with support for highlighting on tty's through ISO/IEC 6429 SGR. This formatting is customizable through "themes".

    Clon currently works on Unix (including MacOS X) and Windows (Cygwin, MinGW/MSYS) with SBCL, CMUCL, CCL, ECL, CLISP, ABCL, Allegro (both standard and modern) and LispWorks.

    Clon is written by Didier Verna. -Clon's homepage is here.


    -command-line options parser
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/clones.html b/clones/lisp/www.cliki.net/clones.html deleted file mode 100644 index f1330cf4..00000000 --- a/clones/lisp/www.cliki.net/clones.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: clones - - - - - - - -
    clones
    Clones is a game inspired by "same game" for GNOME. More information is available on its home page
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/clonsigna.html b/clones/lisp/www.cliki.net/clonsigna.html deleted file mode 100644 index f4ba05f7..00000000 --- a/clones/lisp/www.cliki.net/clonsigna.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: clonsigna - - - - - - - -
    clonsigna
    Clonsigna is a Common Lisp library that allows interaction with IMAP4rev1 servers.

    Licence: BSD

    Dependencies: IOlib (git), cl-base64, CL-PPCRE, SPLIT-SEQUENCE, Alexandria, CL-PLUS-SSL (cvs)

    Home page: http://common-lisp.net/project/clonsigna.


    -Topics: email
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/clos-diff.html b/clones/lisp/www.cliki.net/clos-diff.html deleted file mode 100644 index 8c8b6b36..00000000 --- a/clones/lisp/www.cliki.net/clos-diff.html +++ /dev/null @@ -1,62 +0,0 @@ - - - - - CLiki: clos-diff - - - - - - - -
    clos-diff
    clos-diff is a library to create and apply diffs of CLOS objects in a compact representation. The library also preforms the diffs recursively, so that (theoretically) infinite layers of objects can be diffed. The only dependency is closer-mop.

    Homepage: https://github.com/krzysz00/clos-diff

    License: GPL

    Author: Krzysztof Drewniak <krzysdrewniak AT gmail DOT com>

    API:

    function: clos-diff:diff (old new &key (test #'equalp))
    -

    This function will create a diff that represents the modification - that need to be applied to object old to create the object new. The - test parameter will control the test used for equality. As a special - case is the old parameter is nil, a diff from an object with no - bound slots will be created.

    function: clos-diff:apply-diff (diff &optional object)
    -

    This function will apply the diff given in the parameter diff to the - object contained in object. If object is nil, a fresh object of the - appropriate type (with all slots unbound) will be created, and the - diff will be applied to that (See the documentation for diff for - more information).


    -Topics: serialization
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/clos.html b/clones/lisp/www.cliki.net/clos.html deleted file mode 100644 index b7a5e984..00000000 --- a/clones/lisp/www.cliki.net/clos.html +++ /dev/null @@ -1,126 +0,0 @@ - - - - - CLiki: CLOS - - - - - - - -
    CLOS
    The Common Lisp Object System is based on generic functions, multiple inheritance, and declarative method combination. Many implementations also have a meta-object protocol, or MOP, often based on that described in AMOP

    Any purporting-to-conform ANSI CL implementation will have CLOS built in. There are also "add-on" implementations from before it was part of standard CL: Closette is the code developed in the AMOP book and probably not practically useful, whereas PCL is fully-featured (if slower than a typical tuned commercial implementation might be) and has been used as the basis for the CLOS support in e.g. CMUCL and SBCL

    Web pages:

    Topic listing:

    -

    See also

    - -
    (defclass/std example () - ((slot1 slot2 slot3))) -

    expands to

    (DEFCLASS EXAMPLE () - ((SLOT1 :ACCESSOR SLOT1 :INITARG :SLOT1 :INITFORM NIL) - (SLOT2 :ACCESSOR SLOT2 :INITARG :SLOT2 :INITFORM NIL) - (SLOT3 :ACCESSOR SLOT3 :INITARG :SLOT3 :INITFORM NIL))) -

    It is very flexible. The repository contains examples from other projects (Clack, etc).

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/closer-mop.html b/clones/lisp/www.cliki.net/closer-mop.html deleted file mode 100644 index d4cc7c24..00000000 --- a/clones/lisp/www.cliki.net/closer-mop.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: closer-mop - - - - - - - -
    closer-mop
    Closer to MOP is a compatibility layer that rectifies many of the absent or incorrect MOP features as detected by MOP Feature Tests. This page kept ASDF-Install happy. See Closer to MOP for details.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/closer-weak.html b/clones/lisp/www.cliki.net/closer-weak.html deleted file mode 100644 index 8a6ec2af..00000000 --- a/clones/lisp/www.cliki.net/closer-weak.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: closer-weak - - - - - - - -
    closer-weak
    closer-weak provides CLisp-style weak objects support for CMUCL and SBCL.

    Currently WEAK-OR-RELATION is not implemented.

    Homepage: http://informatimago.com/develop/lisp/index.html

    Source: http://informatimago.com/develop/lisp/com/informatimago/clext/closer-weak.lisp

    License: GPL


    -Topics: system programming
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/closure-common.html b/clones/lisp/www.cliki.net/closure-common.html deleted file mode 100644 index a73328c9..00000000 --- a/clones/lisp/www.cliki.net/closure-common.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: closure-common - - - - - - - -
    closure-common
    closure-common is a helper library for cxml and closure-html.

    This project is asdf-installable (release tarball) and available in clbuild (git version).

    Original author: Gilbert Baumann

    Current maintainer: Cyrus Harmon

    Depends on: trivial-gray-streams, babel

    Repository: https://github.com/sharplispers/closure-common

    License: LLGPL

    Feature overview

    closure-common is an internal helper library and is not documented yet, -but a patch adding docstrings in atdoc format would be welcome.

    Etymology

    The name Closure is a reference to the web browser it was originally -written for.

    Tarball

    https://common-lisp.net/project/cxml/download/closure-common.tar.gz

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/closure-html.html b/clones/lisp/www.cliki.net/closure-html.html deleted file mode 100644 index 37ee37c7..00000000 --- a/clones/lisp/www.cliki.net/closure-html.html +++ /dev/null @@ -1,68 +0,0 @@ - - - - - CLiki: closure-html - - - - - - - -
    closure-html
    Closure HTML is a portable HTML parsing library that understands malformed HTML.

    This project is asdf-installable (release tarball below) and available in clbuild (git version).

    Original author: Gilbert Baumann

    Current maintainer: David Lichteblau

    Depends on: closure-common, flexi-streams

    Repository: https://repo.or.cz/w/closure-html.git

    License: MIT

    Feature overview

      -
    • Supports HTML 4 and understands malformed HTML. -
    • -
    • -Serialization implemented using an event API called HAX, inspired by SAX. -
    • -
    • Can be used with XML representations designed for cxml -
    • -
    -In-memory representations that can be used with Closure HTML:

    -

    Relation to Closure XML

    chtml is an error-correcting HTML parser; cxml an XML parser.

    Etymology

    chtml is short for Closure HTML, in reference to the Closure web browser it was originally written for.

    Note that the Closure web browser is not related to the Clozure implementation of Common Lisp and works on various Common Lisp implementations.

    Tarball

    https://common-lisp.net/project/closure/download/closure-html.tar.gz

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/closure.html b/clones/lisp/www.cliki.net/closure.html deleted file mode 100644 index 90eb3bbf..00000000 --- a/clones/lisp/www.cliki.net/closure.html +++ /dev/null @@ -1,68 +0,0 @@ - - - - - CLiki: Closure - - - - - - - -
    Closure
    Closure is a free web browser written completely in Common Lisp.

    Author: Gilbert Baumann

    Repository: https://gitlab.common-lisp.net/closure/closure

    Depends on: mcclim, cxml, closure-html, bordeaux-threads, trivial-sockets, zip, flexi-streams, skippy

    This project doesn't provide a release tarball and is not asdf-installable. It is, however, available in clbuild.

    Feature overview

      -
    • GUI is based on CLIM - primarily developed using McCLIM. -(Support for images is limited to the CLIM-CLX backend for X11-only at -this point.) -
    • -
    • Supports HTML 4, using closure-html -
    • -
    • -CSS 1 support (support for CSS 2 not complete) -
    • -
    • Released under an MIT-style license -
    • -
    • known to run, as of December 2006, on SBCL 1.0 and -CMUCL 19d (probably also OpenMCL). -
    • -
    -

    Etymology

    Note that Closure is not related to the Clozure implementation of Common -Lisp and works on various Common Lisp implementations.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/clouchdb.html b/clones/lisp/www.cliki.net/clouchdb.html deleted file mode 100644 index f8ce2b1a..00000000 --- a/clones/lisp/www.cliki.net/clouchdb.html +++ /dev/null @@ -1,58 +0,0 @@ - - - - - CLiki: clouchdb - - - - - - - -
    clouchdb
    Clouchdb is an interface to the CouchDb databases.

    Features include: -

      -
    • A more concise and comfortable API for Lisp development than HTTP and JavaScript. -
    • -
    • A lispy syntax for creating document views (thanks to Parenscript). -
    • -

    It supports CouchDb version 1.1.0 and newer, and it should be portable across Lisp implementations. It has currently been tested with SBCL and Clozure CL on Mac OSX Lion (64bit,Intel).

    License: BSD

    Homepage: http://common-lisp.net/project/clouchdb/

    Author: Peter Eddy


    -StructuredStorage
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/clsql-pg-introspect.html b/clones/lisp/www.cliki.net/clsql-pg-introspect.html deleted file mode 100644 index 261ee92b..00000000 --- a/clones/lisp/www.cliki.net/clsql-pg-introspect.html +++ /dev/null @@ -1,57 +0,0 @@ - - - - - CLiki: clsql-pg-introspect - - - - - - - -
    clsql-pg-introspect
    clsql-pg-introspect is a package for introspecting PostgreSQL SQL databases from clsql. Great for quickly defining your own classes based on existing tables.

    License: LLGPL

    Homepage: http://common-lisp.net/project/pg-introspect/

    Author: Alan Shields

    Usage summary: -

    -(clsql-pg-introspect:gen-view-class boxes)
    -

    This would make a CLSQL class based on the table boxes - including its not-null, unique, primary key, and foreign key attributes. With joins defined, even.

    Or, more often: -

    -(clsql-pg-introspect:gen-view-classes-for-database(("" "database" "username" "password") :postgresql) boxes tubes flyers planes postage-stamps)
    -

    This would make CLSQL classes for the tables boxes, tubes, flyers, planes, and postage_stamps.

    There are more things you can do - the package and functions are documented, and README has a few things to say.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/clsql.html b/clones/lisp/www.cliki.net/clsql.html deleted file mode 100644 index 1f082f32..00000000 --- a/clones/lisp/www.cliki.net/clsql.html +++ /dev/null @@ -1,91 +0,0 @@ - - - - - CLiki: CLSQL - - - - - - - -
    CLSQL
    CLSQL is a Database interface that can access a number of different SQL database engines. It also includes a CLOS ORM. It is maintained by Kevin Rosenberg.

    CLSQL now includes the CommonSQL API interface. CLSQL's manual is -online at http://clsql.kpe.io/documentation.html.

    CLSQL uses the UFFI interface so it works on: -

      -
    • SBCL
    • -
    • CMUCL
    • -
    • OpenMCL
    • -
    • AllegroCL
    • -
    • Lispworks
    • -
    • SCL
    • -
    • CLISP
    • -
    • ECL
    • -

    CLSQL supports a number of database interfaces: -

      -
    • PostgreSQL C library API
    • -
    • PostgreSQL Socket API
    • -
    • MySQL
    • -
    • SQLite 2
    • -
    • SQLite 3
    • -
    • Oracle
    • -
    • ODBC (On all platforms)
    • -
    • AODBC (Allegro's ODBC database interface)
    • -

    Not all features are supported on all DBMSes. For example, CLSQL's OODDL does not support :auto-increment on sqlite3.

    There are CLSQL packages in the Debian and Gentoo distributions. CLSQL is covered by the LGPL license.
    -CLSQL can be downloaded from its web site.

    -

    Additional Documentation

    -Bill Clementson has written two entries about CLSQL, in his web log:

      -
    • -CL-SQL - Part 1 - discussing some of the advantages of CLSQL and how to install it. -
    • -
    • -CL-SQL - Part 2 - an interactive, annotated session using CLSQL, illustrating some of the characteristics of working with CLSQL -
    • -

    To quote his Part 1: -

    If you would like to see some more examples of how to use CLSQL, the -CLSQL tutorial is quite useful. Also, the tremendous -CommonSQL tutorial that -Nick Levine gave at -ILC2002 is an excellent introduction to CLSQL. Even though his tutorial is - targetted towards LispWorks CommonSQL, the examples work equally well - in CLSQL (with the occasional minor tweak).

    Looping over query result

    -Iterate supports looping over CLSQL queries through the use of iterate-clsql extension.

    Lispbox workaround

    You may get an error claiming that CLSQL can't find "foreign libraries." Find the directory where those files are located, and use clsql:push-library-path. They will likely be wherever CLSQL was installed, for example: -

    (clsql:push-library-path #p"/home/myusername/.sbcl/site/clsql-3.5.6/db-mysql/") ;installed here by asdf-install

    This may also occur with OpenMCL; same solution.

    Multithreaded usage

    This is not obvious from the documentation, but just using CONNECT gives you a single database connection - if you try to use that connection in multiple threads, you will get nasty race conditions. One convenient way to use CLSQL with multiple threads is to use the WITH-DATABASE macro around any code that talks to the database. Using connection pools, this is quite efficient, and thread-safe.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/clss.html b/clones/lisp/www.cliki.net/clss.html deleted file mode 100644 index 87efea19..00000000 --- a/clones/lisp/www.cliki.net/clss.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: CLSS - - - - - - - -
    CLSS
    CLSS is a DOM traversal/search engine using CSS selectors. It uses the Plump DOM.

    The project can be found on github including a fully documented symbol index and a getting started tutorial.
    -As of May 2014, CLSS is available on Quicklisp.

    CLSS is licensed under the Artistic License 2.0.


    -XML HTML web
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cluck.html b/clones/lisp/www.cliki.net/cluck.html deleted file mode 100644 index d9d07402..00000000 --- a/clones/lisp/www.cliki.net/cluck.html +++ /dev/null @@ -1,57 +0,0 @@ - - - - - CLiki: cluck - - - - - - - -
    cluck
    Cluck is a Common Lisp library written by Kevin Rosenberg for assisting in configuring timers on microcontroller chips. Current functions include:

      -
    • displaying range of 8 and 16 bit timer values for a given clock speed
    • -
    • displaying prescaler, compare values, and error percentage for a desired millisecond interrupt period
    • -
    • displaying UART divisors and error percentage for common serial port speeds
    • -
    -
    -embedded
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cluecc.html b/clones/lisp/www.cliki.net/cluecc.html deleted file mode 100644 index 07bcb0b1..00000000 --- a/clones/lisp/www.cliki.net/cluecc.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cluecc - - - - - - - -
    cluecc
    Clue is an ANSI C programming language compiler that targets several languages, including Common Lisp. It supports the entire C language, including pointer arithmetic, and can be used to run arbitrary pure-C programs.

    Note: the Common Lisp backend of Clue is broken and unlikely to be fixed. See Vacietis for a working and supported C to Common Lisp compiler.

    Homepage: http://cluecc.sourceforge.net/

    License: BSD

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/clufs.html b/clones/lisp/www.cliki.net/clufs.html deleted file mode 100644 index 43f88b94..00000000 --- a/clones/lisp/www.cliki.net/clufs.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: clufs - - - - - - - -
    clufs
    Common Lisp User Space File System.

    A simple file based file system. Use mkfs and mount to take clufs file system into use. Use it with mkdir, create, open and close to read and write files. -Open returns a stream to file in clufs file system.

    clufs project is hosted at https://sourceforge.net/projects/clufs/.


    -Tags for clufs: filesystem, MIT, system programming
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/clunit2.html b/clones/lisp/www.cliki.net/clunit2.html deleted file mode 100644 index 9f7ceaf6..00000000 --- a/clones/lisp/www.cliki.net/clunit2.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: CLUnit2 - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/clutter.html b/clones/lisp/www.cliki.net/clutter.html deleted file mode 100644 index 09ae4e6d..00000000 --- a/clones/lisp/www.cliki.net/clutter.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: clutter - - - - - - - -
    clutter
    Annotations/decorators/attributes for CLOS classes and slots.

    Depends on: closer-mop, doplus

    Repository: https://github.com/alessiostalla/clutter/

    License: LGPL


    -MOP
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/clws.html b/clones/lisp/www.cliki.net/clws.html deleted file mode 100644 index a5827002..00000000 --- a/clones/lisp/www.cliki.net/clws.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: clws - - - - - - - -
    clws
    clws is a WebSocket server, using IOlib

    It runs on SBCL and CCL, and is available from Quicklisp or at https://github.com/3b/clws.

    Categories: Web, WebSocket server

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/clx.html b/clones/lisp/www.cliki.net/clx.html deleted file mode 100644 index 96887c43..00000000 --- a/clones/lisp/www.cliki.net/clx.html +++ /dev/null @@ -1,110 +0,0 @@ - - - - - CLiki: CLX - - - - - - - -
    CLX
    CLX provides an implementation of the X Window System protocol to Lisp graphics library[ies] and applications. It is the Common Lisp equivalent of Xlib.

    portable-clx (formerly called "telent CLX") is used in SBCL and also forms -the basis of the OpenMCL and ECL CLX packages. As of 0.7.3 it -additionally supports Allegro CL. It includes Unix-domain socket support, SHAPE, XRENDER, XFREE86-VIDMODE extensions, authorization fixes for ssh-forwarded connections, and many other bugfixes and performance improvements. Usually tested against the latest released SBCL.

    -# This is the version used in QuickLisp
    -git clone git://github.com/sharplispers/clx.git
    -

    Bundled versions of CLX for different implementations:

      -
    • -CMUCL: available from CMUCL download sites in the -extra package.

    • -
    • -CLISP comes with two implementations of CLX - the original MIT-CLX -and NEW-CLX which is faster and has some extensions.

    • -
    • -LispWorks - Barry Wilkes ported the MIT R5.02 sources to -LispWorks for Linux - http://www.bew.org.uk/Lisp/index.html. Other UNIX ports of -LispWorks have a version of CLX supported by Xanalys.

    • -
    • -OpenMCL (based on telent CLX) at https://ccl.clozure.com/ftp/pub/CLX/

    • -
    • Allegro Common Lisp: comes with CLX. You can browse the version distributed with Allegro CL here; -it appears to be the same as the MIT sources, featurewise. -
    • -

    The CLX Manual is available in HTML and texinfo.

    Supported X11 extensions

      -
    • XRENDER by Gilbert Baumann (basically done in the telent tree) -
    • -
    • XSHAPE and XFREE86-VIDMODE in the telent tree -
    • -
    • GLX (experimental) and DPMS (also in the telent tree) -
    • -
    • BIG-REQUESTS (work begun in Christophe's darcs repository) -
    • -
    • Some XSM work has been done in Eclipse; e.g.: eclipse/lib/sm/ common-lisp.net -
    • -
    • XEMBED by Alessandro Piras (available in quicklisp) -
    • -
    • Small part of XKeyboard by Michael Filonenko (available in quicklisp) -
    • -
    • XDBE (double-buffering) in InvalidCo's fork on github -
    • -
    -

    Opportunities to contribute

      -
    • Adding more effective declarations
    • -
    • Update the CLX Manual. -
    • -
    • Adding documentation strings to functions (mostly just converting existing good comments to strings). -
    • -
    • Better i18n
    • -
    • Support for the MITSHM extension
    • -
    • Use XmlXcb (XML description of the X protocol as used by XCB) as basis.
    • -
    -

    ssh-forwarded connections

    The standard CLX function OPEN-DISPLAY doesn't correctly extract the -display number from the DISPLAY environment variable. This is a -problem when using CLX on an ssh-forwarded X11 session, as ssh -typically uses display number 10+n. Additionally, CLX in its MIT -guise doesn't handle xauth very well, requiring the xhost -blunt instrument before it'll put up a window on such a display. This -is handled correctly in CMUCL CLX (use EXT:OPEN-CLX-DISPLAY) and in -telent CLX (XLIB:OPEN-DEFAULT-DISPLAY). See CMUCL Hints for more -information.

    CLOS interface

    Paul Foley wrote CLOS class wrappers for X events.

    Example programs

    Perhaps you want to have a look at the source code of Acclaim as it directly uses CLX without any layer in between to display the rendered slides on screen.


    -Topics: x11 networking -See also: GUI toolkits

    If you're installing manually, get an up-to-date version from the github address or using Quicklisp.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cmpl.html b/clones/lisp/www.cliki.net/cmpl.html deleted file mode 100644 index 1af3604d..00000000 --- a/clones/lisp/www.cliki.net/cmpl.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cmpl - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cmucl.html b/clones/lisp/www.cliki.net/cmucl.html deleted file mode 100644 index 586cabbb..00000000 --- a/clones/lisp/www.cliki.net/cmucl.html +++ /dev/null @@ -1,106 +0,0 @@ - - - - - CLiki: CMUCL - - - - - - - -
    CMUCL
    CMUCL is a high-performance, free (mostly Public Domain) Common Lisp implementation that aims towards ANSI compatibility and runs on a number of Unix platforms - including Linux/ix86, Linux/Alpha, -FreeBSD/ix86, NetBSD/ix86, OpenBSD/ix86, Solaris/SPARC, -HP-UX/HPPA, and IRIX/MIPS - though not all of these ports are current. -See the project home page at cons.org -for more information.

    Debian GNU/Linux users will find that their distribution includes -CMUCL packages (Stable version, -Testing version, -Unstable version) -which they can grab using apt-get. More information about the CMUCL port to Debian can be found at CMUCL on Debian. Other Linux packages are listed here: https://pkgs.org/download/cmucl

    The EncyCMUCLopedia is a collection of most - if not all - of the documentation related to CMUCL. It is updated a couple of times per year. The latest version is June 17, 2001. - -The Design of CMU Common Lisp documents internal details of the CMU Common Lisp compiler and run-time system. By Robert A. MacLachlan (ed), updated January 15, 2003.

    Not sure anyone besides me has had a problem with this, but I just thought I'd mention that if you set *print-lines* and/or *print-right-margin* to sufficiently low values, error-messages may show up as just "..", which is quite confusing. Oh, and if something is weird, remember to try without your super-tweaked init.lisp-file, like I didn't. (lisp -noinit)

    Related pages

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cocoa-mail.html b/clones/lisp/www.cliki.net/cocoa-mail.html deleted file mode 100644 index 8aaf5d7d..00000000 --- a/clones/lisp/www.cliki.net/cocoa-mail.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cocoa-mail - - - - - - - -
    cocoa-mail
    cocoa-mail is a basic interface for OpenMCL on Mac OS X to the Cocoa Mail infrastructure. It was largely cargo-culted from one of the examples.

    It provides two major functions: (NSMAIL:DELIVERY-CONFIGURED) returns T if the NSMailDelivery service is available. (NSMAIL:DELIVER-MESSAGE-BASIC address subject message-body) attempts to deliver the message-body to the address with the specified subject. All arguments should be Lisp strings.

    Homepage: http://josephoswald.nfshost.com/cocoa-mail/summary.html

    License: BSD


    -Topics: email
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/coding convention.html b/clones/lisp/www.cliki.net/coding convention.html deleted file mode 100644 index 232eb791..00000000 --- a/clones/lisp/www.cliki.net/coding convention.html +++ /dev/null @@ -1,62 +0,0 @@ - - - - - CLiki: Coding Convention - - - - - - - -
    Coding Convention
    This page describes some common coding convention that you'll see in lisp source code.

    Use a different number of semicolons for a comment to provide information on the comment. See the Tips on Writing Comments section from the Elisp manual for examples.

      -
    • Use a single semicolon when commenting on code on the same line
    • -
    • Use two semicolons when commenting on code on the next line
    • -
    • Use three semicolons when commenting on the following block of code
    • -
    • Use four semicolons when commenting on the next section of code
    • -
    -Avoid using tabs. Put (setq indent-tabs-mode nil) in ~/.emacs to replace tabs with spaces.

    Additional Resources -


    -programming tips
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/coleslaw.html b/clones/lisp/www.cliki.net/coleslaw.html deleted file mode 100644 index dbe970a9..00000000 --- a/clones/lisp/www.cliki.net/coleslaw.html +++ /dev/null @@ -1,66 +0,0 @@ - - - - - CLiki: coleslaw - - - - - - - -
    coleslaw
    coleslaw is static-site blog software a la Jekyll written by Brit Butler.

    -

      -
    • Git for storage
    • -
    • RSS and ATOM feeds!
    • -
      • Markdown Support with Code Highlighting provided by colorize. -
      • Currently supports: Common Lisp, Emacs Lisp, Scheme, C, C++, Java, Python, Erlang, Haskell, Obj-C, Diff.
      • -
    • -
      • Plugins for... -
      • Comments via Disqus
      • -
      • Analytics via Google
      • -
      • Using LaTeX (inside pairs of $$) via Mathjax
      • -
      • Importing posts from wordpress
      • -
    • -
    • There is also a Heroku buildpack maintained by Jose Pereira.
    • -
    • Example sites: redlinernotes and (lisp :is 'fun).
    • Homepage: https://github.com/kingcons/coleslaw

      License: BSD -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/collapse-string.html b/clones/lisp/www.cliki.net/collapse-string.html deleted file mode 100644 index 34cc1ea8..00000000 --- a/clones/lisp/www.cliki.net/collapse-string.html +++ /dev/null @@ -1,132 +0,0 @@ - - - - - CLiki: collapse-string - - - - - - - -
    collapse-string
    A function to remove whitespace from a string, with the option of collapsing each "run" to a single character, while optionally ignoring whitespace on the left, right, or both ends of the string. This function always returns a fresh string, so it may be convenient to use in series with destructive functions like nstring-downcase. On the other hand, this function isn't very optimized.

    (defun whitespace-char-p (char) - (check-type char character) - ;; Could include non-breaking space, maybe, since - ;; we're already in semi-standard territory with - ;; these character names. It's a tricky predicate. - (case char ((#\Return - #\Linefeed - #\Page - #\Space - #\Tab - #\VT) - t))) - -(defun make-scratch (string to-type buffer-size) - (let ((string-type (array-element-type string))) - (make-array buffer-size :fill-pointer 0 - ;; The new element-type must accommodate both existing characters - ;; and the given substitution character (if any was specified). - :element-type (cond ((subtypep to-type 'null) string-type) - ((subtypep to-type string-type) string-type) - ((subtypep string-type to-type) to-type) - (t 'character))))) - -(defun collapse-string (string &key (start 0) end to (trim :both)) - (check-type trim (member nil :left :right :both) "a trim option") - (let ((buffer-size (- (or end (setq end (length string))) start))) - (loop with buffer = (make-scratch string (type-of to) buffer-size) - with state = :initial - for i from start below end - for char = (char string i) - do (cond ((not (whitespace-char-p char)) - (when (and to (eq state :whitespace)) - (vector-push-extend to buffer)) - (vector-push-extend char buffer) - (setq state :non-whitespace-sequence)) - ((not (and (zerop (fill-pointer buffer)) - (case trim ((:left :both) t)))) - ;; Not trimming on left. - (setq state :whitespace))) - ;; Deal with any trailing whitespace. - finally (unless (case trim ((:right :both) t)) - (when (and to (eq state :whitespace)) - (vector-push-extend to buffer))) - ;; Always a new string. - (return (copy-seq buffer)))))

    Quick examples

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    CallOutput
    (collapse-string "    Hello      World    ")
    HelloWorld
    (collapse-string "    Hello      World    " :start 10)
    World
    (collapse-string "    Hello      World    " :to #\-)
    Hello-World
    (collapse-string "    Hello      World    " :to #\_ :trim :right)
    _Hello_World
    (collapse-string "    Hello      World    " :to #\/ :trim nil)
    /Hello/World/
    (collapse-string "    " :to #\/ :trim nil)
    /

    See also

    -
    -Apache 2
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/collectors.html b/clones/lisp/www.cliki.net/collectors.html deleted file mode 100644 index 957842c3..00000000 --- a/clones/lisp/www.cliki.net/collectors.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: collectors - - - - - - - -
    collectors
    collectors is a common lisp library that aims to ease accumulating values (similar to loop/iter's collecting / appending clauses)

    For more info see:

    Git Hub: https://github.com/AccelerationNet/collectors


    -Topic: AccelerationNet, language extension, accumulators
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/colliflower.html b/clones/lisp/www.cliki.net/colliflower.html deleted file mode 100644 index 81960782..00000000 --- a/clones/lisp/www.cliki.net/colliflower.html +++ /dev/null @@ -1,59 +0,0 @@ - - - - - CLiki: colliflower - - - - - - - -
    colliflower
    Colliflower is a library for abstaractions around data structures. It includes three sub-libraries:

    -
    liter
    -
    tools for iterating using an iterator closure. Provides function similar to python's itertools and macros and iterate directives to iterate over such iterators easily.
    -
    garten
    -
    library for building data structures. It is a generalization of the collecting macro, where you can efficiently build other kinds of data structures.
    -
    silo
    -
    library for accessing, setting, and deleting values by some key. similar to access -
    -

    The library comes with implementations for lisps built in data structures (list, array, hash-table, etc.) but can also be extended to other data structures such as those in cl-containers or lisp-interface-library.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/color-gradients.html b/clones/lisp/www.cliki.net/color-gradients.html deleted file mode 100644 index 94d26484..00000000 --- a/clones/lisp/www.cliki.net/color-gradients.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: color-gradients - - - - - - - -
    color-gradients
    color-gradients is a graphics library that computes linear or radial color gradients. Multistop color progression using linear or sin^2 interpolation is available.

    License: BSD

    Source repository: http://github.com/Ramarren/color-gradients

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/colorize.html b/clones/lisp/www.cliki.net/colorize.html deleted file mode 100644 index ec9f01ed..00000000 --- a/clones/lisp/www.cliki.net/colorize.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: colorize - - - - - - - -
    colorize
    Colorize is an Application for colorizing chunks of Common Lisp, Scheme, Elisp, C, C++, or Java code. It is the same colorizing engine as lisppaste made standalone. It's licensed under the MIT license, written by Brian Mastenbrook, and currently maintained by Brit Butler.

    The source and up to date docs may be found on github.

    This is an interesting example that acts like a server-side include of colorized Lisp code for HTML.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/com.google.base.html b/clones/lisp/www.cliki.net/com.google.base.html deleted file mode 100644 index 58fb0d04..00000000 --- a/clones/lisp/www.cliki.net/com.google.base.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: com.google.base - - - - - - - -
    com.google.base
    The base package contains code that's highly likely to be useful in every Lisp application.

    Repository: https://github.com/brown/base

    License: BSD 3-Clause


    -convenience library
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/com.informatimago.common-lisp.interactive.html b/clones/lisp/www.cliki.net/com.informatimago.common-lisp.interactive.html deleted file mode 100644 index 965a57b5..00000000 --- a/clones/lisp/www.cliki.net/com.informatimago.common-lisp.interactive.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: com.informatimago.common-lisp.interactive - - - - - - - -
    com.informatimago.common-lisp.interactive
    informatimago interactive is a collection of Unix-like file browsing commands, and REPL-management tools. It might be handy if you want to use the Lisp REPL as a shell.

    Homepage: http://informatimago.com/develop/lisp/index.html

    Source repository: git clone git://git.informatimago.com/public/lisp com/informatimago

    License: GPL

    See also: outer-parentheses-free-repl Lisp as a shell


    -Topics: convenience library Unix -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/com.informatimago.hangman.html b/clones/lisp/www.cliki.net/com.informatimago.hangman.html deleted file mode 100644 index 0c15817e..00000000 --- a/clones/lisp/www.cliki.net/com.informatimago.hangman.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - CLiki: com.informatimago.hangman - - - - - - - -
    com.informatimago.hangman
    This is the classic Hangman game.

    It demonstrates a simple MacOSX (Cocoa) application written with CCL, without -using xib/nib files, but constructing the user interface entirely -programmatically.

    -git clone http://git.informatimago.com/public/games/hangman-cocoa-lisp/
    -

    You can learn more about com.informatimago.hangman from its README file.

    Hangman screen shot

    Watch a screencast.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/com.nklein.parser-generator.html b/clones/lisp/www.cliki.net/com.nklein.parser-generator.html deleted file mode 100644 index 42739635..00000000 --- a/clones/lisp/www.cliki.net/com.nklein.parser-generator.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: com.nklein.parser-generator - - - - - - - -
    com.nklein.parser-generator
    Generate SAX-based XML parsers for Lisp or Objective-C.

    It creates all of the necessary data types for your internal structures based on your input file.

    Say you've got a bunch of different XML formats that you need to read into internal data structures. You could sit down and code a SAX parser from scratch. You could use a DOM parser and then wander through the DOM filling in your internal data structures. Or, you could write a little snippet describing how you'd like to turn your XML into structures and run this parser generator by Patrick Stein.

    The #'MAIN function takes a list of command line arguments. See the src/generator/0README.org for information on the command-line arguments supported.

    Homepage

    GitHub


    -parser generator
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/command-line options parser.html b/clones/lisp/www.cliki.net/command-line options parser.html deleted file mode 100644 index 13d83781..00000000 --- a/clones/lisp/www.cliki.net/command-line options parser.html +++ /dev/null @@ -1,97 +0,0 @@ - - - - - CLiki: command-line options parser - - - - - - - -
    command-line options parser
    Here is a list of command-line options parsing libraries. Those libraries are useful for creating standalone Lisp programs.

      -
    • -adopt - - adopt is a damn option parsing library -
    • -
    • -adopt-subcommands - - Extend the Adopt command line processing library to handle nested subcommands -
    • -
    • -Apply-argv - - Apply-argv is a lightweight command-line options parser library -
    • -
    • -argparse - - simple argument parser library for common lisp -
    • -
    • -Clon - - There are three packages by the name of CLON, although the third one doesn't actually introduce any conflict because the package is named net.didierverna.clon -
    • -
    • -command-line-arguments - - command-line-arguments is a library to parse arguments from the shell command-line -
    • -
    • -getopt - - getopt is a library for processing command-line arguments -
    • -
    • -lisp-gflags - - Lisp GFlags is a Common Lisp implementation of gflags, Google's command line -
    • -
    • -optparser - - optparser is a Unix command-line options parser for simple shell scripts, geared towards ease-of-use and unambiguity -
    • -
    • -unix-options - - unix-options is a library for processing Unix-style command-line arguments -
    • -
    • -unix-opts - - This is a minimalistic parser of command line options -
    • -
    -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/command-line-arguments.html b/clones/lisp/www.cliki.net/command-line-arguments.html deleted file mode 100644 index c4f6ffe1..00000000 --- a/clones/lisp/www.cliki.net/command-line-arguments.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: command-line-arguments - - - - - - - -
    command-line-arguments
    command-line-arguments is a library to parse arguments from the shell command-line.

    It is small and self-contained and small, but less fancy than Didier Verna's CLON. See also Robert Brown's lisp-gflags.

    command-line-arguments was written by Fare Rideau and is published as part of qitab.


    -command-line options parser
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/common lisp implementation.html b/clones/lisp/www.cliki.net/common lisp implementation.html deleted file mode 100644 index d8b422ff..00000000 --- a/clones/lisp/www.cliki.net/common lisp implementation.html +++ /dev/null @@ -1,220 +0,0 @@ - - - - - CLiki: Common Lisp implementation - - - - - - - -
    Common Lisp implementation
    Common Lisp implementations and their *features*.

    Comparison of actively developed Common Lisp implementations

    All the implementations below provide an FFI and sockets interface. Callbacks mean in this context that the FFI is capable of passing lisp-functions as callbacks to foreign functions. The startup file is loaded when the Lisp starts. Not all platforms listed may be actively supported.

    Note: Some implementation builds fail to include FFI, sockets, and/or threads. Fink CLISP fails to includes threads, and MacPorts anything fails to include FFI. Aptitude lisps are severely out of date: SBCL fails on Xen, and ECL crashes during installation.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    ImplementationSupported PlatformsCompilerThreads?FeaturesStartup fileLicense
    CLISPWindows, Mac OS X, Linux, Solaris, FreeBSD, NetBSD, OpenBSD, Dragonfly BSDBytecodeYes (experimental)Small image size, very efficient bignums, Callbacks, - modules -~/.clisprc.lispGPL2
    CMUCLLinux, Mac OS X, Solaris, FreeBSD, NetBSD, OpenBSD, IRIX, HPUXBytecode, Native & Block CompilationNoHigh quality native compiler, foreign callbacks~/.cmucl-init.lispBSD3
    ECLLinux, FreeBSD, NetBSD, OpenBSD, Solaris, Windows, Mac OS X, iOS, AndroidNative via C, also bytecodeYes (all platforms)Executable delivery and portability. Integrates well with C programs (i.e. Embeddable, native powerful FFI).~/.eclrcLGPL-2.1+
    CCLMac OS X, Linux, FreeBSD, Solaris, Android, Windows XP and later, HerokuNativeYes (all platforms)Small image size, fast compiler, convenient and powerful FFI, callbacks, executable delivery, precise gc~/ccl-init.lispApache 2
    SBCLLinux, Mac OS X, FreeBSD, NetBSD, OpenBSD, Windows (sbcl's platform table) -NativeYesHigh quality native compiler; callbacks; executable delivery;~/.sbclrcBSD2+PD
    ABCLJVM, Google App EngineJVM bytecodeYesFFI to Java, platform independence~/.abclrcGPL+Classpath exception
    MKCLLinux, Windows XP and laterNative via C, bytecode-compiled interpreterYesPOSIX compliant runtime on Linux, Embeddable, FFI with callbacks.~/.mkclrcLGPL3

    Daniel Weinreb has a current (as of February 2010) survey of Common Lisp implementations that is more detailed than the chart above.

    All Free Software Common Lisp implementations (some of these may not be actively developed):

    For non-free implementations, see the list on wikipedia.

    If performance is an important criterion for you, you might be interested in the Performance Benchmarks page.

    You may also use this what-implementation CL program to help you determine what implementation to use. You may use it with telnet://hubble.informatimago.com:8101.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/common-db.html b/clones/lisp/www.cliki.net/common-db.html deleted file mode 100644 index 5d299e2e..00000000 --- a/clones/lisp/www.cliki.net/common-db.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: common-db - - - - - - - -
    common-db
    common-db is a programmable debugging substrate, mostly geared to driving target devices by establishing control via on-chip debugging machinery through a JTAG (IEEE 1149.1) external port.

    On-chip machinery control can be obtained either directly, through a JTAG adapter dongle, or through a network proxy, talking either the TAPCLIENT or RTLJTAG protocol.

    Common-db itself can serve as a GDB remote target, by exposing its functionality through the GDB RSP protocol. Alternatively, it can expose the directly-attached JTAG target through its own TAPCLIENT protocol.

    Common-db is designed to be capable to drive targets of different architecture, although only MIPS32 target is implemented.

    Repository: https://github.com/deepfire/common-db

    License: LGPL


    -Topics: electronics embedded application
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/common-lisp-controller.html b/clones/lisp/www.cliki.net/common-lisp-controller.html deleted file mode 100644 index 56e43277..00000000 --- a/clones/lisp/www.cliki.net/common-lisp-controller.html +++ /dev/null @@ -1,85 +0,0 @@ - - - - - CLiki: common-lisp-controller - - - - - - - -
    common-lisp-controller
    A system for installing Common Lisp libraries and source on Debian, Fedora, Gentoo and Ubuntu Linux systems.

    Released packages are available from packages.debian.org. As of August 2009, the latest package for the Debian sid (unstable) distribution is version 6.18.

    Low traffic mailing lists are clc-users and clc-devel. Debian packaging questions are directed to pkg-common-lisp-devel. An old source repository, last updated in 2005, is at Debian alioth.

    Authors are Peter Van Eynde, Kevin Rosenberg and Rene van Bevern.

    A manual for version 7 (2010) is at https://github.com/GitoriousLispBackup/common-lisp-controller/blob/master/DESIGN.txt, though additional documentation is included with the package.

    Currently, Common Lisp Controller is supported by the following -Common Lisp implementations in Debian: -

    The very first thing you have to do is: -

    -# aptitude install common-lisp-controller
    -
    - -Installation of other Common Lisp libraries should then be a simple matter of: -
    -# aptitude install <package name>
    -
    -e.g aptitude install cl-split-sequence -You're good to go now.

    How it works (note: we're describing version 4 here):

      -
    • it's expected to be used with a package system that can run setup -scripts after installing things.
    • -
    • lisp packages are distributed as source code, placed in the /usr/share/common-lisp/source/package/.
    • -
    • asdf is required. Each package needs a system definition that expects it to be found in /usr/share/common-lisp/systems/.
    • -
    • it does not anymore use the logical pathname system. Instead it overrides the asdf:output-files method to divert the fasls to a user, implementation and library specific location. At the moment /var/cache/common-lisp-controller/user-name/implementation/library/.
    • -
    • To use a library the user just has to use (clc:clc-require :foo) -
    • -
    • To recompile all libraries the user can use (clc:clc-build-all-packages) or (clc:clc-build-all-packages t) to ignore any errors during rebuilding.
    • -
    • On installation of an implementation it should run /usr/sbin/register-common-lisp-implementation bar where bar is the name of the implementation. On removal it should call the /usr/sbin/unregister-common-lisp-implementation bar command.
    • -
    • An implementation should provide a /usr/lib/common-lisp/bin/bar.sh script that implements the install-clc command.
    • -
    • On installation libraries should call /usr/sbin/register-common-lisp-source foo on removal /usr/sbin/unregister-common-lisp-source foo.
    • -
    • Also there is now a debconf interface for site-name stuff that implementations should use if possible. The results are stored in /etc/lisp-config.lisp.
    • -

    We simply add a system location to asdf's ASDF:*CENTRAL-REGISTRY*, so the native locations still work. To install local packages, either use asdf-install or modify at ASDF:*CENTRAL-REGISTRY* to also point to your files.


    -installer
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/common-lisp-stat.html b/clones/lisp/www.cliki.net/common-lisp-stat.html deleted file mode 100644 index f3dc0325..00000000 --- a/clones/lisp/www.cliki.net/common-lisp-stat.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: common-lisp-stat - - - - - - - -
    common-lisp-stat
    Common Lisp Statistics -- based on LispStat but updated for Common Lisp and incorporating lessons from R.

    Homepage: https://github.com/blindglobe/common-lisp-stat

    License: MIT

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/common-lisp.net.html b/clones/lisp/www.cliki.net/common-lisp.net.html deleted file mode 100644 index 9c8c645a..00000000 --- a/clones/lisp/www.cliki.net/common-lisp.net.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: common-lisp.net - - - - - - - -
    common-lisp.net
    Common-lisp.net provides hosting services (mailinglists, cvs, ftp, etc) to (not necessarily) free Common Lisp projects. See https://common-lisp.net/ for details.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/community.html b/clones/lisp/www.cliki.net/community.html deleted file mode 100644 index 1428479f..00000000 --- a/clones/lisp/www.cliki.net/community.html +++ /dev/null @@ -1,92 +0,0 @@ - - - - - CLiki: Community - - - - - - - -
    Community
      -
    • -ALU - - The Association of Lisp Users (ALU) is a user group which was set up to promote Lisp, help inform and educate Lisp users in general, and help represent Lisp users as a group to the vendors -
    • -
    • -CLUS - - CLUS, or Common Lisp UltraSpec, is a community project to create a contemporary and unified documentation file for the whole modern Common Lisp universe -
    • -
    • -David Steuber - - David Steuber is a Person who tries to hack in Lisp with Carbon Emacs, OpenMCL, and SBCL -
    • -
    • -Doug Tolton - - Doug Tolton is person, who is stll trying to figure both Lisp and Cliki out -
    • -
    • -FSF - - The Free Software Foundation was founded by EMACS creator Richard Stallman to maintain the shared community that the early hackers had, and to counter the for-profit world with a set free software tools and operating system -
    • -
    • -International Lisp Conference 2002 - - The International Lisp Conference 2002 was in San Francisco, October 27th- October 31st -
    • -
    • -International Lisp Conference 2003 - - The International Lisp Conference 2003 -
    • -
    • -Regional Lisp groups - - Hungary -
    • -
    • -sharplispers - - A group of Common Lisp hackers who occasionally maintain otherwise abandoned or quasi-abandoned Common Lisp software packages -
    • -
    • -SLUG - - The Symbolics Lisp Users Group (SLUG) was the precursor to the ALU -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/comp.lang.lisp.html b/clones/lisp/www.cliki.net/comp.lang.lisp.html deleted file mode 100644 index 351eccf4..00000000 --- a/clones/lisp/www.cliki.net/comp.lang.lisp.html +++ /dev/null @@ -1,74 +0,0 @@ - - - - - CLiki: comp.lang.lisp - - - - - - - -
    comp.lang.lisp
    Everybody's favourite newsgroup: comp.lang.lisp (news:comp.lang.lisp) is an excellent place to get help with a programming problem, but if you ask about an obvious homework problem you'll be unmercifully chided, or helped in ways your teacher will least expect.

    Since Google Groups occasionally bans comp.lang.lisp (on account of spam), it might be nice to have a more reliable archive for reference purposes. So here's an attempt. It's generated from Ron Garret's archive file, with one HTML page per complete thread. (Note that the thread structure is incomplete, due to gaps in the archive.) What's done, not done, and would be nice:

      -
    • -Time zones adjusted to UTC since it simplifies some things. -
    • -
    • -Windows-1252 and quoted-printable (but no Base64 yet). -
    • -
    • -spam.log records the message IDs of suppressed articles. -
    • -
    • Respects X-No-Archive (not a common header in comp.lang.lisp). -
    • -
    • Expand the archive?—Which currently extends halfway into 2009. -
    • -
    • Search functionality might be nice/naughty to have—eventually. -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/comparisons.html b/clones/lisp/www.cliki.net/comparisons.html deleted file mode 100644 index 37207dba..00000000 --- a/clones/lisp/www.cliki.net/comparisons.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: comparisons - - - - - - - -
    comparisons
    Comparison is a simple library adding comparison functions similar to EQUAL and EQUALP, which handle multiple types gracefully.

    Download: http://technomadic.org/comparisons-latest.tar.gz


    -language extension
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/compatibility layers.html b/clones/lisp/www.cliki.net/compatibility layers.html deleted file mode 100644 index 90192575..00000000 --- a/clones/lisp/www.cliki.net/compatibility layers.html +++ /dev/null @@ -1,92 +0,0 @@ - - - - - CLiki: compatibility layers - - - - - - - -
    compatibility layers
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/compatible-metaclasses.html b/clones/lisp/www.cliki.net/compatible-metaclasses.html deleted file mode 100644 index dac16099..00000000 --- a/clones/lisp/www.cliki.net/compatible-metaclasses.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: compatible-metaclasses - - - - - - - -
    compatible-metaclasses
    compatible-metaclasses validates superclasses according to a simple substitution model, thereby greatly simplifying the definition of class mixins.

    See the project's home for all details.


    -Unlicense, Public Domain
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/compression.html b/clones/lisp/www.cliki.net/compression.html deleted file mode 100644 index df20f8d5..00000000 --- a/clones/lisp/www.cliki.net/compression.html +++ /dev/null @@ -1,92 +0,0 @@ - - - - - CLiki: Compression - - - - - - - -
    Compression
    Data compression in Common Lisp.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/computable-reals.html b/clones/lisp/www.cliki.net/computable-reals.html deleted file mode 100644 index a8cd69f5..00000000 --- a/clones/lisp/www.cliki.net/computable-reals.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: COMPUTABLE-REALS - - - - - - - -
    COMPUTABLE-REALS
    COMPUTABLE-REALS is a Mathematics library for dealing with arbitrary precision reals.

    COMPUTABLE-REALS is Quicklispable, and was written originally by Michael Stoll and is maintained by Robert Smith.

    The source can be found here.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/computed-class.html b/clones/lisp/www.cliki.net/computed-class.html deleted file mode 100644 index 96f7d4fc..00000000 --- a/clones/lisp/www.cliki.net/computed-class.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: computed-class - - - - - - - -
    computed-class
    A class metaobject for computed slot values and more.

    Instances of computed-class are CLOS classes that support per instance lazy computation of slot values while keeping track of dependencies and managing invalidation of such computed results transparently. The engine is fully integrated with CLOS but it is also independent from it. It makes it possible to use computed local variables that can even be captured by lambda's (see clet) and also to explicitly handle the computed-state structs as first-class citizens. For more information see the home page. It's under the BSD license. -

    Similar to Cells, but it has full CLOS integration (no make-be and friends), while its core engine is simpler at the time of writing.


    -Topics: language extension dataflow
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/concurrency.html b/clones/lisp/www.cliki.net/concurrency.html deleted file mode 100644 index 758095b7..00000000 --- a/clones/lisp/www.cliki.net/concurrency.html +++ /dev/null @@ -1,250 +0,0 @@ - - - - - CLiki: concurrency - - - - - - - -
    concurrency
    Doing more than one thing at a time.

      -
    • -bailout - - Supervision trees for Common Lisp -
    • -
    • -blackbird - - Blackbird is a modern promise implementation -
    • -
    • -Bordeaux-Threads - - Bordeaux-Threads lets you write multi-threaded applications in a portable way -
    • -
    • -bt-semaphore - - simple semaphores for bordeaux-threads -
    • -
    • -Calispel - - Calispel is a concurrency library for thread-safe message-passing channels, in the style of the occam programming language -
    • -
    • -chanl - - ChanL is a concurrency library built on top of bordeaux-threads that provides channels as thread-synchronisation primitives -
    • -
    • -cl-actors - - A simple Common Lisp implementation of the actor model of concurrency -
    • -
    • -cl-async - - Cl-async is a asynchronous I/O library wrapping the libuv C library -
    • -
    • -cl-cuda - - Cl-cuda is a library to use Nvidia CUDA in Common Lisp programs -
    • -
    • -cl-flow - - Asynchronous non-blocking concurrency in Common Lisp, similar to what green threads are for -
    • -
    • -cl-future - - Cl-future is a simple way to achieve parallelism for common lisp on multiprocessor shared memory Unix machines -
    • -
    • -cl-gpu - - cl-gpu is a translator from a subset of Common Lisp to CUDA for writing GPU kernels -
    • -
    • -cl-muproc - - CL-MUPROC is an Erlang-inspired concurrency library available under the BSD license for Lispworks, OpenMCL, SBCL, CMUCL, and ACL -
    • -
    • -Eager Future2 - - Eager Future2 provides composable concurrency primitives that unify parallel and lazy evaluation, are integrated with CL's condition system, and have automatic resource management -
    • -
    • -green-threads - - GREEN-THREADS is a portable library implementing green threads (lightweight, cooperatively multitasked, user threads) in Common Lisp -
    • -
    • -lparallel - - lparallel is a new concurrency library -
    • -
    • -memento-mori - - memento-mori is a library for writing robust, actor-based systems -
    • -
    • -pcall - - PCall is a concurrency library that implements simple 'result-oriented' parallelism on top of Bordeaux-Threads -
    • -
    • -Petalisp - - Elegant code generation for high-performance computing -
    • -
    • -pretend-event-loop - - This is a common lisp library that simulates an event loop -
    • -
    • -stmx - - STMX is an actively maintained, high-performance concurrency library providing Transactional Memory for Common Lisp -
    • -
    • -thread-pool - - thread-pool is library that allows asynchronous function execution from a static thread pool -
    • -
    • -threading-queue - - threading-queue is a CL macro to distribute work on several threads, feeding the data via thread-safe-queues over several steps -
    • -
    • -trivial-timers - - Trivial-timers is a minimally portable implementation of the SBCL timer extension using Bordeaux-Threads -
    • -

    Threads are a popular technique for concurrent programming: -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/conduit-packages.html b/clones/lisp/www.cliki.net/conduit-packages.html deleted file mode 100644 index dab5362a..00000000 --- a/clones/lisp/www.cliki.net/conduit-packages.html +++ /dev/null @@ -1,60 +0,0 @@ - - - - - CLiki: conduit-packages - - - - - - - -
    conduit-packages
    conduit-packages provides some enhancements to Common Lisp's package system. It allows the creation of extended packages that may dynamically share symbols with other packages, thus extending them. The extended packages are called "conduits", since they serve as conduits for other packages.

    An example would be:

    (defpackage :implementation-package-1 - (:export ...)) -(defpackage :implementation-package-2 - (:export ...)) - -(defpackage :package-to-use - (:use) - (:extends :implementation-package-1 :implementation-package-2))

    User code can now simply use the package-to-use package and it will get all -the exports of all the implementation packages.

    You can also create packages which extend other packages excepting a few symbols, so you can create, for instance, custom CL-like packages, such as subsets, or CL-with-a-few-things-done-differently. You can also `clone' packages—create another package which shares all (external and internal) symbols with an existing package.

    This language extension was developed by Tim Bradshaw. It works with Allegro CL, LispWorks, CLISP, CMUCL and Symbolics Genera.


    -MIT-LICENSE
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/conference.html b/clones/lisp/www.cliki.net/conference.html deleted file mode 100644 index 15e6070d..00000000 --- a/clones/lisp/www.cliki.net/conference.html +++ /dev/null @@ -1,120 +0,0 @@ - - - - - CLiki: Conference - - - - - - - -
    Conference
    Planning on going to a conference? This Cliki page is intended as a starting point for news of conferences with a Lisp theme or at which Lispers are likely to be present in significant numbers

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/configuration.html b/clones/lisp/www.cliki.net/configuration.html deleted file mode 100644 index e8d08c18..00000000 --- a/clones/lisp/www.cliki.net/configuration.html +++ /dev/null @@ -1,92 +0,0 @@ - - - - - CLiki: Configuration - - - - - - - -
    Configuration
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/conium.html b/clones/lisp/www.cliki.net/conium.html deleted file mode 100644 index d9c97f06..00000000 --- a/clones/lisp/www.cliki.net/conium.html +++ /dev/null @@ -1,76 +0,0 @@ - - - - - CLiki: conium - - - - - - - -
    conium
    Conium is a portability library for debugger- and compiler-related -tasks in Common Lisp.

    It is fork of swank-backend and differs from swank in the following -regards:

      -
    • The swank frontend has been removed, leaving a Lisp library rather - than a socket server. - -
    • -
    • The swank-loader has been removed. Conium always uses ASDF instead of a manual load script. - -
    • -
    • Code related to threads has been removed. (Use bordeaux-threads instead.) - -
    • -
    • Code related to the MOP has been removed. (Use closer-mop instead.) - -
    • -
    • Code related to gray streams has been removed. (Use - trivial-gray-streams instead.) - -
    • -
    • Code related sockets has been removed. (Use usocket, iolib, or - in Hemlock's case, the connection API instead.)

    • -
    • The package SWANK-BACKEND has been renamed to CONIUM. -
    • -

    It is currently being maintained by David Lichteblau and retains its -original public domain status.

    Download

    git clone https://github.com/sharplispers/conium.git

    system programming

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/console.html b/clones/lisp/www.cliki.net/console.html deleted file mode 100644 index f8ab4791..00000000 --- a/clones/lisp/www.cliki.net/console.html +++ /dev/null @@ -1,140 +0,0 @@ - - - - - CLiki: console - - - - - - - -
    console
    Libraries for dealing with a text console/terminal:

      -
    • -ACUTE-TERMINAL-CONTROL - - Permit fast control of a terminal device -
    • -
    • -cffi-stfl - - cffi-stfl is a set of bindings for STFL (Structured Terminal Forms Language/Library), a curses-based widget set for text terminals -
    • -
    • -cl-ansi-term - - cl-ansi-term allows to print various primitives on ANSI-complaint terminals -
    • -
    • -cl-ansi-text - - Enables ANSI colors for printing -
    • -
    • -cl-charms - - cl-charms is a set of CFFI bindings for libcurses (ncurses), a GUI-like console library -
    • -
    • -cl-dormouse - - Dormouse ('Doryen' + 'Mouse', groan) is a windowing `graphical' user interface built on top of libtcod -
    • -
    • -CL-ECMA-48 - - Implement the ECMA-48 standard -
    • -
    • -cl-fu - - CFFI library for NCURSES -
    • -
    • -cl-menusystem - - cl-menusystem is a library for making pretty menus for controlling an application and editing the multitude of special variables which invariably exist to control an app's settings -
    • -
    • -CL-Ncurses - - An interface to the ncurses and pdcurses console user interface libraries for Common Lisp -
    • -
    • -CL-READLINE - - Common -
    • -
    • -cl-termbox - - CFFI bindings for the termbox library -
    • -
    • -croatoan - - croatoan is a set of bindings to the ncurses terminal / console library for Common Lisp -
    • -
    • -Duologue - - High-level user interaction library for Common Lisp -
    • -
    • -ecl-readline - - A simple binding to GNU Readline console library for ECL (Embeddable Common Lisp) providing command line editing, symbol completion, history file and history size configuration -
    • -
    • -Linedit - - Linedit is a portable line-editing console library for Common Lisp -
    • -
    • -sb-screen - - sb-screen is a library for displaying text on a console, in the same genre as curses -
    • -
    • -screen - - GNU Screen is a Unix utility that permits running multiple interactive windows -
    • -
    • -tmux - - Tmux is an alternative to screen -
    • -
    • -unix-opts - - This is a minimalistic parser of command line options -
    • -
    • -vial - - Vim-like editor written in Common Lisp -
    • -
    • -wcp-termcap - - wcp-termcap is a library to parse Unix termcap (terminal capability) files -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/continuations.html b/clones/lisp/www.cliki.net/continuations.html deleted file mode 100644 index 3fd24fb2..00000000 --- a/clones/lisp/www.cliki.net/continuations.html +++ /dev/null @@ -1,77 +0,0 @@ - - - - - CLiki: continuations - - - - - - - -
    continuations
    Continuations are a way of capturing the current state of the program and packaging it for later call (see wikipedia:Continuations)) -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/convenience library.html b/clones/lisp/www.cliki.net/convenience library.html deleted file mode 100644 index 859d57be..00000000 --- a/clones/lisp/www.cliki.net/convenience library.html +++ /dev/null @@ -1,244 +0,0 @@ - - - - - CLiki: convenience library - - - - - - - -
    convenience library
    Convenience libraries may make your code shorter to write, or may make it harder to read. Please read about The Great Macro Debate if you're considering using any of these libraries.

      -
    • -Anaphora - - Anaphora is the anaphoric macro collection from Hell; it includes many new fiends in addition to old friends like AIF and AWHEN -
    • -
    • -anaphoric-variants - - anaphoric-variants gives access to anaphoric variants of operators through one macro: anaphoric -
    • -
    • -cartesian-product-switch - - cartesian-product-switch is a macro for choosing the appropriate form to execute according to the combined results of multiple tests -
    • -
    • -cdr_assoc - - A setf method for (cdr (assoc ...)) -
    • -
    • -cl-anonfun - - cl-anonfun - anonymous function helpers for Common Lisp -
    • -
    • -cl-groupby - - Short implementation of Scalas groupBy functionality for Common Lisp -
    • -
    • -cl-hash-util - - cl-hash-util is a very basic library for dealing with CL's hash tables -
    • -
    • -cl-interpol - - CL-INTERPOL modifies the reader so that you can have interpolation of strings similar to Perl or Unix Shell scripts -
    • -
    • -cl-pdf.arglists - - cl-pdf.arglists improves the argument lists of CL-PDF and cl-typesetting, for easier interactive development -
    • -
    • -cl-reexport - - cl-reexport makes a package reexport symbols which are external symbols in other packages -
    • -
    • -cl-syntax-sugar - - cl-syntax-sugar is a convenience library of reader macros and of helper functions to create new syntax extensions and to use them with ASDF and Slime without enabling them in the global readtable -
    • -
    • -clesh - - Clesh is a library that makes it possible to embed -
    • -
    • -clhs ASDF wrapper - - This installation helper makes it even easier to install a copy of the CLHS locally -
    • -
    • -com.google.base - - The base package contains code that's highly likely to be useful in every Lisp application -
    • -
    • -com.informatimago.common-lisp.interactive - - informatimago interactive is a collection of Unix-like file browsing commands, and REPL-management tools -
    • -
    • -curly - - Curly is set of two reader macros for easy function currying and -
    • -
    • -defclass* - - defclass* is a convenience library to make the usage of defclass-like constructs easier (defcondition*, deflayer*, etc) -
    • -
    • -defclass-std - - A shortcut macro to write DEFCLASS forms quickly -
    • -
    • -DEFINER - - DEFINER is a small hack which demonstrates the power of CL macro facilities -
    • -
    • -defstar - - Defstar is a collection of Common Lisp macros that can be used in place of defun, defmethod, defgeneric, defvar, defparameter, flet, labels, let* and lambda -
    • -
    • -demacs - - Demacs is an extensible way of defining various things -
    • -
    • -documentation-utils - - This is a small library to help you with managing the docstrings for your library -
    • -
    • -enhanced-eval-when - - enhanced-eval-when provides an enhanced eval-when macro that supports (eval-when t ...) as a shorthand for (eval-when (:compile-toplevel :load-toplevel :execute) ...), addressing concerns about verbosity -
    • -
    • -enhanced-multiple-value-bind - - enhanced-multiple-value-bind provides an enhanced multiple-value-bind macro that adds support for lambda list keywords by expanding to a multiple-value-call when necessary -
    • -
    • -f-underscore - - F-underscore is a convenience library to make writing lambdas shorter without having to resort to special syntax like arc's square brackets -
    • -
    • -folio2 - - A collection of small libraries: functional idioms and data structures in Common Lisp and a common set of APIs for them -
    • -
    • -ia-hash-table - - Indifferent access hash-tables for Common Lisp -
    • -
    • -let-plus - - LET+ extends let* with destructuring forms, slot access, hash table elements and various other constructs with a consistent interface -
    • -
    • -lispc - - A powerful macrolanguage for C -
    • -
    • -literate-lisp - - Provides some support for org files as Lisp source files, including ASDF interface -
    • -
    • -macro-level - - macro-level is an embarassingly trivial convenience macro that saves on indentation while being more concise and direct -
    • -
    • -map-bind - - map-bind is a macro that allows visual grouping of variables with their corresponding values (not necessarily 1:1) in calls to mapping operators when using an inline LAMBDA -
    • -
    • -mccme-helpers - - Yet another set of utilities functions -
    • -
    • -mexpr - - mexpr is an Infix syntax library -
    • -
    • -Misc-Extensions - - A convenience library containing a motley collection of macros and other extensions -
    • -
    • -multiple-value-variants - - multiple-value-variants gives access to multiple-value variants of operators through one macro: multiple-value -
    • -
    • -Named multiple-values - - Named-multiple-values is a piece of macrology that enables one to deal with -
    • -
    • -outer-parentheses-free-repl - - outer-parentheses-free-repl (OPFR) lets you input the outermost s-exp into your REPL without having to surround it with parentheses -
    • -
    • -pathname-utils - - This is a collection of common tests and operations to help handling pathnames -
    • -
    • -persistent-variables - - Persistent-variables is a convenience library that makes it easy to serialize and deserialize variables -
    • -
    • -place-modifiers - - place-modifiers essentially gives access to hundreds of modify-macros through one single macro: modify -
    • -
    • -positional-lambda - - positional-lambda is a concise, intuitive and flexible syntax (macro) for trivial lambdas that eschews explicit (and often contextually-redundant) naming of parameter variables in favor of positional references, with support for a used or ignored &rest parameter and automatic declaration of ignored parameters when logical "gaps" are left in the positional references -
    • -
    • -read-macros - - read-macros is a convenience library of useful read macros for CL -
    • -
    • -simplified-types - - Homepage: https://github.com/marcoheisig/simplified-types -
    • -
    • -the - - The THE package provides the THE* macro that takes name of some type and a form and wraps that form recursively into (THE ...) -
    • -
    • -trivial-update - - This is a little library that gives its user tools to easily change place with any supplied function -
    • -
    • -type-r - - The complete collection of accessor functions and patterns to access the elements in a compound type specifier -
    • -
    • -X.LET-STAR - - X LET-STAR is a convenience library not unlike bind, but smaller, extendible, nicely written and bug-free (hopefully :) -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/copying problem.html b/clones/lisp/www.cliki.net/copying problem.html deleted file mode 100644 index e7be9535..00000000 --- a/clones/lisp/www.cliki.net/copying problem.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: copying problem - - - - - - - -
    copying problem
    Placeholder for the idea that there is no 'copy of this object' in Lisp. -We should summarise the excellent rants of KMP on this subject.

    See also his article Equal Rights --and Wrongs-- in Lisp, that addresses this issue.

    See Linear Logic and that hbaker article about CONS not CONSing its arguments... -(for example here: here.)

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/corba.html b/clones/lisp/www.cliki.net/corba.html deleted file mode 100644 index 5c55af5e..00000000 --- a/clones/lisp/www.cliki.net/corba.html +++ /dev/null @@ -1,62 +0,0 @@ - - - - - CLiki: CORBA - - - - - - - -
    CORBA
    CORBA is the Common Object Request Broker Architecture. The document describing OMG CORBA bindings for Common Lisp is available at https://www.omg.org/spec/LISP/.

    Peter Van Eynde: CORBA is a poor match with CLOS: CORBA methods can have a variable number of arguments, which results in having all methods having arguments (object &rest parameters) . This is less then ideal, and especially the GUI tools like ilisp are helpless to give useful argument lists. There is no concept of a mix-in of course

    The ANY type is nice, but most implementations only convert the first level of an ANY object, so you'll get a list of ANY objects instead of a list of lisp objects like strings and integers. You need to realize each object in turn to get that list of lisp things. Note that this is not a problem with the current implementations, but with a basic problem related to the copying problem in Common Lisp.

    Other CORBA problems include the failure of many people to realize that this is Network programming and things like bandwith and latency are not to be underestimated. So no "This method returns a cookie and you need to use this object method to itterate through it" but: "This methods returns the number of records found and a list containing the first N results, use method foo to get the next N". The latter method reduces latency and makes better use of the network bandwidth. I could rant for hours on this subject... Peter Van Eynde

    Another thing: CORBA uses CDR-encoding which is the on-the-wire encoding of objects, not the memory-saving trick used in the old lisp machines :-).

    CDR, in the context of CORBA, is a Common Data Representation (PDF).

    For free CORBA implementations for Common Lisp, see

    -
    -standards
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/corona.html b/clones/lisp/www.cliki.net/corona.html deleted file mode 100644 index c3362fad..00000000 --- a/clones/lisp/www.cliki.net/corona.html +++ /dev/null @@ -1,58 +0,0 @@ - - - - - CLiki: corona - - - - - - - -
    corona
    Corona is a library for building and controlling virtual machines. It's essentially a clone of Vagrant, with the advantage that it's written in pure Common Lisp, and can be installed simply from Quicklisp.

    Corona can be used to create isolated, reproducible development environments so you and your team can work on the same system.

    No more 'works on my machine', no more difference between development and production.

    Testing

    If you have a library that uses an external tool, like a database server or something equally large, you can use Corona to set up a virtual machine and install whatever dependencies you need, so the user doesn't actually have to run anything on their computer.

    Additionally, since you can set up multiple virtual machines with different systems, you can use Corona to ensure your library works on most operating systems. This is especially useful for testing compilers and similar applications where portability is critical.

    Building

    You can use Corona as a build server: Fire up virtual machines of the operating system you want to build on, set them up with everything you need, and run the builds.

    Example of a machine definition:

    (defmachine my-machine - :system (:ubuntu :14.04 :64) - :memory 1024) - -(start my-machine) ;; Bring it up - -(stop my-machine) ;; Stop it

    Depends on: cl-virtualbox, trivial-download, trivial-types, trivial-extract, ironclad, cl-fad, log4cl, anaphora

    License: MIT


    -Virtualization
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cparse.html b/clones/lisp/www.cliki.net/cparse.html deleted file mode 100644 index 1779982e..00000000 --- a/clones/lisp/www.cliki.net/cparse.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: cparse - - - - - - - -
    cparse
    cparse is a C header file parser for building FFIs. cparse understands variable and function declarations, arrays, structs, unions, enums, and constant expressions. It contains a module for generating interfaces for CMUCL's alien facility.

    cparse was written by Tim Moore.

    Homepage: https://common-lisp.net/project/cparse/

    License: BSD 3-Clause

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/creating executables.html b/clones/lisp/www.cliki.net/creating executables.html deleted file mode 100644 index bf1bd45e..00000000 --- a/clones/lisp/www.cliki.net/creating executables.html +++ /dev/null @@ -1,98 +0,0 @@ - - - - - CLiki: Creating Executables - - - - - - - -
    Creating Executables
    Most Common Lisp implementations support creating native-format executable files.

    The typical route involves loading all of the program's code into the Lisp environment, dumping the current state of the Lisp process into a disk image, and identifying a start function (ie main).

    Since the disk image contains the entire Common Lisp system (compiler, debugger, documentation strings, etc.), the executable will be typically larger than a compiled C program (even if you statically link the C code).

    Another form of disk image requires a copy of the particular Lisp implementation to be installed on the recipient's machine. This is no different in principle from a C application requiring platform-specific dynamic libraries to run. This complicates deployment - the disk image is tied to a particular implementation version, and you typically end up having to include the Lisp implementation executable anyway.

    Due to platform limitations, some Lisp implementations can't produce native executables (for example, ABCL can only make JAR files). Other implementations are only able to dump disk images that require a separate copy of the implementation executable. An alternative to executables is available on Unix platforms in the form of shell scripting.

    There are a few tools designed to help with creating executables: -

    -The Lispbuilder wiki has a couple of tutorials for making executables on different OSes (including Windows): - -Implementation specific information: -
    -
    CLISP
    -
    -Saving an Image on CLISP and Application Delivery for CLISP -
    -
    SBCL
    -
    Saving a Core Image for SBCL
    -
    CCL
    -
    Saving Applications on OpenMCL/Clozure Common Lisp
    -
    ECL
    -
    -Building standalone executables for ECL (which supports multiple methods of code delivery)
    -
    CMUCL
    -
    Only supports creating executables on Linux and FreeBSD on x86 (see CMUCL FAQ)
    -

    The best support (tree shaking, binary patches, etc.) for executables is available in commercial implementations: -

    -
    Allegro
    -
    Application Delivery for Allegro Common Lisp
    -
    LispWorks
    -
    Application Delivery for Xanalys Lispworks

    -


    -FAQ system programming deployment -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/creole.html b/clones/lisp/www.cliki.net/creole.html deleted file mode 100644 index 09862e35..00000000 --- a/clones/lisp/www.cliki.net/creole.html +++ /dev/null @@ -1,85 +0,0 @@ - - - - - CLiki: creole - - - - - - - -
    creole
    creole is a library for converting a string between multibyte and unicode character encodings.

    -creole supports SBCL and other unicode(UTF-8) supported implementations. (eg. clisp, Clozure CL)

    ※ creole is optimized for SBCL


    -


    -Exported symbols:

    -Variable *DEFAULT-EXTERNAL-FORMAT*
    - Default value is :UTF-8.

    Variable *EXTERNAL-FORMAT*
    - A list of avaiable external-format.

    Function STRING-TO-OCTETS (string &key (external-format *default-external-format*) (start 0) (end (length string))

    Function OCTETS-TO-STRING (octets &key (external-format *default-external-format*) (start 0) (end (length octets)) -

    -;;;;;;;;;;;;;;;;;;;;;
    -;;;; string => octets
    -(creole:string-to-octets "Common Lisp")
    -=> #(67 111 109 109 111 110 32 76 105 115 112)  ; default (= *default-external-format*) is UTF-8
    -   T                                            ; input string is legal
    -
    -(creole:string-to-octets "&#28450;&#23383;A" :external-format :ascii)
    -=> #(63 63 65) 
    -   NIL         ; input including illegal character
    -
    -(creole:string-to-octets "&#28450;&#23383;A" :external-format :euc-jp)
    -=> #(180 193 187 250 65)
    -   T
    -
    -;;;;;;;;;;;;;;;;;;;;;;
    -;;;; octets => string
    -(creole:octets-to-string 
    -  (creole:string-to-octets "Common Lisp"))
    -=> "Common Lisp"
    -   T
    -
    -(creole:octets-to-string
    -  (creole:string-to-octets "&#28450;&#23383;A" :external-format :euc-jp)
    -  :external-format :ascii)
    -=> "????A"
    -   NIL     ; input including illegal octets as ASCII
    -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/croatoan.html b/clones/lisp/www.cliki.net/croatoan.html deleted file mode 100644 index 5da576ea..00000000 --- a/clones/lisp/www.cliki.net/croatoan.html +++ /dev/null @@ -1,66 +0,0 @@ - - - - - CLiki: croatoan - - - - - - - -
    croatoan
    croatoan is a set of bindings to the ncurses terminal / console library for Common Lisp.

    It allows easy creation of simple text-based GUI interfaces in the terminal / console.

    It is inspired by, but not derived from similar libraries cl-ncurses and cl-charms.

    Its main goal is to provide a higher-level, lispy/CLOSy interface, whereas the existing bindings clone the cryptic C API.

    As of now (2020), the library is in active development an hopefully usable stage. Ncurses is old and huge and it will take a while to cover completely. The API is not yet fully stable.

    It was tested on Linux x86_64, Ubuntu 16.04, SBCL 2.0.3, ncurses 6.2.

    More testing is needed on implementations other than SBCL and operating systems other than Ubuntu.

    It is available on quicklisp since october 2014 an can be easily installed by calling (ql:quickload :croatoan)

    The basic functionality is shown in the following example:

    -(in-package :croatoan) - -(defun test1 () - (with-screen (scr :input-echoing nil :input-blocking t :enable-colors t) - (clear scr) - (move scr 2 0) - (format scr "Type chars. Type q to quit.~%~%") - (refresh scr) - (setf (color-pair scr) '(:yellow :red) - (attributes scr) '(:bold)) - (event-case (scr event) - (#\q (return-from event-case)) - (otherwise (princ event scr) - (refresh scr))))) -

    The macro with-screen is the main entry point. It creates the main output window called screen, and passes init options to it.

    We now can clear the screen, move the cursor (to the third row and first column), output text at cursor position, set foreground and background colors, text attributes or catch keyboard and mouse events with the macro event-case. Every change to the screen is only displayed after an explicit call to refresh.

    Further documentation on features like windows, menus, mouse and input and output options is provided by the docstrings on quickdocs [2], on quickref [3] and in the included examples.

    --

    [1] https://github.com/McParen/croatoan - croatoan source repository at github

    [2] http://quickdocs.org/croatoan/ - croatoan api documentation at quickdocs

    [3] http://quickref.common-lisp.net/croatoan.html - croatoan api documentation at quickref

    [4] Screenshot: Menus and 256 color support

    [5] Screenshot: Dialogs and forms

    [6] Video: Evolution from Land Of Lisp, Chapter 10

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cryptography.html b/clones/lisp/www.cliki.net/cryptography.html deleted file mode 100644 index a7c0ea0a..00000000 --- a/clones/lisp/www.cliki.net/cryptography.html +++ /dev/null @@ -1,168 +0,0 @@ - - - - - CLiki: Cryptography - - - - - - - -
    Cryptography
      -
    • -adler32 - - Adler-32 is a hash algorithm like CRC-32, except that it is much faster and carries a slightly higher probability of collisions -
    • -
    • -ARC4 - - A Common Lisp implementation of ARC4 (trademark: RC4), a stream cipher, can be found below -
    • -
    • -Blowfish - - Blowfish is a 64-bit encryption algorithm, with a key length between 32 and 448 bits -
    • -
    • -CL+SSL - - CL+SSL is a portable interface to OpenSSL -
    • -
    • -cl-cracklib - - cl-cracklib is a UFFI interface to cracklib's FascistCheck function -
    • -
    • -cl-crc64 - - cl-crc64 implements 64 bit cyclic redundancy checks in Common Lisp -
    • -
    • -CL-MD5 - - CL-MD5 is a Common Lisp implementation of MD5 -
    • -
    • -cl-one-time-passwords - - cl-one-time-passwords implements HOTP (RFC 4226) and TOTP (RFC 6238) in Common Lisp -
    • -
    • -cl-pass - - cl-pass is a password hashing (via PBKDF2) and verification library -
    • -
    • -cl-password-store - - Password management for Common Lisp (web) applications -
    • -
    • -CL-PLUS-SSL - - This library is a fork of SSL-CMUCL -
    • -
    • -CL-TLS - - CL-TLS is a prototype Common Lisp implementation of TLS and related protocols and standards including: -
    • -
    • -CLJWT - - A library for issuing and validating JSON Web Tokens -
    • -
    • -CRC-32 - - A library to compute the CRC-32 algorithm that is described in RFC 1952 -
    • -
    • -GPGME - - GPGME (GnuPG Made Easy) is a C language library that provides a high-level cryptography API for encryption, decryption, signing, signature verification and key management -
    • -
    • -iescrypt - - A tool to encrypt and/or sign files -
    • -
    • -Ironclad - - Ironclad is a Common Lisp Cryptography package; several block encryption algorithms and hash functions are included with the initial release -
    • -
    • -isaac - - An implementation of the isaac CPRNG in Common Lisp -
    • -
    • -md5 - - md5 is a cryptographic Message-Digest algorithm from RSA Data Security, Inc -
    • -
    • -PRBS - - Library of pseudo-random binary sequence generators (LFSR-2 and LFSR-4) and related functions in Common Lisp -
    • -
    • -random-state - - This is a collection of pseudo random number generators (PRNGs) -
    • -
    • -SAFER - - SAFER (Secure And Fast Encryption Routine) is a block cipher that was first published in 1993, followed by later variants -
    • -
    • -secure-random - - secure-random provides a cryptographically secure pseudo-random number generator for Common Lisp -
    • -
    • -session-token - - session-token is a simple session token generator based on Session::Token -
    • -
    • -SHA1 - - Secure Hash Algorithm 1 (SHA1) is defined in RFC 3174, and therefore more-or-less counts as a protocol -
    • -
    • -sha3 - - This library is an implementation of the Secure Hash Algorithm 3 (SHA-3), also known as Keccak -
    • -
    • -SSL-CMUCL - - SSL-CMUCL is an interface to SSL streams for CMUCL -
    • -
    • -XXTEA - - XXTEA is an encryption algorithm, first introduced in 1998, which is relatively easy to implement -
    • -
    • -Ystok-MD5 - - Ystok-MD5 is a Cryptography library implementing MD5 and MD5 APR (Apache Portable Runtime) -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cserial-port.html b/clones/lisp/www.cliki.net/cserial-port.html deleted file mode 100644 index f63211dc..00000000 --- a/clones/lisp/www.cliki.net/cserial-port.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cserial-port - - - - - - - -
    cserial-port
    cserial-port is a Common Lisp library for interacting with serial ports.

    Repository: https://github.com/snmsts/cserial-port

    License: MIT


    -protocol system programming
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/csp.html b/clones/lisp/www.cliki.net/csp.html deleted file mode 100644 index 2140d4b9..00000000 --- a/clones/lisp/www.cliki.net/csp.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: csp - - - - - - - -
    csp
    CSP (``communicating sequential processes'') support for Lisp. This library makes it easy to organise thread communication in a modular and expressive way. The central primitive is the ``channel'', which acts both as a synchronisation and communication medium. Care has been taken to keep the interface as minimal as possible.

    C.A.R. Hoare's book Communicating Sequential Processes (CSP) should be useful. -Also, Russ Cox (the principal author of the C code this library is based upon) has a brief history of this approach to threading, which might be informative.

    CSP is a translation by Roger Peppe of Plan 9's libthread/channel.c. There are at least two forks that add new features, such as different queue choices, timeouts, and ALT guard conditions: Calispel and ChanL.

    The package is layered on top of Bordeaux-Threads for portability. It has had at least rudimentary testing under SBCL, Lispworks, openMCL, ECL and Allegro. Documentation and a couple of examples are included with the package.


    -Vapourware
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/css-lexer.html b/clones/lisp/www.cliki.net/css-lexer.html deleted file mode 100644 index 63c4c9fc..00000000 --- a/clones/lisp/www.cliki.net/css-lexer.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: css-lexer - - - - - - - -
    css-lexer
    A simple CSS lexer written using token-stream.

    https://github.com/thodg/css-lexer

    Supports non-blocking semantics of cl-stream.

    Maintainers : thodg.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/css-lite.html b/clones/lisp/www.cliki.net/css-lite.html deleted file mode 100644 index 94db5d4b..00000000 --- a/clones/lisp/www.cliki.net/css-lite.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: css-lite - - - - - - - -
    css-lite
    css-lite is a library for generating CSS from an s-exp syntax. When compiled with Parenscript loaded in the Lisp -image, it also provides the same CSS generation facilities in -Parenscript-generated JavaScript code.

    Repository/homepage: http://github.com/paddymul/css-lite

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/csv.html b/clones/lisp/www.cliki.net/csv.html deleted file mode 100644 index 7127674f..00000000 --- a/clones/lisp/www.cliki.net/csv.html +++ /dev/null @@ -1,86 +0,0 @@ - - - - - CLiki: csv - - - - - - - -
    csv
    These are the list of csv (comma-separated-values) parsing/writing libraries. -There are no currently recommended library. -Someone should do the performance test on these.

      -
    • -CL-CSV - - CL-CSV is a library to parse and write csv (comma-separated-values) files -
    • -
    • -cl-sgdos-csv - - cl-sgdos-csv is a library for mapping CSV files to LISP lists and CLOS objects and viceversa. -
    • -
    • -CSV (library) - - The CSV library, authored by Jeffrey Massung, permits reading and writing comma-separated-values (CSV) files -
    • -
    • -dso-csv - - A very simple parser for the CSV (comma-separated values) file format -
    • -
    • -fare-csv - - fare-csv is a library for reading and writing CSV files -
    • -
    • -persistent-variables - - Persistent-variables is a convenience library that makes it easy to serialize and deserialize variables -
    • -
    • -picard-csv-parser - - picard-csv-parser is a CSV file format reader/writer -
    • -
    • -read-csv - - Read-csv is a library for reading csv (comma-separated-values) files -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cube.html b/clones/lisp/www.cliki.net/cube.html deleted file mode 100644 index 1950f4eb..00000000 --- a/clones/lisp/www.cliki.net/cube.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: cube - - - - - - - -
    cube
    Anil K -MIPS and a gcc developer

    person

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/curl.html b/clones/lisp/www.cliki.net/curl.html deleted file mode 100644 index 8f2cc1f0..00000000 --- a/clones/lisp/www.cliki.net/curl.html +++ /dev/null @@ -1,56 +0,0 @@ - - - - - CLiki: Curl - - - - - - - -
    Curl
    Curl is a library and tool for downloading from URLs, to which the cl-curl interface provides access. Other uses of the name:

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/curly.html b/clones/lisp/www.cliki.net/curly.html deleted file mode 100644 index b81d5ee5..00000000 --- a/clones/lisp/www.cliki.net/curly.html +++ /dev/null @@ -1,70 +0,0 @@ - - - - - CLiki: curly - - - - - - - -
    curly
    Curly is set of two reader macros for easy function currying and -composition. It was inspired Arc's syntax for currying, using -square brackets. Curly creates anonymous functions (lambdas) with -literal function composition instead of trying smarter approach -(like using (REDUCE #'FUNCALL ...)) so that the compiler is able to -do more optimizations.

    Examples of Curly usage:

    CURLY> '[foo] -(LAMBDA (#:G2705) (FOO #:G2705)) -CURLY> '[foo bar] -(LAMBDA (#:G2706) (FOO BAR #:G2706)) -CURLY> '[foo bar * baz] -(LAMBDA (#:G2709) (FOO BAR #:G2709 BAZ)) -CURLY> '{foo bar} -(LAMBDA (#:G2714) (FOO (BAR #:G2714))) -CURLY> '{foo bar baz} -(LAMBDA (#:G2715) (FOO (BAR (BAZ #:G2715)))) -CURLY> '{foo (bar 23) baz quux} -(LAMBDA (#:G2721) (FOO (BAR 23 (BAZ (QUUX #:G2721))))) -CURLY> '{foo (bar 16) (baz 23 * 42) quux} -(LAMBDA (#:G2724) (FOO (BAR 16 (BAZ 23 (QUUX #:G2724) 42)))

    Latest version of Curly can be obtained on its GitHub page: https://github.com/mpasternacki/curly


    -convenience library
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/currensea.html b/clones/lisp/www.cliki.net/currensea.html deleted file mode 100644 index ef937949..00000000 --- a/clones/lisp/www.cliki.net/currensea.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: currensea - - - - - - - -
    currensea
    currensea is a currency conversion library based on AllegroServe. It works with multiple rate providers and currently two are implemented: WebserviceX and the ECB (European Central Bank).

    Homepage: http://wcp.sdf-eu.org/software/

    Download: http://wcp.sdf-eu.org/software/currensea-20090827T155857.tbz

    License: LGPL


    -Topics: units web API
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/current recommended libraries.html b/clones/lisp/www.cliki.net/current recommended libraries.html deleted file mode 100644 index e67829ac..00000000 --- a/clones/lisp/www.cliki.net/current recommended libraries.html +++ /dev/null @@ -1,284 +0,0 @@ - - - - - CLiki: Current recommended libraries - - - - - - - -
    Current recommended libraries
    Cliki contributors (that's you!) believe that the libraries on this page are considered "good enough for government use", and serve as a starting point when looking for a library covering a given field.

    If you feel that a certain library should be written then please add it to Suggested Programming Projects or write it yourself.

    A clean and up-to-date, yet rather subjective listing of recommended libraries can be found here (2015), it saw an update there (2020), and another list is maintained on Github on awesome-cl. To search for libraries across Quicklisp, Cliki, GitHub and BitBucket, there exists the Quicksearch library.

    Library management / installation / Handling Packages

      -
    • -Quicklisp - A popular way of obtaining lisp libraries
    • -
    • -asdf - System definition, aka Makefiles(in some implementation like sbcl, this is - already installed by default)
    • -
    • Qlot is a project-local library installer using Quicklisp facility. This aims to be like Bundler of Ruby or Carton of Perl. -
    • -
    • Roswell is a Lisp implementation installer/manager, library installer, script launcher, and much more ! -
    • -
    • CLPM is a relatively new package manager for Common Lisp. It works as well for system-wide or directory-local packages. It supports HTTPS and allows explicitely versioned dependencies. -
    • -

    Web development

    -See also Quickdocs.

    Frameworks and development tools:

      -
    • Caveman - a lightweight, server independant, fully extensible web framework with database integration. -
    • -
    • CLOG - A JS over WebSockets based framework
    • -
    • -CL-Weblocks - a continuations based framework
    • -
    • -ningle - a very lightweight web application framework using Clack
    • -
    -HTTP server: -
      -
    • -Clack - a wrapper API for HTTP requests/responses with multiple webserver backends. Inspired by Python's WSGI and Ruby's Rack
    • -
    • -Hunchentoot - the de-facto standard HTTP web server
    • -
    • -Woo - a fast libev-based async web server with worker thread support
    • -
    • -Wookie - an async application/web server
    • -
    -HTTP client: - -HTTP parser: -
      -
    • -Plump - a markup parser, tolerant on malformed html. It can be queried with Lquery or Clss. -
    • -
    -Utilities: -
      -
    • -CL-WHO HTML generator
    • -
    • -Parenscript JavaScript compiler
    • -
    • -css-lite is a library for generating CSS from an s-exp based syntax
    • -
    • -quri URI library
    • -
    -SQL database connectivity: - -Internationalization (i18) and localization (l10n): -
      -
    • Character encoding/decoding: flexi-streams - focus on features
    • -
    • Character encoding/decoding: babel - focus on speed
    • -
    • Character categories, etc: cl-unicode -
    • -
    • Localization (number formats, etc): cl-l10n -
    • -

    APIs to websites

    -
      -
    • -Chirp A full Twitter API library
    • -
    • -Humbler Easy Tumblr interaction
    • -

    Game development

    -
      -
    • -xelf - Formerly known as blocky. "Xelf extends Common Lisp with an Emacs-inspired 2D OpenGL game engine, a game project editor interface, and an integrated command shell" - http://www.xelf.me
    • -

    General purpose utility libraries and commonly used libraries

    -
      -
    • -alexandria — Collection of portable general purpose utilities. Used by a large number of other projects.
    • -
    • -serapeum — A supplement to Alexandria, also conservative but less so.
    • -
    • -iterate — A lispy and extensible replacement for the LOOP macro.
    • -
    • -closer-mop — A popular compatibility library allowing portable access to the MOP across implementations.
    • -
    • Regular expressions: cl-ppcre — Popular and fast regular expressions engine.
    • -
    • Pattern Matching: trivia — ML-style pattern matcher.
    • -
    • Collections: -
        -
      • -lisp-interface-library is a collection of pure and stateful data structures in interface-passing style
      • -
      • -FSet is a functional set-theoretic collections package
      • -
      -
    • -
    • Mathematics: -
        -
      • -GSLL is an interface to the GNU Scientific Library
      • -
      • -Maxima is a computer algebra system
      • -
      • -RCL is a interface to R
      • -
      -
    • -
    • Compression: -
        -
      • -Salza2 is a Common Lisp library for creating compressed data in the ZLIB, DEFLATE, or GZIP data formats, described in RFC 1950, RFC 1951, and RFC 1952, respectively. It does not use any external libraries for compression. It does not yet support decompression.
      • -
      • -Chipz is a decompression library for decompressing DEFLATE (RFC 1951) data such as ZLIB (RFC 1950), GZIP (RFC 1952), as well as bzip2. -
      • -
      -
    • -

    Common data formats

    -XML: -
      -
    • -CXML namespace, validating, SAX, StAX, W3C DOM, XPath 1.0, XSLT 1.0
    • -
    • -S-XML simple XML parser
    • -
    • -XMLS simple XML parser
    • -
    -JSON (see -Difference between JSON libraries): -
      -
    • -cl-json : A CLOS-extensible JSON parser and generator.
    • -
    • -yason: Another extensible JSON parse and generator.
    • -
    -CSV -
      -
    • -CL-CSV : a library to parse and write csv (comma-separated-values) files.
    • -
    -id3v2

    The book Practical Common Lisp implements an id3v2 parser, the source code can be found at its website

    System and low level management

    Project managements

    Logging: -

      -
    • -Log4CL is high performance extensible logging library for Common Lisp -
    • -
    -Unit Testing: -

    Graphics libraries

    -Graphical User Interface: -

    Graphical drawing library: -

    Audio

    -
      -
    • -mixalot. Mixalot currently consists of a mixer component providing straightforward audio output on Linux (via ALSA) and other platforms (using libao), a CFFI binding to the libmpg123 library, and a helper component allowing playback of MP3 files through the mixer.
    • -

    Encryption

    -
      -
    • -Ironclad : A native Common Lisp package with support for several ciphers and hash functions
    • -

    PRNG

    -
      -
    • -MT19937 : a portable Mersenne Twister pseudo-random number generator. Has its own *random-state* and supports seeding from any integer.
    • -

    Parallel, concurrent and async programming

    -
      -
    • -lparallel : A Common Lisp library for parallel programming
    • -
    • -chanl : ChanL is a concurrency library built on top of bordeaux-threads that provides channels as thread-synchronisation primitives
    • -
    • -cl-async : cl-async implements a higher-level interface for non-blocking, asynchronous programming in Common Lisp
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cxml-rng.html b/clones/lisp/www.cliki.net/cxml-rng.html deleted file mode 100644 index ab91cf63..00000000 --- a/clones/lisp/www.cliki.net/cxml-rng.html +++ /dev/null @@ -1,67 +0,0 @@ - - - - - CLiki: cxml-rng - - - - - - - -
    cxml-rng
    Relax NG for Closure XML.

    Author: David Lichteblau

    License: X11-style

    Homepage: - lichteblau.com/cxml-rng

    Feature overview

    cxml-rng is an implementation of Relax NG schema validation written in -Common Lisp, including support for:

      -
    • Compact syntax -
    • -
    • DTD Compatibility -
    • -
    • The XSD type library -
    • -
    -

    Documentation

    Tarball

    http://www.lichteblau.com/cxml-rng/download/cxml-rng.tar.gz

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cxml-stp.html b/clones/lisp/www.cliki.net/cxml-stp.html deleted file mode 100644 index 47c4e04d..00000000 --- a/clones/lisp/www.cliki.net/cxml-stp.html +++ /dev/null @@ -1,69 +0,0 @@ - - - - - CLiki: cxml-stp - - - - - - - -
    cxml-stp
    An alternative to DOM inspired by XOM.

    Author: - David Lichteblau

    License: - X11-style

    Homepage: - lichteblau.com/cxml-stp

    Feature overview

    cxml-stp is an add-on package for cxml.

      -
    • Implements STP, an alternative to W3C DOM. -
    • -
    • STP is a data structure for well-formed XML documents -
    • -
    • Inspired heavily by Java's XOM, but -designed for Common Lisp. -
    • -

    Documentation

    Tarball

    http://www.lichteblau.com/cxml-stp/download/cxml-stp.tar.gz

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cxml.html b/clones/lisp/www.cliki.net/cxml.html deleted file mode 100644 index 870cf205..00000000 --- a/clones/lisp/www.cliki.net/cxml.html +++ /dev/null @@ -1,66 +0,0 @@ - - - - - CLiki: cxml - - - - - - - -
    cxml
    Closure XML is a namespace-aware, validating XML parser with SAX and StAX-like interfaces.

    This project is asdf-installable (release tarball below) and available in clbuild (git version).

    Original author: Gilbert Baumann

    Current maintainer: David Lichteblau

    Repository: https://repo.or.cz/w/cxml.git

    License: LLGPL

    Feature overview

      -
    • Namespace-aware, validating XML 1.0 parser -
    • -
    • Two parser interfaces are offered, one SAX-like, the other similar to StAX. -
    • -
    • Implementation of W3C DOM included -
    • -
    -In-memory representations that can be used with cxml:

      -
    • DOM Level 2 Core (included with cxml)
    • -
    • Lisp lists in the xmls format, included as example code with cxml
    • -
    • -cxml-stp, an alternative to DOM (add-on installation)
    • -
    -Relax NG validation is available as an add-on page, see cxml-rng. -XPath is implemented by plexippus-xpath.

    Relation to Closure HTML

    cxml itself parses well-formed XML only. To parse HTML, use closure-html.

    Aside from closure-common, cxml also depends on puri and trivial-gray-streams.

    Etymology

    cxml is short for Closure XML, in reference to the Closure web browser it was originally written for.

    Note that the Closure web browser is not related to the Clozure implementation of Common Lisp and works on various Common Lisp implementations.

    Tarball

    https://common-lisp.net/project/cxml/download/cxml.tar.gz

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/cy.html b/clones/lisp/www.cliki.net/cy.html deleted file mode 100644 index 6d8c43a2..00000000 --- a/clones/lisp/www.cliki.net/cy.html +++ /dev/null @@ -1,110 +0,0 @@ - - - - - CLiki: cy - - - - - - - -
    cy
    Cy is a Person though perhaps to a questionable degree, who likes programming to be simple and easy. Cy is not a very happy Person as a consequence.

    Cy is for cymbolic cyxpressions

    Cy likes when fundamental parts of the language nobody talks about are made clear, for instance: -

      -
    • Here is how function cells work: -
    • -
    ;; make a dummy function that prints something -(defmacro p (s) - (lambda () - (print s) - (terpri))) - -(funcall (p "here goes")) - -(setf (symbol-function 'foo) (p "in the function cell")) -(foo) -(setf (symbol-function 'foo) (p "re-assigned the function cell")) -(foo) -(setf (symbol-function 'foo) (p "the global function cell for foo")) -(flet ((foo () (p "local function cell"))) - (foo) - (setf (symbol-function 'foo) (p "oops! assigned the global function cell")) - (foo)) -(print "back in the global context") -(terpri) -(foo) - -;; still no idea how to catch COMPILE time warnings -;; such as sbcl which detects setting a function cell to a number type -(catch 'noprob - (handler-bind - ((simple-type-error #'(lambda (c) - (declare (ignore c)) - (print 'yay) - (throw 'noprob nil)))) - (setf (symbol-function 'foo) 23))) -(terpri) -
    -
  • -asdf stores compiled .fasl files in ~/.cache/common-lisp/ by default -
  • -You can make a .fasl from a .lisp file, by (compile-file "name.lisp") -
  • -This is the difference between let and symbol-macrolet: -
  • (defun make-side-effect () - (let ((i 0)) - (lambda () - (setq i (+ i 1))))) - -(setf (symbol-function 'i) (make-side-effect)) - -(print (list (i) (i) (i))) - -(let ((ii (i))) - (print (list ii ii ii))) - -(symbol-macrolet ((ii (i))) - (print (list ii ii ii))) - -(print '(Q E D)) -
    -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/data format.html b/clones/lisp/www.cliki.net/data format.html deleted file mode 100644 index a820014b..00000000 --- a/clones/lisp/www.cliki.net/data format.html +++ /dev/null @@ -1,124 +0,0 @@ - - - - - CLiki: data format - - - - - - - -
    data format
    Anything to do with data formats.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/data formats.html b/clones/lisp/www.cliki.net/data formats.html deleted file mode 100644 index cc33b97f..00000000 --- a/clones/lisp/www.cliki.net/data formats.html +++ /dev/null @@ -1,535 +0,0 @@ - - - - - CLiki: Data formats - - - - - - - -
    Data formats
    Anything to do with various file and data formats.

    File formats: (main topic: file format) -

    Image file formats: (main topic: image file) -

    Data formats: (main topic: data format) -

    Wire formats: (main topic: wire format, see also networking) -

      -
    • -ASN.1 - - Abstract Syntax Notation #1, the Common Lisp implementation and language mapping -
    • -
    • -cl-marshal - - Simple and fast marshalling of all kinds of Lisp data structures -
    • -
    • -cl-protobufs - - CL-PROTOBUFS is a library to use Google Protocol Buffers in Common Lisp, originally written by Scott McKay at ITA by Google -
    • -
    • -cl-stomp - - cl-stomp is an implementation of STOMP (Streaming Text Orientated Messaging Protocol) -
    • -
    • -de.setf.thrift - - de.setf.thrift is a binding for the Apache Thrift framework for scalable cross-language services development -
    • -
    • -S-PROTOBUF - - S-PROTOBUF is a library to encode data in the Google Protocol Buffers wire format -
    • -
    • -Swank - - Swank is distributed as part of SLIME -
    • -
    • -userial - - A Common Lisp library for serializing to binary buffers -
    • -

    Binary formats: (main topic: binary format) -

      -
    • -Binary-types - - Binary-types is a library for accessing binary format files with fixed bit-length code-words -
    • -
    • -binascii - - binascii is a binary format library for converting binary data to ASCII -
    • -
    • -bintype - - BINTYPE is a specification-driven parser generator for binary formats -
    • -
    • -cl-binary-file - - The binary file package contains utilities to read and write binary files -
    • -
    • -cl-pack - - CL-PACK supplies Perl/PHP/Ruby/Python compatible pack() and unpack() functions to allow easy use of binary format protocols and files with the above mentioned languages and C -
    • -
    • -cl-rfc4251 - - cl-rfc4251 is a Common Lisp system, which provides support for parsing RFC 4251 encoded binary data, as described in the Data Type Representations Used in the SSH Protocols section of the document -
    • -
    • -cl-wbxml - - CL-WBXML reads and writes WAP Binary XML -
    • -
    • -de.setf.utility - - de setf utility is a collection of Common Lisp utilities functions and several purpose-specific libraries -
    • -
    • -dso-binary-class - - dso-binary-class allows you to declare classes with a specific binary disk layout, and then read and write instances easily -
    • -
    • -fast-io - - Fast-io is about improving performance to octet-vectors and octet streams (though primarily the former, while wrapping the latter) -
    • -
    • -float-features - - float-features is a portability library for IEEE float features that are not covered by the CL standard -
    • -
    • -id3v2 - - Parser for the ID3v2 binary format -
    • -
    • -IE3FP - - IE3FP is a library to code and decode floating point numbers in IEEE 754 binary format -
    • -
    • -ieee-floats - - IEEE-Floats provides a way of converting values of type float and double-float to and from their binary format representation as defined by IEEE 754 (which is commonly used by processors and network protocols) -
    • -
    • -LISP-BINARY - - A library to easily read and write complex binary formats -
    • -
    • -nibbles - - Nibbles is a library for accessing octet-addressed blocks of data -
    • -
    • -odd-streams - - ODD-STREAMS implements binary streams with "odd" byte sizes -
    • -
    • -packer - - The PACKER binary format library implements a "little language" for C-style structures, along the lines of Perl's pack() or Python's struct module -
    • -
    • -stl - - Read binary triangle data from STL files -
    • -
    • -stl-io - - The stl-io library deals with reading and writing binary STL files -
    • -
    • -swap-bytes - - swap-bytes is a library for efficient endianness conversion in SBCL and CCL -
    • -
    • -trivial-bit-streams - - Trivial-bit-streams implements flexible buffered bit streams -
    • -

    Compression and archives: (main topic: compression) -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/data structure.html b/clones/lisp/www.cliki.net/data structure.html deleted file mode 100644 index 1f76c87b..00000000 --- a/clones/lisp/www.cliki.net/data structure.html +++ /dev/null @@ -1,289 +0,0 @@ - - - - - CLiki: data structure - - - - - - - -
    data structure
    Various data structures.

    NB: for a good library of general purpose data-structures, I (actually Fare Rideau) recommend -cl-containers if you want stateful (imperative) variants, or lisp-interface-library if you want pure (functional) variants. If you implement more data-structures, we recommend you extend their respective interfaces. For more specialized data-structures, read on.

      -
    • -access - - Access is a library to ease getting and setting values in nested dictionary-like objects by providing a unified interface to hash-tables, clos-objects, plists and alists -
    • -
    • -array-operations - - Provides commonly used operations on arrays -
    • -
    • -avl-tree - - AVL (Adelson-Velsky-Landis) Tree is a self-balancing binary search tree implementation in Common Lisp -
    • -
    • -B-Tries - - An implementation of the data structure described in the paper "B-tries for disk-based string management" (PDF) -
    • -
    • -binomial-heap - - Binomial-heap is an implementation of the binomial heap data structure -
    • -
    • -bk-tree - - This page is moved to https://github.com/vy/bk-tree -
    • -
    • -bknr-skip-list - - An implementation of skip lists for bknr -
    • -
    • -BST - - BST is a Common Lisp library for working with binary search trees that can contain any kind of values -
    • -
    • -cacle - - cacle implements an extensible cache data structure -
    • -
    • -cl-bloom - - Bloom filters in Common Lisp with efficient hashing -
    • -
    • -cl-btree - - B-Tree implemented in Common Lisp -
    • -
    • -cl-cache-tables - - cl-cache-tables is a wrapper around native hash-tables to facilitate in-process caching of common lisp data structures -
    • -
    • -cl-competitive - - A code collection maintained mainly for competitive programming, and partly for just understanding algorithms -
    • -
    • -cl-containers - - cl-containers adds binary search trees, red-black trees, sparse arrays, and other useful containers -
    • -
    • -cl-custom-hash-table - - cl-custom-hash-table extends the hash table data structure by allowing the use of arbitrary TEST/HASH functions, in addition to the TEST functions allowed by the standard (EQ, EQL, EQUAL and EQUALP) -
    • -
    • -cl-dawg - - CL-DAWG is a DoubleArray/DAWG implementation -
    • -
    • -cl-heap - - CL-HEAP implements the binary heap, Fibonacci heap, and priority queue data structures -
    • -
    • -cl-slice - - This library was unmaintained for several years -
    • -
    • -cl-speedy-queue - - cl-speedy-queue is a portable, non-consing, optimized queue implementation -
    • -
    • -cl-string-match - - Provides substring (subsequence) search and text processing algorithms implementations including regular expression, prefix/suffix tree data structures, etc -
    • -
    • -cl-treemaps - - cl-treemaps is a lightweight and fast implementation of binary trees -
    • -
    • -colliflower - - Colliflower is a library for abstaractions around data structures -
    • -
    • -D - - The D Common Lisp library exists to enable using doubly-linked lists in a program using a style which resembles singly-linked lists as closely as reasonable -
    • -
    • -data-table - - data-table is a library providing a data structure that has rows of data and column names and types (ie database results) -
    • -
    • -dawg - - A DoubleArray / DAWG implementation -
    • -
    • -dict - - DICT is a hash table implementation -
    • -
    • -dlist - - dlist is a Common Lisp library that implements the doubly-linked list -
    • -
    • -fare-utils - - fare-utils is a collection of utilities from Fare Rideau -
    • -
    • -fern - - An efficient, consp, self-adjusting key-value trie-index abstraction for uuid namespaces -
    • -
    • -Flexichain - - Flexichain is an API for editable sequences -
    • -
    • -folio2 - - A collection of small libraries: functional idioms and data structures in Common Lisp and a common set of APIs for them -
    • -
    • -FSet - - FSet is a functional set-theoretic collections data structure library by Scott L -
    • -
    • -Funds - - Funds provides portable, purely functional data structures written in Common Lisp -
    • -
    • -genhash - - NET HEXAPODIA HASHTABLES is a data structure library for generic hash tables -
    • -
    • -heap - - Simple implementation of a binary heap for Common Lisp -
    • -
    • -Heresy - - Heresy is an implementation of the lazy list data structure -
    • -
    • -hh-redblack - - hh-redblack provides in-memory and disk-based red-black trees -
    • -
    • -jarw-dictionary - - jarw-dictionary is a generic map/dictionary interface with implementations using internal hash-tables, property lists, files and directories including in-memory caching -
    • -
    • -jpl-queues - - jpl-queues is a library implementing a few different kinds of queue data structures -
    • -
    • -kdtree-jk - - KDTREE-JK is a package for building efficent KD-Trees in Common Lisp -
    • -
    • -lazy - - This is a simple lazy form evaluation package for Common Lisp -
    • -
    • -lisp-interface-library - - lisp-interface-library is a collection of pure and stateful data structures in interface-passing style from Fare Rideau -
    • -
    • -minheap - - minheap provides several heap data structures with meldable min-heap and priority queue functionality -
    • -
    • -nary-tree - - The n-ary-tree package implements an automatically rebalancing B-tree data structure which supports n >= 5 items in any mixture of types per node -
    • -
    • -patty - - Patty is a library that facilitates working with functional data structures on top of CLOS -
    • -
    • -pipes - - pipes implements the input stream (lazy list) data structure -
    • -
    • -queues - - A Common Lisp queue library with features such as non-consing thread safe queues and fibonacci priority queues -
    • -
    • -quick-arrays - - quick-arrays is a Debian package of the Quick Arrays concept -
    • -
    • -Red-Black-trees - - Red-Black-trees is an implementation of red-black-trees (a data structure) -
    • -
    • -ropes - - ropes is an implementation of the rope data structure, an alternative to strings with more efficient concatenation -
    • -
    • -SEMI-PRECIOUS - - SEMI-PRECIOUS is a library of algorithms/data structures -
    • -
    • -Series - - A library providing data structure that combines aspects of sequences, (lazy) streams and loops, using a technique known as “fusion” or “deforestation” -
    • -
    • -spatial-trees - - spatial-trees is a set of dynamic index data structures for spatially-extended data -
    • -
    • -Sycamore - - Sycamore implements several purely functional data structures in Common Lisp -
    • -
    • -symbol-namespaces - - symbol-namespaces defines a new kind of package that's named by a symbol rather than a string -
    • -
    • -TREES - - TREES provides several binary tree data structures exposed through a uniform CLOS interface -
    • -
    • -versioned-objects - - For any Common Lisp mutable object, allows to store versioning tree of all of the edits connecting its various versions -
    • -
    • -vp-trees - - vp-trees is an implementation of the vantage point tree data structure in Common Lisp -
    • -
    • -X.FDATATYPES - - XFDATATYPES implements 3 functional data structures: -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/data-lens.html b/clones/lisp/www.cliki.net/data-lens.html deleted file mode 100644 index f247129c..00000000 --- a/clones/lisp/www.cliki.net/data-lens.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: data-lens - - - - - - - -
    data-lens
    This library provides a language for expressing data manipulations as the composition of more primitive operations.

    Depends on: cl-ppcre, alexandria, serapeum

    Repository: https://github.com/fiddlerwoaroof/data-lens

    License: Apache 2


    -language extension
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/data-table.html b/clones/lisp/www.cliki.net/data-table.html deleted file mode 100644 index bc53a81f..00000000 --- a/clones/lisp/www.cliki.net/data-table.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: data-table - - - - - - - -
    data-table
    data-table is a library providing a data structure that has rows of data and column names and types (ie database results)

    data-table also has some simple type analysis to convert data-tables of strings to data-tables of common-lisp types. It also integrates with CL-CSV and CLSQL

    -For more info see:

    Git Hub: https://github.com/AccelerationNet/data-table


    -Topic: AccelerationNet, data structure
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/database-migrations.html b/clones/lisp/www.cliki.net/database-migrations.html deleted file mode 100644 index 2a672f7c..00000000 --- a/clones/lisp/www.cliki.net/database-migrations.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: database-migrations - - - - - - - -
    database-migrations
    database-migrations is a library for handling relational (SQL) schema changes and versioning, much like Ruby on Rails migrations.

    It doesn't force you to put the migrations in separate files but only supports one database for the time being (workaround is trivial).

    Homepage: http://github.com/madnificent/database-migrations/

    Licence: MIT


    -database version control SQL
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/database.html b/clones/lisp/www.cliki.net/database.html deleted file mode 100644 index 15788820..00000000 --- a/clones/lisp/www.cliki.net/database.html +++ /dev/null @@ -1,369 +0,0 @@ - - - - - CLiki: Database - - - - - - - -
    Database
    Database-related software; RDBMS glue, OO databases, etc. Anything that helps manage state across multiple Lisp sessions is eligible.

    Relational and SQL database projects: (main topic: SQL) -

    ORM libraries: (main topic: ORM) -

      -
    • -cl-perec - - cl-perec is a CLOS ORM based on cl-rdbms -
    • -
    • -CLSQL - - CLSQL is a Database interface that can access a number of different SQL database engines -
    • -
    • -CLSQL-ORM - - CLSQL-ORM is an library to generate clsql view-classes from existing databases, by introspecting on the "information_schema" of the running database -
    • -
    • -Mito - - An ORM for Common Lisp with migrations, relationships and PostgreSQL support -
    • -
    • -Submarine - - Submarine is a Common Lisp library that's somewhere between a PostgreSQL library and an object persistence system -
    • -
    • -YstokSQL - - YstokSQL is a Common Lisp library for interfacing relational Database via ODBC -
    • -

    CLOS OO databases: (main topic: ObjectStore) -

    Structured storage/NOSQL projects: (main topic: StructuredStorage) -

    Simple serialization: (main topic: serialization) -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/dataflow.html b/clones/lisp/www.cliki.net/dataflow.html deleted file mode 100644 index 342f13fd..00000000 --- a/clones/lisp/www.cliki.net/dataflow.html +++ /dev/null @@ -1,72 +0,0 @@ - - - - - CLiki: Dataflow - - - - - - - -
    Dataflow
      -
    • -cells - - cells is a dataflow extension to CLOS (think spreadsheet-type programming, with slots being spreadsheet cells) by Kenny Tilton -
    • -
    • -cl-flow - - Asynchronous non-blocking concurrency in Common Lisp, similar to what green threads are for -
    • -
    • -CL-REACTIVE - - Reactive programming at the variable/function level for Common Lisp -
    • -
    • -computed-class - - A class metaobject for computed slot values and more -
    • -
    • -gecol - - gecol provides bindings to GECODE in order to enjoy constraint programming in Lisp -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/datafly.html b/clones/lisp/www.cliki.net/datafly.html deleted file mode 100644 index 2c948848..00000000 --- a/clones/lisp/www.cliki.net/datafly.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: datafly - - - - - - - -
    datafly
    A lightweight database library for Common Lisp.

    Repository: https://github.com/fukamachi/datafly


    -BSD License, SQL
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/dawg.html b/clones/lisp/www.cliki.net/dawg.html deleted file mode 100644 index c6ea759d..00000000 --- a/clones/lisp/www.cliki.net/dawg.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: dawg - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/db-sockets.html b/clones/lisp/www.cliki.net/db-sockets.html deleted file mode 100644 index c5b9956b..00000000 --- a/clones/lisp/www.cliki.net/db-sockets.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: db-sockets - - - - - - - -
    db-sockets
    db-sockets is obsolete and no longer supported, see usocket for a currently maintained library

    db-sockets is an unsupported package for SBCL and/or CMUCL which implements a lot of the BSD sockets API.

    See usocket for a portable sockets implementation across many lisp implementations.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ddist.html b/clones/lisp/www.cliki.net/ddist.html deleted file mode 100644 index 0ea07b4c..00000000 --- a/clones/lisp/www.cliki.net/ddist.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: ddist - - - - - - - -
    ddist
    ddist is a hackbrary for simple distributed lisp computation.

    It should be downloadable at sourceforge.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/de.setf.amqp.html b/clones/lisp/www.cliki.net/de.setf.amqp.html deleted file mode 100644 index bfac1a18..00000000 --- a/clones/lisp/www.cliki.net/de.setf.amqp.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: de.setf.amqp - - - - - - - -
    de.setf.amqp
    de setf amqp is a native Common Lisp Advanced Message Queuing Protocol client.

    The implementation comprises wire-level codecs, implementations for the standard protocol objects and methods, a functional interface for message-, stream- and object-based I/O, and a device-level simple-stream implementation.

    The library targets the revisions of the published AMQP protocol as of versions 0.8, 0.9, and 0.10. For each version, a distinct package comprises the object and method definitions for protocol entities and codecs as generated from the respective specification documents. Each collection is a complete projection, which means there is some amount of duplication. The names - classes, operators, packages, and directories follow more-or-less the naming conventions of the protocol documents.

    For more information, see the repository

    License: AGPL (aka Affero GPL, GPL version 3)


    -Topics: Distributed messaging
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/de.setf.atn-parser.html b/clones/lisp/www.cliki.net/de.setf.atn-parser.html deleted file mode 100644 index f50ea20f..00000000 --- a/clones/lisp/www.cliki.net/de.setf.atn-parser.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: de.setf.atn-parser - - - - - - - -
    de.setf.atn-parser
    de setf atn-parser is an atn-based BNF -> Common Lisp LR(*) parser generator.

    Homepage: https://github.com/lisp/de.setf.atn-parser

    License: LGPLv3

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/de.setf.cassandra.html b/clones/lisp/www.cliki.net/de.setf.cassandra.html deleted file mode 100644 index 30303e3d..00000000 --- a/clones/lisp/www.cliki.net/de.setf.cassandra.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: de.setf.cassandra - - - - - - - -
    de.setf.cassandra
    de setf cassandra is an interface to the Apache Cassandra distributed data store.

    Homepage: https://github.com/lisp/de.setf.cassandra

    License: LGPLv3

    Source repository: https://github.com/lisp/de.setf.cassandra.git

    StructuredStorage

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/de.setf.graphics.html b/clones/lisp/www.cliki.net/de.setf.graphics.html deleted file mode 100644 index 030a1751..00000000 --- a/clones/lisp/www.cliki.net/de.setf.graphics.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: de.setf.graphics - - - - - - - -
    de.setf.graphics
    de setf graphics is a native Common Lisp graphics library that provides 3d scene and geometry modeling in CLOS with rendering support for clim, clx, opengl, quickdraw, and svg.

    Homepage: https://github.com/lisp/de.setf.graphics

    License: AGPL

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/de.setf.resource.html b/clones/lisp/www.cliki.net/de.setf.resource.html deleted file mode 100644 index b6514bec..00000000 --- a/clones/lisp/www.cliki.net/de.setf.resource.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: de.setf.resource - - - - - - - -
    de.setf.resource
    de setf resource implements transparent, transactional persistence of CLOS objects to several RDF stores. It relies on the CLOS-MOP to implement a collection of metaclasses and operators to equate CLOS class/instance/slot structure with a domain/resource/property oriented view of RDF graphs. It includes interfaces to Wilbur, Apache Cassandra, and AllegroGraph RDF repositories, which permits both memory-resident and remote repositories.

    Homepage: https://github.com/lisp/de.setf.resource

    License: AGPL


    -Topics: Semantic Web ObjectStore
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/de.setf.thrift.html b/clones/lisp/www.cliki.net/de.setf.thrift.html deleted file mode 100644 index 703ea6c6..00000000 --- a/clones/lisp/www.cliki.net/de.setf.thrift.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: de.setf.thrift - - - - - - - -
    de.setf.thrift
    de.setf.thrift is a binding for the Apache Thrift framework for scalable cross-language services development.

    Depends on: puri-ppcre, usocket, closer-mop, trivial-utf-8

    Homepage: https://github.com/lisp/de.setf.thrift

    License: Apache 2


    -Topics: FFI wire format
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/de.setf.utility.html b/clones/lisp/www.cliki.net/de.setf.utility.html deleted file mode 100644 index 738b9878..00000000 --- a/clones/lisp/www.cliki.net/de.setf.utility.html +++ /dev/null @@ -1,69 +0,0 @@ - - - - - CLiki: de.setf.utility - - - - - - - -
    de.setf.utility
    de setf utility is a collection of Common Lisp utilities functions and several purpose-specific libraries.

    The extension libraries include: -

      -
    • stream and buffer serialization : de.setf.utility.codecs (binary format) -
    • -
    • Erlang Term Format serialization : de.setf.utility.codecs.etf (FFI) -
    • -
    • date coding : de.setf.utility.date (time) -
    • -
    • graphiz .dot graph generation : de.setf.utility.dot (plotting) -
    • -
    • mime content types and simple utf coding : de.setf.utility.mime (email) -
    • -
    • unit tests : de.setf.utility.test (test framework) -
    • -
    • an rspec interface : de.setf.utility.test.rspec -
    • -
    • code, image, package, system walkers : de.setf.utility.walker (metaprogramming) -
    • -

    Homepage: https://github.com/lisp/de.setf.utility

    License: LGPL

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/de.setf.wilbur.html b/clones/lisp/www.cliki.net/de.setf.wilbur.html deleted file mode 100644 index 6470f7a4..00000000 --- a/clones/lisp/www.cliki.net/de.setf.wilbur.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: de.setf.wilbur - - - - - - - -
    de.setf.wilbur
    Wilbur was originally conceived as Nokia Research Center's toolkit for programming Semantic Web applications that use RDF (as well as XML), written in Common Lisp.

    de.setf.wilbur is extends and updates the last supported (2010-02-14) version of the "Wilbur Semantic Web Toolkit for CLOS" to maintain compatibility with Lisp runtimes.

    Homepage: https://github.com/lisp/de.setf.wilbur

    License: LLGPL

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/debian.html b/clones/lisp/www.cliki.net/debian.html deleted file mode 100644 index 0347d8b7..00000000 --- a/clones/lisp/www.cliki.net/debian.html +++ /dev/null @@ -1,177 +0,0 @@ - - - - - CLiki: Debian - - - - - - - -
    Debian
    Debian GNU/Linux is a non-commercial Linux-distribution which is very popular with developers, and has CMUCL packages which are frequently updated. All the software in -the main distribution (section) - of Debian is DFSG-compliant - they invented the guidelines, after all.

    Quite a lot of CL software is in Debian, packaged using the common-lisp-controller system. Look for packages whose names start with cl-. There is the CL-Debian project, that provides information about Common Lisp packaging, various source packages in Darcs repositories and a mailing list.

    Extra repositories

    Backports has packages of recent Common Lisp libraries and implementations for Debian GNU/Linux Sarge on many architectures. Usage instructions can be found here.

    Extra repositories also exist for Ubuntu releases, where the platform dependent packages are available for i386 only. The lines for your /etc/apt/source.list file look like this: For sarge add

    deb http://people.debian.org/~pvaneynd/cl-sarge-packages ./
    for ubuntu breezy add
    deb http://people.debian.org/~pvaneynd/cl-breezy-packages ./

    Lisp-related packages

    Most Lisp programmers use the latest version of Debian called Sid or unstable. -This version of Debian contains:

    Implementations

    -

    Software packages on CLiki

    Other Software packages

    Many of these are actually on CLiki, but miss the Debian package topic marker, which -would make them show up on the list above. Industrious souls are encouraged to add such -markers and delete the corresponding entry, if any, from this list.

    Suggestions/Hints/etc for package creators

    -
      -
    • Please use a package prefix that helps to track down the package in - Debian and dselect in particular. A prefix will hopefully also help - wrt inclusion in ordinary Debian and to avoid name conflicts. One such - prefix might be cl- for ordinary Common Lisp libraries. -
    • -
    • If possible, use :Depends for other systems instead of including - them in your package. As an example, the Langband-package should - depend on binary-types instead of including them in the its package. -
    • -
    • Persons investigating the natures and features of packaging systems, and persons intending to create Debian packages, may be interested in the page here on Debian Packages
    • -

    Hints for users

    -
      -
    • When using Debian and the common-lisp-controller version 4, all packages can be loaded using the (clc:clc-require :name) syntax. For example, the cl-infix package can be loaded using (clc:clc-require :infix). -
    • -
    • With an implementation that uses the common-lisp-controller you can simply use (clc:clc-require :infix) to load the precompiled version. -
    • -

    -

    Wishlist

    -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/debugging.html b/clones/lisp/www.cliki.net/debugging.html deleted file mode 100644 index dfa84298..00000000 --- a/clones/lisp/www.cliki.net/debugging.html +++ /dev/null @@ -1,104 +0,0 @@ - - - - - CLiki: debugging - - - - - - - -
    debugging
    Advice and tools for debugging Lisp code.

      -
    • -Clouseau - - "Clouseau" is the name of McCLIM's inspector application, which helps with debugging -
    • -
    • -common-db - - common-db is a programmable debugging substrate, mostly geared to driving target devices by establishing control via on-chip debugging machinery through a JTAG (IEEE 1149.1) external port -
    • -
    • -decaf - - Decaf is an Java debugger GUI written in Lisp using CLIM -
    • -
    • -Firephp - - Firephp is implementation of firephp protocol for Common Lisp -
    • -
    • -gtfl - - GTFL is a graphical terminal for Common Lisp -
    • -
    • -journal - - A library for logging, tracing, testing and persistence -
    • -
    • -Lint - - What should a CL lint-like tool look for? -
    • -
    • -PREPL - - prepl is a REPL implementation, also known as a Lisp listener -
    • -
    • -pretty-function - - pretty-function provides an API for making individual functions pprint differently when written to an output stream -
    • -
    • -swank-client - - Common Lisp implementation of a Slime / Swank client -
    • -
    • -trivial-backtrace - - Trivial backtrace is a simple platform independent interface for generating a backtrace -
    • -
    • -TutorialClispDebugger - - Small Clisp Debugger Tutorial -
    • -
    • -TutorialDebuggingDeadLock - - Debugging a dead-lock in a program using bordeaux-threads in ccl -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/decaf.html b/clones/lisp/www.cliki.net/decaf.html deleted file mode 100644 index a3fb84d1..00000000 --- a/clones/lisp/www.cliki.net/decaf.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: decaf - - - - - - - -
    decaf
    Decaf is an Java debugger GUI written in Lisp using CLIM. The GUI itself is still rather prototypish, but the debugging library it is based on (CL-JDI) is mostly complete.

    Decaf was written for SBCL. It should also work with ACL.

    License: GPL

    Download: http://www.lichteblau.com/download/deleteme/cloak-0.1.tar.gz

    Readme: http://www.lichteblau.com/cloak/decaf/README.html

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/decimals.html b/clones/lisp/www.cliki.net/decimals.html deleted file mode 100644 index 90dcb842..00000000 --- a/clones/lisp/www.cliki.net/decimals.html +++ /dev/null @@ -1,86 +0,0 @@ - - - - - CLiki: Decimals - - - - - - - -
    Decimals
    A decimal number parser and formatting package for Common Lisp.

    The package can be installed through Quicklisp: (ql:quickload "decimals")

    Link to the package source code and README file: DECIMALS.

    This package introduces three public functions and one macro. See their own documentation for complete description. Here's a short introduction.


    Function: PARSE-DECIMAL-NUMBER (string &key ...)

    Examine a string for a decimal number and return it as a rational number.

    -DECIMALS> (parse-decimal-number "12,34" :decimal-separator #\,)
    -617/50
    -

    -Function: FORMAT-DECIMAL-NUMBER (number &key ...)

    Apply specified decimal number formatting rules to a number and return a formatted string.

    -DECIMALS> (format-decimal-number 20000/3 :round-magnitude -3
    -                                 :decimal-separator ","
    -                                 :integer-group-separator " "
    -                                 :integer-minimum-width 7)
    -"  6 666,667"
    -("" "6 666" "," "667")
    -

    -DECIMALS> (loop for e from -5 upto 5
    -                do (print (format-decimal-number
    -                           (expt 10 e) :round-magnitude -5
    -                           :decimal-separator ","
    -                           :integer-minimum-width 7
    -                           :integer-group-separator " "
    -                           :fractional-minimum-width 7
    -                           :fractional-group-separator " ")))
    -
    -"      0,000 01"
    -"      0,000 1 "
    -"      0,001   "
    -"      0,01    "
    -"      0,1     "
    -"      1       "
    -"     10       "
    -"    100       "
    -"  1 000       "
    -" 10 000       "
    -"100 000       "
    -NIL
    -

    Function: ROUND-HALF-AWAY-FROM-ZERO (number &optional (divisor 1))

    A rounding function similar to CL:ROUND except that when number is exactly half-way between two integers round always away from zero. FORMAT-DECIMAL-NUMBER uses this rounding function by default.

    Macro: DEFINE-DECIMAL-FORMATTER (name &body keyword-arguments)

    Define a custom decimal number formatter function suitable for the ~/ directive of CL:FORMAT.


    -Tags: Library, Mathematics, Public Domain -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/decisiontree.html b/clones/lisp/www.cliki.net/decisiontree.html deleted file mode 100644 index aff6e364..00000000 --- a/clones/lisp/www.cliki.net/decisiontree.html +++ /dev/null @@ -1,104 +0,0 @@ - - - - - CLiki: decisiontree - - - - - - - -
    decisiontree
    This package provides an implementation of an algorithm that creates a decision tree.

    It provides the following features

      -
    • Classification of multiple classes of instances -
    • -
    • Handling attributes with continuous values (A bit clunky for the timebeing) -
    • -
    • Function for selecting attributes can be modified by changing the *attribute-selection-function* variable -
    • -

    Repository: https://github.com/reubencornel/cl-decisiontree

    Usage

    -To train a decision tree call the function create-classifier function. -This function requires a list of training instances.

    A training instance can be created by calling the macro define-instance. -This macro requires the first argument to be the name of the class to -which the instance belongs and the rest are list of attribute values.

    The create-classifier returns the root -node of the decision tree. This inturn is used by -the classify function that classifies new -instances.

    Continuous values

    -Before passing a list of continous values to -the create-classifier function the -continous values need to be removed. As of now this is what the -algorithm that I have written does.

      -
    • It sorts the instances based on the values of the attribute in - ascending order -
    • -
    • Then for every instance in the list it check the value of the - attribute and the class and identifies ranges where the classes are same -
    • -
    • It then replaces all the continuous values with symbols that were - idenified by the previous step -
    • -
    • It returns a list of ranges and the corresponding symbols -
    • -

    This is done by the -function generate-range-symbols. When -trying to classify any new instance the continuous values need to be -replaced, this is done by the -function replace-continuous-values. This -function requires the range list generated by -the generate-range-symbols function, the -instance and the attribute that is supposed to be continous

    Todo

    -
      -
    • Addition of rule post pruning -
    • -
    • A set of newer attribute selection functions -
    • -
    • Better method to define and use attributes with continous values - (requesting suggestions) -
        -
      • I want to know if there is a means by which I can define - instances with continous values such that when defining new - instances the continous values are replaced automatically. -
      • -
      -
    • -

    If there are any suggestions/bugs please mail me at reuben dot cornel at gmail dot com. Thank you!!!


    -Artificial Intelligence
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/declt.html b/clones/lisp/www.cliki.net/declt.html deleted file mode 100644 index 3e098350..00000000 --- a/clones/lisp/www.cliki.net/declt.html +++ /dev/null @@ -1,74 +0,0 @@ - - - - - CLiki: Declt - - - - - - - -
    Declt
    Declt (pronounce "dec'let") is a reference manual generator for -Common Lisp libraries. It works by loading an ASDF system and introspecting -its contents. The generated documentation contains the description for -the system itself and its components (modules and files), the packages -defined in that system and the definitions found in those packages.

    Exported and internal definitions are listed separately. This allows the -reader to have a quick view on the library's public API. Within each -section, definitions are sorted lexicographically.

    In addition to ASDF system components and packages, Declt documents -the following definitions: constants, special variables, symbol macros, -macros, setf expanders, compiler macros, functions (including -setf ones), generic functions and methods (including setf ones), -method combinations, conditions, structures, classes and types.

    The generated documentation includes every possible bit of information -that introspecting can provide: documentation strings, lambda lists -(including qualifiers and specializers where appropriate), slots -(including type, allocation and initialization arguments), definition -source file etc.

    Every documented item provides a full set of cross-references to related -items: ASDF component dependencies, parents and children, classes direct -methods, super and subclasses, slot readers and writers, setf -expanders access and update functions etc.

    Finally, Declt produces exhaustive and multiple-entry indexes for -every documented item.

    Reference manuals are generated in Texinfo format (compatible, but not -requiring Texinfo 5). From there it is possible to produce readable / -printable output in info, HTML, PDF, DVI and PostScript with tools such -as makeinfo, texi2dvi or texi2pdf.

    The Declt reference manual is the primary example of documentation generated by Declt itself.

    Declt's homepage is -here.


    -Declt is a documentation tool written by Didier Verna...
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/deeds.html b/clones/lisp/www.cliki.net/deeds.html deleted file mode 100644 index f3053e4e..00000000 --- a/clones/lisp/www.cliki.net/deeds.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: deeds - - - - - - - -
    deeds
    Deeds is an Extensible Event Delivery System. It allows for efficient event delivery to multiple handlers with a complex event filtering system.

    The project can be found on github including a fully documented symbol index and a getting started tutorial.
    -As of February 2016, Deeds is on Quicklisp.

    Deeds is licensed under the Artistic License 2.0.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/defclass*.html b/clones/lisp/www.cliki.net/defclass*.html deleted file mode 100644 index 8b98594c..00000000 --- a/clones/lisp/www.cliki.net/defclass*.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: defclass* - - - - - - - -
    defclass*
    defclass* is a convenience library to make the usage of defclass-like constructs easier (defcondition*, deflayer*, etc).

    Homepage: http://dwim.hu/darcsweb/darcsweb.cgi?r=HEAD%20hu.dwim.defclass-star;a=summary

    In case link is down here is the old common-lisp.net page.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/defclass-std.html b/clones/lisp/www.cliki.net/defclass-std.html deleted file mode 100644 index 71cc0152..00000000 --- a/clones/lisp/www.cliki.net/defclass-std.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: defclass-std - - - - - - - -
    defclass-std
    A shortcut macro to write DEFCLASS forms quickly.

    Depends on: alexandria, anaphora

    Repository: https://github.com/EuAndreh/defclass-std

    License: LLGPL


    -convenience library
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/definer.html b/clones/lisp/www.cliki.net/definer.html deleted file mode 100644 index 2e444a70..00000000 --- a/clones/lisp/www.cliki.net/definer.html +++ /dev/null @@ -1,59 +0,0 @@ - - - - - CLiki: DEFINER - - - - - - - -
    DEFINER
    DEFINER is a small hack which demonstrates the power of CL macro facilities.

    Homepage: https://common-lisp.net/project/definer/

    Essentially it allows for a (let's say it!) Pythonesque, or better, a Dylan-like syntax for various definition forms. E.g.

      -
    • (def var foo 42)

    • -
    • (def class panda (animal))

    • -
    • (def struct tree-node content left right)

    • -
    • (def method bar ((x string)) (print x))

    • -
    • (def method bar :after ((x string)) (print "Just printed a string!")) -
    • -


    -convenience library
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/definitions-systems.html b/clones/lisp/www.cliki.net/definitions-systems.html deleted file mode 100644 index e22d245b..00000000 --- a/clones/lisp/www.cliki.net/definitions-systems.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: definitions-systems - - - - - - - -
    definitions-systems
    definitions-systems provides a simple unified extensible way of processing named definitions.

    See the project's home for all details.


    -Unlicense, Public Domain
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/deflate.html b/clones/lisp/www.cliki.net/deflate.html deleted file mode 100644 index 618fc06f..00000000 --- a/clones/lisp/www.cliki.net/deflate.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: deflate - - - - - - - -
    deflate
    Deflate by Pierre Mai is a Common Lisp implementation of Deflate (RFC 1951) decompression, with optional support for ZLIB-style (RFC 1950) and gzip-style (RFC 1952) wrappers of deflate streams. It currently does not handle compression. Deflate has no dependencies on other libraries. Deflate is, at present, the decompression library used by Quicklisp.

    Home page: https://pmsf.eu/resources/lisp/Deflate.html

    Repository: https://github.com/pmai/Deflate

    License: MIT/X11

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/defmacro-enhance.html b/clones/lisp/www.cliki.net/defmacro-enhance.html deleted file mode 100644 index d52567a3..00000000 --- a/clones/lisp/www.cliki.net/defmacro-enhance.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: defmacro-enhance - - - - - - - -
    defmacro-enhance
    Extend DEFMACRO facility in spirit of Let Over Lambda.

    g!-symbols stand for gensyms, o!-symbols stand for once-only arguments and e!-symbols stand for -symbols, interned in package, where macro is expanded. See README for details.

    Similar extensions of DEFUN, MACROLET and FLET are also present.

    Licence: GPL

    Homepage: https://github.com/mabragor/defmacro-enhance

    language extension

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/defrest.html b/clones/lisp/www.cliki.net/defrest.html deleted file mode 100644 index 57b36945..00000000 --- a/clones/lisp/www.cliki.net/defrest.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: defrest - - - - - - - -
    defrest
    defrest provides a very easy way to expose functions via REST interfaces with the hunchentoot webserver.

    - (defrest "/sqrt/{number:[0-9]+}" :GET (number) - (sqrt (parse-integer number))) -

    for example exposes a square rooting Webservice with URL-Path-Parameters so that a HTTP GET call to

    http://server/sqrt/9
    returns "3.0"

    Category web framework

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/defstar.html b/clones/lisp/www.cliki.net/defstar.html deleted file mode 100644 index 83bad05f..00000000 --- a/clones/lisp/www.cliki.net/defstar.html +++ /dev/null @@ -1,62 +0,0 @@ - - - - - CLiki: defstar - - - - - - - -
    defstar
    Defstar is a collection of Common Lisp macros that can be used in place of defun, defmethod, defgeneric, defvar, defparameter, flet, labels, let* and lambda. Each macro has the same name as the form it replaces, with a star added at the end, e.g. defun*. (the exception is the let* replacement, which is called *let).

    The macros allow:

      -
    • easy inclusion of type declarations for arguments in lambda lists -
    • -
    • easy inclusion of return type declarations in function and method definitions -
    • -
    • easy declaration of variables as 'ignored', by the use of '_' as a placeholder variable in argument lists. -
    • -
    • easy inclusion of assertions for each argument and for the function's return value, thus allowing simple programming by contract. -
    • -
    -See defstar's home page for a detailed discussion of each macro, with usage examples.

    Installation requires ASDF or Quicklisp. Defstar does not depend on any other libraries.


    -GPL3 convenience library
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/defsystem-compatibility.html b/clones/lisp/www.cliki.net/defsystem-compatibility.html deleted file mode 100644 index 1232cff3..00000000 --- a/clones/lisp/www.cliki.net/defsystem-compatibility.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: defsystem-compatibility - - - - - - - -
    defsystem-compatibility
    Defsystem-compatibility papers over the differences between system definition tools and also provides a small set of relective capabilities to help system groveling tools be more portable. More details can be found here on common-lisp.net.


    -obsolete
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/demacs.html b/clones/lisp/www.cliki.net/demacs.html deleted file mode 100644 index d9c354d4..00000000 --- a/clones/lisp/www.cliki.net/demacs.html +++ /dev/null @@ -1,63 +0,0 @@ - - - - - CLiki: demacs - - - - - - - -
    demacs
    Demacs is an extensible way of defining various things. Demacs is written -from scratch with the idea of syntax of cl-def in mind. Despite there are -some other definer utilities in the wide (e.g. definer, cl-def), almost all of them lack of at least one of below functionalities.

      -
    • Extensibility. (definer doesn't support extensions.)
    • Affordable dependency. (cl-def - depends on some libraries, and those - libraries depend on some other libraries and so on... You're required to - install a dozen of libraries to benefit from a single definer utility. - Furthermore, a major portion of related libraries are not available via - ASDF-INSTALL.)
    • -
    -To summarize, demacs is implemented with KISS principle in mind. -And as a bonus, demacs has no dependencies.

    Repository: https://github.com/vy/demacs

    License: BSD


    -convenience library
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/deployment.html b/clones/lisp/www.cliki.net/deployment.html deleted file mode 100644 index 058bb3a5..00000000 --- a/clones/lisp/www.cliki.net/deployment.html +++ /dev/null @@ -1,76 +0,0 @@ - - - - - CLiki: Deployment - - - - - - - -
    Deployment
      -
    • -cl-daemonize - - cl-daemonize is a tool to daemonize a Lisp process without the need for screen/detachtty -
    • -
    • -cl-launch - - cl-launch is a unix utility to make your Lisp software easily invokable from the shell command-line -
    • -
    • -Consfigurator - - A system for declarative configuration management using Common Lisp -
    • -
    • -Creating Executables - - Most Common Lisp implementations support creating native-format executable files -
    • -
    • -lispx-proxy - - lispx-proxy (Lisp Execution Proxy) is a Lisp application launcher for Windows (A *nix port with limited functionality is also available) -
    • -
    • -Unix shell scripting - - This is a guide for writing Unix shell scripts in various Common Lisp implementations -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/deprecations.html b/clones/lisp/www.cliki.net/deprecations.html deleted file mode 100644 index 9262f363..00000000 --- a/clones/lisp/www.cliki.net/deprecations.html +++ /dev/null @@ -1,58 +0,0 @@ - - - - - CLiki: deprecations - - - - - - - -
    deprecations
    deprecations allows you to define functions, generic functions, macros and symbol macros as deprecated. When code which uses these is compiled then one or both of two things happens:

      -
    • a warning is signalled by default at compile time, with the warning being of a documented class, so that it can be handled by user code if need be; -
    • -
    • the file where the deprecated code is used is noted against the deprecated code, and this record can be used later, or reports generated. -
    • -
    -The compile-time warnings can be inhibited, and the recording of users of deprecated code can be scoped dynamically. There are no run-time effects: deprecated functionality is identical to non-deprecated functionality at run-time.


    -MIT-License, metaprogramming
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/detachtty.html b/clones/lisp/www.cliki.net/detachtty.html deleted file mode 100644 index 1dcae35e..00000000 --- a/clones/lisp/www.cliki.net/detachtty.html +++ /dev/null @@ -1,94 +0,0 @@ - - - - - CLiki: detachtty - - - - - - - -
    detachtty
    detachtty is a Unix utility that lets you run interactive programs (such as Lisp) non-interactively. -Also, it allows you to connect to them over the network when you do need to interact with them. -It's intended for use with long-running server processes running in -Common Lisp implementations.

    If you've used screen, it's a similar concept, but more suited to traditional scrolling interfaces whereas screen is better for full-screen (e.g. curses-based) apps. Compared to screen, detachtty

      -
    • has no capability to swap between different screens (doesn't eat C-a) -
    • -
    • runs in line-at-a-time mode with no tty emulation (you can sanely use it in emacs comint modes or from inside a script(1) session) -
    • -
    • has no features (less to go wrong) -
    • -
    • and thus doesn't need a configuration file either -
    • -

    Example usage

    -server$ detachtty --dribble-file /var/log/cliki-dribble --log-file \
    -  /var/log/detachtty.log --pid-file /var/run/cliki.pid \
    -  /var/run/cliki-socket /usr/bin/lisp -eval '(load-system :telentweb)' \
    -  -eval '(progn (telentweb::init) (telentweb::start))' \
    -
    -client$ attachtty dan@server:/var/run/cliki-socket
    -
    -

    to quit attachtty press ^\

    Running via detachtty at startup

    Start a script late .. i.e. S9xlispapp in rc[2|3].d/

    start S9xlispapp -

    -#!/bin/sh
    -su - user -c /path/to/lisp-app-script
    -
    -end S9xlispapp

    start lisp-app-script -

    -#!/bin/sh
    -
    -detachtty --dribble-file /var/log/lisp-app-dribble --log-file \
    -  /var/log/detachtty.log --pid-file /var/run/lisp-app.pid \
    -  /var/run/lisp-app-socket /usr/bin/lisp -eval '(start-lisp-app)'
    -
    -end lisp-app-script

    -quasi (credit to Eduardo Muñoz for this information)

    A more featureful init.d startup script for debian and compatible linuxes is introduced in -https://boinkor.net/2006/02/starting-daemonized-lisp-images-in-debian/

    Actual usage

    detachtty is running the SBCL instance that CLiki runs on

    Compatibility

    detachtty is mostly tested on Debian GNU/Linux, but contributed patches for FreeBSD and Solaris have been merged into it, so it's probably not too hard to get running on many Unices

    apparently, it worked on macos at one time, but that is no longer true under macos 10.4 (tiger). It seems that tiger's poll does not work as advertised. it works on Tiger using poll-emulator from MacPorts ("OS_LOADLIBES=-lpoll -L/opt/local/lib" is the only change required to make it work on Intel, but I'm having some issues on PPC)

    Download

    i386 Debian and source packages (currently at version 9) are at ftp://ftp.linux.org.uk/pub/lisp/detachtty/. This package is also -available in the main Debian repository. There's also a FreeBSD port, misc/detachtty, which you can get from the ports tree.

    A new version, which includes the ability to set timeouts and pass code to the detach'd lisp (for better scriptablity) is available in the darcs repo at:

    http://common-lisp.net/project/bese/repos/detachtty

    Patches against that code would are more than welcome.


    -Remark:

    When I started my Lisp image at Systemstart I got always errors like: -

    c-string encoding error (:external-format :ASCII):
    -the character with code 195 cannot be encoded.
    -[Condition of type SB-INT:C-STRING-ENCODING-ERROR]

    But it worked when I tried to start my Lisp image via the init.d script in the comandline.

    The problem was solved when I added the following declarations to my init.d script: -

    -LC_CTYPE=en_US.UTF-8
    -export LC_CTYPE
    -

    See also: comp.lang.lisp thread

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/development.html b/clones/lisp/www.cliki.net/development.html deleted file mode 100644 index 9ab7042e..00000000 --- a/clones/lisp/www.cliki.net/development.html +++ /dev/null @@ -1,657 +0,0 @@ - - - - - CLiki: Development - - - - - - - -
    Development
    Development, building, testing, and documentation aids.

    Editor/IDE support

      -
    • -Cross-editor plugins -
        -
      • -Parinfer is a mode that helps keeping both indentation and parens balanced. It is easy to start with and yet it offers advanced features à la Paredit. It is available on many editors (Emacs, Vim, Atom, Sublime Text, Visual Studio Code, LightTable, CodeMirror,…). -
      • -
      - -
    • -
    • -Emacs -
        -
      • -SLIME is the Superior Lisp Interaction Mode, Extended -
      • -
      • PORTACLE is a portable and multiplatform development environment, pre-configured with SBCL, Quicklisp, Emacs, Slime and Git. Download, extract and use, no installation needed. -
      • -
      -
    • -vi/vim -
        -
      • -VLIME is a Common Lisp dev environment for Vim (and Neovim), similar to SLIME for Emacs and SLIMV for Vim. (Also look for some newer forks.) -
      • -
      • -Slimv provides SLIME-like Lisp and Clojure REPL inside Vim with profiling, Hyperspec lookup, Paredit-like structured editing -
      • -
      • -Nekthuth is a vim plugin and CL library which gives vim users some interactive Lisp development/IDE features akin to SLIME -
      • -
      • -VIlisp, an (inferior) inferior lisp mode for vim. -
      • -
      • -Limp, another (slightly less inferior) inferior lisp mode for Vim. -
      • -
      • -Using vi with Lisp -
      • -
      -
    • - Atom -
        -
      • -SLIMA is an Atom plugin for Common Lisp development.
      • -
      -
    • -Eclipse -
        -
      • -Cusp An Eclipse plugin that comes out of the box with SBCL and Swank for Windows, Linux, and OSX -
      • -
      • -Dandelion Another Eclipse plugin, currently available with CLISP (for WinXP, MacosX, Linux). It supports the developer with syntax analyses as you type (limited), syntax highlighting, code completion, parenthesis matching, apropos and a listener. -
      • -
      -
    • -Other -
        -
      • Lem is a stand-alone, Emacs-like editor built in Common Lisp. -
      • -
      • -MCLIDE is an open source Mac OS X IDE for Lisp implementations using the SWANK protocol of SLIME. It supports Common Lisp, Clojure, and Scheme. -
      • -
      • -Climacs is an Emacs-like text editor written in Common Lisp using McCLIM. -
      • -
      • -Hemlock is an Emacs-like editor written in CL not using CLIM. -
      • -
      • -Able a IDE written in CL itself, for Mac/Windows/Linux, also with interaction mode. -
      • -
      • -LispIDE is a basic editor for several Lisp and Scheme implementations available for Windows. -
      • -
      • -Clcon is a cross-platform Lisp IDE with permissive license. It uses SWANK protocol of SLIME to connect to server. Under construction, no releases yet. -
      • -
      -
    • -

    Build/make tools (main topic: build) see also: tools to Obtain libraries. -

      -
    • -asdf - - ASDF (Another System Definition Facility) is an extensible build facility for Common Lisp software -
    • -
    • -ASDlite - - ASDlite is a light-weight version of ASDF, a popular build facility for Common Lisp -
    • -
    • -corona - - Corona is a library for building and controlling virtual machines -
    • -
    • -evol - - evol - entrenched virtues of lisp (love reversed) aims to be a compatible and full-fledged replacement for the GNU autotools stack targeted at coping with the autotools' shortcomings while not repeating the mistakes made and still being made at comparable build tool projects -
    • -
    • -mk-defsystem - - MK-defsystem is a system definition utility; it fills a similar role for CL as make(1) does for C -
    • -
    • -Overlord - - Overlord is an experimental build system for Common Lisp, inspired by Redo -
    • -
    • -poiu - - poiu is an asdf extension that builds in parallel -
    • -
    • -XCVB - - XCVB, an eXtensible Component Verifier and Builder for Lisp is an attempt to replace asdf -
    • -

    Deployment (main topic: deployment) -

      -
    • -cl-daemonize - - cl-daemonize is a tool to daemonize a Lisp process without the need for screen/detachtty -
    • -
    • -cl-launch - - cl-launch is a unix utility to make your Lisp software easily invokable from the shell command-line -
    • -
    • -Consfigurator - - A system for declarative configuration management using Common Lisp -
    • -
    • -Creating Executables - - Most Common Lisp implementations support creating native-format executable files -
    • -
    • -lispx-proxy - - lispx-proxy (Lisp Execution Proxy) is a Lisp application launcher for Windows (A *nix port with limited functionality is also available) -
    • -
    • -Unix shell scripting - - This is a guide for writing Unix shell scripts in various Common Lisp implementations -
    • -

    Testing (main topic: test framework) -

    Configuration (main topic: configuration) -

    Logging (main topic: logging) -

      -
    • -a-cl-logger - - A common lisp logging library providing context sensitive logging of more than just strings to more than just local files / output streams -
    • -
    • -cl-grip - - cl-grip is a high-level logging system for Common Lisp, focusing on a clear user interface, support for flexible structured logging, and easy extensibility for different backends to support direct logging to various inputs -
    • -
    • -cl-log - - CL-LOG is a general purpose logging utility, loosely modelled in some respects after Gary King's Log5 -
    • -
    • -cl-syslog - - Common Lisp interface to local and remote Syslog facilities -
    • -
    • -flood - - Comfortable, powerful and tiny logging library for common lisp -
    • -
    • -hu.dwim.logger - - hu,dwim,logger is a logging library -
    • -
    • -irc-logger - - irc-logger is a networking library written by Kevin Rosenberg which uses the cl-irc library to provide multichannel Internet Relay Chat (IRC) logging -
    • -
    • -journal - - A library for logging, tracing, testing and persistence -
    • -
    • -Log4CL - - Log4CL is high performance extensible logging library for Common Lisp -
    • -
    • -log5 - - Log5 is a logging library organized around five things: categories, outputs, senders, messages and contexts -
    • -
    • -LoGS - - A programmable log analysis engine available under the terms of the GPL -
    • -
    • -logv - - Logv is a cognitively lightweight logging utility for Common Lisp -
    • -
    • -Verbose - - Verbose is a logging framework that aims to provide a good default setup as well as an extensible back-end to suit all your logging needs -
    • -
    • -vom - - A tiny logging library for Common Lisp -
    • -

    Documentation (main topic: documentation tool) -

      -
    • -Albert - - Albert is a Common Lisp doc-generator, comparable to Javadoc and Doxygen -
    • -
    • -argdoc - - simple package documentation library for common lisp -
    • -
    • -atdoc - - Atdoc generates documentation for Common Lisp packages -
    • -
    • -CL-API - - CL-API is a documentation tool that generates an API in HTML format, given a package name and reading docstrings -
    • -
    • -cl-docweaver - - A document weaver for Common Lisp -
    • -
    • -cl-gendoc - - cl-gendoc is a simple but flexible modular document generator for Common Lisp -
    • -
    • -CLDOC - - CLDOC reads lisp source files and generates documentation using the selected output driver -
    • -
    • -clod - - CLOD is a Common Lisp doc-generator, similar to Albert, Cldoc and so on -
    • -
    • -Declt - - Declt (pronounce "dec'let") is a reference manual generator for -
    • -
    • -docudown - - Docudown is a Lisp documentation tool built on top of CL-Markdown -
    • -
    • -documentation-template - - documentation-template is a documentation tool that automatically produces HTML documentation from the exported symbols of a package -
    • -
    • -hyperdoc - - Hyperdoc means mapping symbols to documentation URIs for libraries as well -
    • -
    • -hyperspec-lookup - - hyperspec-lookup is an ANSI Common Lisp library that gives the user an interface to mapping symbols to URLs for the Common Lisp Hyperspec and Common Lisp Object System (CLOS) MetaObject Protocol -
    • -
    • -incf-cl - - (INCF CL) is a collection of utilities -
    • -
    • -LispDoc - - LispDoc is a documentation tool (probably somewhat OpenMCL specific) that automatically generates HTML documentation for all symbols exported from one or more packages from their documentation strings -
    • -
    • -manifest - - Manifest is a documentation tool for semi-automatically documenting Common Lisp packages as a set of web pages, using the toot web server -
    • -
    • -MGL-PAX - - MGL-PAX is an exploratory programming environment and documentation generator -
    • -
    • -qbook - - qbook -
    • -
    • -sb-texinfo - - sb-texinfo was originally written for processing the SBCL docstrings by Rudi Sclatte in 2004, and has been maintained as part of SBCL since then -
    • -
    • -Staple - - A tool to generate documentation about Lisp projects through an HTML template -
    • -
    • -tinaa - - Tinaa is Not An Acronym -
    • -

    Version control software: (main topic: version control) -

    Literate programming systems: (main topic: literate programming) -

      -
    • -cl-org-mode has a tangle feature to do literate programming in org-mode. -
    • -
    • -literate-lisp provides tangle-free Org support for ASDF -
    • -
    • -CLWeb A literate programming system for Common Lisp. -
    • -
    • -MGL-PAX: A literate programming system turned inside out. -
    • -

    Miscellaneous -

      -
    • -Redshank refactoring and editing extensions to SLIME. -
    • -
    • -slime-lispunit for more convenient TDD with SLIME (see also this post). -
    • -
    • Matthias Holzl's Design by Contract package. -
    • -
    • -cl-heredoc - Common Lisp reader heredoc dispatcher, very useful for testing parsers -
    • -
    • -Step is a portable code single-stepper and debugger. -
    • -
    • -METERING is a portable code profiling tool, for gathering timing and consing statistics while a program is running. -
    • -
    • -Benchmarks: Benchmarking Suites can be used to compare different implementations. -
    • -

    Topic -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/dexador.html b/clones/lisp/www.cliki.net/dexador.html deleted file mode 100644 index 0a8246fb..00000000 --- a/clones/lisp/www.cliki.net/dexador.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Dexador - - - - - - - -
    Dexador
    Dexador is a high-performance HTTP client library with neat APIs and connection-pooling.

    https://github.com/fukamachi/dexador

    License: MIT

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/dialogue.html b/clones/lisp/www.cliki.net/dialogue.html deleted file mode 100644 index 0fe2a293..00000000 --- a/clones/lisp/www.cliki.net/dialogue.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: dialogue - - - - - - - -
    dialogue
    Dialogue is a Common Lisp tool to easy write GUI dialogs using the Java Standard Widget Toolkit (SWT) and Foil. It provides an abstract layer over the controls and layout capabilities found in SWT.

    Dialogue is portable as far as Foil and SWT are portable.

    It was written by Francis Leboutte.

    Homepage of Dialogue with examples, snapshots and documentation.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/dict.html b/clones/lisp/www.cliki.net/dict.html deleted file mode 100644 index 0e2e3afd..00000000 --- a/clones/lisp/www.cliki.net/dict.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: dict - - - - - - - -
    dict
    DICT is a hash table implementation. -It allows to use data structures with arbitrary hash-function and test-function.


    -Project page

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/diff-match-patch.html b/clones/lisp/www.cliki.net/diff-match-patch.html deleted file mode 100644 index 27239fb8..00000000 --- a/clones/lisp/www.cliki.net/diff-match-patch.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: diff-match-patch - - - - - - - -
    diff-match-patch
    This is a Common Lisp port of Neil Fraser's Diff, Match and Patch -library.

    Depends on: iterate, cl-ppcre

    Repository: https://github.com/agrostis/diff-match-patch

    License: Apache 2


    -string
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/diff.html b/clones/lisp/www.cliki.net/diff.html deleted file mode 100644 index 1c5060b4..00000000 --- a/clones/lisp/www.cliki.net/diff.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: diff - - - - - - - -
    diff
    DIFF is a simple text library which can compute unified-style or context-style diffs between two files. It also includes code to compute copy/insert deltas via the vdelta algorithm and encode those diffs in svndiff format. Other algorithms and encodings are planned for future versions. Version 0.4 includes a reader for "patch" files; an interface for applying patches is planned for future versions. Comments on the interface or wanted algorithms greatly appreciated.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/directory listing.html b/clones/lisp/www.cliki.net/directory listing.html deleted file mode 100644 index f18a7e66..00000000 --- a/clones/lisp/www.cliki.net/directory listing.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: directory listing - - - - - - - -
    directory listing
    FAQ: How do I list the contents of a directory? How do I tell if a pathname is a file or directory?

    Due to the fact that Common Lisp pathnames were designed to accommodate systems where the notion of files and directories may be radically different from the hierarchical Unix model (or might not even exist per se) this is implementation-dependent. Lucky for us CL-FAD exists to make this portable on Unix and Windows-like systems.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/dissect.html b/clones/lisp/www.cliki.net/dissect.html deleted file mode 100644 index 0a40c837..00000000 --- a/clones/lisp/www.cliki.net/dissect.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: dissect - - - - - - - -
    dissect
    Dissect is a small library for introspecting the call stack and active restarts.

    The project can be found on github including a fully documented symbol index and a getting started tutorial.
    -As of October 2014, dissect is on Quicklisp.

    Dissect is licensed under the Artistic License 2.0.


    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/distributed.html b/clones/lisp/www.cliki.net/distributed.html deleted file mode 100644 index 78788f6c..00000000 --- a/clones/lisp/www.cliki.net/distributed.html +++ /dev/null @@ -1,139 +0,0 @@ - - - - - CLiki: Distributed - - - - - - - -
    Distributed
    There are many systems for Distributed programming based on Common Lisp.

    -See Also:

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/djula.html b/clones/lisp/www.cliki.net/djula.html deleted file mode 100644 index 7f4d98ed..00000000 --- a/clones/lisp/www.cliki.net/djula.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: djula - - - - - - - -
    djula
    Djula is a Common Lisp port of the Django HTML template language. It also adds several new features documented on its homepage.

    Homepage: https://mmontone.github.io/djula/

    Repository: https://github.com/mmontone/djula

    Original author: Nick Allen


    -MIT-LICENSE
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/dlist.html b/clones/lisp/www.cliki.net/dlist.html deleted file mode 100644 index 71c08809..00000000 --- a/clones/lisp/www.cliki.net/dlist.html +++ /dev/null @@ -1,61 +0,0 @@ - - - - - CLiki: dlist - - - - - - - -
    dlist
    dlist is a Common Lisp library that implements the doubly-linked list -data structure. dlist provides many operations on doubly-linked lists, -or dlists, which are documented in the file documentation.html, which -is available with the source. If your lisp implementation supports -user-extensible sequences (which only SBCL and ABCL do -currently), you will be able to use the standard Common Lisp sequence -functions (map, reduce, etc.) with dlists. dlist does not have any -dependencies other than a common lisp implementation.

    Obtaining and installing dlist

    dlist is available from Github and can be installed via Quicklisp. To use dlist, simply load the ASDF system. Use:

    (asdf:oos 'asdf:test-op :dlist)

    to run the test suite.

    dlist is licensed under the 3-Clause BSD Licence, see the file COPYING -for details.

    Contact Information

    You can reach the author (Krzysztof Drewniak) at -krzysdrewniak@gmail.com. If you find any bugs, please report them at -dlist's GitHub issue tracker.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/do-backup.html b/clones/lisp/www.cliki.net/do-backup.html deleted file mode 100644 index 5071fe32..00000000 --- a/clones/lisp/www.cliki.net/do-backup.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: do-backup - - - - - - - -
    do-backup
    do-backup is a tool for performing backups on some regular basis on unix systems. -
    -https://developer.bazon.ru/hg/debian-lisp/do-backup/


    -system programming
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/docudown.html b/clones/lisp/www.cliki.net/docudown.html deleted file mode 100644 index 22870e7f..00000000 --- a/clones/lisp/www.cliki.net/docudown.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: docudown - - - - - - - -
    docudown
    Docudown is a Lisp documentation tool built on top of CL-Markdown. (Also requires moptilities.)

    Project page: https://common-lisp.net/project/docudown/ (repository is empty)

    Download docudown.tar.gz

    License: MIT

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/document format.html b/clones/lisp/www.cliki.net/document format.html deleted file mode 100644 index 3ae48710..00000000 --- a/clones/lisp/www.cliki.net/document format.html +++ /dev/null @@ -1,60 +0,0 @@ - - - - - CLiki: document format - - - - - - - -
    document format
    Libraries for preparing documents (PDF, TeX, etc.). See also HTML generators.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/document preparation.html b/clones/lisp/www.cliki.net/document preparation.html deleted file mode 100644 index 7f86df66..00000000 --- a/clones/lisp/www.cliki.net/document preparation.html +++ /dev/null @@ -1,128 +0,0 @@ - - - - - CLiki: document preparation - - - - - - - -
    document preparation
    Libraries for preparing documents (PDF, TeX, etc.). See also HTML generators.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/document.html b/clones/lisp/www.cliki.net/document.html deleted file mode 100644 index c7a23ab9..00000000 --- a/clones/lisp/www.cliki.net/document.html +++ /dev/null @@ -1,97 +0,0 @@ - - - - - CLiki: Document - - - - - - - -
    Document
    Books, articles, introductions, and summaries about Lisp. See also the Online Tutorials.

    -
    -Some more Lisp books available online:

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/documentation tool.html b/clones/lisp/www.cliki.net/documentation tool.html deleted file mode 100644 index 92f35b55..00000000 --- a/clones/lisp/www.cliki.net/documentation tool.html +++ /dev/null @@ -1,146 +0,0 @@ - - - - - CLiki: Documentation Tool - - - - - - - -
    Documentation Tool
    There are a number of tools to extract information from (possibly marked up) Common Lisp source code available:

      -
    • -Albert - - Albert is a Common Lisp doc-generator, comparable to Javadoc and Doxygen -
    • -
    • -argdoc - - simple package documentation library for common lisp -
    • -
    • -atdoc - - Atdoc generates documentation for Common Lisp packages -
    • -
    • -CL-API - - CL-API is a documentation tool that generates an API in HTML format, given a package name and reading docstrings -
    • -
    • -cl-docweaver - - A document weaver for Common Lisp -
    • -
    • -cl-gendoc - - cl-gendoc is a simple but flexible modular document generator for Common Lisp -
    • -
    • -CLDOC - - CLDOC reads lisp source files and generates documentation using the selected output driver -
    • -
    • -clod - - CLOD is a Common Lisp doc-generator, similar to Albert, Cldoc and so on -
    • -
    • -Declt - - Declt (pronounce "dec'let") is a reference manual generator for -
    • -
    • -docudown - - Docudown is a Lisp documentation tool built on top of CL-Markdown -
    • -
    • -documentation-template - - documentation-template is a documentation tool that automatically produces HTML documentation from the exported symbols of a package -
    • -
    • -hyperdoc - - Hyperdoc means mapping symbols to documentation URIs for libraries as well -
    • -
    • -hyperspec-lookup - - hyperspec-lookup is an ANSI Common Lisp library that gives the user an interface to mapping symbols to URLs for the Common Lisp Hyperspec and Common Lisp Object System (CLOS) MetaObject Protocol -
    • -
    • -incf-cl - - (INCF CL) is a collection of utilities -
    • -
    • -LispDoc - - LispDoc is a documentation tool (probably somewhat OpenMCL specific) that automatically generates HTML documentation for all symbols exported from one or more packages from their documentation strings -
    • -
    • -manifest - - Manifest is a documentation tool for semi-automatically documenting Common Lisp packages as a set of web pages, using the toot web server -
    • -
    • -MGL-PAX - - MGL-PAX is an exploratory programming environment and documentation generator -
    • -
    • -qbook - - qbook -
    • -
    • -sb-texinfo - - sb-texinfo was originally written for processing the SBCL docstrings by Rudi Sclatte in 2004, and has been maintained as part of SBCL since then -
    • -
    • -Staple - - A tool to generate documentation about Lisp projects through an HTML template -
    • -
    • -tinaa - - Tinaa is Not An Acronym -
    • -
    -There is a fairly extensive review covering many of these tools: https://sites.google.com/site/sabraonthehill/lisp-document-generation-apps/lisp-generation-apps-v1.

    Not on CLiki

      -
    • -TeX - style macros for formatting Lisp code.
    • -
    • -User Manual: Automatical User Manual Creation.
    • -
    • -VGrind/TGrind - entries for Common Lisp.
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/documentation-template.html b/clones/lisp/www.cliki.net/documentation-template.html deleted file mode 100644 index 3b3d35b3..00000000 --- a/clones/lisp/www.cliki.net/documentation-template.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: documentation-template - - - - - - - -
    documentation-template
    documentation-template is a documentation tool that automatically produces HTML documentation from the exported symbols of a package. It is written and used by Edi Weitz to make the webpages for his libraries.

    Homepage: http://weitz.de/documentation-template/

    License: BSD

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/documentation-utils.html b/clones/lisp/www.cliki.net/documentation-utils.html deleted file mode 100644 index b122fce1..00000000 --- a/clones/lisp/www.cliki.net/documentation-utils.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: documentation-utils - - - - - - - -
    documentation-utils
    This is a small library to help you with managing the docstrings for your library. It allows you to conveniently set the documentation for your definitions in an external block, to avoid cluttering the code with docstrings.

    The project can be found on github including a fully documented symbol index and a getting started tutorial.
    -As of March 2016, documentation-utils is on Quicklisp.

    Documentation-utils is licensed under the Artistic License 2.0.


    -convenience library utilities
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/documentation.html b/clones/lisp/www.cliki.net/documentation.html deleted file mode 100644 index db23a942..00000000 --- a/clones/lisp/www.cliki.net/documentation.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Documentation - - - - - - - -
    Documentation
    We also have Documents and Documentation tools.

    But documentation is cool too. Some things need more of it.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/doors.html b/clones/lisp/www.cliki.net/doors.html deleted file mode 100644 index 60785628..00000000 --- a/clones/lisp/www.cliki.net/doors.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: doors - - - - - - - -
    doors
    Doors is an attempt to bring essential features of MS Windows (such as basic Windows API, COM and OLE) into Common Lisp.

    It is a high-level FFI binding with a lisper-friendly interface. It can be obtained from Github here: https://github.com/Lovesan/doors.

    It uses Virgil as a back-end. It also depends on trivial-features, alexandria, trivial-garbage, closer-mop, and bordeaux-threads.


    Doors is also the name of an "embryonic" attempt at a window manager for McCLIM: https://github.com/admich/Doors.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/doplus.html b/clones/lisp/www.cliki.net/doplus.html deleted file mode 100644 index 190511b9..00000000 --- a/clones/lisp/www.cliki.net/doplus.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: doplus - - - - - - - -
    doplus
    doplus is a high-level, lispy, extensible iteration construct for Common Lisp. It is a replacement for the LOOP macro and mostly tries to solve the same problem as iterate.

    It was written by Alessio Stalla. It is available as open source from Quicklisp.

    Homepage: https://github.com/alessiostalla/doplus

    License: GPL-3.0-or-later

    Compared to iterate, it is designed to avoid the use of a code walker in its implementation. Also, it has a more traditional syntax inspired by that of DO, hence the name; i.e., it clearly separates the head of the form (which controls iteration) from the body.

    Iteration clauses in the head are simple macros; users can write their own very easily in terms of the existing ones, or using a lower-level API for complex cases. The few body-local macros have dummy top-level definitions. These two characteristics make doplus very SLIME-friendly both for built-in operators and user-defined ones (provided users follow the same guidelines).


    -language extension
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/dpans2texi.html b/clones/lisp/www.cliki.net/dpans2texi.html deleted file mode 100644 index 77de1597..00000000 --- a/clones/lisp/www.cliki.net/dpans2texi.html +++ /dev/null @@ -1,60 +0,0 @@ - - - - - CLiki: dpans2texi - - - - - - - -
    dpans2texi
    dpans2texi.el converts the TeX sources of the draft ANSI Common Lisp standard (dpANS) to Texinfo.

    The purpose is to take advantage of the superior qualities of the Info reader in Emacs compared with other formats, viz.

      -
    • Single-key index lookup with completion: i. -
    • -
    • Single-key full text regexp search: s -
    • -
    • Convenient symbol lookup from source code: C-h C-i -
    • -

    See https://github.com/xach/dpans for dpans sources.

    Has anybody compared the results with the manual supplied with GCL which -is also derived from the draft ANSI standard?


    -standards documentation document
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/drakma.html b/clones/lisp/www.cliki.net/drakma.html deleted file mode 100644 index 782e23db..00000000 --- a/clones/lisp/www.cliki.net/drakma.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: Drakma - - - - - - - -
    Drakma
    Drakma is a fully-featured Common Lisp HTTP client library that knows how to handle HTTP/1.1 -chunking, persistent connections, re-usable sockets, SSL, continuable -uploads, cookies, and other things.

    It was developed on LispWorks, but can be used with several other Common Lisp implementations as well.

    It's written by Edi Weitz and can be found at http://weitz.de/drakma/.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/dso-binary-class.html b/clones/lisp/www.cliki.net/dso-binary-class.html deleted file mode 100644 index b5e0b31b..00000000 --- a/clones/lisp/www.cliki.net/dso-binary-class.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: dso-binary-class - - - - - - - -
    dso-binary-class
    dso-binary-class allows you to declare classes with a specific binary disk layout, and then read and write instances easily.

    This is not really complete, you might be better off looking for other libraries in the serialization or database topics.


    -binary format
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/dso-csv.html b/clones/lisp/www.cliki.net/dso-csv.html deleted file mode 100644 index 14f25b3b..00000000 --- a/clones/lisp/www.cliki.net/dso-csv.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: dso-csv - - - - - - - -
    dso-csv
    A very simple parser for the CSV (comma-separated values) file format. It's slow, and the others are probably better.

    Topics: file format, CSV

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/dso-lex.html b/clones/lisp/www.cliki.net/dso-lex.html deleted file mode 100644 index 47cad7ef..00000000 --- a/clones/lisp/www.cliki.net/dso-lex.html +++ /dev/null @@ -1,60 +0,0 @@ - - - - - CLiki: dso-lex - - - - - - - -
    dso-lex
    Allows lexers to be defined using regular expressions a la cl-ppcre. A lexer will convert (or tokenize) a string into a list of tokens (consisting of a token-class and the token's image). For example:

    (defun snip (s) (subseq s 1 (1- (length s)))) - -(defun un-squote (s) (regex-replace-all "''" (snip s) "'")) -(defun un-dquote (s) (regex-replace-all "\"\"" (snip s) "\"")) - -(deflexer scan-csv (:priority-only t) - ("[^\"',]+" value) - ("'(?:[^']|'')*'" value un-squote) - ("\"(?:[^\"]|\"\")*\"" value un-dquote) - ("," comma))

    See the distribution for a more complete example.

    See the project page.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/dso-parse.html b/clones/lisp/www.cliki.net/dso-parse.html deleted file mode 100644 index 82d30759..00000000 --- a/clones/lisp/www.cliki.net/dso-parse.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: dso-parse - - - - - - - -
    dso-parse
    This is a simple PEG (parsing-expression grammar) parser-generator, aimed mostly at parsing text but capable of parsing other structures as well. A quick overview is available.

    This project was largely for my learning, but I do hope it's useful to someone (as a parser-generator). See the project's page for more information.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/dso-util.html b/clones/lisp/www.cliki.net/dso-util.html deleted file mode 100644 index 284e33ba..00000000 --- a/clones/lisp/www.cliki.net/dso-util.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: dso-util - - - - - - - -
    dso-util
    A small set of utilities, functions and macros, by David Owen.

    Most of these probably exist in some form in other places, in which case I would probably migrate to those others.

    Depends on: cl-ppcre

    Download: https://download.fugue88.ws/util/

    License: LGPL

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/dwim.hu.html b/clones/lisp/www.cliki.net/dwim.hu.html deleted file mode 100644 index c709b968..00000000 --- a/clones/lisp/www.cliki.net/dwim.hu.html +++ /dev/null @@ -1,64 +0,0 @@ - - - - - CLiki: dwim.hu - - - - - - - -
    dwim.hu
    dwim dot hu is the homepage of four Hungarian lispers who started a lisp company, hosting all their opensource projects. Until now their paying projects are only web based business applications written in Common Lisp using opensource components only.

    We have something like what people call an application server in other languages. In Lisp it's more like a bunch of libraries implementing various aspects of what application servers do in other languages.

    The dwim.hu site itself is running an instance of the codebase, and provides a detailed install script on how to start a local copy of the site.

    We are devoted to opensource, so all our libraries are freely available at dwim.hu darcsweb.

    Assorted list of features and/or libraries available: -

      -
    • -web framework and HTTP server(hu.dwim.web-server and hu.dwim.presentation)
    • -
    • Common Lisp partial evaluator
    • -
    • sql database connectivity (Oracle, PostgreSQL, SQLite; it's called hu.dwim.rdbms)
    • -
    • CLOS based Object Relational Mapper (hu.dwim.perec)
    • -
    • call/cc implementation (hu.dwim.delico)
    • -
    • Common Lisp code walker
    • -
    • constraint based change propagation (hu.dwim.computed-class; a rewrite of cells)
    • -
    • interactive test framework (hu.dwim.stefil)
    • -
    • object serializer
    • -
    • ...
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/dynamic-classes.html b/clones/lisp/www.cliki.net/dynamic-classes.html deleted file mode 100644 index 0d81bf81..00000000 --- a/clones/lisp/www.cliki.net/dynamic-classes.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: dynamic-classes - - - - - - - -
    dynamic-classes
    Lets you specify CLOS classes (e.g., as arguments to make-instance) using parameters at run-time, letting you use mixins more conveniently.

    Homepage: http://common-lisp.net/project/dynamic-classes/

    Source repository: git://github.com/gwkkwg/dynamic-classes

    License: BSD


    -Topics: language extension
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/eager-future.html b/clones/lisp/www.cliki.net/eager-future.html deleted file mode 100644 index 263f3ec4..00000000 --- a/clones/lisp/www.cliki.net/eager-future.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: eager-future - - - - - - - -
    eager-future
    Eager Future has been superseded by Eager Future2


    -obsolete
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/easyweb.html b/clones/lisp/www.cliki.net/easyweb.html deleted file mode 100644 index 48ad0546..00000000 --- a/clones/lisp/www.cliki.net/easyweb.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: easyweb - - - - - - - -
    easyweb
    easyweb is a Django-like web framework for Common Lisp.

    Homepage: https://github.com/asdr/easyweb

    License: BSD

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/eazy-gnuplot.html b/clones/lisp/www.cliki.net/eazy-gnuplot.html deleted file mode 100644 index 2d1efde3..00000000 --- a/clones/lisp/www.cliki.net/eazy-gnuplot.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: eazy-gnuplot - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ebnf-parser.html b/clones/lisp/www.cliki.net/ebnf-parser.html deleted file mode 100644 index f812ad5e..00000000 --- a/clones/lisp/www.cliki.net/ebnf-parser.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: ebnf-parser - - - - - - - -
    ebnf-parser
    An EBNF (ISO/IEC 14977) parser generator.

    Repository: https://github.com/thezerobit/ebnf-parser

    License: BSD 2-Clause

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ecl-readline.html b/clones/lisp/www.cliki.net/ecl-readline.html deleted file mode 100644 index 88fa41e7..00000000 --- a/clones/lisp/www.cliki.net/ecl-readline.html +++ /dev/null @@ -1,62 +0,0 @@ - - - - - CLiki: ecl-readline - - - - - - - -
    ecl-readline
    A simple binding to GNU Readline console library for ECL (Embeddable Common Lisp) providing command line editing, symbol completion, history file and history size configuration.

    Home page: https://common-lisp.net/project/ecl-readline/


    I'm not seeing my message appear on the ecl-readline mailinglist so I'll just paste the info here. To get ecl-readline 0.4.1 to compile with ECL 10.4.1 when the latter is configured --with-cxx I had to make the following changes:

    In ecl-readline.lisp line 47:
    -
    -    added: (ffi:clines "#ifdef __cplusplus"
    -                       "#include <cstdlib>"
    -                       "#endif")
    -
    -below the line "(ffi:clines "#include <readline/history.h>")".
    -
    -In ecl-completions.lisp line 71:
    -
    -    was: g_completions = malloc(#0 * sizeof(char*) + 1);
    -    now: g_completions = (char**)malloc(#0 * sizeof(char*) + 1);

    I think the last line is legal C, but I haven't tested it.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ecl.html b/clones/lisp/www.cliki.net/ecl.html deleted file mode 100644 index 7d192770..00000000 --- a/clones/lisp/www.cliki.net/ecl.html +++ /dev/null @@ -1,57 +0,0 @@ - - - - - CLiki: ECL - - - - - - - -
    ECL
    Embeddable Common Lisp, a member of the KCL Family, is a Common Lisp implementation initially developed by Giuseppe Attardi, maintained for many years by Juan Jose Garcia-Ripoll and currently maintained by Daniel Kochmański. ECL is the successor to EcoLisp).

    It is a small but complete implementation which features a very small bytecode interpreter, compilation via C, generation of standalone executables and DLLs, loadable binary files, CLOS, CLX, sockets, and more... The areas that need work are

      -
    • improving the extensions -
    • -
    • improving the compiler and the performance -
    • -
    -Project page is located at https://common-lisp.net/project/ecl/. ECL runs on Linux, FreeBSD, NetBSD, OpenBSD, Windows (Using Mingw and Microsoft Visual C++), MacOS X/Darwin (x86 and PPC) and Solaris (x86 and Sparc). It supports threads on all operating systems. Experimental builds for Android, NaCL and iOS exist.

    I compiled it using mingw gcc under win32. threading also works under win32 making it the best free common lisp implementation available on that platform.

    There is also a FreeBSD port to install it from and an X-Chat Common Lisp Plugin.

    A package for NetBSD is available via pkgsrc.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/eclipse.html b/clones/lisp/www.cliki.net/eclipse.html deleted file mode 100644 index 6c55f4e7..00000000 --- a/clones/lisp/www.cliki.net/eclipse.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: eclipse - - - - - - - -
    eclipse
    Eclipse is an X11 window manager written entirely in Common Lisp.

    Originally created by a group of students of the 4th year CS program in Bordeaux as part of their their second-semester programming project, it's now being developed further as a free software application.

    Homepage: http://common-lisp.net/project/eclipse

    License: ???

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/eco.html b/clones/lisp/www.cliki.net/eco.html deleted file mode 100644 index 1a26d099..00000000 --- a/clones/lisp/www.cliki.net/eco.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: eco - - - - - - - -
    eco
    Eco is a HTML template library where every tag is pure Common Lisp code (by the author of Lucerne, Crane, Ceramic,…).
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/editor hints.html b/clones/lisp/www.cliki.net/editor hints.html deleted file mode 100644 index 39b3adac..00000000 --- a/clones/lisp/www.cliki.net/editor hints.html +++ /dev/null @@ -1,67 +0,0 @@ - - - - - CLiki: Editor Hints - - - - - - - -
    Editor Hints
    The Editor Hints system is intended to provide a number of facilities to provide hints in lisp code that can be consulted by editor interfaces to determine how to indent, etc.

    The common-lisp.net project page is here.

    Planned components: -

      -
    • -named-readtables (done) -
    • -
    • facility to specify how forms are supposed to be indented -
    • -
    • Documentation retrieval (this became hyperdoc) -
    • -
    • support for using markup in docstrings -
    • -
    • First class source locations -
    • -
    • functions to query the programmer for input -
    • -


    -development
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/editor-hints.html b/clones/lisp/www.cliki.net/editor-hints.html deleted file mode 100644 index 78103f3b..00000000 --- a/clones/lisp/www.cliki.net/editor-hints.html +++ /dev/null @@ -1,62 +0,0 @@ - - - - - CLiki: editor-hints - - - - - - - -
    editor-hints
    The estimable Tobias C Rittweiler is working to develop a CL library called editor hints that aims at giving a portable facility for a Lisp implementation to tell the development environment things about its state. He writes:

    -     Lisp  has traditionally  been  a very  interactive language.  Yet
    -Common  Lisp doesn't specify  much with  respect to  interplay between
    -language and (user) environment. The specification does contain a very
    -humble  Environment  chapter  that  inclusion  was  supported  by  the
    -standardization  commitee  to signal  the  message that  environmental
    -interactivity is wished for.
    -
    -Editor-hints  is  supposed to  become  an  interface between the
    -language Common Lisp and Lisp development environments.
    -

    Find the common-lisp.net project here: https://common-lisp.net/project/editor-hints/

    The canonical page for this topic is Editor Hints


    -common-lisp.net compatibility layers
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ediware.html b/clones/lisp/www.cliki.net/ediware.html deleted file mode 100644 index a2cb0165..00000000 --- a/clones/lisp/www.cliki.net/ediware.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: ediware - - - - - - - -
    ediware
    Ediware is a darcs mirror of Edi Weitz's libraries, maintained and updated by Luís­ Oliveira using the downloadable release tarballs at http://common-lisp.net/~loliveira/ediware/. (Obsolete; last updated in 2011.)
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/electronics.html b/clones/lisp/www.cliki.net/electronics.html deleted file mode 100644 index 04fe75e7..00000000 --- a/clones/lisp/www.cliki.net/electronics.html +++ /dev/null @@ -1,76 +0,0 @@ - - - - - CLiki: Electronics - - - - - - - -
    Electronics
    Tools for electronics design and signal processing.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/elisp.html b/clones/lisp/www.cliki.net/elisp.html deleted file mode 100644 index 8c08eb59..00000000 --- a/clones/lisp/www.cliki.net/elisp.html +++ /dev/null @@ -1,108 +0,0 @@ - - - - - CLiki: elisp - - - - - - - -
    elisp
    Emacs Lisp

    A dialect of Lisp used by the Emacs text editor. -It includes hordes of functions directed to (go figure) editing text.

    Perhaps it is a common route into the Lisp world, since anyone who gets to know Emacs will be exposed to it? Hackers naturally will start hacking, and it does seem to be hack-friendly - at least on the surface.

    (Elisp was also the name of a Lisp dialect by Chuck Hedrick (and others?) -at Rutgers University. It ran on DEC-20 machines.)


    While there are extensions that add Common-Lisp-like functionality to it, it is quite distinct from Common Lisp. In particular it is dynamically scoped rather than lexically scoped. This can cause large amounts of confusion for programmers used to lexical scoping as in Common Lisp. (One reason for this dynamic scoping is said to be that RMS felt it would be easier to write editing code with dynamic scoping. Some people suppose that the real reason was political; to be incompatible with the emerging work on Common Lisp.)

    -Taken from Lisp newbie since I would like to digress,

    [...] I'm hacking elisp because it's nearest and most convenient. I discover it doesn't implement #'func in any meaningful way, given what I've seen of On Lisp and CMUCL.

    emacs-lisp is bad for your health

    Can you enumerate? So is driving to work, but the C-x C-e thing is very handy. Should I get a "proper lisp IDE"? I like Emacs. 8-(

    Try ILISP (or SLIME, which has probably replaced ILISP for most people) - it's an emacs mode for real lisp, and very nearly as handy as the builtin lisp interaction mode

      -
    • elisp has dynamic scope as above, and this can cause headaches -
    • -
    • elisp's symbols are case sensitive (This seems good to me. Why does CL waste time doing stricmp when strcmp is a smidge faster?) -
      CL's symbols are case-sensitive too. It's just that the reader upper-cases everything by default. Try (eq '|abc| 'abc) sometime. -
      Uppercase in the English sense - in turkish, the uppercase of 'i' is not 'I' -
    • -
    • elisp at v21.2 does not implement tail recursion, but this is merely an efficiency problem. Doesn't stop you writing TR-able code. -
    • -
    • elisp has no package system, which causes namespacing issues. You might counter that this `doesn't bite you until you have a large program', but you're sharing that namespace with all the other lisp in emacs, and emacs already is a large program ... Currently, packages solve that by prepending [packagename]- before their identifiers. Emacs hackers are used to having very long identifiers to type. -
    • -
    • elisp has sucky arithmetic: no bignums, no rationals, silent overflow. (/ 6 4) => 1 - what's with that?
      -Looks like an int to me. That won't bother the C programmers, but I can see it's much less neat than returning 3/2. -
    • -
    • elisp has sucky GC too, from what I understand
    • -


    -Emacs Wiki: https://www.emacswiki.org/

    Despite the long list of technical imperfections, I find programming in Emacs Lisp extremely pleasant. There is some very neat interaction between the language and the editor. For example, if you are using Emacs buffers as "network buffers" (i.e. containing data for you to decode), then you can do nice things like single-step code in the debugger while watching how the point moves around in the network buffer containing a message you're decoding. I love it! -- LukeGorrie

    Search: -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/emacs-cl.html b/clones/lisp/www.cliki.net/emacs-cl.html deleted file mode 100644 index e6ef8b7f..00000000 --- a/clones/lisp/www.cliki.net/emacs-cl.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: emacs-cl - - - - - - - -
    emacs-cl
    Emacs Common Lisp is a Common Lisp implementation written in Emacs Lisp. That means you can run Common Lisp programs in Emacs, and you can write Emacs extensions in Common Lisp. At this stage, much of ANSI Common Lisp is implemented, but, among other things, CLOS and pretty printing are missing. [2019-06-17: Links to mailing list are broken.]
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/emacs.html b/clones/lisp/www.cliki.net/emacs.html deleted file mode 100644 index 6e179201..00000000 --- a/clones/lisp/www.cliki.net/emacs.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Emacs - - - - - - - -
    Emacs
    Emacs is the One True Editor. It has a fairly long history for a computer program, having begun from a large pile of community-developed macros written in ITS TECO (which stood for 'Tape/Text Editor and Corrector'). The implementation used on the original Lisp Machines was called EINE, for 'EINE Is Not EMACS'. The second version of EINE on the Lisp Machines was known as ZWEI, for 'ZWEI Was Eine Initially'. These are also version numbers in German. These Emacsen were written in Lisp out of necessity, not out of choice, since ZetaLisp was the systems programming language on the Lisp Machines.

    Another implementation of Emacs, called Multics Emacs (since it ran on Multics), innovated the notion of using Lisp as the programming language for implementing Emacs. The version of Emacs implemented by James Gosling (commonly known as Gosmacs) came directly from Multics Emacs. Richard Stallman's GNU Emacs has Gosmacs as its ancestor, and from GNU Emacs came XEmacs. Most Common Lisp systems implement their own idiosyncratic and non-portable Emacs, such as CMUCL's Hemlock.

    For an extensive collection of information about various Emacs implementations see Craig Finseth's Emacs Implementations and Literature. Craig Finseth also has an excellent treatise on the implementation of Emacs-like editors available for free in HTML format, The Craft of Text Editing. It is required reading for any Emacs implementor.

    Work is very slowly progressing to design a portable Emacs based on Common Lisp, (and maybe even CLIM) rather than the idiosyncratic and aging Emacs Lisp dialect, elisp, that all Emacsen deriving from GNU Emacs use. Take a look at CL-Emacs for more information.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/email.html b/clones/lisp/www.cliki.net/email.html deleted file mode 100644 index 3309bbee..00000000 --- a/clones/lisp/www.cliki.net/email.html +++ /dev/null @@ -1,144 +0,0 @@ - - - - - CLiki: email - - - - - - - -
    email
    Libraries and applications for sending/retrieving/dealing with email.

      -
    • -Allegro Maild - - Allegro Maild is an SMTP email server written in Common Lisp -
    • -
    • -cl-icalendar - - An implementation of the iCalendar (RFC 5545) file format -
    • -
    • -cl-pop - - CL-POP is a lisp networking library that provides a POP email client based on RFC 1939 -
    • -
    • -CL-Sendmail - - CL-Sendmail is a library for sending email using the external program 'sendmail' -
    • -
    • -CL-SES4 - - AWS SES email sender using Signature Version 4 of Amazon's API -
    • -
    • -CL-SMTP - - CL-SMTP is an SMTP (RFC 5321) client -
    • -
    • -clonsigna - - Clonsigna is a Common Lisp library that allows interaction with IMAP4rev1 servers -
    • -
    • -CLPMR - - CLPMR is the Common Lisp ProcMail Replacement -
    • -
    • -cocoa-mail - - cocoa-mail is a basic interface for OpenMCL on Mac OS X to the Cocoa Mail infrastructure -
    • -
    • -de.setf.utility - - de setf utility is a collection of Common Lisp utilities functions and several purpose-specific libraries -
    • -
    • -Demyltify - - Demyltify is a library that lets you write Sendmail email filters (milters) in Common Lisp -
    • -
    • -esmtp-client - - esmtp-client is a library for sending email via SMTP according to RFC 6409 -
    • -
    • -imap - - imap is a client library for Allegro CL for sending and receiving email with support for POP, IMAP and SMTP -
    • -
    • -jarw-inet - - jarw-inet supports several Internet networking Standards including writing servers and clients, http, smtp, nntp protocols, header parsing, mime decoding -
    • -
    • -macho - - Macho is an email web archiving system, similar in scope to pipermail or mhonarc -
    • -
    • -MARCH - - MArch is a daemon program that saves email going through a mail server into a database -
    • -
    • -mel-base - - mel-base is a library for handling email with support for Maildir, POP3, IMAP and SMTP folders -
    • -
    • -org-davep-newsrc - - org-davep-newsrc is a Common Lisp library that provides a couple of classes for reading a Unix Usenet newsrc file -
    • -
    • -org-davep-nntp - - org-davep-nntp is a Common Lisp library for talking to an NNTP (RFC 3977) server -
    • -
    • -rfc2822 - - Text email as defined in RFC 2822 -
    • -
    • -smta - - smta is a simple SMTP email server -
    • -
    • -smtp4cl - - SMTP4CL is a SMTP client library to send messages to an MTA (Mail Transport Agent) -
    • -
    • -trivial-email-utf-8 - - trivial-email-utf-8 is like CL-SMTP's send-mail, but qprints any Unicode characters in the message title or content and includes the appropriate headers if necessary -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/embeddable-maxima.html b/clones/lisp/www.cliki.net/embeddable-maxima.html deleted file mode 100644 index 627afa2c..00000000 --- a/clones/lisp/www.cliki.net/embeddable-maxima.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: embeddable-maxima - - - - - - - -
    embeddable-maxima
    embeddable-maxima is the fork of Maxima CAS to make it embeddable into common lisp application.

    Source code: -https://github.com/bld/embeddable-maxima

    Author of some changes: Michael Filonenko

    See also: Maxima and maxima-json-rpc.


    -Mathematics
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/embedded.html b/clones/lisp/www.cliki.net/embedded.html deleted file mode 100644 index 515dbf87..00000000 --- a/clones/lisp/www.cliki.net/embedded.html +++ /dev/null @@ -1,80 +0,0 @@ - - - - - CLiki: embedded - - - - - - - -
    embedded
    Code for dealing with embedded systems. You also might want to check system programming.

      -
    • -Apple II archaeology - - Apple II archaeology is a collection of Lisp code useful for Apple II retrocomputing -
    • -
    • -Arduino Lisp - - Arduino Lisp is a compiler from a subset of Common Lisp to the subset of C++ used by the Arduino C++ compiler -
    • -
    • -arduino-experiments - - arduino-experiments is a library for interfacing to the Arduino embedded computer via serial I/O from Lisp -
    • -
    • -cl-larval - - S-Exp syntax to write assembler for AVR microcontrollers -
    • -
    • -cluck - - Cluck is a Common Lisp library written by Kevin Rosenberg for assisting in configuring timers on microcontroller chips -
    • -
    • -common-db - - common-db is a programmable debugging substrate, mostly geared to driving target devices by establishing control via on-chip debugging machinery through a JTAG (IEEE 1149.1) external port -
    • -
    • -uLisp - - uLisp is an embedded Lisp for microcontrollers, supporting Arduino, Adafruit M0/M4, Micro:bit, ESP8266/32, and RISC-V boards -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/enchant.html b/clones/lisp/www.cliki.net/enchant.html deleted file mode 100644 index 9c86b7c8..00000000 --- a/clones/lisp/www.cliki.net/enchant.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Enchant - - - - - - - -
    Enchant
    An interface for Enchant spell-checker library

    CL Enchant is a Common Lisp interface for the Enchant spell-checker library. Enchant is a generic spell-checker library which uses other spell-checkers transparently as back-end. For more information see the project's page: CL Enchant.

    Tags: Library, Text, Public Domain

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/enhanced-boolean.html b/clones/lisp/www.cliki.net/enhanced-boolean.html deleted file mode 100644 index ef0fb2d0..00000000 --- a/clones/lisp/www.cliki.net/enhanced-boolean.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: enhanced-boolean - - - - - - - -
    enhanced-boolean
    enhanced-boolean provides a canonical way of converting generalized booleans to booleans.

    See the project's home for all details.


    -Unlicense, Public Domain
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/enhanced-defclass.html b/clones/lisp/www.cliki.net/enhanced-defclass.html deleted file mode 100644 index a9c8cd06..00000000 --- a/clones/lisp/www.cliki.net/enhanced-defclass.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: enhanced-defclass - - - - - - - -
    enhanced-defclass
    enhanced-defclass provides a truly extensible version of DEFCLASS that can accurately control the expansion according to the metaclass and automatically detect the suitable metaclass by analyzing the DEFCLASS form.

    See the project's home for all details.


    -Unlicense, Public Domain
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/enhanced-eval-when.html b/clones/lisp/www.cliki.net/enhanced-eval-when.html deleted file mode 100644 index 9713f359..00000000 --- a/clones/lisp/www.cliki.net/enhanced-eval-when.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: enhanced-eval-when - - - - - - - -
    enhanced-eval-when
    enhanced-eval-when provides an enhanced eval-when macro that supports (eval-when t ...) as a shorthand for (eval-when (:compile-toplevel :load-toplevel :execute) ...), addressing concerns about verbosity. An enhanced-eval-when alias is also supported, as well as an eval-always macro and package nickname, for good measure.

    As eval-when with all situations specified is used an overwhelming majority of the time by most users, these shorthands can really come handy.

    See the project's home for all details.


    -convenience library, Unlicense, Public Domain
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/enhanced-find-class.html b/clones/lisp/www.cliki.net/enhanced-find-class.html deleted file mode 100644 index 4451dc63..00000000 --- a/clones/lisp/www.cliki.net/enhanced-find-class.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: enhanced-find-class - - - - - - - -
    enhanced-find-class
    enhanced-find-class provides a canonical way of converting class designators to classes.

    See the project's home for all details.


    -Unlicense, Public Domain
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/enhanced-multiple-value-bind.html b/clones/lisp/www.cliki.net/enhanced-multiple-value-bind.html deleted file mode 100644 index 4c58f2f7..00000000 --- a/clones/lisp/www.cliki.net/enhanced-multiple-value-bind.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: enhanced-multiple-value-bind - - - - - - - -
    enhanced-multiple-value-bind
    enhanced-multiple-value-bind provides an enhanced multiple-value-bind macro that adds support for lambda list keywords by expanding to a multiple-value-call when necessary. This makes catching multiple-value &rest and &key much more lightweight and convenient. A multiple-value-&bind alias is supported.

    See the project's home for all details.


    -convenience library, Unlicense, Public Domain
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/enhanced-typep.html b/clones/lisp/www.cliki.net/enhanced-typep.html deleted file mode 100644 index 727c92bd..00000000 --- a/clones/lisp/www.cliki.net/enhanced-typep.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: enhanced-typep - - - - - - - -
    enhanced-typep
    enhanced-typep obsoletes all TYPEP thin wrappers.

    See the project's home for all details.


    -Unlicense, Public Domain
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/eql.html b/clones/lisp/www.cliki.net/eql.html deleted file mode 100644 index 790f135b..00000000 --- a/clones/lisp/www.cliki.net/eql.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: EQL - - - - - - - -
    EQL
    EQL is Embedded Qt Lisp, a Qt4/Qt5 GUI library binding embedded in ECL. It features no external dependencies (Lisp/C++ libraries/parsers, that is, the binding is fully self-contained), supports overriding virtual Qt functions, translations (Qt Linguist), and loading UI files (Qt Designer).

    Additionally, it can easily be embedded in Qt4/C++ applications.

    Hosted on GitLab, see Repo, Wiki

    There is also a Qt5 version, see: Repo, Wiki; worthwhile to mention is the integration with QML, including some interesting examples, as Lisp and QML play very nice together.

    There is also an android and an iOS port of it, which works with both QML and traditional QWidgets, see EQL5-Android and EQL5-iOS.

    License: MIT

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/erlangen.html b/clones/lisp/www.cliki.net/erlangen.html deleted file mode 100644 index 9e6206d3..00000000 --- a/clones/lisp/www.cliki.net/erlangen.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: erlangen - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/esa.html b/clones/lisp/www.cliki.net/esa.html deleted file mode 100644 index c8114a90..00000000 --- a/clones/lisp/www.cliki.net/esa.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: esa - - - - - - - -
    esa
    ESA is a layer atop CLIM functionality to provide an Emacs-Style Application framework. Currently, it provides support for a top-level application loop, commands including numeric arguments, nested command tables (for key sequences), keyboard macros, buffer management, filesystem interaction, and support for self-documenting applications. It was developed initially for Climacs, a Common Lisp Emacs, but other McCLIM applications such as Gsharp and a CLIM file manager also use portions of its functionality.

    ESA is bundled with McCLIM, it is no longer a standalone system.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/esmtp-client.html b/clones/lisp/www.cliki.net/esmtp-client.html deleted file mode 100644 index a7cdb312..00000000 --- a/clones/lisp/www.cliki.net/esmtp-client.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: esmtp-client - - - - - - - -
    esmtp-client
    esmtp-client is a library for sending email via SMTP according to RFC 6409.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/esrap-liquid.html b/clones/lisp/www.cliki.net/esrap-liquid.html deleted file mode 100644 index 057f7c72..00000000 --- a/clones/lisp/www.cliki.net/esrap-liquid.html +++ /dev/null @@ -1,57 +0,0 @@ - - - - - CLiki: esrap-liquid - - - - - - - -
    esrap-liquid
    ESRAP-LIQUID -- more lispy packrat parser generator for Common Lisp, than ESRAP

    Main features not found in original ESRAP include: -

      -
    • ability to use full CL inside definition of rules -
    • -
    • full support of context-sensitive grammars, e.g. context-sensitive caching -
    • -

    Homepage: https://github.com/mabragor/esrap-liquid

    Still, it may be useful to also read documentation of original ESRAP.

    License: GPL

    parser generator

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/esrap-peg.html b/clones/lisp/www.cliki.net/esrap-peg.html deleted file mode 100644 index b8a80ccc..00000000 --- a/clones/lisp/www.cliki.net/esrap-peg.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: esrap-peg - - - - - - - -
    esrap-peg
    Esrap-PEG is a parser generator; it takes files with portable (language-agnostic) PEG notation and produces Esrap rules to parse this grammar. It also has some utility code for processing resulting ASTs.

    https://github.com/fb08af68/esrap-peg


    -MIT-LICENSE
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/esrap.html b/clones/lisp/www.cliki.net/esrap.html deleted file mode 100644 index 3619e7f2..00000000 --- a/clones/lisp/www.cliki.net/esrap.html +++ /dev/null @@ -1,61 +0,0 @@ - - - - - CLiki: ESRAP - - - - - - - -
    ESRAP
    A packrat parser for Common Lisp

    In addition to regular Packrat / Parsing Grammar / TDPL features ESRAP -supports:

      -
    • dynamic redefinition of nonterminals -
    • -
    • inline grammars -
    • -
    • semantic predicates -
    • -
    • introspective facilities -
    • -

    Homepage: GitHub Pages

    Repository: GitHub

    License: BSD

    See Also: esrap-peg, esrap-liquid, parseq

    Topics: Text

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/evaled-when.html b/clones/lisp/www.cliki.net/evaled-when.html deleted file mode 100644 index 183745f5..00000000 --- a/clones/lisp/www.cliki.net/evaled-when.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: evaled-when - - - - - - - -
    evaled-when
    evaled-when provides a way of extracting and replicating the compile-time side-effects of forms.

    See the project's home for all details.


    -Unlicense, Public Domain
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/evol.html b/clones/lisp/www.cliki.net/evol.html deleted file mode 100644 index ca34f439..00000000 --- a/clones/lisp/www.cliki.net/evol.html +++ /dev/null @@ -1,101 +0,0 @@ - - - - - CLiki: evol - - - - - - - -
    evol
    evol - entrenched virtues of lisp (love reversed) aims to be a compatible and full-fledged replacement for the GNU autotools stack targeted at coping with the autotools' shortcomings while not repeating the mistakes made and still being made at comparable build tool projects.

    It is under development, still has a long way to go and its top-level API is still a moving target but what exists is well-documented and mostly covered by an extensive Stefil-based test suite. Other libraries currently in use are CL-FAD, external-program, Alexandria, CL-PPCRE, unix-options, Bordeaux-Threads and patron. Right now, only SBCL is supported though.

    One interesting thing you can already do with evol is: -

    -sh$ cat >> Evolution <<EOF
    -(default "my-lisp-program")
    -(devolution "my-lisp-program" ()
    -            :type 'cl-exe :rule (list ':mlp)
    -            :init-package :mlp
    -            :toplevel (quote #'repl) :purify t)
    -EOF
    -sh$ evol
    -(sbcl --noinform --disable-debugger --eval (REQUIRE 'ASDF) --eval
    - (ASDF:OOS 'ASDF:LOAD-OP :MLP) --eval (IN-PACKAGE :MLP) --eval
    - (SB-EXT:SAVE-LISP-AND-DIE "my-lisp-program" :EXECUTABLE T :TOPLEVEL #'REPL
    -  :PURIFY T))
    -(...)
    -[undoing binding stack and other enclosing state... done]
    -[saving current Lisp image into evol:
    -writing 3432 bytes from the read-only space at 0x01000000
    -writing 2256 bytes from the static space at 0x01100000
    -writing 32178176 bytes from the dynamic space at 0x09000000
    -done]
    -(chmod +x my-lisp-program)
    --rwxr-xr-x. 1 foo users 32391196 2009-11-15 20:48 my-lisp-program
    -

    And basic stuff not requiring autoconf-like functionality does also work: -

    -cat >> Evolution <<EOF
    -(defenv cc "cc")
    -(default "main")
    -
    -(devolution "main" ("objects") :type 'program :rule "%cc %&lt; -o %@"
    -            :sourcefn #'(lambda (target modifier)
    -                          (declare (ignore target modifier))
    -                          (getenv "objects")))
    -
    -(devolution "objects" () :type 'hive :of 'generic :spawn '("main.o" "program.o")
    -            :rule "%cc ${CFLAGS} -c -o %@ %&lt;"
    -            :sourcefn #'(lambda (target modifier)
    -                          (declare (ignore modifier))
    -                          (pathname-change-suffix "c" target)))
    -
    -(devolution "clean" () :type 'generic :rule "rm -f %objects %main")
    -EOF
    -sh$ evol -j 3
    -(cc -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i686 -mtune=atom -fasynchronous-unwind-tables -c -o main.o main.c)
    -(cc -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i686 -mtune=atom -fasynchronous-unwind-tables -c -o program.o program.c)
    -(cc main.o program.o -o main)
    -(chmod +x main)
    -sh$ evol clean
    -(rm -f main.o program.o main)
    -

    Appealing enough? :) -The author, Alexander Kahl, hopes this could also pull in more people to the wonderful world of Lisp(s).

    The link to the git repository is available from Github.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/executor.html b/clones/lisp/www.cliki.net/executor.html deleted file mode 100644 index 3e1bb763..00000000 --- a/clones/lisp/www.cliki.net/executor.html +++ /dev/null @@ -1,62 +0,0 @@ - - - - - CLiki: executor - - - - - - - -
    executor
    executor is a portability layer for external executable invocation.

    Features include: -

      -
    • a Lisp-like, layered interface -
    • -
    • stdio stream control -
    • -
    • construction of Unix process pipelines -
    • -
    • exit code handling -
    • -

    Homepage: https://github.com/deepfire/executor/

    License: LGPL

    Author: Samium Gromoff

    See also: external-program


    -system programming
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/exifinfo.html b/clones/lisp/www.cliki.net/exifinfo.html deleted file mode 100644 index c05155cf..00000000 --- a/clones/lisp/www.cliki.net/exifinfo.html +++ /dev/null @@ -1,56 +0,0 @@ - - - - - CLiki: exifinfo - - - - - - - -
    exifinfo
    exifinfo.lisp is a utility to read EXIF data from image files. This version has been updated to work with SBCL.

    Other programs for this task are:

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/exit-hooks.html b/clones/lisp/www.cliki.net/exit-hooks.html deleted file mode 100644 index ea9bc1d3..00000000 --- a/clones/lisp/www.cliki.net/exit-hooks.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: exit-hooks - - - - - - - -
    exit-hooks
    exit-hooks is a portable layer for calling given function when Lisp exit. Currently it support SBCL, CCL, ECL, ABCL, CLisp and AllegroCL

    Homepage: github.com/ailisp/exit-hooks


    -system programming
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/exscribe.html b/clones/lisp/www.cliki.net/exscribe.html deleted file mode 100644 index f7d3de91..00000000 --- a/clones/lisp/www.cliki.net/exscribe.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - CLiki: Exscribe - - - - - - - -
    Exscribe
    Exscribe is a CL-based document authoring tool in the spirit of Manuel Serrano's Scribe.

    Current Exscribe features (as of version 0.94.2) include: output to HTML or PDF, good support for HTML footnotes (endnotes only on PDF backend), ok support for table-of-contents and bibliography, and most importantly, programmability.

    All that in a way largely compatible with Manuel Serrano's Scribe (given a published abstraction layer). -These feature are few, but useful enough so that I (Fare Rideau) use Exscribe for all the pages I write.

    Currently missing (intended future) features include: a better cl-typesetting backend (work in progress), Markdown/ReST/TeX syntax in addition/complement/combination with the Scribble syntax, cl-bibtex bridge, graphics, boxes, orphans, styles, etc.

    Unlike most other document authoring systems, Exscribe is programmable: I casually compute content on-the-fly within documents. -However, unlike the only widespread programmable document authoring system, namely (La)TeX, it's programmable in a decent language, namely Lisp.

    Exscribe is directly inspired by Manuel Serrano's Scribe, and largely compatible with it. Actually, I use Exscribe as a drop-in replacement for Scribe, within the strictures of my programming style: with a small abstraction layer, my Scribe files run with both Scribe and Exscribe, with similar output as seen with a web browser (the output of Exscribe is actually cleaner).

    I use Exscribe with Scribble syntax, but it is trivial to translate from your usual SEXP syntax, and there is a builtin mechanism to allow for arbitrary text filters (so you could embed a Markdown syntax within Exscribe documents).

    I used to use Scribe, but Scribe was discontinued in favor of the slightly incompatible Skribe. Instead of learning Skribe and migrating my documents to it, and continue to cope with a few small limitations that really annoyed me, I opted to reimplement myself a variant of Scribe. The result is Exscribe. In many ways, it's a quick and dirty hack, thrown together in a few tens of hours of intensive work. But I like the architecture of it, and though it doesn't do much, it does just what I need for the time being, and it does it exactly the way I want. When it fails, I have noone to blame but myself. All my new web pages are written with it.

    Exscribe currently mainly targets HTML and so currently is mainly a web authoring tool, and it can also be used as a Lisp Markup Language. But a CL-typesetting backend is already available, and will hopefully match and surpass the HTML backend Real Soon Now(tm).

    At the time being, Exscribe is definitely not for non-hacker users: error checking and reporting is minimal, and documentation is almost absent. However, in its current state it is already fit for use by developers, and I'm open to collaboration to develop it. The Scribe documentation should be mostly valid, and an example that uses most of the capabilities present in Exscribe is here: - http://fare.tunes.org/files/asdf-packages/exscribe-examples.tar.gz

    Bitrot has made it impossible to get the native code Scribe running anymore (one probably could if willing to invest some substantial effort in either retrocomputing or porting). However, the unstable and slow JVM version of Scribe can still be run. Exscribe on CMUCL or SBCL compiles my documents much faster (performance is less good with other implementations, but always better than the JVM Scribe on my documents).

    Exscribe depends on other packages: meta, fare-utils, fare-matcher, scribble and cl-launch. You will need cl-launch to run it from the unix command-line. The PDF backend uses cl-typesetting. You can also compile Exscribe with XCVB.

    Exscribe source code is at: https://gitlab.common-lisp.net/frideau/exscribe

    Note that the referred Scribe does not really have anything to do with the already established language Scribe from the early 1980's. That is why Manuel Serrano renamed it to Skribe in its new (slightly incompatible) incarnation. Though there were implementations of the old Scribe in Lisp, it didn't have a Lisp-related syntax. See Brian Reid, "Scribe: A Document Specification Language and its Compiler", Technical Report CMU-CS-81-100, 1981.


    -document preparation
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ext-blog.html b/clones/lisp/www.cliki.net/ext-blog.html deleted file mode 100644 index 04dbe78e..00000000 --- a/clones/lisp/www.cliki.net/ext-blog.html +++ /dev/null @@ -1,66 +0,0 @@ - - - - - CLiki: ext-blog - - - - - - - -
    ext-blog
    ext-blog is a common lisp blog software which supports custom theme and you can port a WordPress theme for it.

    An ext-blog sample website can be found at my personal blog site.

    FEATURES

      -
    • Basic blog engine features including: post an entry, display an entry, post - a comment -
    • -
    • Support admin manage page so that you can manage your blog online -
    • -
    • Support custom themes -
    • -
    • Support RSS feed, only full export -
    • -
    • Support metaweblog API, only post/edit new entry -
    • -
    • Some basic themes ported by author -
    • -

    The full source code can be download at https://github.com/kevinlynx/ext-blog

    Also, you can get ext-blog by quicklisp: -

    (ql:quickload 'ext-blog)
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/external-program.html b/clones/lisp/www.cliki.net/external-program.html deleted file mode 100644 index b2c2794c..00000000 --- a/clones/lisp/www.cliki.net/external-program.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: external-program - - - - - - - -
    external-program
    external-program provides a largely-portable wrapper for running programs external to the Lisp process.

    Compared to similar projects, external-program is less portable than uiop, but supports asynchronous subprocesses. It is more portable than executor but doesn't implement pipelines.

    Source code repository: https://github.com/sellout/external-program

    License: LLGPL


    -system programming
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/extsort.html b/clones/lisp/www.cliki.net/extsort.html deleted file mode 100644 index 4ed25b25..00000000 --- a/clones/lisp/www.cliki.net/extsort.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: extsort - - - - - - - -
    extsort
    extsort is a Common Lisp library for external sorting of Unicode text files. External sorting is a sorting process where the data to be sorted cannot fit entirely in memory: this is the case, for example, of big files.

    Source code is released under a MIT-license and hosted at git repository https://gitlab.com/janduja/extsort.

    A compressed zip package can be downloaded at http://janduja.com/extsort/extsort-1.0-tar.gz.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/f-underscore.html b/clones/lisp/www.cliki.net/f-underscore.html deleted file mode 100644 index f9e5311c..00000000 --- a/clones/lisp/www.cliki.net/f-underscore.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: f-underscore - - - - - - - -
    f-underscore
    F-underscore is a convenience library to make writing lambdas shorter without having to resort to special syntax like arc's square brackets.

    Repository: https://gitlab.common-lisp.net/bpm/f-underscore

    License: public domain

    Author: Nick Allen

    See also: cl-anonfun

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/fact-base.html b/clones/lisp/www.cliki.net/fact-base.html deleted file mode 100644 index d99bf730..00000000 --- a/clones/lisp/www.cliki.net/fact-base.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: fact-base - - - - - - - -
    fact-base
    A simple-ish implementation of an append-only triple-store.

    Github page here, which includes some documentation in markdown format.

    No GPG keys, so download at your own risk.

    StructuredStorage

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/fakenil.html b/clones/lisp/www.cliki.net/fakenil.html deleted file mode 100644 index 68e6a75d..00000000 --- a/clones/lisp/www.cliki.net/fakenil.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: fakenil - - - - - - - -
    fakenil
    fakenil provides a canonical stand-in for NIL for contexts where NIL means "no value".

    See the project's home for all details.


    -Unlicense, Public Domain
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/fare-csv.html b/clones/lisp/www.cliki.net/fare-csv.html deleted file mode 100644 index 54b4421f..00000000 --- a/clones/lisp/www.cliki.net/fare-csv.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: fare-csv - - - - - - - -
    fare-csv
    fare-csv is a library for reading and writing CSV files.

    fare-csv is a small library of functions by Fare Rideau. -It allows your CL program to import or export CSV files (Comma-Separated Values) that you exported from some PC application or other (database, spreadsheet, etc.).

    It is somewhat configurable in what it accepts and produces and tries to conform to what little standards seem to exist.

    fare-csv source code is at: - http://common-lisp.net/gitweb?p=users/frideau/fare-csv.git


    -Topics: file format, Text, CSV
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/fare-matcher-docs.html b/clones/lisp/www.cliki.net/fare-matcher-docs.html deleted file mode 100644 index 62a5ecb9..00000000 --- a/clones/lisp/www.cliki.net/fare-matcher-docs.html +++ /dev/null @@ -1,208 +0,0 @@ - - - - - CLiki: fare-matcher-docs - - - - - - - -
    fare-matcher-docs
    Fare-matcher adds constructs for Lisp2 pattern matching or destructuring.

    Fare-matcher was superseded by optima according to optima's CLiki page. However, the discussion below is of general interest and importance. Lots of it is relevant for libraries that had superseded fare-matcher as they inherited some of its design. Note also the Lisp-2 vs Lisp-1 bit.


    This language extension uses Lisp-2 style, which means that instead of writing -

    (destructuring-bind - (a b (c d ()) . e) - foo - (bar a b c d e))

    you'd write -

    (letm - (list* a b (list c d ()) e) - foo - (bar a b c d e))

    Lisp-2 style means that instead of writing - (destructuring-bind (a b (c d ()) . e) foo (bar a b c d e)) -You'd write - (match1 (list* a b (list c d 'nil) e) foo (bar a b c d e)) -This might look heavier, but then, the fact that the head of a pattern -is a designator for an arbitrary pattern instead of having patterns -always be lists except for possible "magic" values like &rest and -other keywords allows patterns to be clearer, and *extensible*. -Thus you can trust that any symbol in head position is a pattern name, -while any symbol in parameter position is a variable name, -except if it is a special symbol, or if the head is a pattern macro, -in which case it controls the meaning of the parameters.

    The only predefined special symbol is _ that matches everything. -I used to have T match anything (top) and NIL match nothing (bottom), -but nobody liked it, so instead they are considered (together with keywords) -as literals that match the constants T and NIL. -Predefine functional patterns are CONS, LIST, LIST*, VECTOR, -that match corresponding objects with a known arity. -Predefined macro patterns are QUOTE, VALUE, LIKE-WHEN, AND, WHEN, OF-TYPE, -SLOT*, ACCESSOR*, that respectively match a literal constant, the value -of an expression, a pattern with a guard condition, the conjunction of -several patterns, just a guard condition, any value of given type, -any object with slots as specified, and object with accessors as specified. -In fare-clos, it is also possible to match against an INSTANCE of a class -with slots specified by initargs.

    IFMATCH tries to match a pattern with an expression, -and conditionally executes either the success form -in a properly extended lexical environment, -or the failure form in the original lexical environment, -depending on whether the match succeeded (with freshly bound variables) or not. -MATCH (that I won't rename to COND-MATCH) tries to match a given expression -with several patterns, and executes the body of the matching clause if found. -EMATCH is like MATCH except that when no match is found, -it raises an error instead of returning NIL.

    With this paradigm, matching patterns are thus dual from normal forms. -I like to think of all forms as patterns, with some patterns being -in "deconstruction position" (left-hand side of a match clause), -and other patterns being in "construction position" (right-hand side -of a match clause). -Although the current implementation follows Erlang (or ML-like) semantics -for matching, this paradigm can generalize to non-deterministic settings, -where you'd obtain something much like Mercury, unifying functional -and logic programming -- however, I haven't even attempted to implement -non-determinism (maybe this could be done using Screamer).

    NB: Actually, I had first thought about this pattern-matcher when I was more -of a Lisp-1 fan, and the fact that Lisp-2 was much more natural for the pattern -matcher finished to turn me into a Lisp-2 fan. -


    With fare-matcher, you can use these macros in your code:

    - ifmatch <pattern> <form> <then-clause> <else-clause>

    (ifmatch (cons a b) '(1) (list a b) -> (1 nil)

    ematch <form> <case-clauses> - match <form> <case-clauses>

    (match msg - (:ping (reply :pong)) - ((:add a b) (reply `(result ,(+ a b))) - (:quit (reply :bye)))

    letm <pattern> <form> <lexical-scoped-body>

    (letm (values (accessor* ((like-when msg (keywordp msg)) command)) - err?) (read-command) - (if err? - "ouch" - (list msg))) -
    - There are others.

    Patterns are lisp forms. Symbol in patterns match anything creating a binding to what they match, except * or _ will match anything but are not bound. Literals are matched using eq.

    The core pattern matching forms are look like the forms for consing up things and match what otherwise they would create: list, list*, values, cons, and vector. Quite concise is that for most common lisp implementations you may use back-quoted forms.

    (match msg - (`(+ ,a ,b) (+ a b)) - (`(- ,a ,b) (- a b)) - (`(- ,a) (- a b))) -

    Two forms slot*, accessor* allow you to match CLOS objects using the slot-names or the accessors respectively. By example: -

    (defun window-hieght (window) - (letm (slot* (top a) (bottom b)) window - (- bottom top))) -
    -Finally a few pattern forms provide for special cases: and, or, of-type, like-when.

    -Some samples pulled from a test case:

    - (ifmatch (cons * (cons x y)) '(1 (2 3) 4) (list x y)) ==> ((2 3) (4))
    -
    - (ifmatch (like-when (cons x y) (eql x y)) '(2 . 2) x) ==> 2
    -
    - (ifmatch (and (cons x y) (when (eql x y))) '(2 . 2) x) ==> 2
    -
    - (ifmatch (and (cons a 1) (cons 2 b)) '(2 . 1) (list a b)) ==> (2 1)
    -
    - (ifmatch (list a b) '(1 2) (list b a)) ==> (2 1)
    -
    - (ifmatch (list* a b c) '(1 2 3 4) (list a b c)) ==> (1 2 (3 4))
    -
    - (ifmatch (and x (cons (of-type integer) *)) '(2) x) => (2)
    -

    (defun my-length (x) - (ematch x - ((cons * tail) (1+ (my-length tail))) - ('nil 0)) -
    -
    - (my-length '(1 2 3)) ==> 3
    -

    Finally, from the source code:

    This is my attempt at a pattern matcher.

    Semantic Design goals: -

      -
    • ML- or Erlang-like semantics for pattern matching.
    • -
    • Integration to the lexical environment: - Variables in a match pattern are bound lexically around the form's body.
    • -
    • Unlike destructuring-bind, follow the same Lisp-2 paradigm - of source-level lists specifying a generic pattern to call and its arguments. - This also allows to trivially distinguish between variables and pattern names - by a simple syntactic positional criterion.
    • -
    • Extensibility through definition of new generic patterns, - either functions or macros, by defining new names - or having algebraic designators.
    • -
    • No backtracking or unification, - but leaving possibility for such thing as an extension.
    • -

    Implementation goals: -

      -
    • macro-expansion-time transformation of pattern into recognizing code.
    • -
    • This first version is no frills: - no attempt at algorithmic efficiency, optimization or backtracking.
    • -
    • Optimized for human simplicity.
    • -
    • Highly-factored using higher-order functions and macros.
    • -
    • Underlying control structures are to be abstract enough - so that backtracking could be added by replacing them.
    • -
    -Implementation choices: -
      -
    • the (ifmatch pattern form body...) macro expands into a - (let (,@vars) (when (funcall ,matcher ,form) ,@body)) - where (pattern-matcher pattern) returns (values matcher vars)
    • -
    • matching code uses matcher-passing style - that's good.
    • -
    • macro-expansion code uses a direct synthesis technique - that's bad. - It means that all bindings for the match are common to all the matching forms, - which requires a bit of discipline from writers of LIKE-WHEN clauses - so that nothing evil should happen. - Instead, we should use a monadic lexical-environment-passing-style - that would create bindings as the match progresses.
    • -
    • not much of any error detection is done, - and when there is, error reporting is minimal.
    • -
    • not any pattern optimization is done by the matching macros (however, - since patterns are expanded into lisp code at macro-expansion time, - the compiler might still do a few optimizations and produce reasonable code).
    • -
    -To Do list: -
      -
    • add a special case for (values) at the top level (???)
    • -
    • add better patterns for matching structures and classes
    • -
    • add macros for defining simple patterns of patterns, - both in matching and in building.
    • -
    • add lots of error checking
    • -
    • make for a better propagation of bindings within internal clauses of - the pattern matcher (due to like-when). -- binding-passing style(?)
    • -
    • add non-linearity???
    • -
    • add backtracking, based on a CPS transform??? Or use Screamer?
    • -
    • add first-class patterns (?)
    • -
    • add pattern merging and optimization (!?) or maybe declarations? - Factor the matching of identical initial patterns.
    • -
    • add better documentation about the pattern matcher (???)
    • -
    • add support for documentation strings in pattern defining forms
    • -
    • add support for optional, rest and keyword arguments in defining forms
    • -
    • add reader-macros for very common cases, if needed.
    • -
    • have the equivalent of compiler-macros so as to define patterns to use -when the patterns match a known pattern. E.g. when appending something - to a list of known length (before or after), the matching procedure is simple.
    • -
    • convert everything for use with some kind of first-class environments.
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/fare-matcher.html b/clones/lisp/www.cliki.net/fare-matcher.html deleted file mode 100644 index 2836cef5..00000000 --- a/clones/lisp/www.cliki.net/fare-matcher.html +++ /dev/null @@ -1,65 +0,0 @@ - - - - - CLiki: fare-matcher - - - - - - - -
    fare-matcher
    [superseded by optima according to optima's CLiki page] Extends CL with ML-like pattern matching in an extensible way.

    fare-matcher is written by Fare Rideau. -It extends CL with pattern matching much like ML or Erlang, -but in a way well integrated with CL, -and with the possibility of extending the core matcher -with arbitrary primitives.

    It also includes a matching-friendly implementation of quasiquote, which makes it possible to match source code in an easy way. To use it, you may need to (eval-when (:compile-toplevel :load-toplevel :execute) (fare-quasiquote::enable-quasiquote)).

    It depends on fare-utils.

    There is a little documentation at fare-matcher-docs.

    -fare-matcher source code is at: - https://gitlab.common-lisp.net/frideau/fare-matcher

    Variants:

      -
    • -Matthew Danish has some extensions and clean-ups, packaged with an ASDF system, here. It has since been merged with the upstream version (2005-01-31). -
    • -
    • Note that a different pattern matcher with a similar syntax is part of the bese tools as used in UCW. -
    • -
    -
    -obsolete
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/fare-memoization.html b/clones/lisp/www.cliki.net/fare-memoization.html deleted file mode 100644 index fed2cd67..00000000 --- a/clones/lisp/www.cliki.net/fare-memoization.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: fare-memoization - - - - - - - -
    fare-memoization
    fare-memoization is a library for memoizing functions.

    Unlike other similar libraries, it has well-defined semantics, is portable and extensible.

    https://gitlab.common-lisp.net/frideau/fare-memoization

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/fare-mop.html b/clones/lisp/www.cliki.net/fare-mop.html deleted file mode 100644 index e0af56b8..00000000 --- a/clones/lisp/www.cliki.net/fare-mop.html +++ /dev/null @@ -1,66 +0,0 @@ - - - - - CLiki: fare-mop - - - - - - - -
    fare-mop
    fare-mop has a few simple utilities relying on the MOP. -It depends on CLOSER-MOP for portable MOP access.

    The main utilities are:

    SIMPLE-PRINT-OBJECT-MIXIN - class mixin to give you a useful PRINT-OBJECT method for free

    SIMPLE-PRINT-OBJECT - a simple PRINT-OBJECT function you can use it without the mixin - (useful when you don't want to change the class hierarchy of - some library you're using, but still want to simply inspect objects - and/or define a PRINT-OBJECT method on them).

    COLLECT-SLOTS - a utility used by the above function, to collect a p-list - describing the slots bound in an object

    SLOTS-TO-PRINT - a way to customize which slots get printed by SIMPLE-PRINT-OBJECT-MIXIN

    -Other utilities include:

    REMAKE-OBJECT - a utility for "copying" objects by calling make-instance with - the "same" initialization arguments as an original objects, - plus overriding keyword arguments. - Useful for experimenting with a pure functional OO style. - Not for use where performance is important.

    See documentation strings for details.

    Repository

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/fare-quasiquote.html b/clones/lisp/www.cliki.net/fare-quasiquote.html deleted file mode 100644 index 3583f97f..00000000 --- a/clones/lisp/www.cliki.net/fare-quasiquote.html +++ /dev/null @@ -1,60 +0,0 @@ - - - - - CLiki: fare-quasiquote - - - - - - - -
    fare-quasiquote
    fare-quasiquote is a portable quasiquote implementation that plays well with pattern-matching

    You probably want to :depend-on (:fare-quasiquote-extras), which enables the named-readtable :fare-quasiquote and hooks for pattern-matching with optima.

    Then in your file, you would

    (defpackage ... (:use :optima) ...) - -(in-package ...) - -(in-readtable :fare-quasiquote) - -... (match (`(foo ,@bar) ...) ...) - -(in-readtable :standard)

    Note that ,@ probably only works well with pattern-matching when in final position, and that the pedantically correct syntax is `(foo . ,bar) whereas the former in a strict reading of the standard is required to (append ... nil) which optima won't recognize.

    fare-quasiquote has a test suite with a lot of test cases that you can easily adapt and reuse to test your own implementation of quasiquote (useful for CL vendors, if they dare).

    fare-quasiquote is written by Fare Rideau.

    git clone https://gitlab.common-lisp.net/frideau/fare-quasiquote.git

    Browse it at https://gitlab.common-lisp.net/frideau/fare-quasiquote


    -language extension utilities
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/fare-scripts.html b/clones/lisp/www.cliki.net/fare-scripts.html deleted file mode 100644 index b2f611a4..00000000 --- a/clones/lisp/www.cliki.net/fare-scripts.html +++ /dev/null @@ -1,57 +0,0 @@ - - - - - CLiki: fare-scripts - - - - - - - -
    fare-scripts
    fare-scripts is a collection of scripts written by Fare Rideau

    I (Fare Rideau) have been moving out of writing shell scripts and instead writing scripts in Common Lisp. -This is the collection of functions that I grow, some of which were initially migrated from equivalent functions in zsh. -See my article Common Lisp as a Scripting Language, 2015 edition.

    See the git repository at: https://github.com/fare/fare-scripts

    The collection is made of mostly independent files and relies on asdf 3's package-inferred-system support so that, e.g. -rescript.lisp can be loaded with (asdf:load-system :fare-scripts/rescript). -fare-scripts relies on uiop, inferior-shell and cl-scripting for general scripting support. -Various scripts may have their own additional dependencies.


    -Linux
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/fare-utils.html b/clones/lisp/www.cliki.net/fare-utils.html deleted file mode 100644 index d58bc944..00000000 --- a/clones/lisp/www.cliki.net/fare-utils.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: fare-utils - - - - - - - -
    fare-utils
    fare-utils is a collection of utilities from Fare Rideau.

    Many general purpose utility function and macros, plus some data structures.

    The pure data-structures have been moved to lisp-interface-library.

    A few stateful data-structures remain, but we recommend you use cl-containers instead.

    fare-utils source code is at: - http://common-lisp.net/gitweb?p=users/frideau/fare-utils.git

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/faslpath.html b/clones/lisp/www.cliki.net/faslpath.html deleted file mode 100644 index e3953fa2..00000000 --- a/clones/lisp/www.cliki.net/faslpath.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: faslpath - - - - - - - -
    faslpath
    Faslpath is a build tool that relies on package naming conventions to automatically resolve dependencies between files, eliminating the need to have a separate system definition/make file. Faslpath is designated obsolete, having been superseded by the ASDF-extension package-inferred-system.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/fast-generic-functions.html b/clones/lisp/www.cliki.net/fast-generic-functions.html deleted file mode 100644 index 0cbe3aa4..00000000 --- a/clones/lisp/www.cliki.net/fast-generic-functions.html +++ /dev/null @@ -1,93 +0,0 @@ - - - - - CLiki: fast-generic-functions - - - - - - - -
    fast-generic-functions
    Generic functions that can be sealed on certain domains for performance.

    Usage example:

    (defgeneric binary-+ (x y) - (:generic-function-class fast-generic-function)) - -(defmethod binary-+ ((x number) (y number)) - (declare (method-properties inlineable)) - (+ x y)) - -(seal-domain #'binary-+ '(number number)) - -(defun generic-+ (&rest things) - (cond ((null things) 0) - ((null (rest things)) (first things)) - (t (reduce #'binary-+ things)))) - -(define-compiler-macro generic-+ (&rest things) - (cond ((null things) 0) - ((null (rest things)) (first things)) - (t (reduce (lambda (a b) `(binary-+ ,a ,b)) things)))) - -(disassemble - (compile nil - '(lambda (x y z) - (declare (single-float x y z)) - (generic-+ x y z)))) - -;; => - -;; disassembly for (lambda (x y z)) -;; Size: 38 bytes. Origin: #x52FD9354 -;; 54: 498B4510 mov RAX, [R13+16] -;; 58: 488945F8 mov [RBP-8], RAX -;; 5C: 0F28CC movaps XMM1, XMM4 -;; 5F: F30F58CB addss XMM1, XMM3 -;; 63: F30F58CA addss XMM1, XMM2 -;; 67: 660F7ECA movd EDX, XMM1 -;; 6B: 48C1E220 shl RDX, 32 -;; 6F: 80CA19 or DL, 25 -;; 72: 488BE5 mov RSP, RBP -;; 75: F8 clc -;; 76: 5D pop RBP -;; 77: C3 ret -;; 78: CC10 int3 16 -

    Once a fast generic function has been sealed, it is not possible to add, remove, or redefine methods within the sealed domain. Outside of the sealed domain, it behaves just like a standard generic function.

    Depends on sealable-metaobjects by the same author.

    Repository: GitHub

    License: MIT

    See Also: inlined-generic-function

    Topics: language extension

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/fast-http.html b/clones/lisp/www.cliki.net/fast-http.html deleted file mode 100644 index d97b5037..00000000 --- a/clones/lisp/www.cliki.net/fast-http.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: fast-http - - - - - - - -
    fast-http
    A fast HTTP request/response protocol parser for Common Lisp.

    Repository: https://github.com/fukamachi/fast-http


    -MIT-LICENSE
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/fast-io.html b/clones/lisp/www.cliki.net/fast-io.html deleted file mode 100644 index a191677b..00000000 --- a/clones/lisp/www.cliki.net/fast-io.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: fast-io - - - - - - - -
    fast-io
    Fast-io is about improving performance to octet-vectors and octet streams (though primarily the former, while wrapping the latter). This is mostly focused on SBCL performance, though it is entirely portable, and other implementations should benefit as well. Implementation-specific contributions welcome.

    The primary interface is not stream-oriented, but a stream interface is also provided.

    This is available via git and QuickLisp. It is licensed under the BSD 2-clause license.


    -stream binary format
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/favorite Lisp books.html b/clones/lisp/www.cliki.net/favorite Lisp books.html deleted file mode 100644 index 5b9747bd..00000000 --- a/clones/lisp/www.cliki.net/favorite Lisp books.html +++ /dev/null @@ -1,294 +0,0 @@ - - - - - CLiki: Favorite Lisp books - - - - - - - -
    Favorite Lisp books
    Some people's favorite Lisp books.

    Donald Fisk: -

      -
    • - Lisp, 1st edition, by Winston and Horn (sentimental reasons -- - this was the book I learned Lisp from) -
    • -
    • - Ansi Common Lisp by Paul Graham -
    • -
    • - On Lisp by Paul Graham -
    • -
    • - Structure and Interpretation of Computer Programs by Abelson - and Sussman (OK so it's Scheme, but does that matter?) -
    • -
    • - Artificial Intelligence Programming (Charniak. Riesbeck, - McDermott) -
    • -
    • - Paradigms of AI Programming by Norvig -
    • -
    • - The Anatomy of Lisp by Allen (this I learned to /implement/ - Lisp from) -
    • -
    • - The Art of the MetaObject Protocol -
    • -
    • - CLTL2 by Steele -
    • -

    Tayssir John Gabbour: -

      -
    • - Handbook of Programming Languages, vol. 4: Functional and Logic - Programming Languages; edited by Peter Salus. - This series is written by a bunch of people who are considered experts - in their programming languages. Vol. 4's sections are about Emacs - Lisp, Scheme, Guile, CLOS, and Prolog. While this selection is - extremely odd (for exclusively using lisps in a book about functional - languages, and not putting CLOS in the oop language volume), it at - least makes a nice little lisp book. I learned Emacslisp from it, and - the chapter on Scheme talked about its Algol influences, which is - usually missing in books like SICP or the Little/Seasoned Schemer - books. - I didn't read the other vol. 4 chapters, except part of the CLOS one. - Definitely an underrated book. -
    • -
    • - Programming Language Pragmatics by Michael Scott - This isn't really a lisp book, but it definitely talks about lisp a - lot. I haven't read it completely (right now I'm taking a break and - reading the incredible AIMA), but I think there's a sense where lisp - is really part of any good conversation about programming languages. -
    • -
    • - PAIP, by Norvig - Maybe everyone will mention this. All I have to say is that Norvig - really shouldn't be teaching people things like the defun-memo macro. - This and the disassemble function made it clear to me that CL is a - language that just doesn't fuck around. - In fact, I just realized that I memoized something in Java completely - stupidly months ago. One is so trained in Java to be disciplined, - that the brain falls asleep and the fingers write unmaintainable code. -
    • -
    • - SICP, by Abelson & the Sussmen - I always try to point the video lectures out: - http://www.swiss.ai.mit.edu/classes/6.001/abelson-sussman-lectures/ - I hope someone writes a modifiable version of this book online. - Powerful book, but people should add things in the margins or as - footnotes, because it needs... to be completed in a way that it can't - be as purely a teaching text. Sort of like an epic poem. Concrete - Mathematics by Graham/Knuth/etc kinda did something like this, but as - dead-tree it couldn't go far on this theme. -
    • -

    Paolo Amoroso: -

      -
    • - SICP, 1st edition: it introduced me to the Lisp family of languages, and - hooked me forever. It would be more appropriate to say that it was a - lightning strike. -
    • -
    • - CLtL1: it got me curious about Common Lisp. -
    • -
    • - PAIP: it motivated me to learn Common Lisp. -
    • -
    • - Object Oriented Programming in Common Lisp: it got me fascinated with - CLOS and object-oriented programming--in Lisp. -
    • -
    • - On Lisp: it made me feel the power of Lisp. -
    • -

    Markus Fix: -

      -
    • - "On Lisp" by Paul Graham
      - I just love this book! In a way it shows that Macros are the - equivalent of /spells/ in role playing games. In fact they are - more powerful, because unlike /spells/ they also redefine the - rules of the game. Somewhat like the /Meta/-chess example in - D.R.Hofstadters "Goedel, Escher, Bach". Rules that change the rules - to change rules. -
    • -
    • - "Performance and Evaluation of Lisp Systems" by R.P.Gabriel pdf
      - Very interesting if you're into the implementation details - of Lisp systems and want to understand efficiency issues involved. -
    • -
    • - "Successful Lisp" by David B. Lamkins
      - My recommendation for Lisp beginners with some programming - background. -
    • -
    • - "Goedel, Escher, Bach" by D.R. Hofstadter
      - Because it got me hooked on programming in general and Lisp - in particular at an early age. -
    • -
    • - "Patterns of Software" by R.P. Gabriel
      - Because it explains alot about the context. I think this is - by far the best explanation of the /patterns/ metaphor regarding - programming. -
    • -

    lin8080: -

      -
    • - Here is one for beginners. It is in German and contains basics on 300 - pages. Programmieren in COMMON LISP, Otto Mayer, 2.Auflage, - Spektrum Verlag 1995, ISBN 3-86025-710-2 ~25,-Euros. -
    • -
    • - I should go to ask the library about -Anatomy of lisp, - Mc.Graw-Hill, New York 1978, this title is on the top of my wish-list. -
    • -

    Erik Winkels: -

      -
    • - Besides all the aforementioned books by other posters I also really - like "Object-Oriented Common Lisp" from Stephen Slade. It is my main - paper reference. (Maybe because it is the book I started CL with, or - do other people like it as well as a reference besides the Hyperspec?) -
    • -

    Klaus Momberger: -

      -
    • - yes, I like it [Slade's books] as well. imho it is THE book to read first, - and PG's "On Lisp" next. -
    • -

    Tim Moore: -

    Steve Zimmerman: -

      -
    • - _On Lisp_, by Paul Graham -
    • -
    • - _Common Lisp and Artificial Intelligence_, by Patrick R. Harrison -
    • -
    • - _Common Lisp_, by Guy Steele -
    • -
    • - _Franz Lisp_ (not sure if the title's correct; I think it's by the Franz - Corp.) -
    • -
    • - It's not a book, but the info pages on librep - (`info librep' on Unix or Linux) are excellent. -
    • -

    Charles Blair: -

      -
    • - i would add Robert Wilensky, Common LISPcraft, as a good supplement to - another book on Common LISP (e.g., Paul Graham, ANSI Common Lisp, or Stephen - Slade, Object-Oriented Common Lisp, both of which have been mentioned here). - it may be a bit dated, and i don't think it quite stands alone as a primer, - but back then wilensky was an informed and enthusiastic writer about LISP. -
    • -

    Gareth McCaughan: -

      -
    • - Paradigms of Artificial Intelligence Programming: - Case Studies in Common Lisp. Peter Norvig. - Possibly the best hardcore programming book ever. -
    • -
    • - Lisp in Small Pieces (translated from the French - "Les langages Lisp", or something of the kind). - Christian Queinnec. - A very nice in-depth look at the internal workings - of Lisp-like languages. A bit too Schemey. -
    • -
    • - Common Lisp: The Language (2nd ed.) Guy Steele. - Appallingly out of date, but I found it a great way - to learn the language. I am, however, a bit of a - weirdo, so I don't guarantee that this particular - preference will be very transferable. -
    • -
    • - On Lisp. Paul Graham. - Graham is a vigorous advocate of short, dense programs. - Here are some fine examples of how to write them. -
    • -
    • - Structure and Interpretation of Computer Programs. - Abelson, Sussman and Sussman. - Way too Schemey :-) and not really about Lisp, but - still deserves its fame. -
    • -

    David Douthitt:

    I'm still learning - or trying to. Here's a list of what's on my shelf:

      -
    • -The Little Lisper - interesting book - trains one to think in LISP ...
    • -
    • -LISP by Winston and Horn - 1st and 3rd editions. 1st edition used MACLISP; 3rd edition uses Common LISP. I picked it (them) up as they seemed to be used in all of the university classes on LISP.
    • -
    • -On Lisp - Paul Graham - fantastic book which clarifies the more advanced portions of Common LISP.
    • -

    VÖRÖSBARANYI Zoltán:

    In addition to SICP, On Lisp, etc:

      -
    • -Practical Common Lisp by Peter Seibel. A great book, available on-line: http://www.gigamonkeys.com/book/
    • -

    Vladimir Sedach:

      -
    • -SICP teaches how to think about programming -
    • -
    • -On Lisp shows what makes Common Lisp great -
    • -
    • -Let Over Lambda is idiosyncratic but has a lot of info on advanced CL programming -
    • -
    • John Allen's Anatomy of Lisp is a great way to understand how the Lisp meta-circular evaluator works, and how that is related to formal logics. If I remember correctly, this book was a major inspiration for SICP and the MIT 6.001 course. -
    • -

    For those interested, there are also Online Tutorials and Documents, in addition to more Lisp books.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/fern.html b/clones/lisp/www.cliki.net/fern.html deleted file mode 100644 index 80ab8730..00000000 --- a/clones/lisp/www.cliki.net/fern.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: fern - - - - - - - -
    fern
    An efficient, consp, self-adjusting key-value trie-index abstraction for uuid namespaces.

    Repository: https://github.com/danlentz/fern


    -data structure
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ffa.html b/clones/lisp/www.cliki.net/ffa.html deleted file mode 100644 index 0b643a3f..00000000 --- a/clones/lisp/www.cliki.net/ffa.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: ffa - - - - - - - -
    ffa
    Foreign friendly arrays for Common Lisp. Provides a macro that allows foreign functions to access the contents of the array at a given pointer, using the best available method given the Common Lisp implementation.

    See the announcement, or read the documentation in the package.

    Note that in July 2008, I split the array operation functions that do not depend on CFFI into the package ARRAY-OPERATIONS.

    You can download the latest version from Github. The license is LLGPL.


    -FFI
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ffi.html b/clones/lisp/www.cliki.net/ffi.html deleted file mode 100644 index 19492217..00000000 --- a/clones/lisp/www.cliki.net/ffi.html +++ /dev/null @@ -1,288 +0,0 @@ - - - - - CLiki: ffi - - - - - - - -
    ffi
    FFI is short for Foreign Function Interface, which is useful for linking to arbitrary C (and not only) libraries from Lisp code.

      -
    • -ah2cl - - ah2cl (Another Header to Common Lisp converter) is a tool for parsing C header files and generating FFI bindings for CLISP and UFFI -
    • -
    • -bike - - bike is a library which implements cross-platform Common Lisp interface to .Net Core platform, using lisp compatibility layers -
    • -
    • -c2ffi - - c2ffi is a tool for extracting declarations from C source and header using Clang's AST -
    • -
    • -CFFI - - CFFI, the Common Foreign Function Interface, purports to be a portable foreign function interface for Common Lisp -
    • -
    • -cffi-j - - cffi-j is a set of CFFI bindings for the J programming language (libj.so library) -
    • -
    • -cffi-objects - - CFFI-objects is a library that enhances CFFI with several new constructions to use when you need to work with complex structures or objects -
    • -
    • -cl-applescript - - cl-applescript provides an FFI API for interfacing AppleScript and Common Lisp -
    • -
    • -cl-autowrap - - cl-autowrap is a point-and-shoot tool for creating and distributing FFI wrappers -
    • -
    • -CL-ObjC - - CL-OBJC is a portable common-lisp/objective-c bridge written using CFFI -
    • -
    • -CL-Pango - - CL-PANGO is a cffi binding to the Pango text formatting library -
    • -
    • -cl-tc - - cl-tc is a set of bindings for the Tokyo Cabinet database -
    • -
    • -cl-tk - - CL-TK provides a simple bridge to Tcl/Tk -
    • -
    • -clave - - The Common Lisp Audio Video Engine (CLAVE) is a Lisp FFmpeg interface -
    • -
    • -CLAW - - Common Lisp autowrapping facility for quickly creating -
    • -
    • -CLERIC - - CLERIC (Common Lisp Erlang Interface) is an implementation of the Erlang distribution protocol, comparable with erl_interface and jinterface -
    • -
    • -Cliconv - - Cliconv is a simple FFI interface to the iconv library that lets Common Lisp programs translate byte sequences from/to different character encodings -
    • -
    • -CLLIB - - CLLIB is a varied collection of Common lisp tools and routines in CLOCC -
    • -
    • -clTcl - - clTcl provides an interface to Tcl/Tk via Tcl scripts embedded in Common Lisp -
    • -
    • -Cobstor - - Cobstor is a tool and an API to seamlessly access legacy Cobol application files from Common Lisp -
    • -
    • -Common Lisp Library Audience Expansion Toolkit - - FFI -
    • -
    • -cparse - - cparse is a C header file parser for building FFIs -
    • -
    • -de.setf.thrift - - de.setf.thrift is a binding for the Apache Thrift framework for scalable cross-language services development -
    • -
    • -de.setf.utility - - de setf utility is a collection of Common Lisp utilities functions and several purpose-specific libraries -
    • -
    • -doors - - Doors is an attempt to bring essential features of MS Windows (such as basic Windows API, COM and OLE) into Common Lisp -
    • -
    • -ffa - - Foreign friendly arrays for Common Lisp -
    • -
    • -ffigen - - FFIGEN (Foreign Function Interface GENerator) is a program suite that facilitates the writing of translators from C header files to foreign function interfaces for particular language implementations. -- FFIGEN Home Page -
    • -
    • -foreign-numeric-vector - - foreign-numeric-vector is a package for working with numeric vectors stored in the foreign (non-Lisp) heap -
    • -
    • -Gelisp - - Gelisp is an opensource, efficient, high-level API wrapping the Generic Constraints Development Environment (GECODE) for Common Lisp -
    • -
    • -lh-usb - - lh-usb is a set of bindings for the Linux usbfs interface for writing usb device drivers from user-space Lisp code -
    • -
    • -Objective-CL - - Objective-CL is a Common-Lisp/Objective-C bridge currently supporting a range of Lisp implementations on Mac OS X and GNUstep -
    • -
    • -perl-in-lisp - - Perl-in-Lisp is a Common Lisp FFI interface to the Perl 5 API -
    • -
    • -Pyffi - - Pyffi, inspired by Python-on-Lisp, is a Python programming language FFI for Common Lisp -
    • -
    • -Python-On-Lisp - - Python-On-Lisp is a Python programming language FFI for Common Lisp -
    • -
    • -RCL - - RCL is an FFI to communicate with the R statistics environment -
    • -
    • -rclg - - An R (statistics programming language) FFI for Common Lisp -
    • -
    • -resolver - - A UFFI interface to Linux's libresolv library (see resolver(3)) -
    • -
    • -SWIG - - SWIG is a (non-CL) tool that can generate FFI binding code from C/C++ header file declarations -
    • -
    • -uffi - - CFFI is recommended as the replacement for UFFI. -
    • -
    • -Virgil - - Virgil is a high-level and extensible FFI, built on top of CFFI and oriented towards marshaling lisp data into raw memory and back -
    • -
    • -WAAF-CFFI - - WITH-ARRAY-AS-FOREIGN-POINTER - Allows Lisp arrays to be passed to foreign functions by copying their contents to malloc'ed foreign space, using only CFFI -
    • -
    • -winhttp - - CFFI bindings to WinHTTP -
    • -

    Integrating with Java: (main topic: Java) -

      -
    • -ABCL - - Armed Bear Common Lisp (aka ABCL) is a -
    • -
    • -abcl-jazz - - Code examples on to call the Java Swing API under ABCL to program GUIs -
    • -
    • -cloak - - cloak is an experimental implementation of the JVM for SBCL on Linux/x86 -
    • -
    • -CLplusJ - - CL+J is an exact, safe and complete Common Lisp interface to Java through JNI -
    • -
    • -decaf - - Decaf is an Java debugger GUI written in Lisp using CLIM -
    • -
    • -Foil - - Foil (Foreign Object Interface for Lisp) consists of a protocol and a set of libraries that facilitate access to popular object runtimes, such as the JVM (Java) and the CLI/CLR (.NET), and their libraries, from Lisp -
    • -
    • -JACOL - - The JACOL system can be used to link Java and Common Lisp applications -
    • -
    • -Jatha - - Jatha is a Java library that implements a fairly large subset of Common LISP, including most of the datatypes (e.g -
    • -
    • -jfli - - jfli provides comprehensive, safe, dynamic and Lisp-y access to Java and Java libraries as if they were Lisp libraries, for use in Lisp programs, i.e -
    • -
    • -jss - - jss is an extension for ABCL that makes it easier for me(AlanRuttenberg) to write lisp code that calls java libraries -
    • -
    • -LinJ - - Linj is a Common Lisp-like language that tries to be as similar to -
    • -
    • -Lisplets - - Lisplets are Java Servlets that forward their requests, and gather their response headers, using s-expressions over sockets -
    • -
    • -Mark Davidson - - I have been working with these infernal machines for over 22 years, and have dabbled with Lisp over time.. -
    • -
    • -snow - - Snow is a GUI description language for Java and Common Lisp, currently supporting the Swing UI library -
    • -

    Integrating with .NET: (main topic: .NET) -

      -
    • -bike - - bike is a library which implements cross-platform Common Lisp interface to .Net Core platform, using lisp compatibility layers -
    • -
    • -Foil - - Foil (Foreign Object Interface for Lisp) consists of a protocol and a set of libraries that facilitate access to popular object runtimes, such as the JVM (Java) and the CLI/CLR (.NET), and their libraries, from Lisp -
    • -
    • -RDNZL - - RDNZL (pronounced "Redunzl") enables Common Lisp applications to interact with dot-NET libraries -
    • -

    Of interest to FFI implementors may be Reini Urban's survey and thoughts of various FFI implementations (last modified: 2004-05-04).

    One step beyond FFI is the programming language topic, which lists various programming languages implemented in Common Lisp.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ffigen.html b/clones/lisp/www.cliki.net/ffigen.html deleted file mode 100644 index 34a94fbf..00000000 --- a/clones/lisp/www.cliki.net/ffigen.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: ffigen - - - - - - - -
    ffigen
    FFIGEN (Foreign Function Interface GENerator) is a program suite that facilitates the writing of translators from C header files to foreign function interfaces for particular language implementations. -- FFIGEN Home Page

    FFIGEN can be found at http://www.ccs.neu.edu/home/lth/ffigen.

    -


    -FFI -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/file format.html b/clones/lisp/www.cliki.net/file format.html deleted file mode 100644 index 95c5a493..00000000 --- a/clones/lisp/www.cliki.net/file format.html +++ /dev/null @@ -1,220 +0,0 @@ - - - - - CLiki: file format - - - - - - - -
    file format
    This is a page collecting libraries to handle different file formats.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/file-position on non-files.html b/clones/lisp/www.cliki.net/file-position on non-files.html deleted file mode 100644 index 36e7709e..00000000 --- a/clones/lisp/www.cliki.net/file-position on non-files.html +++ /dev/null @@ -1,134 +0,0 @@ - - - - - CLiki: file-position on non-files - - - - - - - -
    file-position on non-files
    Here's a can of worms. It involves a string-stream, but vector streams in Clozure CL (see l1-streams.lisp) work similarly.

    The result varies by Common Lisp implementation:

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    CCL"w"
    CLISP"w"
    ACL"w"
    ECL"w"
    SBCL"woo"
    LispWorks"woo"
    Corman"foow"

    So for a few implementations, the output is truncated by the use of file-position (as if by setting the fill-pointer). SBCL's implementation (since version 0.8.3.77) remembers the ending position and doesn't truncate the output. Which may be less surprising, unless you actually wanted to truncate the output. Then you'd have to find another way to do that. LispWorks appears to be in the same camp. In Corman Common Lisp, the file-position is different from the actual output position.

    Clozure CL

    Since file-position in CCL interfaces this way with vector streams (that is: having the effect of truncation), David Mullen often does low-level tricks like writing directly to the underlying vector. This gets into the internals (specifically: stuff that's private to the CCL package) and isn't exactly safe code, since it assumes there is already space in the buffer, and would otherwise need to call %extend-vector-output-stream (directly or indirectly):

    (defun %vector-stream-write-u32 (u stream position) - (let* ((ioblock (basic-stream-ioblock stream)) - (origin (vector-output-stream-ioblock-displacement - ioblock))) - (declare (type (integer 0 #.array-dimension-limit) origin)) - (declare (type (integer 0 #.array-dimension-limit) position)) - (declare (optimize (safety 0) (speed 3))) - (let* ((outbuf (ioblock-outbuf ioblock)) - (buffer (io-buffer-buffer outbuf)) - (index (+ origin position))) - (declare (type (unsigned-byte 32) u)) - (declare (type (integer 0 #.array-dimension-limit) index)) - (declare (type (simple-array (unsigned-byte 8) (*)) buffer)) - (setf (aref buffer (+ index 0)) (ldb (byte 8 0) u)) - (setf (aref buffer (+ index 1)) (ldb (byte 8 8) u)) - (setf (aref buffer (+ index 2)) (ldb (byte 8 16) u)) - (setf (aref buffer (+ index 3)) (ldb (byte 8 24) u)))))

    An example (possibly unwise):

    (with-output-to-vector (stream) - (write-string "time" stream) - ;; Vector streams are bivalent, meaning they take octets and characters. - ;; So we just wrote the string "time" and we'll overwrite it with the - ;; value of (get-universal-time) encoded in little-endian 32-bit format. - (%vector-stream-write-u32 (get-universal-time) stream 0))

    As of this writing, that gives #(164 231 121 229) corresponding to the universal time 3849971620.

    Which—the careful programmer will note—doesn't overflow 32 (unsigned) bits. That'll happen in 2036.

    Allegro CL

    ACL has with-output-to-buffer:

    (with-output-to-buffer (stream) - (write-string "foo" stream) - (file-position stream 0) - (write-char #\w stream))

    Result of the above:

    #(119)

    Which is similar to the result of with-output-to-string. The buffer wants to be a simple-array (and a vector, of course) with an element-type of either (unsigned-byte 8) or (signed-byte 8). Passing a non-simple array as the second argument can have peculiar effects. Consider this example, where the version of ACL is noted in the comment, and the default optimization settings are in effect:

    ;;; International Allegro CL Free Express Edition -;;; 10.1 [32-bit Windows] (Jan 27, 2021 17:58) -;;; Optimization settings: safety 1, space 1, speed 1, debug 2. - -(defvar *buffer* - (make-array 20 - :element-type '(unsigned-byte 8) - :initial-element 0)) - -(defvar *displaced* - (make-array 10 - :element-type '(unsigned-byte 8) - :displaced-index-offset 10 - :displaced-to *buffer*)) - -(with-output-to-buffer (stream *displaced*) - (write-string "0123456789" stream))

    Then we have this output from ACL's Debug Window:

    CG-USER(4): *buffer*
    -#(0 0 0 0 0 0 0 0 0 0 ...)
    -CG-USER(5): *displaced*
    -#<Printer Error, obj=#x21712102: Attempt to take the car of 231574861 which is not listp.>
    -CG-USER(6): (type-of *displaced*)
    -(ARRAY (UNSIGNED-BYTE 8) (10))
    -CG-USER(7): (aref *displaced* 0)
    -Error: Attempt to take the car of 231574861 which is not listp.
    -[condition type: TYPE-ERROR]
    -CG-USER(8): (length *displaced*)
    -214731852

    As the saying goes: "Don't do that, then."


    -Programming Tips
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/file-types.html b/clones/lisp/www.cliki.net/file-types.html deleted file mode 100644 index 8f730ce0..00000000 --- a/clones/lisp/www.cliki.net/file-types.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: FILE-TYPES - - - - - - - -
    FILE-TYPES
    FILE-TYPES is a library to identify file formats based on file names. Written by Max Rottenkolber.


    -AGPL
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/filesystem.html b/clones/lisp/www.cliki.net/filesystem.html deleted file mode 100644 index 86f6afb5..00000000 --- a/clones/lisp/www.cliki.net/filesystem.html +++ /dev/null @@ -1,68 +0,0 @@ - - - - - CLiki: filesystem - - - - - - - -
    filesystem
      -
    • -cl-fswatch - - Wrapper for fswatch, a cross-platform file change monitor -
    • -
    • -cl-fuse - - CL-FUSE provides Common Lisp bindings for FUSE (file system in user space) -
    • -
    • -clufs - - Common Lisp User Space File System -
    • -
    • -query-fs - - Query-FS is a FUSE-based filesystem that presents database queries as filesystem trees -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/firephp.html b/clones/lisp/www.cliki.net/firephp.html deleted file mode 100644 index 87054030..00000000 --- a/clones/lisp/www.cliki.net/firephp.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: Firephp - - - - - - - -
    Firephp
    Firephp is implementation of firephp protocol for Common Lisp -It is useful for debugging web applications.

    Repository is here https://github.com/html/firephp -
    Author: Olexiy A. Zamkoviy

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/first-time-value.html b/clones/lisp/www.cliki.net/first-time-value.html deleted file mode 100644 index e83fa799..00000000 --- a/clones/lisp/www.cliki.net/first-time-value.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: first-time-value - - - - - - - -
    first-time-value
    first-time-value returns the result of evaluating a form in the current lexical and dynamic context the first time it's encountered, and the cached result of that computation on subsequent evaluations.

    See the project's home for all details.


    -Unlicense, Public Domain
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/flexi-streams.html b/clones/lisp/www.cliki.net/flexi-streams.html deleted file mode 100644 index fa5da280..00000000 --- a/clones/lisp/www.cliki.net/flexi-streams.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: flexi-streams - - - - - - - -
    flexi-streams
    FLEXI-STREAMS is a library which implements "virtual" bivalent streams that can be layered atop real binary/bivalent streams. It can be used to read and write character data in various single- or multi-octet character encodings which can be changed on the fly. It also supplies in-memory binary streams which are similar to string streams.

    Depends on: trivial-gray-streams

    Repository: https://github.com/edicl/flexi-streams

    Author: Edi Weitz


    -BSD license
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/flexichain.html b/clones/lisp/www.cliki.net/flexichain.html deleted file mode 100644 index d7742eb4..00000000 --- a/clones/lisp/www.cliki.net/flexichain.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Flexichain - - - - - - - -
    Flexichain
    Flexichain is an API for editable sequences. Its primary use is in end-user applications that edit sequences of objects such as text editors (characters), word processors (characters, paragraphs, sections, etc), score editors (notes, clusters, measures, etc), though it can also be used as a stack and a double-ended queue.

    Project page


    -Topics: data structure
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/flexoplan.html b/clones/lisp/www.cliki.net/flexoplan.html deleted file mode 100644 index 246bd019..00000000 --- a/clones/lisp/www.cliki.net/flexoplan.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: flexoplan - - - - - - - -
    flexoplan
    Simple planner, TODO list and would-be ticket-system, written in CL.

    For details, see, README on the homepage.

    Licence: GPLv3

    Homepage: https://github.com/mabragor/flexoplan

    time management

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/float-features.html b/clones/lisp/www.cliki.net/float-features.html deleted file mode 100644 index aa6ca11e..00000000 --- a/clones/lisp/www.cliki.net/float-features.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: float-features - - - - - - - -
    float-features
    float-features is a portability library for IEEE float features that are not covered by the CL standard.

    Repository: https://github.com/Shinmera/float-features
    -Documentation: https://shinmera.github.io/float-features/


    -mathematics binary format
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/floating-point.html b/clones/lisp/www.cliki.net/floating-point.html deleted file mode 100644 index 1b4a0bee..00000000 --- a/clones/lisp/www.cliki.net/floating-point.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: floating-point - - - - - - - -
    floating-point
    Floating-point is a Common Lisp library with functions for calculating -the error between and predicates for determining the equality of 2 -floating point numbers. The routines were originally developed for -lisp-unit, but are generally useful and warranted a separate package.

    Homepage: https://github.com/OdonataResearchLLC/floating-point

    mathematics

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/flood.html b/clones/lisp/www.cliki.net/flood.html deleted file mode 100644 index 8ed0b939..00000000 --- a/clones/lisp/www.cliki.net/flood.html +++ /dev/null @@ -1,61 +0,0 @@ - - - - - CLiki: flood - - - - - - - -
    flood
    Comfortable, powerful and tiny logging library for common lisp

    -This library needs the project-directory flood in your asdf-loadpath. Dependencies are usocket, swank, cl, cl-smtp, cl-who, bordeaux-threads, cffi, lparallel and for testing optima, cl-ppcre, trivial-features. Repository can be found here.

    To load and use the flood library, cd into the "src/" directory, start your lisp (tested on sbcl, ecl, ccl, clisp on windows, macosx and linux) and execute:

    (asdf:load-system :flood) - -(let ((name "Edward")) - (dbg "Hello " name ", welcome to our Hello-World!") ; DEBUG MODE - (inf "Hello " name ", welcome to our Hello-World!") ; INFO MODE - (wrn "Hello " name ", welcome to our Hello-World!")) ; WARNING MODE

    If you would like to see and run some examples cd into the "src/" directory, start you lisp and execute:

    (asdf:load-system :flood-example) - -(main)

    The configuration file can be found in the "conf/" directory. flood looks for "../conf" when you start at "src/" or "bin/" when you compiled a program.

    -License is based on GNU LESSER GENERAL PUBLIC LICENSE (LGPL).


    -logging
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/floyd-warshall.html b/clones/lisp/www.cliki.net/floyd-warshall.html deleted file mode 100644 index ea185ead..00000000 --- a/clones/lisp/www.cliki.net/floyd-warshall.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: floyd-warshall - - - - - - - -
    floyd-warshall
    floyd-warshall is a (very) preliminary library for Floyd-Warshall all-pairs shortest-path algorithm computations on weighted directed Graphs, written by Robert Goldman.

    The interface aims to make it as generic as possible, so that one does not have to use special data structures to define one's graph edges, instead one provides a set of objects corresponding to graph roots and a function that, when applied to the object corresponding to a node, gives edge information. For those familiar with CLIM's format-graph-from-roots, the interface is somewhat similar.

    This is my first shot at an asdf-installable system, and the system is at a very early state (i.e., not at all optimized). On the other hand, this is an algorithm that I find myself regularly needing, so I felt it worth offering.

    There is some ALBERT-generated HTML documentation included with the package (oddly, the key all-shortest-paths function doesn't appear on the main package page...).

    Download: http://rpgoldman.real-time.com/lisp/floyd-warshall_0.02.tgz

    License: LLGPL

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/folio.html b/clones/lisp/www.cliki.net/folio.html deleted file mode 100644 index db1f28d3..00000000 --- a/clones/lisp/www.cliki.net/folio.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: folio - - - - - - - -
    folio
    [superseded by folio2] A set of modules that make some functional programming idioms more convenient for use in Common Lisp.

    The folio modules are portions of the runtime from the new Lisp dialect Bard, packaged for convenient use as Common Lisp libraries. As Bard's runtime matures, additional portions may be added as folio modules.

    obsolete

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/folio2.html b/clones/lisp/www.cliki.net/folio2.html deleted file mode 100644 index d8e5a250..00000000 --- a/clones/lisp/www.cliki.net/folio2.html +++ /dev/null @@ -1,59 +0,0 @@ - - - - - CLiki: folio2 - - - - - - - -
    folio2
    A collection of small libraries: functional idioms and data structures in Common Lisp and a common set of APIs for them. Authored by mikel evins.

    It's a direct descendant of the older and simpler library folio, with a greatly expanded and reorganized API, and support for more data structures and procedures. It is organized so that users can load and use the entire collection of functions, macros, and types, or just those parts of the library that are needed. Provides several purely-optional syntactic extensions for convenience.

    Tested with SBCL, Clozure Common Lisp 1.10, and Lispworks 6.1.

    Offers the following features: -

      -
    • series and pure-functional maps and sequences
    • -
    • extension of Common Lisp sequence functions to support the new types
    • -
    • extensible generic versions of many Common Lisp functions
    • -
    • an extensible type-conversion utility
    • -
    • an extensible contructor function for arbitrary values
    • -
    • seamless integration of the SERIES and FSet libraries
    • -

    Homepage: GitHub

    License: LLGPL

    Topics: convenience library, data structure

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/foo.html b/clones/lisp/www.cliki.net/foo.html deleted file mode 100644 index 81e13cf9..00000000 --- a/clones/lisp/www.cliki.net/foo.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: foo - - - - - - - -
    foo
    Canonical metasyntactic variable. See also bar

    Shouldn't 'metasyntactic' be 'metasemantic'? In many cases foo is in fact a -variable, but its meaning is meant as any variable. Meaning is a semantic -matter, not a syntactic one.

    I don't think so. I think the point is you say, things like: A DEFUN form looks lik: (defun foo (bar) ...). In this case foo and bar are standing in, syntactically, for the actual names that you would actually use. -Peter Seibel


    -document
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/foreign-numeric-vector.html b/clones/lisp/www.cliki.net/foreign-numeric-vector.html deleted file mode 100644 index 3de45682..00000000 --- a/clones/lisp/www.cliki.net/foreign-numeric-vector.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: foreign-numeric-vector - - - - - - - -
    foreign-numeric-vector
    foreign-numeric-vector is a package for working with numeric vectors stored in the foreign (non-Lisp) heap. This is useful for implementing foreign function interfaces to foreign libraries (e.g. BLAS, LAPACK, FFTW). It is especially useful for wrapping libraries portably across CL implementations which vary in their choices of boxing or unboxing of individual elements of native arrays, and which may or may not offer the ability to protect an array from being moved by the CL garbage collector.

    Homepage: https://github.com/blindglobe/fnv

    License: BSD


    -Topics: FFI
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/format.html b/clones/lisp/www.cliki.net/format.html deleted file mode 100644 index b0d13e50..00000000 --- a/clones/lisp/www.cliki.net/format.html +++ /dev/null @@ -1,61 +0,0 @@ - - - - - CLiki: format - - - - - - - -
    format
      -
    • -FORMAT is Common Lisp's function for creating formatted text output. It is analogous to C's 'printf', but FORMAT can do a whole lot more.
    • -
    • An article, Advanced Use of Lisp's FORMAT Function, shows how to make full use of FORMAT's abilities. (The article was previously at lisp-p.org)
    • -
    • Drew McDermott has a good argument for not using FORMAT.
    • -
    • -py-format has a lisp port of Python's str.format method, using the curly-brace {} notation.
    • -
    • A table comprehensively summarizing all FORMAT directives and the various arguments and modifiers they accept (along with further relevant information) is available.
    • -
    -
    -Online Tutorial, Document
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/fprog.html b/clones/lisp/www.cliki.net/fprog.html deleted file mode 100644 index 7632efbf..00000000 --- a/clones/lisp/www.cliki.net/fprog.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: fprog - - - - - - - -
    fprog
    FPROG is a small library for functional programming written by John Wiegley. It's used by CL-LEDGER.

    Source code: https://github.com/jwiegley/cambl/blob/master/fprog.lisp

    License: BSD


    -utilities
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/free software.html b/clones/lisp/www.cliki.net/free software.html deleted file mode 100644 index c04c6e69..00000000 --- a/clones/lisp/www.cliki.net/free software.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Free Software - - - - - - - -
    Free Software
    Free Software, for the purposes of the CLiki site, is software that complies with the Debian Free Software Guidelines.

    `Open Source' is another name for approximately the same software (minus some really rather picky distinctions) but has a rather different set of political baggage.

    A note from your sponsor: the debate about which of these terms is `better' or `correct' has been done to death many times before. If you want to re-enact it, please don't use CLiki for that purpose.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/free.html b/clones/lisp/www.cliki.net/free.html deleted file mode 100644 index 370bdd68..00000000 --- a/clones/lisp/www.cliki.net/free.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: free - - - - - - - -
    free
    For the purposes of the CLiki site, free means "free according to the DFSG". See also non-free -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/froute.html b/clones/lisp/www.cliki.net/froute.html deleted file mode 100644 index a15b855d..00000000 --- a/clones/lisp/www.cliki.net/froute.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: froute - - - - - - - -
    froute
    froute is a routing library taking advantage of the MOP.


    -URI, MIT-LICENSE
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/fset.html b/clones/lisp/www.cliki.net/fset.html deleted file mode 100644 index 27092e8b..00000000 --- a/clones/lisp/www.cliki.net/fset.html +++ /dev/null @@ -1,65 +0,0 @@ - - - - - CLiki: FSet - - - - - - - -
    FSet
    FSet is a functional set-theoretic collections data structure library by Scott L. Burson.

    Functional means that update operations return a new collection rather than modifying the existing one in place. Set-theoretic means, among other things, that like sets etc. in mathematics, these collections can be arbitrarily nested. Compound types like maps keyed by sets of sequences just work with no additional programmer effort.

    FSet is implemented using heterogeneous weight-balanced binary trees. FSet/CL, the Common Lisp implementation, uses a single, global, extensible ordering relation (implemented as a CLOS generic function), so that FSet collections can contain any combination of types.

    Some examples to give the flavor: -

    -* (setq s1 (set 1 2 3))        ; shadowed version of `set', not `cl:set'
    -#{ 1 2 3 }
    -* (setq s2 (with s1 'foo))
    -#{ 1 2 3 FOO }
    -* s1
    -#{ 1 2 3 }
    -* (setq m1 (map (s1 "without foo") (s2 "with foo")))          ; `map' also shadowed
    -#{| (#{ 1 2 3 } "without foo") (#{ 1 2 3 FOO } "with foo") |}
    -* (lookup m1 (set 2 3 1))
    -"without foo"
    -* (lookup m1 (set 3 'foo 1 2))
    -"with foo"
    -

    For more information:

    FSet page on Common-Lisp.net

    A tutorial

    The recommended way to obtain FSet is with Quicklisp.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ftp.html b/clones/lisp/www.cliki.net/ftp.html deleted file mode 100644 index b4f9febe..00000000 --- a/clones/lisp/www.cliki.net/ftp.html +++ /dev/null @@ -1,60 +0,0 @@ - - - - - CLiki: ftp - - - - - - - -
    ftp
    Implementations of the File Transfer Protocol:

      -
    • -aftpd - - aftpd is an FTP server written in Common Lisp -
    • -
    • -CL-FTP - - cl-ftp is an FTP client -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/fukacl.html b/clones/lisp/www.cliki.net/fukacl.html deleted file mode 100644 index e463206d..00000000 --- a/clones/lisp/www.cliki.net/fukacl.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: fukacl - - - - - - - -
    fukacl
    Eitarow Fukamachi's experimental Lisp utilities. Not in development anymore.

    This was just an experimental project.

    Homepage: https://github.com/fukamachi/fukacl

    License: MIT-license

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/function-cache.html b/clones/lisp/www.cliki.net/function-cache.html deleted file mode 100644 index 3ea4388c..00000000 --- a/clones/lisp/www.cliki.net/function-cache.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: function-cache - - - - - - - -
    function-cache
    Function-cache is a Common Lisp function caching / memoization library

    For more info see:

    Git Hub: https://github.com/AccelerationNet/function-cache

    Similar to: fare-memoization

    Topic:AccelerationNet, memoization, language extension, cache

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/funds.html b/clones/lisp/www.cliki.net/funds.html deleted file mode 100644 index e7ed57ff..00000000 --- a/clones/lisp/www.cliki.net/funds.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Funds - - - - - - - -
    Funds
    Funds provides portable, purely functional data structures written in Common Lisp.

    Home page: https://common-lisp.net/project/funds/

    License: Apache 2


    -GSoC
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/fuzzy-match.html b/clones/lisp/www.cliki.net/fuzzy-match.html deleted file mode 100644 index 2d8713d8..00000000 --- a/clones/lisp/www.cliki.net/fuzzy-match.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: fuzzy-match - - - - - - - -
    fuzzy-match
    fuzzy-match is a library to fuzzy search an input string against a set of candidates.


    -algorithm, MIT-LICENSE
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/game.html b/clones/lisp/www.cliki.net/game.html deleted file mode 100644 index 1aef2c58..00000000 --- a/clones/lisp/www.cliki.net/game.html +++ /dev/null @@ -1,176 +0,0 @@ - - - - - CLiki: Game - - - - - - - -
    Game
    Games in Common Lisp. There is also a Lisp Games Wiki with a lot more stuff on it.

      -
    • -abuse - - Abuse is a 1995 Game, 2D shooter, written C++, including a lisp interpreter close to a subset of Common Lisp, in which the game logic is written -
    • -
    • -Asteroid Wars - - Asteroid Wars is a remake of the classic space shooter game "asteroids", that originally came out in the arcades in 1979 -
    • -
    • -bratwurst - - Bratwurst is a clone of the old amiga Game by 3 Little Elks (3LE) -
    • -
    • -Buclet - - Buclet provides CFFI bindings to the Bullet physics library -
    • -
    • -cl-horde3d - - CL-HORDE3D provides CFFI bindings to the Horde3D graphics engine -
    • -
    • -cl-liballegro - - CFFI interface and bindings to the Allegro 5 game programming library -
    • -
    • -cl-namegen - - cl-namegen reads wordlists and produces similar words, i.e -
    • -
    • -cl-ode - - CL-ODE is a CFFI interface to the Open Dynamics Engine -
    • -
    • -cl-reversi - - cl-reversi is a Common Lisp application of the classic -
    • -
    • -cl-sdl2 - - cl-sdl2 is a wrapper for SDL 2.0 -
    • -
    • -CL-Sokoban - - CL-Sokoban implements the classic game Sokoban -
    • -
    • -cl-tcod - - Common lisp bindings for the Doryen Library, a "free, fast, portable API for roguelike developers providing an advanced true color console, input, and lots of other utilities frequently used in roguelikes" -
    • -
    • -Cletris - - Cletris is a Tetris-like Game -
    • -
    • -cleven - - Cleven is an experimental game engine with volume graphics written in Common Lisp -
    • -
    • -clim-chess - - clim-chess is a CLIM chess playing game -
    • -
    • -Climon - - Climon is a Simon game (using pal) -
    • -
    • -clois-lane - - clois-lane provides bindings to the Object-Oriented Input System (OIS) for such things as game controllers -
    • -
    • -clones - - Clones is a game inspired by "same game" for GNOME -
    • -
    • -com.informatimago.hangman - - This is the classic Hangman game -
    • -
    • -IGS Client - - Basic IGS client back-end -
    • -
    • -Langband - - Langband is a rewrite of the popular roguelike role-playing Game Angband -
    • -
    • -LispGameDevelopers - - About -
    • -
    • -LMud - - LMud is a MUD (Multi-User Dungeon) Game implementation written in Common Lisp with heavy use of CLOS and multiple inheritance -
    • -
    • -Planet of the Feebs - - Planet of the Feebs is a simulation Game loosely based on the "Maze War" game developed by Steve Colley and Greg Thompson at the NASA Ames Research Center in California 1974 -
    • -
    • -Pretzil - - Pretzil is a Z-Machine (interactive fiction) emulator for McCLIM, which makes it a Game -
    • -
    • -RLX - - RLX is a game engine for roguelike games written in Common Lisp -
    • -
    • -skitter - - A repl friendly event system for games -
    • -
    • -Star Trek - - Star Trek is a classic 1970s console game that originated on mainframes -
    • -
    • -texatl - - texatl is a tiny system for creating font and sprite atlases -
    • -
    • -The Feebs War - - The Game The Feebs War is a new project based on Planet of the Feebs, with the intent to improve it, giving better support for lisp newbies and enhancing the features provided -
    • -
    • -The Invaders - - The Invaders is a remake of the classic game Space Invaders -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/garbage-pools.html b/clones/lisp/www.cliki.net/garbage-pools.html deleted file mode 100644 index 77791316..00000000 --- a/clones/lisp/www.cliki.net/garbage-pools.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: garbage-pools - - - - - - - -
    garbage-pools
    GARBAGE-POOLS is a Common Lisp re-implementation of the APR Pools for resource management.


    -system programming, MIT-LICENSE
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/gcl.html b/clones/lisp/www.cliki.net/gcl.html deleted file mode 100644 index bcaf4d96..00000000 --- a/clones/lisp/www.cliki.net/gcl.html +++ /dev/null @@ -1,60 +0,0 @@ - - - - - CLiki: GCL - - - - - - - -
    GCL
    GNU Common Lisp is a Common Lisp implementation of the KCL Family that uses gcc to compile Lisp into native binaries. GCL started out as a CLtL1-level CL; steady progress is being made towards bringing it to ANSI CL compliance: It is almost there now. CVS head is rather close to compliance.

    GCL is released under the terms of the LGPL and is the official common lisp of the GNU System. It runs on twelve GNU/Linux architectures (x86 amd64 powerpc s390 sparc arm alpha ia64 hppa m68k mips mipsel), Windows, Sparc Solaris, FreeBSD, and Mac OS X. GCL has support for cross-platform graphical user interfaces using the Tk widget set.

    GCL is closely associated with the Maxima, ACL, ACL2, and Axiom projects.

    GCL is under -active development: the last version was released in September 6, 2014. The project is a GNU Savannah project and uses the GIT version control system.

    The current stable release of GCL (gcl-2.6.12.tar.gz) is 2.6.12, and can -be downloaded from GNU's FTP site. You can check out the GIT development source tree using the following commands:

    -git clone git://git.sv.gnu.org/gcl.git
    -cd gcl
    -git checkout master
    -cd gcl
    -

    You can download a MS Windows executable (".exe") and get other information for using GCL with Windows here.

    The -official home page has release notes and describes more of GCL's -features (X, MPI, flexible C FFI).

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/gecol.html b/clones/lisp/www.cliki.net/gecol.html deleted file mode 100644 index 27588a90..00000000 --- a/clones/lisp/www.cliki.net/gecol.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: gecol - - - - - - - -
    gecol
    gecol provides bindings to GECODE in order to enjoy constraint programming in Lisp.

    It's written by Kilian Sprotte and can be found at http://common-lisp.net/project/gecol/.


    -Topics: language extension dataflow
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/generators.html b/clones/lisp/www.cliki.net/generators.html deleted file mode 100644 index 8527f390..00000000 --- a/clones/lisp/www.cliki.net/generators.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: generators - - - - - - - -
    generators
    Generators is a library that provides python style generators in common lisp, by using cl-cont delimited continuations -For more info see:

    Git Hub: https://github.com/AccelerationNet/generators

    Uses: cl-cont

    Topic:AccelerationNet, continuations, language extension, python

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/genhash.html b/clones/lisp/www.cliki.net/genhash.html deleted file mode 100644 index 9f4fae0c..00000000 --- a/clones/lisp/www.cliki.net/genhash.html +++ /dev/null @@ -1,70 +0,0 @@ - - - - - CLiki: genhash - - - - - - - -
    genhash
    NET HEXAPODIA HASHTABLES is a data structure library for generic hash tables.

    The interface is specified in CDR 2: https://common-lisp.net/project/cdr/document/2/index.html

    This is currently in version 1.4, with MAP-GENERIC-HASH and WITH-GENERIC-HASH-TABLE-ITERATOR added. Still no LOOP path, though. There is, however, a pair of functions for hash tables using vectors of strings as keys.

    Generic hash table implementation. This implementation is in the -public domain.

    This package defines four generic functions and two normal functions. -The non-generic function MAKE-GENERIC-HASH-TABLE is used for -hash table creation.

    -(make-generic-hash-table (:test 'eql) (:size 17))
    -

    If this function is fed the symbols EQ, EQL, EQUAL or EQUALP as test it will create a generic hash table with that as an equality test -and SXHASH as the hash function.

    If this function is fed the functions EQ, EQL, EQUAL or EQUALP -it will create a normal (built-in) hash table with that as a test -function.

    -(register-test-designator nickname hash-fn equal-fn)
    -

    Register a new generic hash function with nickname as the relevant :test parameter.

    The generic functions are:

    -(hashref key table &optional (default nil))
    -

    This function does essentially the same thing as GETHASH.

    -((setf hashref) value key table &optional ignore)
    -

    For (setf (hashref ...) ...)

    -(map-generic-hash fn table)
    -

    As MAPHASH

    -(hashrem key table)
    -

    As REMHASH

    These functions dispatch somewhat differently depending on if they're -fed a generic hash table or a built-in hash table.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/gentoo.html b/clones/lisp/www.cliki.net/gentoo.html deleted file mode 100644 index 1e5fae07..00000000 --- a/clones/lisp/www.cliki.net/gentoo.html +++ /dev/null @@ -1,96 +0,0 @@ - - - - - CLiki: gentoo - - - - - - - -
    gentoo
    Similar to Debian, the Gentoo Linux distribution also offers a lot of -Common Lisp software ports ready to use.

    Supported Common Lisp Implementations

    -

    * support for Common Lisp Controller

    ** support for compiling site-wide Common Lisp source from /usr/share/common-lisp/source/ (clc-lite.lisp -- see README.Gentoo)

    + live CVS port

    Helping out with Common Lisp in Gentoo

    The Gentoo Common Lisp Project was established 10/2006. It includes a mailing list for -the development and discussion of Gentoo support for Common Lisp.

    The Common Lisp Portage Overlay is now the primary vehicle for development, even for official Gentoo maintainers. The overlay is a git repository. Use the following commands to get started:

    - - - - -
    Initial download
    git clone git://gitweb.gentoo.org/proj/lisp -

    - - - - -
    Periodic update
    git pull -

    -This overlay is accessible through layman and is called ``lisp'' (This guide includes information on how to install layman and add package overlays). Use ``layman -a lisp'' to add it.

    Feel free to develop existing ebuilds and contribute new ones.

    An obsolete overlay is also available; it's a Darcs repository.

    We hope users will create their own repositories based on the Common Lisp Portage Overlay and push and pull changes between themselves in true distributed fashion. Alternatively you can send patches to the Common Lisp Portage Overlay in a more centralized approach. Send mail to the Gentoo Common Lisp Mailing List to post your Darcs patches announce your repositories.

    Reporting Bugs and Feature Requests

    The best way to make suggestions, feature requests or requests for new ports is to file a bug with the Gentoo Bugzilla system.

    Platform Availability of Common Lisp Ports

    Almost all of the Common Lisp implementations and Common Lisp libraries in Portage are available for the following architecture keywords as of 24 May 2005: -~ppc, ~amd64, ~sparc and x86. This means if you're using the STABLE x86 keyword or the UNSTABLE amd64, ppc or sparc keywords, then you do not need to do -anything special to have the latest ports available.

    If you're using STABLE keywords with amd64, ppc or sparc, then most of the Common Lisp implementations and libraries will not be available to you by default. Luckily there is a mechanism in Portage where you can use specific UNSTABLE keyworded ports while you continue to use STABLE keywords in general. -The following section describes how to do this.

    Using Ports With Unstable Keywords

    If you are using one of the platforms for which the Common Lisp ports have unstable keywords (eg. ppc, amd64 or sparc) and you are using STABLE keywords -for your Gentoo system but would like to make available certain ports with UNSTABLE keywords, then this section applies to you.

    Refer to the Gentoo System Documentation, Working with Portage, Mixing Software Branches.

    Suppose for example you are using the stable ppc keyword (ie. "ppc" is the only keyword listed in your ACCEPT_KEYWORDS in /etc/make.conf). You want to be -able to use OpenMCL (dev-lisp/openmcl), SLIME (app-emacs/slime) and Araneida (dev-lisp/cl-araneida) but both are keyworded with "~ppc", ie. the -unstable ppc keyword. To make these ports available you must edit /etc/portage/package.keywords and include the following:

    -app-emacs/slime ~ppc
    -dev-lisp/openmcl ~ppc
    -dev-lisp/openmcl-build-tools ~ppc 
    -dev-lisp/cl-araneida ~ppc
    -dev-lisp/cl-net-telent-date ~ppc
    -dev-lisp/cl-split-sequence ~ppc 
    -

    This tells Portage to consider those ports as if you had "~ppc" in your ACCEPT_KEYWORDS.

    Alternatively, if you like getting all the newest stuff from the overlay, you can unmask all the categories at once. You can do this by adding the following to /etc/portage/package.keywords:

    -dev-lisp/* ~ppc
    -dev-scheme/* ~ppc
    -

    Working Without the Common Lisp Controller

    In the Gentoo Common Lisp Portage Overlay, support for the Common Lisp Controller has been removed. People (#lisp, mailing lists) frequently complain about the Common Lisp Controller, so now it's gone. Now SBCL, CMUCL and CLISP are delivered as their upstreams truly intended.

    Common Lisp libraries are still installed under /usr/share/common-lisp/source/ though, so a mechanism for compiling that source to a user read-writable path must be provided. This is something the user must do for themselves, however the Gentoo Common Lisp Project intends to provide a guide showing how to use ASDF-BINARY-LOCATIONS to achieve just that. A work in progress version of the guide is available. Gentoo Common Lisp User Guide

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/geocoder.html b/clones/lisp/www.cliki.net/geocoder.html deleted file mode 100644 index afbbd456..00000000 --- a/clones/lisp/www.cliki.net/geocoder.html +++ /dev/null @@ -1,63 +0,0 @@ - - - - - CLiki: geocoder - - - - - - - -
    geocoder
    Convert place names to geodesic coordinates and vice versa through OpenStreetMap.

    Examples:

    Name to places: -

    (geocoder:geocode (make-instance 'geocoder:osm-geocoder) - "Sognsvann, Oslo") -;; => -(#<GEOCODER/GEOCODER:PLACE "Sognsvann, Sognsveien, Kringsjå, Nordre Aker, Oslo, 0863, Norge" (59.96713 10.734004)> - #<GEOCODER/GEOCODER:PLACE "Sognsvann, Ankerveien, Marka, Oslo, 0863, Norge" (59.975132 10.729231)> - #<GEOCODER/GEOCODER:PLACE "Sognsvann, Sognsveien, Kringsjå, Nordre Aker, Oslo, 0863, Norge" (59.969307 10.734298)>) -

    Coordinates to place: -

    (geocoder:reverse-geocode (make-instance 'geocoder:osm-geocoder) - '(:lat 59.96713 :lon 10.734004)) -;; => -(#<GEOCODER/GEOCODER:PLACE "Sognsvann st, Sognsveien, Kringsjå, Nordre Aker, Oslo, 0863, Norge" (59.96748 10.733345)>) -

    Homepage: GitHub

    License: MIT

    Topics: geospatial

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/geohash.html b/clones/lisp/www.cliki.net/geohash.html deleted file mode 100644 index e8b1a076..00000000 --- a/clones/lisp/www.cliki.net/geohash.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: geohash - - - - - - - -
    geohash
    Geohash is a Common Lisp implementation of the latitude/longitude geocoding system invented by -Gustavo Niemeyer when writing the web service at geohash.org.

    More details can be found on the project's home page at Common-Lisp.net.

    geospatial

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/geospatial.html b/clones/lisp/www.cliki.net/geospatial.html deleted file mode 100644 index 69dbf459..00000000 --- a/clones/lisp/www.cliki.net/geospatial.html +++ /dev/null @@ -1,77 +0,0 @@ - - - - - CLiki: geospatial - - - - - - - -
    geospatial
    Geospatial (e.g. GIS) software is (loosely) that which deals with geographic data. (c.f. Geographic information system at Wikipedia)

      -
    • -cl-ewkb - - cl-ewkb is a geospatial library based on cl-wkb, supports PostGIS EWKB format (3d, 4d, embedded SRID extensions) -
    • -
    • -cl-gpx - - cl-gpx is a library to work with the GPX (the GPS Exchange Format) GPS XML file format -
    • -
    • -cl-proj - - cl-proj is a geospatial library that provides CFFI-based Common Lisp bindings for the Proj.4 geographic projections library -
    • -
    • -geocoder - - Convert place names to geodesic coordinates and vice versa through OpenStreetMap -
    • -
    • -geohash - - Geohash is a Common Lisp implementation of the latitude/longitude geocoding system invented by -
    • -
    • -utm - - utm is a geospatial library for converting latitude and longitude into UTM coordinates and vice-versa -
    • -
    -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/getopt.html b/clones/lisp/www.cliki.net/getopt.html deleted file mode 100644 index 7358fd9a..00000000 --- a/clones/lisp/www.cliki.net/getopt.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: getopt - - - - - - - -
    getopt
    getopt is a library for processing command-line arguments. The syntax of the command-line is modeled after GNU's getopt_long function.

    Repository: http://git.kpe.io/?p=getopt.git;a=summary

    License: BSD 3-Clause


    -command-line options parser
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/glass.html b/clones/lisp/www.cliki.net/glass.html deleted file mode 100644 index 1ccd12ca..00000000 --- a/clones/lisp/www.cliki.net/glass.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: glass - - - - - - - -
    glass
    General Lisp Authentication Security Services (glass) is a Common Lisp GSS-compatible API. It provides a set of generic functions which systems providing authentication services should specialize. Users wishing to consume these services should use these rather than functions exported directly from the providing packages.


    -MIT-LICENSE, RFC
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/glitter.html b/clones/lisp/www.cliki.net/glitter.html deleted file mode 100644 index 3c71f4b8..00000000 --- a/clones/lisp/www.cliki.net/glitter.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: glitter - - - - - - - -
    glitter
    glitter is a native Common Lisp library for working with git version control repositories. It does not depend on external programs or libraries.

    Homepage: https://github.com/froydnj/glitter

    It is not on Quicklisp (and has no asdf system yet).

    License: MIT

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/global-vars.html b/clones/lisp/www.cliki.net/global-vars.html deleted file mode 100644 index 291c0d91..00000000 --- a/clones/lisp/www.cliki.net/global-vars.html +++ /dev/null @@ -1,61 +0,0 @@ - - - - - CLiki: global-vars - - - - - - - -
    global-vars
    Define efficient global variables in Common Lisp.

    Repository: https://github.com/lmj/global-vars

    Synopsis

    ;; Similar to defparameter with regard to redefinitions -(define-global-parameter -x- 3) - -;; Similar to defvar with regard to redefinitions -(define-global-var -y- 4) - -;; ... - -(setf -x- 5) -(setf -y- 6)

    Description

    In Common Lisp, a special variable that is never dynamically bound typically serves as a stand-in for a global variable. The global-vars library provides true global variables that are implemented by some compilers. An attempt to rebind a global variable properly results in a compiler error. That is, a global variable cannot be dynamically bound.

    Global variables therefore allow us to communicate an intended usage that differs from special variables. Global variables are also more efficient than special variables, especially in the presence of threads.


    -compatibility layers, MIT-LICENSE
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/glop.html b/clones/lisp/www.cliki.net/glop.html deleted file mode 100644 index 2dd66cc7..00000000 --- a/clones/lisp/www.cliki.net/glop.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: glop - - - - - - - -
    glop
    Glop is an OpenGL window and input management library for win32 and X11, providing a native Lisp alternative to GLUT and GLFW. It does platform-independent OpenGL window setup and input handling. Glop provides direct bindings to system libraries and thus does not require any additional libraries.

    License: MIT

    Homepage: http://github.com/patzy/glop -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/graph-utils.html b/clones/lisp/www.cliki.net/graph-utils.html deleted file mode 100644 index 83fcc864..00000000 --- a/clones/lisp/www.cliki.net/graph-utils.html +++ /dev/null @@ -1,91 +0,0 @@ - - - - - CLiki: graph-utils - - - - - - - -
    graph-utils
    graph-utils: graph analysis utilities for Common Lisp

    This library started off as a project for a social network analysis class. It is somewhat simple, but reasonably useful, so I thought I would make it available for others.

    The source is available on github: https://github.com/kraison/graph-utils

    Author: Kevin Raison, raison@chatsubo.net

    License: MIT-License

    Dependencies: cl-ppcre, dso-lex, cl-yacc, trivial-shell, parse-number, alexandria, bordeaux-threads

    Implements the following functionality: -

      -
    1. Create directed and undirected graphs with a single edge type -
    2. -
    3. Compare graphs using graph= method -
    4. -
    5. Bulk-add function for adding lots of nodes and growing the adjacency matrix in one operation, thus speeding up the node addition process quite a bit -
    6. -
    7. Neighbors, outbound-edges and inbound-edges methods for listing a node's neighbors in directed and undirected graphs -
    8. -
    9. Edge deletion and creation methods -
    10. -
    11. Functions for mapping over all nodes and edges -
    12. -
    13. Denisty calculation -
    14. -
    15. Node degree & degree distribution calculation -
    16. -
    17. An implementation of Dijkstra's algorithm -
    18. -
    19. Distance map calculation -
    20. -
    21. Methods to find all components in a graph -
    22. -
    23. Graph visualization using the Graphviz library -
    24. -
    25. Random graph generation using the two methods specified in our labs -
    26. -
    27. Clustering algorithms based on edge betweenness and edge span -
    28. -
    29. Page rank and page rank distribution calculation -
    30. -
    31. Hubs and authorities calculation -
    32. -
    33. Graph center calculator -
    34. -
    35. GML and Pajek .net graph file format parsers -
    36. -

    TODO: -Get rid of the adjacency matrix and add typed edges.


    -Mathematics
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/graph.html b/clones/lisp/www.cliki.net/graph.html deleted file mode 100644 index 539cf24d..00000000 --- a/clones/lisp/www.cliki.net/graph.html +++ /dev/null @@ -1,72 +0,0 @@ - - - - - CLiki: graph - - - - - - - -
    graph
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/graphics library.html b/clones/lisp/www.cliki.net/graphics library.html deleted file mode 100644 index f9763448..00000000 --- a/clones/lisp/www.cliki.net/graphics library.html +++ /dev/null @@ -1,394 +0,0 @@ - - - - - CLiki: Graphics library - - - - - - - -
    Graphics library
    Low-level graphics libraries. There is a separate GUI page for things like widget toolkits. See also plotting/graphing libraries.

    Image (bitmap and vector) libraries: (main topic: image file)

    OpenGL libraries: (main topic: OpenGL)

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/graphics toolkit.html b/clones/lisp/www.cliki.net/graphics toolkit.html deleted file mode 100644 index 437f0f7b..00000000 --- a/clones/lisp/www.cliki.net/graphics toolkit.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Graphics Toolkit - - - - - - - -
    Graphics Toolkit
    See GUI
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/graylex.html b/clones/lisp/www.cliki.net/graylex.html deleted file mode 100644 index c66c733f..00000000 --- a/clones/lisp/www.cliki.net/graylex.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: graylex - - - - - - - -
    graylex
    graylex offers a means to do string operations on input streams without slurping all input at once by using Common Lisp Gray Streams, fixed-sized and flexible buffers.

    This is especially interesting for lexical analysis ("lexing") where input files can be exuberant, e.g. SQL dumps weighing hundreds of Megabytes.

    The package contains a usage example, GRAYLEX-M4-EXAMPLE and the project cl-m4 demonstrates real-world usage.

    Categories: lexer, Gray streams

    Author: Alexander Kahl

    Source repository: http://github.com/e-user/graylex.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/green-threads.html b/clones/lisp/www.cliki.net/green-threads.html deleted file mode 100644 index 4739bf86..00000000 --- a/clones/lisp/www.cliki.net/green-threads.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: green-threads - - - - - - - -
    green-threads
    GREEN-THREADS is a portable library implementing green threads (lightweight, cooperatively multitasked, user threads) in Common Lisp.

    License: BSD

    Homepage / Repo: https://github.com/deliciousrobots/green-threads

    Available via quicklisp: -

    (ql:quickload "green-threads")


    -system programming thread concurrency
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/group-by.html b/clones/lisp/www.cliki.net/group-by.html deleted file mode 100644 index 1ba44fea..00000000 --- a/clones/lisp/www.cliki.net/group-by.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: group-by - - - - - - - -
    group-by
    Group-by is a Common Lisp library to help group data into trees (of various formats) based on common/shared values

    For more info see:

    Git Hub: https://github.com/AccelerationNet/group-by


    -Topic: AccelerationNet, accumulators
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/gsharp.html b/clones/lisp/www.cliki.net/gsharp.html deleted file mode 100644 index 7e1d678d..00000000 --- a/clones/lisp/www.cliki.net/gsharp.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Gsharp - - - - - - - -
    Gsharp
    Gsharp is a graphical, interactive score editing application for standard Music notation. It can be customized by dynamically loading new Lisp code. The Gsharp user interface is based on CLIM. Source code, documentation and sample output are available at the project site.

    You will need to perform additional steps documented in the INSTALL file before running gsharp for the first time, to make the font files needed by the application.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/gsll.html b/clones/lisp/www.cliki.net/gsll.html deleted file mode 100644 index 74d9c20c..00000000 --- a/clones/lisp/www.cliki.net/gsll.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: GSLL - - - - - - - -
    GSLL
    GNU Scientific Library for Lisp allows you to use the GNU Scientific Library (GSL) from Common Lisp.

    This library provides a full range of common mathematics operations useful to scientific and engineering applications. The design of the GSLL interface is such that access to most of the GSL library is possible in a Lisp-natural way; the intent is that the user not be hampered by the restrictions of the C language in which GSL has been written. GSLL thus provides interactive use of GSL for getting quick answers, even for someone not intending to program in Lisp.

    Topics include: roots of polynomials, special functions, vector and matrix operations, permutations, sorting, BLAS support, linear algebra, eigensystems, fast Fourier transforms, quadrature, random numbers, quasi-random sequences, random distributions, statistics, histograms, N-tuples, Monte Carlo integration, simulated annealing, differential equations, interpolation, numerical differentiation, chebyshev approximation, series acceleration, discrete Hankel transforms, root-finding, minimization least-squares fitting, IEEE floating-point, discrete wavelet transforms.

    Available with Quicklisp.

    Homepage: at common-lisp.net.

    License: GPLv3

    Repository: GitLab

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/gtfl.html b/clones/lisp/www.cliki.net/gtfl.html deleted file mode 100644 index 74954026..00000000 --- a/clones/lisp/www.cliki.net/gtfl.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: gtfl - - - - - - - -
    gtfl
    GTFL is a graphical terminal for Common Lisp. The client is a html page running in a web browser and GTFL provides mechanisms for sending content to the client page from within Lisp (using HUNCHENTOOT and HT-SIMPLE-AJAX).

    It is meant for Lisp programmers who want to debug or visualize their own algorithms. Instead of printing tracing information to the Lisp listener (which everybody normally does to understand what's going on), more readable graphical representations of the algorithm's internals are sent to the GTFL client page.

    GTFL also comes with mechanisms for visualizing complex (hierarchical) data or control structures. It provides functions for drawing trees and for hiding complexity in elements that expand when the user clicks on them.

    It's written by Martin Loetzsch and can be found at http://martin-loetzsch.de/gtfl


    -gui debugging development
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/gtk-cffi.html b/clones/lisp/www.cliki.net/gtk-cffi.html deleted file mode 100644 index 028b945f..00000000 --- a/clones/lisp/www.cliki.net/gtk-cffi.html +++ /dev/null @@ -1,72 +0,0 @@ - - - - - CLiki: gtk-cffi - - - - - - - -
    gtk-cffi
    GTK-CFFI is a Common Lisp GUI library, that provides concise and idiomatic syntax to use GTK+ library (for now GTK+ 3.0).

    It should work in any lisp that supports CFFI.

    It can be downloaded from https://gitlab.common-lisp.net/gtk-cffi/gtk-cffi

    Requirements

    -

    Design

    The main goal of development is maximum freedom for a user of the library.

    For example, you may use as a signal handler: a lisp function; a symbol, corresponding to a lisp-function; a foreign-pointer to a C function; a string that is the name of a C function; a keyword, corresponding to the name of C function. Simply write (setf (gsignal widget :destroy) handler :data data). Data placeholder can contain any lisp object, you want to pass to the handler.

    GTK interface is mapped like this (similar to CLOS slots):

    - - - - - - - - - - - - -
    GTKLisp
    gtk_widget_set_parent(setf (parent widget) new-parent)
    gtk_widget_get_parent(parent widget)

    Properties are accessed through (property widget :property-name) or, if you need several at once, -(property widget :property-name1 :property-name2). Of course, they are setfable.


    -GTK binding
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/guess.html b/clones/lisp/www.cliki.net/guess.html deleted file mode 100644 index 2af31ec7..00000000 --- a/clones/lisp/www.cliki.net/guess.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: guess - - - - - - - -
    guess
    guess Japanese encoding (gauche's algorithm)

    Categorized as a string library, character encoding, or maybe a text library.

    Here: guess.tar.gz

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/gui.html b/clones/lisp/www.cliki.net/gui.html deleted file mode 100644 index 4a8b791e..00000000 --- a/clones/lisp/www.cliki.net/gui.html +++ /dev/null @@ -1,276 +0,0 @@ - - - - - CLiki: GUI - - - - - - - -
    GUI
    Graphical User Interface (GUI) toolkits, bindings, and tools. See also graphics library for low-level drawing and 3d libraries, and console for console/terminal (curses/readline) libraries. For X Windows/X11 protocol specific software, see x11.

    See the Common Lisp Cookbook#gui for a presentation of Ltk, Qtools, cl-cffi-gtk (Gtk3), IUP and Nuklear.

      -
    • -abcl-jazz - - Code examples on to call the Java Swing API under ABCL to program GUIs -
    • -
    • -ACUTE-TERMINAL-CONTROL - - Permit fast control of a terminal device -
    • -
    • -cells-gtk - - cells-gtk is a GTK+ based toolkit that enables a declarative-style description of a GUI -
    • -
    • -Celtk - - Cetlk is a Common Lisp wrapper of Tcl/Tk GUI toolkit, with Cells Inside(tm) -
    • -
    • -cffi-clutter - - cffi-clutter is a set of bindings to the Clutter GUI toolkit -
    • -
    • -cl-cffi-gtk - - cl-cffi-gtk is a Lisp binding to GTK+ 3 which is a library for creating graphical user interfaces -
    • -
    • -cl-dormouse - - Dormouse ('Doryen' + 'Mouse', groan) is a windowing `graphical' user interface built on top of libtcod -
    • -
    • -CL-ECMA-48 - - Implement the ECMA-48 standard -
    • -
    • -cl-fltk - - cl-fltk is a set of CFFI bindings to the FLTK GUI toolkit -
    • -
    • -cl-gtk2 - - CL-GTK2 is a Common Lisp GUI library that provides access to the Gtk+ cross-platform GUI library in idiomatic Lisp style -
    • -
    • -cl-gui - - Browser-based Common Lisp Gui Library GUI -
    • -
    • -cl-icebox - - cl-icebox is a Cross-Platform GUI framework written in Common Lisp, with help from ltk -
    • -
    • -cl-iup - - cl-iup is a binding for the IUP GUI library -
    • -
    • -cl-liballegro-nuklear - - CFFI wrapper for the Nuklear IM GUI library with liballegro backend, to be used with cl-liballegro -
    • -
    • -cl-smoke - - cl-smoke is a SMOKE-based wrapper for the Qt and KDE GUI frameworks -
    • -
    • -cl-tk - - CL-TK provides a simple bridge to Tcl/Tk -
    • -
    • -cl-xul - - Mozilla XUL bindings for Common Lisp -
    • -
    • -CLIM - - The Common Lisp Interface Manager (CLIM) is a Lisp-based programming interface specification that provides a layered set of portable facilities for constructing GUIs -
    • -
    • -CLIO - - Common Lisp Interactive Objects (CLIO) is a set of CLOS classes that represent the standard components of an object-oriented user interface --- such as text, menus, buttons, scroller, and dialogs -
    • -
    • -CLM - - CLM is an interface to the Motif GUI toolkit -
    • -
    • -CLOG - - CLOG is a GUI that uses web technology and also a web framework -
    • -
    • -clTcl - - clTcl provides an interface to Tcl/Tk via Tcl scripts embedded in Common Lisp -
    • -
    • -CLUE - - The Common Lisp User Interface Environment (CLUE) is a GUI library based on the X Window System and modeled on Xt -
    • -
    • -CLX-CURSOR - - A library for rendering antialiased cursors using CLX and XRender -
    • -
    • -CLX-TRUETYPE - - CLX-TRUETYPE is pure Common Lisp library for antialiased font rendering using CLX, XRender, ZPB-TTF, CL-VECTORS -
    • -
    • -Cocoa - - Libraries to interface with the Mac OS X Cocoa GUI API: -
    • -
    • -Common Lisp GTK-Server Wrapper - - Common Lisp Gtk-Server Wrapper is a new way to write platform-independent gui applications in Common Lisp -
    • -
    • -CommonQt - - CommonQt is a SMOKE-based binding to the Qt GUI library -
    • -
    • -croatoan - - croatoan is a set of bindings to the ncurses terminal / console library for Common Lisp -
    • -
    • -dialogue - - Dialogue is a Common Lisp tool to easy write GUI dialogs using the Java Standard Widget Toolkit (SWT) and Foil -
    • -
    • -EQL - - EQL is Embedded Qt Lisp, a Qt4/Qt5 GUI library binding embedded in ECL -
    • -
    • -FTW - - FTW is a Common Lisp Win32 GUI library -
    • -
    • -Garnet - - Garnet is a user interface development environment and GUI toolkit for Common Lisp and -
    • -
    • -Glade - - Glade is the GNOME Project's GUI interface builder -
    • -
    • -Graphic-Forms - - Graphic Forms is a Windows GUI library using the Win32 API -
    • -
    • -gtfl - - GTFL is a graphical terminal for Common Lisp -
    • -
    • -GTK binding - - This page lists Common Lisp bindings for the GTK GUI toolkit -
    • -
    • -gtk-cffi - - GTK-CFFI is a Common Lisp GUI library, that provides concise and idiomatic syntax to use GTK+ library (for now GTK+ 3.0) -
    • -
    • -halftone - - Halftone is a simple image viewer written with Qtools -
    • -
    • -IMCL - - ECL + IMGUI = IMCL -
    • -
    • -lambda-gtk - - Lambda-GTK is an apparently complete set of GTK+2 bindings, autogenerated by FFIGEN -
    • -
    • -ltk - - LTK is a set of CL bindings for the Tk GUI library, which provides a complete CLOS binding to the Tk widget set -
    • -
    • -McCLIM - - McCLIM is Mike McDonald's Free and portable implementation of CLIM, the Common Lisp ueber-GUI toolkit -
    • -
    • -MorphiCL - - MorphiCL is a (possibly misguided) attempt at creating a GUI for CL loosely based on Squeak/Self Morphic -
    • -
    • -nodgui - - Common Lisp bindings for the Tk GUI toolkit -
    • -
    • -pgl - - Portable Graphics Library is a simple GUI toolkit, for students and beginners, part of the Stanford Portable Library -
    • -
    • -qt-libs - - Working with CommonQt/Qtools currently requires working with SmokeQt -
    • -
    • -qtools - - Qtools aims to be a toolkit to support development with CommonQt -
    • -
    • -qtools-ui - - This is a collection of useful widgets and pre-made components for use in your Qt applications -
    • -
    • -simple-gui - - simple-gui is a CommonQt wrapper that provides a declarative way for fast creating simple GUI on Common Lisp with the Qt GUI library -
    • -
    • -SLIK - - SLIK (Simple Lisp Interface Kit) is a CLOS-based GUI toolkit that provides a thin abstraction layer over CLX -
    • -
    • -snow - - Snow is a GUI description language for Java and Common Lisp, currently supporting the Swing UI library -
    • -
    • -SymbolicWeb - - SymbolicWeb is a GUI toolkit and web framework that uses the browser to render UI elements -
    • -
    • -wxCL - - wxCL is a set of CFFI bindings for the wxWidgets GUI library -
    • -
    • -YstokGrid - - YstokGrid is a tabular data GUI widget based on the CAPI library for LispWorks -
    • -

    Tools:

      -
    • - wxGlade, a GUI builder for Wxwidgets applications, can generate Common Lisp code.
    • -

    References:

    A list of papers and reference manuals about UI: -http://lispm.de/docs/Publications/UI/.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/gy.mr.html b/clones/lisp/www.cliki.net/gy.mr.html deleted file mode 100644 index d30ea8dc..00000000 --- a/clones/lisp/www.cliki.net/gy.mr.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: gy.mr.html - - - - - - - -
    gy.mr.html
    Max rottenkolber's HTML generator. was renamed to MACRO-HTML.

    HTML, HTML generator

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/gzip-stream.html b/clones/lisp/www.cliki.net/gzip-stream.html deleted file mode 100644 index b847200a..00000000 --- a/clones/lisp/www.cliki.net/gzip-stream.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: gzip-stream - - - - - - - -
    gzip-stream
    gzip-stream is a simple wrapper around salza which gives CL users gzip compression and decompression in the form of streams (gzip-input-stream and gzip-output-stream). It uses flexi-streams and trivial-gray-streams.

    License: LLGPL

    Homepage: https://common-lisp.net/project/gzip-stream/

    Repository: https://gitlab.common-lisp.net/gzip-stream/gzip-stream

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/halftone.html b/clones/lisp/www.cliki.net/halftone.html deleted file mode 100644 index 6296bcae..00000000 --- a/clones/lisp/www.cliki.net/halftone.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: halftone - - - - - - - -
    halftone
    Halftone is a simple image viewer written with Qtools.

    The project can be found on github.
    -As of 2015, halftone is on Quicklisp.

    Halftone is licensed under the Artistic License 2.0.


    -GUI -application
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/heap.html b/clones/lisp/www.cliki.net/heap.html deleted file mode 100644 index b6d4434a..00000000 --- a/clones/lisp/www.cliki.net/heap.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: heap - - - - - - - -
    heap
    Simple implementation of a binary heap for Common Lisp. Very useful for priority queues, etc.

    Repository: https://github.com/massung/heap/

    License: Apache 2


    -data structure
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/hh-parse.html b/clones/lisp/www.cliki.net/hh-parse.html deleted file mode 100644 index f397e760..00000000 --- a/clones/lisp/www.cliki.net/hh-parse.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: hh-parse - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/hh-redblack.html b/clones/lisp/www.cliki.net/hh-redblack.html deleted file mode 100644 index 4e739c20..00000000 --- a/clones/lisp/www.cliki.net/hh-redblack.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: hh-redblack - - - - - - - -
    hh-redblack
    hh-redblack provides in-memory and disk-based red-black trees.

    Homepage: http://haphazardhouse.net/projects/hh-redblack

    Source: https://github.com/hargettp/hh-redblack

    License: MIT


    -Topics: data structure StructuredStorage
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/hh-web.html b/clones/lisp/www.cliki.net/hh-web.html deleted file mode 100644 index d67e23ad..00000000 --- a/clones/lisp/www.cliki.net/hh-web.html +++ /dev/null @@ -1,62 +0,0 @@ - - - - - CLiki: hh-web - - - - - - - -
    hh-web
    HH-Web is a library of Common Lisp code intended to simplify development of modern web applications.

    Features: -

      -
    • Custom tags for rapid HTML/CSS/Javascript generation -
    • -
    • Content templates for consistent site structure (HTML and image) -
    • -
    • Site customizations for specific user agents -
    • -
    • Regex-based URL routing -
    • -

    Source repository: HH-WEB on Github.com

    License: MIT


    -Topics: web framework
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/house.html b/clones/lisp/www.cliki.net/house.html deleted file mode 100644 index 4ce480fb..00000000 --- a/clones/lisp/www.cliki.net/house.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: house - - - - - - - -
    house
    A minimal event-driven web-server, tailor made for web games, but generally useful.

    Github page here, which includes some documentation in markdown format.

    No GPG keys, so download at your own risk.

    HTTP server

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ht-simple-ajax.html b/clones/lisp/www.cliki.net/ht-simple-ajax.html deleted file mode 100644 index 2d0b884f..00000000 --- a/clones/lisp/www.cliki.net/ht-simple-ajax.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: ht-simple-ajax - - - - - - - -
    ht-simple-ajax
    HT-SIMPLE-AJAX is an Ajax library for the HUNCHENTOOT web server. It allows to call ordinary Lisp functions from within an html page using javascript and asynchronous client/server communication.

    It is a heavily simplified (150 lines of code) version of HT-AJAX that is compatible with newer versions (>1.1) of HUNCHENTOOT. It was initially developed for GTFL and therefore provides only one type of Ajax processor (which resembles the 'simple' processor of HT-AJAX).

    It's provided by Martin Loetzsch and can be found at http://martin-loetzsch.de/ht-simple-ajax


    -web framework
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/html generator.html b/clones/lisp/www.cliki.net/html generator.html deleted file mode 100644 index 5cabeac2..00000000 --- a/clones/lisp/www.cliki.net/html generator.html +++ /dev/null @@ -1,113 +0,0 @@ - - - - - CLiki: HTML generator - - - - - - - -
    HTML generator
    HTML generators are libraries that let you generate HTML from within your Lisp code, as opposed to HTML template libraries.

    -See also a comparison of HTML generators .

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/html->string.html b/clones/lisp/www.cliki.net/html->string.html deleted file mode 100644 index eb2cbf93..00000000 --- a/clones/lisp/www.cliki.net/html->string.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: html->string - - - - - - - -
    html->string
    html->string aims to be the simplest HTML generator. There are no macros; it simply converts a list-based structure into an HTML string. It can insert escape codes too. html->string can be used as an HTML template library if backquote syntax is used to generate the list before passing it to html->string.

    html->string is published as a Github Gist because it is so small (less than 100 lines, including documentation).

    html->string is released under the WTFPL.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/html-encode.html b/clones/lisp/www.cliki.net/html-encode.html deleted file mode 100644 index bdc4252b..00000000 --- a/clones/lisp/www.cliki.net/html-encode.html +++ /dev/null @@ -1,62 +0,0 @@ - - - - - CLiki: html-encode - - - - - - - -
    html-encode
    html-encode is a small library for encoding text in various web-savvy formats. These are the functions exported from the html-encode package:

      -
    • -encode-for-pre - encodes text so it's suitable for inclusion in a HTML PRE element, or in a regular tag with HTML spacing.
    • -
    • -encode-for-argument does the same thing as encode-for-pre, except it also encodes quotation marks as SGML &quot; so they can be used in HTML element attributes. -
    • -
    • -encode-for-tt - attemps to encode the text so it can display in a TT element with proper spacing. The keyword argument first-char-nbsp controls whether the first character should be rendered as a non-breaking space if it is a space in the input text.
    • -
    • -encode-for-http - A highly misnamed function which does nothing of the sort. It breaks the string on the ends of tags so that long lines aren't sent.
    • -
    -Repository: https://github.com/dmitryU/debian-lisp/tree/master/html-encode

    License: MIT

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/html-extract.html b/clones/lisp/www.cliki.net/html-extract.html deleted file mode 100644 index b47d7583..00000000 --- a/clones/lisp/www.cliki.net/html-extract.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: html-extract - - - - - - - -
    html-extract
    An application implemented in CLISP to extract the plain text from HTML documents.

    Written in 2002/2003 by Edi Weitz and downloadable from https://github.com/vikram/lisplibraries/tree/master/site/html-extract-0.1.0.


    -HTML parser
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/html-template.html b/clones/lisp/www.cliki.net/html-template.html deleted file mode 100644 index 5a32c52a..00000000 --- a/clones/lisp/www.cliki.net/html-template.html +++ /dev/null @@ -1,166 +0,0 @@ - - - - - CLiki: html-template - - - - - - - -
    html-template
    HTML-TEMPLATE is an HTML template library to use templates much like Perl's HTML::Template. Despite its name, HTML-TEMPLATE is HTML-agnostic and could be used for templating other documents.

    It was written by Edi Weitz and can be found at https://edicl.github.io/html-template/.

    Jörg Höhle also liked the idea of a clear and complete -separation between HTML (written by designers) and code. He -came up with a variant of Edi's approach to HTML template. It uses -Edi's parsing code (thanks!), no more, but the programmer view on it -feels very different.

    Consider Edi's 7x7 chess board example on his documentation page and -how my code would look like:

    (setq my-template - ;; load and check against specification - (tmpl-load "file.html" '((LOOP rows (LOOP cols colorful-style content))))) - -(let ((counter 0)) - (tmpl-print - my-template - (lambda (rowprinter) - (loop repeat 7 do - (funcall rowprinter - (lambda (cellprinter) - (loop repeat 7 do - (funcall cellprinter (oddp counter) (format nil "~R" counter)) - (incf counter)))))))) -

    Jörg Höhle's design goals: -

    • Separate HTML design from code as much as possible, the key - idea in the template approach.

    • -
    • Verifiable specification of the interface between - both, never see "$foo" in a user's browser as an indication that - some variable was not substituted.

    • -
    • Designer and programmer work concurrently early - on. The programmer may use a default template automatically derived - from the specification, the web-designer a random-content template - delivering web-server based on this specification.

    • -
    • Efficiently deliver data, which should be no - slower than frameworks based on direct embedding of code in HTML or - vice-versa. That's why I rejected intermediate structures (Edi's template - structure) and produce compilable code. A parsed template - becomes Lisp code, which can be either compiled and loaded as such - from the file system, or compiled on the fly at load-time.

    • -
    • Incrementally deliver results as produced (useful - for huge data or HTTP 1.1 chunked encoding) which is incompatible - with non-lazy intermediate structures.

    • -
    • Provide for lexical scoping in templates, - unlike Perl's HTML::Template. That is, a TMPL_VAR occurring - inside TMPL_LOOP may reference variables defined in an - outer (e.g. global) level. There's no need to repeat definitions at - inner levels.

    • -
    • Deliver data in pieces as large as possible: i.e. no individual - calls to PRINC or FORMAT for each HTML tag, coalesce these - instead.

    • -
    • Early HTML validation of the templates -
    • -
    • some more I forgot...

    • -

    [This next section confuses me a bit. I think a list entry refers to Edi's version, but I can't really tell.] -Some differences between Edi and Jörg's work include: -

      -
    • No TMPL_INCLUDE -
    • -
    • No facility for caching or automated reloading, which I feel - orthogonal to templates, interferes with - TMPL_INCLUDE and is left to the application. -
    • -
    • An attempt to load templates validates them, so the running - web-server application will choose to reject template updates (and - log the error) until they are corrected instead of displaying - garbage to the user. -
    • -
    • TMPL_VAR may have content, which is valuable for - the web designer's GUI: s/he sees this content up to a closing - /TMPL_VAR. -
    • -
    • Variable substitution on the code side is based on ordering - in the specification, not on names or symbols, so there are no - surprises with packages and symbol-names across files. -
    • -
    • The template substituting code is trivially small and was - ported to Scheme. In fact, there's almost no such code since it's - in part in the programmer calling sequence (witness the above - example) and part in the Lisp code representing the template. -
    • -
    • Edi's got a package ready to go for you. [So is there code somewhere interested people could hack on, or something?] -
    • -

    My experience: -

      -
    • The above specification is not all about the interface between - programmer and designer. URL structure, form names etc. need also - be agreed upon. -
    • -
    • The template approach is very useable for - applications with small or medium demand for variable - appearance. Or you'd need too many templates. -
    • -
    • I generated pages using templates featuring highly - dynamic content (e.g. variable numbers of both rows and - colums of a table, selectable and variable order) which some people - initially thought not usable with a strict templates approach. It - was, in fact, clean and easy. -
    • -
    • TMPL_LOOP and TMPL_VAR are really - general and could even emulate TMPL_IF. -
    • -
    • I generated my templates from Lisp code via SXML, instead of - having a designer. This aids consistency among templates. For a - all-by-one-person job, the separation is clear overhead, even if - there's potential for code reuse. You'd probably prefer a - HTML-from-sexpr approach in such a case and bypass templates. -
    • -
    • HTML validation of the templates is hindered by - TMPL_IF with an ELSE part, substitutions - inside attributes and obviously only possible when the - substitutions done by TMPL_VAR affect the HTML - structure. The most dynamic template is TMPL_VAR - make-it-all!

    • -
    • As an enhancement, there could be a mechanism for global - substitutions which would remain outside of the specification. - E.g. some pages like to display calendars, the current date or use - a mapping from month names to numbers etc. Such substitutions could - always be present, across all pages of the application. -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/html.html b/clones/lisp/www.cliki.net/html.html deleted file mode 100644 index 68ea90f7..00000000 --- a/clones/lisp/www.cliki.net/html.html +++ /dev/null @@ -1,104 +0,0 @@ - - - - - CLiki: HTML - - - - - - - -
    HTML
      -
    • -3bmd - - 3bmd is a Markdown to HTML converter -
    • -
    • -CL-HTML-DIFF - - CL-HTML-DIFF is a library for generating a human-readable diff of two HTML documents, using HTML -
    • -
    • -cl-libxml2 - - cl-libxml2 is high-level wrapper around libxml2 and libxslt libraries -
    • -
    • -closure-html - - Closure HTML is a portable HTML parsing library that understands malformed HTML -
    • -
    • -CLSS - - CLSS is a DOM traversal/search engine using CSS selectors -
    • -
    • -Exscribe - - Exscribe is a CL-based document authoring tool in the spirit of Manuel Serrano's Scribe -
    • -
    • -gy.mr.html - - Max rottenkolber's HTML generator -
    • -
    • -html-encode - - html-encode is a small library for encoding text in various web-savvy formats -
    • -
    • -htout - - htout is an HTML generator written by Tim Bradshaw -
    • -
    • -lQuery - - lQuery is a DOM manipulation library inspired by and based on the jQuery syntax and functions -
    • -
    • -macro-html - - MACRO-HTML is Max Rottenkolber's HTML generator -
    • -
    • -Plump - - Practically Lenient and Unimpressive Markup Parser -
    • -
    • -Stencl - - Stencl is a simple templating library loosely based on BRL (the Beautiful Report Language) -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/htmlgen.html b/clones/lisp/www.cliki.net/htmlgen.html deleted file mode 100644 index 98b38fe0..00000000 --- a/clones/lisp/www.cliki.net/htmlgen.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: htmlgen - - - - - - - -
    htmlgen
    htmlgen is the name of the html generation software built into allegroserve, in the package net.html.generator. Documentation is at the project site.

    html generator

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/htout.html b/clones/lisp/www.cliki.net/htout.html deleted file mode 100644 index b1295c2d..00000000 --- a/clones/lisp/www.cliki.net/htout.html +++ /dev/null @@ -1,67 +0,0 @@ - - - - - CLiki: htout - - - - - - - -
    htout
    htout is an HTML generator written by Tim Bradshaw. It can be found at https://github.com/tfeb/interim-lisp/blob/master/htout.lisp. Here's some more info from Tim Bradshaw's website:

    Lisp's syntax can be used to express the structure of -SGML/XML-based documents very concisely:

    <doc>
    -  <heading>Foo</heading>
    -  <para>this is a paragraph</para>
    -</doc>

    Becomes

    (:doc - (:heading "Foo") - (:para "This is a paragraph"))

    Because Lisp is also a programming language it is possible to - mingle Lisp code and SGML/XML markup in Lisp syntax to - programmatically generate documents.

    In order to do this `right' for XML you need to deal with - issues of Unicode, case, namespaces and so on. -But almost all documents don't need to worry about this complexity. This code - provides a simple way to mix HTML markup with Lisp code. It does - not enforce anything except the matching of tags, so it knows - nothing about document types or anything like that. In fact the - only thing you need to tell it is which elements have empty - content models, so it generates <br> rather than - <br></br>.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/http-response-handler.html b/clones/lisp/www.cliki.net/http-response-handler.html deleted file mode 100644 index 2bc57e5e..00000000 --- a/clones/lisp/www.cliki.net/http-response-handler.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: http-response-handler - - - - - - - -
    http-response-handler
    http-response-handler is a set of Lisp conditions for HTTP error responses. It is designed around the result of Drakma’s HTTP-REQUEST function, because it is the most popular HTTP client library, but it can easily be used with any library out there.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/http-routes.html b/clones/lisp/www.cliki.net/http-routes.html deleted file mode 100644 index d9733e40..00000000 --- a/clones/lisp/www.cliki.net/http-routes.html +++ /dev/null @@ -1,79 +0,0 @@ - - - - - CLiki: http-routes - - - - - - - -
    http-routes
    http-routes is a library which attempts to create capable http(url) routes lib without regexps.

    Example route definitions

    -(define-routes :api - ;;pages - (get "/pages(/)" :handler "get pages") - (post "/pages(/)" :handler "create new page") - (get "/pages/:page-id" :handler "get page" :name 'api-page-path) - (delete "/pages/:page-id" :handler "delete page") - (post "/pages/:page-id" :handler "update page")) - -(define-routes :admin ;; this equals to (:admin "/admin") - (include :api) - ;;service stuff - (get "/login" :handler "default admin login page" :name 'admin-login-path) - (post "/login" :handler "perform actual admin login") - (get "/logout" :handler "admin logout") - ;;main route for our Single Page Application - (get "(/)(*spa-path)" :handler "admin spa")) - -(define-routes (:site "") - (include :admin :section "/cms-admin") - (get "/(*page-id)" :handler "render page" :defaults (alist-hash-table '((:page-id . :latest)))) - (get "/cms-admin/login" :handler "site customized admin login page")) -

    after attaching these routes:

    -(path-for 'admin-login-path) -"/cms-admin/login" -(path-for 'api-page-path '((:page-id . 123))) -"/api/pages/123" -


    -URI
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/hu.dwim.logger.html b/clones/lisp/www.cliki.net/hu.dwim.logger.html deleted file mode 100644 index 0dc02f4b..00000000 --- a/clones/lisp/www.cliki.net/hu.dwim.logger.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - CLiki: hu.dwim.logger - - - - - - - -
    hu.dwim.logger
    hu,dwim,logger is a logging library.

    A tree of log categories delegating log messages to their parents. Each logger can have multiple appenders that can emit the messages somewhere.

    Distinguishing features: -

      -
    • separate compile-time/run-time log levels
    • -
    • a thread-safe caching file appender
    • -

    Homepage: http://dwim.hu/darcs/hu.dwim.logger/

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/hu.dwim.util.html b/clones/lisp/www.cliki.net/hu.dwim.util.html deleted file mode 100644 index ca8127e9..00000000 --- a/clones/lisp/www.cliki.net/hu.dwim.util.html +++ /dev/null @@ -1,73 +0,0 @@ - - - - - CLiki: hu.dwim.util - - - - - - - -
    hu.dwim.util
    A collection of utilities used mostly by the libraries at dwim dot hu.

    It has several ASDF systems to bring in external dependencies in a more fine-grained way:

    -hu.dwim.util
    -hu.dwim.util.authorization
    -hu.dwim.util.documentation
    -hu.dwim.util.error-handling
    -hu.dwim.util.error-handling+swank
    -hu.dwim.util.finite-state-machine
    -hu.dwim.util.flexml
    -hu.dwim.util.i18n
    -hu.dwim.util+iolib
    -hu.dwim.util.mop
    -hu.dwim.util.production
    -hu.dwim.util.production+swank
    -hu.dwim.util.soap
    -hu.dwim.util.source
    -hu.dwim.util.standard-process
    -hu.dwim.util.temporary-files
    -hu.dwim.util.test
    -hu.dwim.util.threads
    -hu.dwim.util.worker-group
    -hu.dwim.util.zlib
    -

    Source code is available at the darcsweb running at dwim.hu -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/hu.dwim.zlib.html b/clones/lisp/www.cliki.net/hu.dwim.zlib.html deleted file mode 100644 index faf5883a..00000000 --- a/clones/lisp/www.cliki.net/hu.dwim.zlib.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: hu.dwim.zlib - - - - - - - -
    hu.dwim.zlib
    hu.dwim.zlib is a set of CFFI bindings to the zlib compression library.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/huffman.html b/clones/lisp/www.cliki.net/huffman.html deleted file mode 100644 index 79973026..00000000 --- a/clones/lisp/www.cliki.net/huffman.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: huffman - - - - - - - -
    huffman
    A very simple implementation of Huffman coding for Common Lisp.

    Repository: https://github.com/massung/huffman/

    License: Apache 2


    -compression
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/humor.html b/clones/lisp/www.cliki.net/humor.html deleted file mode 100644 index 855739aa..00000000 --- a/clones/lisp/www.cliki.net/humor.html +++ /dev/null @@ -1,152 +0,0 @@ - - - - - CLiki: Humor - - - - - - - -
    Humor
    Lispers like to laugh too: -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/hunchentoot-auth.html b/clones/lisp/www.cliki.net/hunchentoot-auth.html deleted file mode 100644 index 923482c2..00000000 --- a/clones/lisp/www.cliki.net/hunchentoot-auth.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: hunchentoot-auth - - - - - - - -
    hunchentoot-auth
    Authentication support for Hunchentoot by Cyrus Harmon.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/hunchentoot-vhost.html b/clones/lisp/www.cliki.net/hunchentoot-vhost.html deleted file mode 100644 index 0c4709e5..00000000 --- a/clones/lisp/www.cliki.net/hunchentoot-vhost.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: hunchentoot-vhost - - - - - - - -
    hunchentoot-vhost
    Virtual host support for hunchentoot, by Cyrus Harmon.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/hunchentoot.html b/clones/lisp/www.cliki.net/hunchentoot.html deleted file mode 100644 index 6af1b1a8..00000000 --- a/clones/lisp/www.cliki.net/hunchentoot.html +++ /dev/null @@ -1,76 +0,0 @@ - - - - - CLiki: Hunchentoot - - - - - - - -
    Hunchentoot
    Hunchentoot is a robust and easy to use HTTP server. As a stand-alone web server, Hunchentoot is capable of HTTP/1.1 chunking (both directions), persistent connections (keep-alive), and SSL.

    Hunchentoot currently works with LispWorks (which is the main development and testing platform), CMUCL (with MP support), SBCL (with Unicode and thread support), OpenMCL, and ACL.

    It's written by Edi Weitz and can be found at https://github.com/edicl/hunchentoot.

    Cyrus Harmon has contributed support for virtual hosts, CGI, and authentication in Hunchentoot.

    A basic tutorial on using Hunchentoot for Lisp web apps is available here.

    Hunchentoot-related pages

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/hyde.html b/clones/lisp/www.cliki.net/hyde.html deleted file mode 100644 index 061c994f..00000000 --- a/clones/lisp/www.cliki.net/hyde.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: hyde - - - - - - - -
    hyde
    Hyde 1 is a static web site generator written in ECL (Embedded Common Lisp), with no dependencies on external systems, except CL-PPCRE. Easy to deploy standalone executables are provided for users convenience.

    Lisp Hyde is an overall remake of Ruby Jekyll, featuring a Lispy syntax for the HTML code and providing some non-invasive syntax-checking of HTML code.

    Full HTML modularization, including templates and layouts are achieved through the use if a simple include tag.

    The integrated webserver is used to generate and test HTML pages on the fly. Requesting an HTML file causes it to be re-generated if the corresponding Lisp file (same name) is newer. Requesting a directory updates all HTML files inside this directory and its sub directories which need to be updated, except in places excluded by configuration. Dependencies amongst Lisp files are automatically tracked by Hyde.

    This project targets all webmasters and even those with little programming experience would benefit from using Lisp instead of HTML, without loosing any of the HTML features. Any editor can be used to author web pages.

    For advanced users, and unlike Jekyll, the full power of Common Lisp is available to the purpose of static HTML5 generation. It is just standard CL code you embed into Lisp HTML code, without any need to develop separate plugins or to have to know and adhere to programmatic interfaces.

    As an example, here is the full source code of a simple HTML5 homepage written in Lisp HTML.

    I am looking for other developers to help me. The project is yours too. Feel free to join this effort to bring Lisp to the masses.

    1 © 2012 by insane programmer Antonio Bonifati and 1886 by striking writer Robert Louis Stevenson.


    -HTML generator, GPL3, web framework
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/hyperdoc.html b/clones/lisp/www.cliki.net/hyperdoc.html deleted file mode 100644 index 2351ca73..00000000 --- a/clones/lisp/www.cliki.net/hyperdoc.html +++ /dev/null @@ -1,109 +0,0 @@ - - - - - CLiki: hyperdoc - - - - - - - -
    hyperdoc
    Hyperdoc means mapping symbols to documentation URIs for libraries as well -as the COMMON-LISP package, as is done by hyperdoc.el and co. The client interface can then do whatever it likes with this URL (popping up a browser, rendering a link, etc).

    There are several contending interfaces:


    Hyperdoc model A

    - http://common-lisp.net/project/hyperdoc/ -

    In the spirit of friendly propaganda, a short summary of the salient points -offered by this interface: -

      -
    • Supports both introspection and index-based lookups, so documentation - can be found for packages not in image. -
    • -
    • The generated indices are in a very simple "strings in a list" format, - so that Emacs should be able to read them without trouble, and do - the lookup magic even if not connnected to a real lisp. -
    • -
    • The packages supporting this interface do not need to depend on the - hyperdoc package: only client side uses this code. Libraries just implement - the interface. -
    • -

    Downside analysis welcome. ;-)


    Hyperdoc model B

    External interface is the HYPERDOC function. Packages do -

    -(defmethod hyperdocumentation ((package (eql #.*package*) name doc-type)
    -   ... )
    -;;; 
    -(defgeneric hyperdocumentation (package name doc-type))
    -(defmethod hyperdocumentation ((package symbol) name doc-type)
    -  (hyperdocumentation (find-package package) name doc-type))
    -
    -(defun hyperdoc (name doc-type)
    -  ;; if no type given return uris for all types, and autogenerate
    -  ;; a selection page (ala clhs)?
    -  (hyperdocumentation (symbol-package name) name doc-type))
    -

    Disadvantage: only works usefully for symbols, not functions or classes or anything else


    Hyperdoc model C

    2) Use the DOCUMENTATION framework, defining HDOC:T, HDOC:FUNCTION, etc etc -as new doc-types

    -(documentation (function 'foo) 'hyper:t)
    -(documentation 'foo 'hyper:function)
    -

    Disadvantage: each object must have its documentation strings set individually -with (setf documentation); probably most packages will end up doing something -like

    -(loop for x being the external-symbols of "FOO" when (fboundp x) 
    -      do (setf (documentation x 'hyper:function) ...) and 
    -      do (setf (documentation (fdefinition x) 'hyper:t) ...))
    -


    Hyperdoc model D

    (merger of B and C)

    -(defun hyperdoc (name doc-type) 
    -  (or (documentation name (intern (symbol-name doc-type) 
    -				  (find-package "HDOC")))
    -      (hyperdocumentation (symbol-package name) name doc-type)))
    -

    URLs returned from HYPERDOC should -be absolute, however you achieve that. If the base url of your package is configurable, you're going to have -to figure out some way to configure it. Couple of possibilities:

    (a) for DOCUMENTATION users, define an additional HDOC:BASE-URI -(or similar) doc-type on each documented object, and use a :around method to merge it in

    -(defmethod documentation :around (thing (type (eql hyper:t)))
    -  (merge-uris (call-next-method) (documentation thing 'hyper:base-uri)))
    -

    (b) If you're using HYPERDOCUMENTATION (i.e. specializing on Lisp package) you can merge YOURPACKAGE:*HYPERDOC-BASE-URI* in fairly easily.


    Some sketchy thoughts on the subject

    I'm a supporter of hyperdoc, but my angle may be slightly different. A future version of hyperdoc may want to accomodate editing and documentation-lookups in an emacs/editor when a lisp is not running or the lisp has not loaded all packages you're writing code for. Some of my projects either work as batch-jobs or they have quirky startup/restart and keeping a lisp with all code loaded for docs is not an option. I want hyperdoc to be able to lookup docs for my code following, e.g loaded lookup-tables, not unlike used for CLHS lookups now.

    These lookup-tables can be produced by introspection at a point when the system/app is loaded or through groveling over the source-code without loading the actual system. The lookup-tables may contain more information that may be of interest, e.g matching a symbol to the asdf-system it belongs to, the file where it is defined, what kind of object it is, etc. This will allow hyperdoc to be extended to be able to return and combine this info, allowing quick use of it e.g to open a file where a certain function is.

    Automating this process is also doable, maybe by letting common-lisp-controller ask the asdf-file for the location of the lookup-table or calling a docstring-fetcher/doc-tool on the asdf-file or compiled system. By putting the lookup-table in a dedicated directory, emacs/editor/slime/ilisp/etc can fetch this table just like it fetches the CLHS entries.

    The lookup-tables may also be used by other lisp-related tools for other information. --Fufie

    Some comments: I'd like to keep CLC out of the picture. I see two viable possibilities for index generation: either call hyperdoc:generate-index from within eval-when :compile-toplevel in the clien packages, or have a method on asdf:compile-op do it. I think the correct protocol vis-a-vis when to use indices and when to use introspection looks like:

      -
    • Emacs: If connected use hyperdoc, if not use indices in ~/.hyperdoc/. -
    • -
    • Hyperdoc: If the package is loaded, use introspection, if not use - the indices.
    • -

    I've implemented the hyperdoc side of this and an initial version of pregenerated indices in the hyperdoc repository.

    This involved changing the interface of hyperdoc:lookup to -(lookup package-desinator string-designator &optional documentation-type) to be able to do lookups for symbols in packages not in the current image. -- Nikodemus Siivola


    -Documentation Tool
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/hyperobject.html b/clones/lisp/www.cliki.net/hyperobject.html deleted file mode 100644 index 417152e1..00000000 --- a/clones/lisp/www.cliki.net/hyperobject.html +++ /dev/null @@ -1,59 +0,0 @@ - - - - - CLiki: hyperobject - - - - - - - -
    hyperobject
    Hyperobject is a Object Representation package for development. It emphasizes object printing in ASCII text, HTML, and XML formats both with and without field labels and hyperlinks to related objects.

    Hyperobject is supported on: -

      -
    • SBCL 0.8.x
    • -
    • CMUCL 18e+
    • -
    • AllegroCL 6.2
    • -
    • Lispworks 4.2.7
    • -
    • SCL 1.1.1
    • -
    • OpenMCL 0.14
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/hyperspec-lookup.html b/clones/lisp/www.cliki.net/hyperspec-lookup.html deleted file mode 100644 index 1e5d02d0..00000000 --- a/clones/lisp/www.cliki.net/hyperspec-lookup.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: hyperspec-lookup - - - - - - - -
    hyperspec-lookup
    hyperspec-lookup is an ANSI Common Lisp library that gives the user an interface to mapping symbols to URLs for the Common Lisp Hyperspec and Common Lisp Object System (CLOS) MetaObject Protocol.


    -Documentation Tool, MIT-License
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ia-hash-table.html b/clones/lisp/www.cliki.net/ia-hash-table.html deleted file mode 100644 index 66f7e08b..00000000 --- a/clones/lisp/www.cliki.net/ia-hash-table.html +++ /dev/null @@ -1,90 +0,0 @@ - - - - - CLiki: ia-hash-table - - - - - - - -
    ia-hash-table
    Indifferent access hash-tables for Common Lisp. Also with dot syntax

    Github repo

    Example -

    ->> (defvar ht (ia-hash-table:make-ia-hash-table)) -HT ->> (setf (gethash "qwe" ht) 1) -1 ->> (gethash :qwe ht) -1 -T - -(enable-ia-syntax) - -(defparameter response (alist-ia-hash-table '(("name" . "John Smith") - ("age" . 34) - ("city" . "New York") - ("account" . (("checking" . 36223) - ("saving" . 468300)))))) - ->> #Iresponse.name -"John Smith" - ->> #Iresponse.account.saving -468300 - ->> #Iresponse.address -NIL - ->> #Iresponse.address.state -The value NIL is not of type HASH-TABLE. - ->> #Iresponse.address?.state -NIL - -;; or even -(defparameter nil-response nil) - ->> #Inil-response?.account.saving -NIL -

    License: MIT


    -Topics: convenience library language extension
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/id3v2.html b/clones/lisp/www.cliki.net/id3v2.html deleted file mode 100644 index cc6d7f70..00000000 --- a/clones/lisp/www.cliki.net/id3v2.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: id3v2 - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/idna.html b/clones/lisp/www.cliki.net/idna.html deleted file mode 100644 index e8b81146..00000000 --- a/clones/lisp/www.cliki.net/idna.html +++ /dev/null @@ -1,57 +0,0 @@ - - - - - CLiki: idna - - - - - - - -
    idna
    International Domain Name functions for Common Lisp.

    Source repository: https://github.com/antifuchs/idna

    License: MIT

    Usage:

    Loading: - (asdf:load-system :idna)

    Decoding strings: - (idna:to-ascii "中央大学.tw") - ;; => "xn--fiq80yua78t.tw"

    (idna:to-ascii "müller.example.com") - ;; => "xn--mller-kva.example.com"


    -Topics: URI -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ieee-floats.html b/clones/lisp/www.cliki.net/ieee-floats.html deleted file mode 100644 index 3aed66bb..00000000 --- a/clones/lisp/www.cliki.net/ieee-floats.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: ieee-floats - - - - - - - -
    ieee-floats
    IEEE-Floats provides a way of converting values of type float and double-float to and from their binary format representation as defined by IEEE 754 (which is commonly used by processors and network protocols).

    The library defines encoding and decoding functions for the common 32-bit and 64-bit formats, and a macro for defining similar functions for other formats. The default functions do not detect the special cases for NaN or infinity, but functions can be generated which do, in which case the keywords :not-a-number, :positive-infinity, and :negative-infinity are used to represent them.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/iescrypt.html b/clones/lisp/www.cliki.net/iescrypt.html deleted file mode 100644 index faa37355..00000000 --- a/clones/lisp/www.cliki.net/iescrypt.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: iescrypt - - - - - - - -
    iescrypt
    A tool to encrypt and/or sign files.

    Depends on: archive, babel, ironclad, uiop

    Repository: https://github.com/glv2/iescrypt

    License: GPL3


    -Cryptography
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ilisp.html b/clones/lisp/www.cliki.net/ilisp.html deleted file mode 100644 index d3548947..00000000 --- a/clones/lisp/www.cliki.net/ilisp.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: ILISP - - - - - - - -
    ILISP
    ILISP is an Emacs based interface to various lisp-like systems - a pretty essential development aid. It's available at SourceForge, and packaged for Debian.

    Instructions for making ILISP work with Emacs are found at the Common Lisp Cookbook on Windows or on Mac OS, and on github.

    ILISP has been completely superseded by SLIME.


    -obsolete
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/image file.html b/clones/lisp/www.cliki.net/image file.html deleted file mode 100644 index bdb45696..00000000 --- a/clones/lisp/www.cliki.net/image file.html +++ /dev/null @@ -1,124 +0,0 @@ - - - - - CLiki: image file - - - - - - - -
    image file
    Bitmap and vector file format reading and writing libraries.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/image.html b/clones/lisp/www.cliki.net/image.html deleted file mode 100644 index d7a24dfd..00000000 --- a/clones/lisp/www.cliki.net/image.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: image - - - - - - - -
    image
    Image is an image-drawing library with a few drawing primitives (circles, ellipses, lines, rectangles, text). It currently has code for "dumping" an image to either X11 drawables or GIF files (via Skippy). It currently only has a single font available for drawing text, but it should be possible to extend the font handling to load fonts from other formats.

    Depends on: skippy, zpng, gzip-stream, flexi-streams, clx

    Repository: https://github.com/kevinlynx/image

    License: MIT


    -graphics library
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/imago.html b/clones/lisp/www.cliki.net/imago.html deleted file mode 100644 index 24d4b5dd..00000000 --- a/clones/lisp/www.cliki.net/imago.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: IMAGO - - - - - - - -
    IMAGO
    IMAGO is an image manipulation and image file input/output library written by Matthieu Villeneuve. It is licensed under the LLGPL.

    Project homepage: http://common-lisp.net/project/imago/

    Usage examples (lots of big images!): http://matthieu.villeneuve.free.fr/dev/imago/examples.html

    Category: graphics library

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/imap.html b/clones/lisp/www.cliki.net/imap.html deleted file mode 100644 index acf666f5..00000000 --- a/clones/lisp/www.cliki.net/imap.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: imap - - - - - - - -
    imap
    imap is a client library for Allegro CL for sending and receiving email with support for POP, IMAP and SMTP.

    Homepage: https://github.com/franzinc/imap

    License: LLGPL

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/incf-cl.html b/clones/lisp/www.cliki.net/incf-cl.html deleted file mode 100644 index b5aa6c68..00000000 --- a/clones/lisp/www.cliki.net/incf-cl.html +++ /dev/null @@ -1,59 +0,0 @@ - - - - - CLiki: incf-cl - - - - - - - -
    incf-cl
    (INCF CL) is a collection of utilities. It provides the following features:

      -
    • -List comprehensions
    • -
    • Doctest suite for automatic verification of examples in docstrings
    • -
    • List manipulation functions similar to those in Haskell's prelude
    • -
    • Nesting functions akin to those available in Mathematica
    • -
    -Depends on: cl-ppcre

    Repository: https://github.com/jmbr/incf-cl

    License: X11


    -documentation tool
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/incless.html b/clones/lisp/www.cliki.net/incless.html deleted file mode 100644 index c12f29c9..00000000 --- a/clones/lisp/www.cliki.net/incless.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: incless - - - - - - - -
    incless
    A portable, extensible Common Lisp printer. (Shadows print-object, write, etc.)

    Depends on: alexandria, acclimation

    Repository: https://github.com/lonjil/incless

    License: BSD


    -serialization
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/incognito-keywords.html b/clones/lisp/www.cliki.net/incognito-keywords.html deleted file mode 100644 index e50faabc..00000000 --- a/clones/lisp/www.cliki.net/incognito-keywords.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: incognito-keywords - - - - - - - -
    incognito-keywords
    incognito-keywords introduces a new kind of keyword that looks just like any non-keyword symbol and allows safe usage of convenient but clashy symbol names by multiple libraries without conflicts through sharing. Some names that might benefit are alist, blist, plist, macro, operator, index, &doc, &decl, &rest+, &destructure, &ignored and &ignorable.

    See the project's home for all details.


    -language extension, Unlicense, Public Domain
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/index.html b/clones/lisp/www.cliki.net/index.html deleted file mode 100644 index 7241c1e0..00000000 --- a/clones/lisp/www.cliki.net/index.html +++ /dev/null @@ -1,216 +0,0 @@ - - - - - CLiki: index - - - - - - - -
    index

    Welcome to CLiki

    CLiki is a Common Lisp wiki hosted by The Common Lisp Foundation. CLiki contains resources for learning about and using the programming language Common Lisp, and information about DFSG-compliant free software implemented in Common Lisp.

    CLiki Resources -

    Other Common Lisp Resources -

    Free Software Lisp Libraries -(Don't forget to check out the current recommended libraries list) -

    Some things don't really fit anywhere in the current structure, so are presently uncategorized. There are also listings of all articles and articles that have been deleted.

    Adding and editing

    The site is maintained using CLiki. CLiki is a collaborative web authoring system modeled on Ward Cunningham's WikiWikiWeb, the original Wiki. It welcomes your contributions - please see the CLiki Content, CLiki Style, and Text Formatting guidelines for more information.

    For any testing of CLiki and its editing features, please use the CLiki Sandbox.

    See Keeping up with CLiki on information about following changes to CLiki articles using news feeds.

    To report problems in using CLiki, see CLiki Bugs. No software is perfect.

    Spam Reversion

    Sometimes spammers edit CLiki pages in a futile hope to boost their Google ranking (I don't know why, it doesn't help). See the Spam Reversion page for details on reverting it.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/inferior-shell.html b/clones/lisp/www.cliki.net/inferior-shell.html deleted file mode 100644 index 20c91518..00000000 --- a/clones/lisp/www.cliki.net/inferior-shell.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: inferior-shell - - - - - - - -
    inferior-shell
    Inferior-shell is a library to control external programs, and write CL code instead of shell scripts.

    It will run commands either locally or remotely via ssh. Its mini-language for describing processes allows for shell pipes, various kinds of file descriptor redirections, easy string interpolation, etc.

    On SBCL, it is capable of bypassing the shell, and running command sequences directly.

    https://gitlab.common-lisp.net/qitab/inferior-shell


    -Unix, MIT-LICENSE
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/infix.html b/clones/lisp/www.cliki.net/infix.html deleted file mode 100644 index e6cf018c..00000000 --- a/clones/lisp/www.cliki.net/infix.html +++ /dev/null @@ -1,401 +0,0 @@ - - - - - CLiki: Infix - - - - - - - -
    Infix
    The infix notation for arithmetic in Common Lisp.

      -
    • -polisher - - Infix notation to S-expression (Polish notation) translator for Common Lisp -
    • -
    • -ugly-tiny-infix-macro - - This is a powerful lisp macro for the purpose of writing your expressions in infix notation while not losing out on lisp's power -
    • -

    Infix reader-macro by Mark Kantrowitz.

    Available from the CMU AI Repository: infix.cl.

    The Changelog from the cclan version reads

    -2005-06-06:
    -        * infix.cl: bind *read-suppress* in infix-reader to support the
    -        use of infix notation when *read-suppress* is true.
    -
    -        Christophe Rhodes <csr21@cam.ac.uk>
    -
    -2002-03-04:
    -        * infix.cl: moved definition of infix-error macro to before its
    -        first use.
    -
    -        Christophe Rhodes <csr21@cam.ac.uk>.
    -

    This is not the most volatile piece of software.

    Incidentally, it's probably non-free — there's a non-commercial clause in the license.

    There is also a Debian package.

    Note: Users may want to consider readable instead, which is MIT-licensed and has support for an infix notation.

    Another package by Alan Manuel Gloria can be found here, but it's buggy on expressions like

    (nfx 55 - 3 * 4 + 2000000)

    (giving -1999957 instead of the correct result 2000043. There seems to be a problem with different operators of the same precedence.

    Here's a corrected version of the macro implementation:

    ;; infix.lisp -;; by AmkG - -;; Title : Infix notation macro -;; Filename : infix.lisp -;; Written by : Alan Manuel K. Gloria <almkglor@gmail.com> -;; Corrected by : Bruno Daniel <bruno.daniel@gmx.net> - -;; Copyright status: -;; Err. I don't care? Okay, I do care. To be honest, I'll just -;; be plain happy if somebody ELSE uses this. Drop me a line, -;; or something. Or don't. I built this for my own amusement, -;; so if anyone else is amused too, well, drop me a line! - -;; tested on: -;; clisp -;; gcl -;; sbcl -;; ecl - -;; infix notation: -;; Lisp has traditionally used prefix notation for all formulae: in this -;; notation, the operation to be performed is specified before the -;; operands it is to be performed on. This simple notation gives a -;; consistent, regular syntax which greatly facilitates -;; metaprogramming. - -;; However, one weakness of prefix notation is that some simple -;; algebraic/arithmetic operations do not and cannot follow the -;; traditional syntax taught to us during elementary - that is, the -;; notation we are used to in arithmetic is not prefix, but infix -;; notation: -;; 1 + 2 - 4 * 5 -;; In Lisp this would be: -;; (- (+ 1 2) (* 4 5))) -;; Despite the inherent advantages of prefix notation, sometimes -;; it's just much easier to write mathematical formulae a little more -;; like the way we actually write them on paper. - -;; This file contains a macro, 'nfx, which allows for such an infix -;; notation. There are limitations: you need to put a LOT of spaces -;; in the formula: -;; (nfx 1+2-3) ;would confuse the Lisp parser -;; (nfx 1 + 2 - 3) ;would be understood - -;; You can't use certain symbols as variable names: -;; (setf + 42) -;; (nfx (max + 3)) ; would look awfully like +(max,3), not max(+,3) - -;; ...but you can embed prefix notation in it! -;; (nfx 1 + (- x 100)) ;it's valid! -;; (nfx 1 + (- x (3 * 3))) ;it's ALSO valid! -;; (nfx 1 + (- x 3 * 3)) ;err... this can give you unexpected behavior - -;; ...also, you can define your own infix symbols using definfix: -;; (definfix my-infix-symbol -;; :precedence 40 -;; :function-name +) -;; (nfx 1 my-infix-symbol 2) -;; => 3 - -;; send any feedback, bugreports, bugfixes, and cute girls to: -;; almkglor@gmail.com - -;; This file defines a macro of the form (nfx ...) whose -;; parameters are a stream of LISP "tokens" (either symbols, -;; constants, or lists). The stream of tokens is interpreted -;; in infix notation. The macro then expands to the prefix -;; form equivalent to the infix form -;; Ex. -;; (macroexpand-1 '(nfx foo = 32)) -;; => (setf foo 32) -;; (macroexpand-1 '(nfx bar == (3 + foo) * quux )) -;; => (equal bar (* (+ 3 foo) quux)) - -;; NOTE: detection of function calls -;; function call forms should be supported: -;; (macroexpand-1 '(nfx foo = (max (bar + 32) quux niaw) )) -;; => (setf foo (max (+ bar 32) quux niaw)) -;; (macroexpand-1 '(nfx (cdr foo) = (cons (qux + 1) nil))) -;; => (setf (cdr foo) (cons (+ qux 1) nil)) - -;; If any infix notation is in a function call within an -;; nfx form, it should be within a parentheses: -;; (macroexpand-1 '(nfx (max (bar + foo) (quux + quuux)) )) -;; => (max (+ bar foo) (+ quux quuux)) -;; (macroexpand-1 '(nfx (max bar + foo quux + quuux) )) -;; => (max bar + foo quux + quuux) - -;; function calls are detected in the following manner: -;; if nfx detects a list in the input stream, -;; if the second item is not a registered infix, -;; function call, for each element recurse and replace the element -;; not a function call, recurse on the list as a new stream - -;; this allows us to use prefix operators (such as -) as-is: -;; (macroexpand-1 '(nfx (- bar) == (/ (foo + 1)) )) -;; => (equal (- bar) (/ (+ foo 1))) - - -;; (nfx-operator-base <action> ...) -;; Handles the operator database - -(let ((nfx-data (make-hash-table :test 'eq))) - (defun nfx-operator-base (action &rest params) - (labels - ((getval (sym) - (gethash sym nfx-data) ) - (add (params) - (setf (gethash (car params) nfx-data) - (apply #'vector params)))) - (case action - (:get (getval (car params))) - (:add (add params)))))) - - -;;; the nfx macro - -(defun nfx-impl (s) - (let (opstack - curop tmp - (bldg (cons nil nil))) - (labels - ( ;; tconc = a cons with pointers to the head and the last element of - ;; a list. This function appends an element to such a tconc. - (tconc-append (l v) - (if (car l) - (setf (cdr l) (setf (cddr l) (cons v nil))) - (setf (car l) (setf (cdr l) (cons v nil))) )) - ;; top-of-stack query - (top-opstack () - (caaar opstack)) - ;; handles any sub-lists - (enlist (l) - (when l - (cond ((getop (cadr l)) - (cons 'nfx l)) - (t (mapcar #'(lambda (o) (if (listp o) (enlist o) o)) - l))))) - ;; pushes an operation onto the stack - used when the currently - ;; being built operation is of lower precedence than the - ;; operation being considered - (push-oper () - (push bldg opstack) - (setf bldg (cons nil nil))) - ;; pops off an operation from the stack, - ;; - used before collapsing the call - (pop-oper () - (let ((top (pop opstack)) ) - (tconc-append top (car bldg)) - (setf bldg top))) - ;; sub-expression handling code - (expr (o) - (if (listp o) - (enlist o) - o)) - ;; determine if the specified operation has precedence over the - ;; operation currently being built - (precedes? (op1 op2 associativity) - (or (< (precedence op1) (precedence op2)) - (and (= (precedence op1) (precedence op2)) - (eq (associativity op1) associativity)))) - ;; funges bldg: collapses fungible operations into one form - (fungebldg (bldg) - (mapcan - #'(lambda (o) - (cond ((listp o) - (setf o (fungebldg o)) - (cond ((and (fungible (car bldg)) - (eq (car o) (car bldg))) - (cdr o)) - (t (cons o nil)))) - (t (cons o nil)))) - bldg)) - ;; fixes bldg: changes operation objects to their functions - (fixbldg (bldg) - (when (vectorp (car bldg)) - (setf (car bldg) (function-name (car bldg))) ) - (mapc - #'(lambda (o) - (when (listp o) - (fixbldg o) )) - bldg )) - ;; error-handling function - (err (l) - (error "improper nfx expression:~%~s" l)) - (print-expr-list (l) - (format t "(") - (loop :for x in l - :for i from 0 :do - (when (plusp i) - (format t " ")) - (cond ((vectorp x) - (format t "~s" (aref x 0))) - ((listp x) - (print-expr-list x)) - (t - (format t "~s" x)))) - (format t ")")) - ;; (print-tconc (tc) - ;; (print-expr-list (car tc)) - ;; (format t "~%")) - ;; accessor functions - (precedence (op) (if op (aref op 1) 99999)) - (associativity (op) (aref op 2)) - (function-name (op) (aref op 3)) - (fungible (op) (when (vectorp op) (aref op 4))) - ;; get the data for a (presumed) infix operator - (getop (op) - (nfx-operator-base :get op))) - (case (length s) - (1 (expr (car s))) - (2 (err s)) - (t - (do ( ;; variable and step list - (oL s (cddr oL)) ) - ( ;; termination condition - (null (cddr oL)) - (tconc-append bldg (expr (car oL))) - (when (cdr oL) - (err oL) ) - (loop :while opstack :do - (pop-oper)) - (fixbldg (fungebldg (caar bldg)))) - (setf curop (getop (cadr oL))) - (cond (curop - (cond ((precedes? curop (caar bldg) :right) - (push-oper) - (tconc-append bldg curop) - (tconc-append bldg (expr (car oL))) ) - (t - (tconc-append bldg (expr (car oL))) - ;; collapse while the stacktop is precedent over the - ;; current op - (loop :while (precedes? (top-opstack) curop :left) :do - (pop-oper)) - (setf tmp (car bldg)) - (setf bldg (cons nil nil)) - (tconc-append bldg curop) - (tconc-append bldg tmp) ))) - (t - (err oL))))))))) - - -(defmacro nfx (&rest s) - (nfx-impl s)) - - - - -;; (definfix <operator> -;; :precedence <integer> -;; [:associativity <:left | :right>] -;; [:function-name <actual function>] -;; [:fungible <t | nil>]) -;; - defines an infix operator with the symbol <operator>, -;; with a precedence of <integer>. The smaller the precedence -;; number, the more precedence it has: * and / have smaller -;; precedence number than + and -. -;; - associativity defaults to :left, which means that if two -;; operators of the same precedence are encountered, the first -;; one resolves first: 1 x 2 x 3 becomes ((1 x 2) x 3). This -;; is appropriate for most maths. :right associativity means -;; that 1 x 2 x 3 becomes (1 x (2 x 3)). This is appropriate -;; for assignment. IMPORTANT: operators with the same -;; precedence must have the same associativities! -;; - function-name defaults to the same symbol as the operator. -;; For example, the function-name of = is setf. -;; - fungible means that if the same operator is encountered -;; several times, then all inputs are funged into one function -;; call. For example, 1 + 2 + 3 becomes (+ 1 2 3), 1 < 2 < 3 -;; becomes (< 1 2 3). This is not true for assignment: -;; x = y = z should become (setf x (setf y z)), not (setf x y z) -;; - fungible defaults to t because I noticed that nearly every -;; single darned operator was fungible. Except assignment. -;; Saved some dozen lines of code too. - -(defmacro definfix (operator - &key precedence (associativity :left) - function-name (fungible t)) - `(nfx-operator-base :add ',operator - ,precedence ,associativity - ',(if function-name function-name operator ) - ,fungible)) - -;; Predefined operators -;; Note: precedences are divisibles of 10, in case you -;; want to insert precedence levels between levels. - -;; since we expect infix notation only (not infix-postfix), -;; our array accessor is a single infix @ - -(definfix @ :precedence 10 :function-name aref) -(definfix ** :precedence 20 :function-name expt) -(definfix * :precedence 30) -(definfix / :precedence 29) -(definfix % :precedence 28 :function-name mod) -(definfix + :precedence 40) -(definfix - :precedence 40) -(definfix <= :precedence 60) -(definfix < :precedence 60) -(definfix >= :precedence 60) -(definfix > :precedence 60) - -(definfix = :precedence 70 :fungible nil) -(definfix /= :precedence 70) - -;; 80-100 should be for the bitwise operators (&, |, ^), -;; once I figure out how CL handles bitops. - -(definfix && :precedence 110 :function-name and) -(definfix || :precedence 120 :function-name or) - - -(set-dispatch-macro-character - #\# #\n - #'(lambda (stream c1 c2) - (declare (ignorable c1 c2)) - (let ((rd (read stream t nil t))) - (if (listp rd) - `(nfx ,@rd) - (progn - (print 'invalid-#n-usage) - (print rd) - (error 'error) ))))) - - -;; (nfx 55 - 3 * 4 + 2000000) used to give -1999957 -;; instead of the correct result 2000043. This is now corrected. -- Bruno Daniel

    The program is in the public domain.


    -macro example
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ingvar.html b/clones/lisp/www.cliki.net/ingvar.html deleted file mode 100644 index 22844569..00000000 --- a/clones/lisp/www.cliki.net/ingvar.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: ingvar - - - - - - - -
    ingvar
    Ingvar Mattsson, a Person. -Diary. - -Has written an assortment of packages, including dice, xlyb and genhash.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/inheriting-readers.html b/clones/lisp/www.cliki.net/inheriting-readers.html deleted file mode 100644 index 65860a7c..00000000 --- a/clones/lisp/www.cliki.net/inheriting-readers.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: inheriting-readers - - - - - - - -
    inheriting-readers
    inheriting-readers provides a simple yet powerful value inheritance scheme.

    See the project's home for all details.


    -Unlicense, Public Domain
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/inlined-generic-function.html b/clones/lisp/www.cliki.net/inlined-generic-function.html deleted file mode 100644 index 937a7f3d..00000000 --- a/clones/lisp/www.cliki.net/inlined-generic-function.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: inlined-generic-function - - - - - - - -
    inlined-generic-function
    A MOP-based implementation of fast inlined generic functions dispatched in compile-time. Tested on SBCL and CCL (as of 2018-03-06).

    From Masataro Asai, the author of trivia and other libraries.

    Homepage: GitHub

    License: LLGPL

    See Also: fast-generic-functions

    Topics: language extension

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/installer.html b/clones/lisp/www.cliki.net/installer.html deleted file mode 100644 index 38fd08fe..00000000 --- a/clones/lisp/www.cliki.net/installer.html +++ /dev/null @@ -1,85 +0,0 @@ - - - - - CLiki: installer - - - - - - - -
    installer
    Tools to help installing Lisp implementations and/or libraries. -
      -
    • -asia - - ASIA (ASDF2 -
    • -
    • -CL-Librarian - - CL-Librarian aims to be a manager for Common Lisp libraries that is focused on libraries updated dynamically by version control systems and targeted at power users -
    • -
    • -clbuild - - clbuild is a shell script helping with the download, compilation, and invocation of Common Lisp applications -
    • -
    • -CLPM - - CLPM stands for Common Lisp Package Manager -
    • -
    • -common-lisp-controller - - A system for installing Common Lisp libraries and source on Debian, Fedora, Gentoo and Ubuntu Linux systems -
    • -
    • -Qlot - - Qlot is a project-local library installer using Quicklisp facility -
    • -
    • -repo-install - - Repo-install is a common lisp package manager that can be used to chase down and download dependencies between common lisp packages -
    • -
    • -Roswell - - Roswell is a Lisp implementation installer/manager, launcher, and much more! -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/internationalization.html b/clones/lisp/www.cliki.net/internationalization.html deleted file mode 100644 index 1cd460ef..00000000 --- a/clones/lisp/www.cliki.net/internationalization.html +++ /dev/null @@ -1,126 +0,0 @@ - - - - - CLiki: internationalization - - - - - - - -
    internationalization
    All things related to internationalization (i18n) and localization (l10n): - -See also: -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/iolib.html b/clones/lisp/www.cliki.net/iolib.html deleted file mode 100644 index 10edbd61..00000000 --- a/clones/lisp/www.cliki.net/iolib.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: IOlib - - - - - - - -
    IOlib
    I/O(mainly networking) library containing: a BSD sockets library, a DNS resolver and an I/O multiplexer that supports select(2), epoll(4) and kqueue(2).

    Licence: MIT-LICENSE

    Dependencies: trivial-garbage, CFFI, Osicat and bordeaux-threads

    CL implementations on which IOlib has been tested: SBCL, CMUCL, CLISP and Clozure(ex OpenMCL). Probably it works on any implementation supported by CFFI that has native :long-long.

    Homepage: http://common-lisp.net/project/iolib/. Download instructions can be found here.

    Here is a recent tutorial: http://pages.cs.wisc.edu/~psilord/blog/data/iolib-tutorial/tutorial.html


    -system programming
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ip-interfaces.html b/clones/lisp/www.cliki.net/ip-interfaces.html deleted file mode 100644 index fdb30f9f..00000000 --- a/clones/lisp/www.cliki.net/ip-interfaces.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: ip-interfaces - - - - - - - -
    ip-interfaces
    ip-interfaces provides a convenient way to obtain a list of available networking interfaces on a machine.

    IP-Interfaces is a port of Clozure CL's %get-ip-interfaces function to CFFI so that it can run on other lisp implementations. So far ip-interfaces has been tested successfully on SBCL, CLISP, Clozure, Allegro, and ECL, and on Windows, Mac OS X, and Linux.

    IP-Interfaces is released under the LLGPL to maintain license compatibility with CCL.

    Note: ip-interfaces is not a socket library. If you are looking for a portable socket library, check out usocket.

    The project page for ip-interfaces is: http://common-lisp.net/project/ip-interfaces/

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ipcalc.html b/clones/lisp/www.cliki.net/ipcalc.html deleted file mode 100644 index f60adeb5..00000000 --- a/clones/lisp/www.cliki.net/ipcalc.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: ipcalc - - - - - - - -
    ipcalc
    A Common Lisp library for manipulating and calculating IPv4 and IPv6 network addresses.

    Depends on: split-sequence, alexandria, cl-ppcre

    Repository: https://github.com/jfrancis42/ipcalc-lisp


    -MIT-LICENSE, Networking
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/irc-logger.html b/clones/lisp/www.cliki.net/irc-logger.html deleted file mode 100644 index 871ed22c..00000000 --- a/clones/lisp/www.cliki.net/irc-logger.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: irc-logger - - - - - - - -
    irc-logger
    irc-logger is a networking library written by Kevin Rosenberg which uses the cl-irc library to provide multichannel Internet Relay Chat (IRC) logging. It was used for the IRCBrowse IRC log site.

    Repository: http://git.kpe.io/?p=irc-logger.git;a=summary

    License: BSD 2-Clause


    -logging
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/irc.html b/clones/lisp/www.cliki.net/irc.html deleted file mode 100644 index 7c422b21..00000000 --- a/clones/lisp/www.cliki.net/irc.html +++ /dev/null @@ -1,138 +0,0 @@ - - - - - CLiki: IRC - - - - - - - -
    IRC
    Information about Lisp IRC channels.

    A Note on IRC Etiquette

    -The main error newbies commit on irc, is to ask a question and then leave. If you want to get an answer to your question, keep your window open; it doesn't cost anything. The second newbie error is to ask to ask. You're here to ask questions, so just ask them and then warmly wait for an answer.

    Freenode

    Freenode (formerly the Open Projects Network) has been taken over. -See: The Freenode resignation FAQ, or: "what the fuck is going on?"

    Libera.chat

    Therefore staff and people have moved over to the libera.chat irc server. -This is now the main IRC network for Lisp related channels.

    This page is a non-exhaustive listing of most of the Common Lisp-related channels that exist on Libera.chat.

    General Channels

    #commonlisp

    -This is the main Common Lisp channel, where the most people hang out. (It was #lisp in freenode). The topic is relatively strictly enforced, and derailing from it is frowned upon. Please keep things related to Common Lisp! If you'd just like to chat, try #lispcafe (see below). The channel is logged [1] [2] [3] and now [4] and inhabits two notable bots: minion (part of cl-irc), responsible for note delivery and frequent questions, and specbot, which helps with Hyperspec references.

    #lisp

    -If you want to discuss general lisp dialects of all shapes and forms, then this is the channel for you. (It was ##lisp in freenode).

    #clschool

    -Common Lisp questions are gladly accepted and answered here. Everyone here is a student and/or a teacher.

    #clprojects

    -Common Lisp community project discussions. Discuss the design or anything about your current active project that might be too focused for #commonlisp.

    #lispcafe

    -A less formal channel for lisp-oriented discussion, socialization, community support at all levels of experience. Gurus and newbie lispers are welcome alike, as is any lisp dialect and probably other languages as well (whereas #lisp is a place for high-level discussion by experienced Lisp programmers). We just ask that you be cool to each other.

    Note: #cl-gardeners on freenode, which belonged to the Common Lisp Gardeners Project, is now defunct and has merged with #lispcafe.

    #lispweb

    -Focused on Web Applications developed in lisp.

    #lispgames

    -A friendly channel for LispGameDevelopers using various lisp dialects, including Common Lisp. Among other things, the International Lisp Games Expo is coordinated there.

    #lisp-lab

    -It's like Math Lab or Spanish Lab, but for Lisp (any Lisp) --- connecting lispers of various experience levels for questions-and-answers, tutoring, and general discussion.

    #clim

    -Common Lisp Interface Manager discussion (be it McCLIM, clim2 or other).

    #slime

    -Discussion about SLIME, the Superior Lisp Interaction Mode for Emacs, a popular Lisp programming environment.

    Implementation Channels

    #abcl

    -ABCL developer hangout - Combining CL and Java.

    #clasp

    -Clasp developer hangout - Combining CL and C++ for science.

    #ccl

    -CCL developer hangout, more dev than help.

    #ecl

    -ECL channel for questions and answers here! Come on join now!

    #sbcl

    -SBCL developer hangout, more dev than help -- but if #commonlisp can't solve it and it's SBCL specific, we'll try.

    #sicl

    -SICL developer hangout, more dev than help.

    -

    Non-English Channels

    #lisp.fi

    -A channel for Finnish Lisp users in IRCNet network. We welcome all Lisp newbies and gurus alike from every dialect of Lisp family to join us and have nice discussions.

    #lisp-fr

    -Un canal pour les utilisateurs de Lisp francophones, sur le réseau IRCNet. Tous les utilisateurs de tous les dialectes de Lisp, aussi bien débutants qu'experts, sont invité se joindre à nos discussions. S'il n'y a personne sur #lisp-fr, vous pouvez appeler quelques francophones sur #lisp ;-)

    #lisp-it

    -A low-traffic channel in italian language on the FreeNode network (irc.freenode.net) either for lisp newbie either for more expert ones. Join and meet us to explain how and why you use any lisp dialect or to ask a technical question.

    #lisp-nz

    -For anyone interested in lisp programming in New Zealand.

    #lisp-pt

    -An even lower-traffic channel for portuguese speakers on the freenode network.

    #lisp-pl

    -A channel dedicated to lisp and generally functional programming discussions in polish language.

    #lisp-es

    -A channel for spanish speaker Lisp users. Join us to chat about every Lisp family dialect. You will be welcome.

    Un canal para usuarios de Lisp hispanohablantes (si nadie responde en #lisp-es, puedes llamar a un hispanohablante en #lisp)

    #lisp-ja

    -A low-traffic channel in Japanese.

    #lisp-br

    -A low-traffic channel in pt-br (Brazilian Portuguese).

    -

    CLiki pages about IRC

      -
    • -beirc - - beirc is a CLIM IRC client application using the cl-irc library as a backend, initially written by Gilbert Baumann, now maintained by Dave Murray and others -
    • -
    • -Birch - - Birch is a simple IRC client library -
    • -
    • -cl-irc - - cl-irc is an IRC library written in Common Lisp -
    • -
    • -Colleen - - Colleen is yet another IRC chat bot framework -
    • -
    • -IRC Quotes - - Some moments from IRC, preserved for posterity, some humorous -
    • -
    • -irc-logger - - irc-logger is a networking library written by Kevin Rosenberg which uses the cl-irc library to provide multichannel Internet Relay Chat (IRC) logging -
    • -
    • -Lisp IRC Bots - - There are several IRC bots written in Lisp -
    • -
    • -lispcafe - - #lispcafe on www.libera.chat -
    • -
    • -lisppaste - - lisppaste sits on a webserver and users can paste text into it -
    • -
    • -Maiden - - Maiden is a collection of systems to help you build applications and libraries that interact with chat servers -
    • -
    • -minion - - minion is an IRC robot (who prefers the term "electronically composed.") For online help, try /msg minion help -
    • -
    • -trivial-irc - - trivial-irc is a small IRC library that provides only very basic facilities for communicating with IRC servers, and has no facilities for extensions like DCC, CTCP etc -
    • -
    • -WeirdIRC - - WeirdIRC is a simple IRC client using CLIM -
    • -
    • -X-Chat Common Lisp Plugin - - The X-Chat Common Lisp plugin is a plugin for X-Chat version 2 and up (the famous IRC client) that allows you to use Common Lisp scripts to control X-Chat behaviour -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ironclad.html b/clones/lisp/www.cliki.net/ironclad.html deleted file mode 100644 index 46941fa5..00000000 --- a/clones/lisp/www.cliki.net/ironclad.html +++ /dev/null @@ -1,111 +0,0 @@ - - - - - CLiki: Ironclad - - - - - - - -
    Ironclad
    Ironclad is a Common Lisp Cryptography package; several block encryption algorithms and hash functions are included with the initial release. Its initial impetus was to unify several of the cryptographic packages for Common Lisp (such as the MD5 and SHA1 implementations floating around), but it aims at providing a cryptographic toolkit similar in scope to something like OpenSSL or Crypto++.

      -
    • Supported ciphers: AES, DES, 3DES, Blowfish, Twofish, RC5, RC6, Arcfour (RC4) -
    • -
    • Supported hash functions: MD4, MD5, SHA1, SHA256, Tiger, Adler32, CRC32 (also supports tree hashes) -
    • -
    • -RFC 2104 HMACs and RFC 4493 CMACs -
    • -
    • Public key schemes: DSA signing and verification -
    • -
    • Key derivation functions: PBKDF1, PBKDF2 (RFC 2898) -
    • -
    -The Ironclad homepage and package documentation can be found at: https://github.com/sharplispers/ironclad

    (Originally located at http://method-combination.net/lisp/ironclad/ and now maintained by sharplispers.)

    The SHA-1 and SHA-256 hash functions do not work under CLISP versions earlier than 2.34. Please upgrade your CLISP installation. (The failures are related to CLISP's handling of (LOOP ... FINALLY ...).)

    Ironclad is distributed under a liberal X11/MIT-like license.

    Debian package

    Ironclad has been packaged for Debian. You can just apt-get install it.

    Using Ironclad

    RSA With Ironclad—The Missing Manual is an article about using the RSA functionality that is currently implemented in Ironclad.

    Tell us how you are using Ironclad:

      -
    • To encrypt passwords for a web site, for that I created the following function:

      (defun hash-password (password)
      -  (ironclad:byte-array-to-hex-string 
      -   (ironclad:digest-sequence 
      -    :sha256
      -    (ironclad:ascii-string-to-byte-array password))))
      -
    • Very simple example of encrypting and decrypting a message using the blowfish algorithm:

      (push "/home/mcarter/ironclad_0.20.1/" asdf:*central-registry*) ; or something similar
      -(asdf:oos 'asdf:load-op 'ironclad)

      (defun cipher-example (message password) - (let* ((iv (ironclad:ascii-string-to-byte-array password)) - (cipher (ironclad:make-cipher :blowfish :mode :ecb :key iv))) - (setf message (ironclad:ascii-string-to-byte-array message)) - (format t "original message as bytes:~A~%" message) - (ironclad:encrypt-in-place cipher message) - (format t "encrypted message as bytes:~A~%" message) - (ironclad:decrypt-in-place cipher message) - ;; convert the message back to a string - (setf message (coerce message 'list)) - (setf message (mapcar #'code-char message)) - (setf message (coerce message 'string)) - (format t "your original message was:*~A*~%" message)))

      * (cipher-example "ironclad is a way of encrypting and decrypting messages" "my password")

      original message as bytes:#(105 114 111 110 99 108 97 100 32 105 115 32 97 32 - 119 97 121 32 111 102 32 101 110 99 114 121 112 - 116 105 110 103 32 97 110 100 32 100 101 99 114 - 121 112 116 105 110 103 32 109 101 115 115 97 103 - 101 115) -encrypted message as bytes:#(206 106 66 158 68 233 4 198 157 196 72 39 13 110 - 140 102 0 27 7 177 80 46 144 203 187 69 89 95 208 - 51 206 149 172 158 127 210 90 210 19 240 224 252 - 137 13 19 206 188 20 101 115 115 97 103 101 115) -your original message was:*ironclad is a way of encrypting and decrypting messages* -NIL

    • -
    • A more functional (hopefully simpler) example

      (ql:quickload :ironclad)
      -(defun get-cipher (key)
      -  (ironclad:make-cipher :blowfish
      -    :mode :ecb
      -    :key (ironclad:ascii-string-to-byte-array key)))

      (defun encrypt (plaintext key) - (let ((cipher (get-cipher key)) - (msg (ironclad:ascii-string-to-byte-array plaintext))) - (ironclad:encrypt-in-place cipher msg) - (ironclad:octets-to-integer msg)))

      (defun decrypt (ciphertext-int key) - (let ((cipher (get-cipher key)) - (msg (ironclad:integer-to-octets ciphertext-int))) - (ironclad:decrypt-in-place cipher msg) - (coerce (mapcar #'code-char (coerce msg 'list)) 'string)))

      * (defvar test (encrypt "A simple test message" "pass")) -TEST

      * test -369463901797626567104213850270827601164336028018533

      * (decrypt test "pass") -"A simple test message"

      -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/isaac.html b/clones/lisp/www.cliki.net/isaac.html deleted file mode 100644 index 0f015dcd..00000000 --- a/clones/lisp/www.cliki.net/isaac.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: isaac - - - - - - - -
    isaac
    An implementation of the isaac CPRNG in Common Lisp.

    The Github page has usage documentation attached.


    -cryptography
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/iso-2533.html b/clones/lisp/www.cliki.net/iso-2533.html deleted file mode 100644 index 5a166d23..00000000 --- a/clones/lisp/www.cliki.net/iso-2533.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: iso-2533 - - - - - - - -
    iso-2533
    Library providing data from ISO 2533:1975 International Standard Atmosphere

    Includes ISO 2533:1975/Add 1:1985 which provides hypsometrical tables, that is geopotential altitude as a function of barometric pressure.

    Includes ISO 2533:1975/Add 2:1997 which extends the standard atmosphere from -2000 m down to -5000 m geopotential altitude.

    Repository: GitHub

    License: Modified BSD

    See Also: physical-quantities

    Topics: units

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/iso-3166-1.html b/clones/lisp/www.cliki.net/iso-3166-1.html deleted file mode 100644 index c61237cc..00000000 --- a/clones/lisp/www.cliki.net/iso-3166-1.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: iso-3166-1 - - - - - - - -
    iso-3166-1
    iso-3166-1 is a list of ISO 3166-1 alpha-3 country codes.

    Homepage: https://github.com/stassats/iso-3166-1

    License: ???


    -Topics: internationalization
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/issue.html b/clones/lisp/www.cliki.net/issue.html deleted file mode 100644 index e819e1f8..00000000 --- a/clones/lisp/www.cliki.net/issue.html +++ /dev/null @@ -1,241 +0,0 @@ - - - - - CLiki: Issue - - - - - - - -
    Issue
    Proposed issues, perhaps for a future revision of the Common Lisp standard:

    -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/iterate-keywords.html b/clones/lisp/www.cliki.net/iterate-keywords.html deleted file mode 100644 index 2e5634c1..00000000 --- a/clones/lisp/www.cliki.net/iterate-keywords.html +++ /dev/null @@ -1,56 +0,0 @@ - - - - - CLiki: iterate-keywords - - - - - - - -
    iterate-keywords
    Lispy and extensible replacement for the LOOP macro, fork of iterate

    There are two distinctions from iterate
    -1. Instead of (for ...) you can write (:for ...). Iterate just exports too many symbols. -Importing them into your package may be hazardeous, while not importing them makes code -too verbose.
    -2. iterate-keywords does not containg new changes from iterate for last several years.

    Home page: http://sourceforge.net/projects/iteratekeywords/


    -language extension
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/iterate.html b/clones/lisp/www.cliki.net/iterate.html deleted file mode 100644 index fe9edc06..00000000 --- a/clones/lisp/www.cliki.net/iterate.html +++ /dev/null @@ -1,75 +0,0 @@ - - - - - CLiki: iterate - - - - - - - -
    iterate
    iterate is a lispy and extensible replacement for the LOOP macro.

    It was written by Jonathan Amsterdam at MIT and recently ported to Common Lisp.

    The canonical site for information about iterate is at https://common-lisp.net/project/iterate/.

    Some examples:

    (iterate (for (key . item) in alist) - (collect key into keys) - (collect item into items) - (finally (return (values keys items))))

    collects keys and items of an alist into two values

    It also supports generators:

    (iterate (generate i from 0 to 6) - (for (key . value) in '((a . 2) (zero . 10) (one . 20) (d . 5))) - (when (>= value 10) - (collect (cons key (next i))))) - -=> ((ZERO . 0) (ONE . 1))

    and allows easy finding of extrema:

    (iterate (for elt in list-of-lists) - (finding elt maximizing (length elt)))

    finds the longest list in a list of lists and generates pretty fast -code, too. (-:

    Related


    -language extension
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/its-library.html b/clones/lisp/www.cliki.net/its-library.html deleted file mode 100644 index 93cc4272..00000000 --- a/clones/lisp/www.cliki.net/its-library.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: its-library - - - - - - - -
    its-library
    its provides convenient access to multiple values of an object in a concise, explicit and efficient way.

    See the project's home for all details.


    -Unlicense, Public Domain
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ivan4th.html b/clones/lisp/www.cliki.net/ivan4th.html deleted file mode 100644 index 569acbb6..00000000 --- a/clones/lisp/www.cliki.net/ivan4th.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: ivan4th - - - - - - - -
    ivan4th
    ivan4th is a Person. He lives in Moscow, Russia. He discovered Lisp after working with such things as C++ BOOST libraries and XSLT. He would love to have more time for Lisp hacking, but he is doomed to be a miserable full-time .NET programmer for nearest years :( His dream is to rewrite his old particle accelerator control system in CL and uphold Ph. D. thesis, but as of now, this is unlikely :(
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/jarw-dictionary.html b/clones/lisp/www.cliki.net/jarw-dictionary.html deleted file mode 100644 index cf5e4343..00000000 --- a/clones/lisp/www.cliki.net/jarw-dictionary.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: jarw-dictionary - - - - - - - -
    jarw-dictionary
    jarw-dictionary is a generic map/dictionary interface with implementations using internal hash-tables, property lists, files and directories including in-memory caching.

    Homepage: http://www.jarw.org.uk/lisp/dictionary.html

    Source repository: http://www.jarw.org.uk/lisp/dictionary.git

    License: ???


    -Topics: data structure
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/jarw-inet.html b/clones/lisp/www.cliki.net/jarw-inet.html deleted file mode 100644 index a95c74c5..00000000 --- a/clones/lisp/www.cliki.net/jarw-inet.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: jarw-inet - - - - - - - -
    jarw-inet
    jarw-inet supports several Internet networking Standards including writing servers and clients, http, smtp, nntp protocols, header parsing, mime decoding. Includes a http/1.1 web server interface.

    Homepage: http://www.jarw.org.uk/lisp/inet.html

    Source repository: http://www.jarw.org.uk/lisp/inet.git

    License: ???


    -Topics: networking email HTTP server
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/jarw-markup.html b/clones/lisp/www.cliki.net/jarw-markup.html deleted file mode 100644 index 6ea054b4..00000000 --- a/clones/lisp/www.cliki.net/jarw-markup.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: jarw-markup - - - - - - - -
    jarw-markup
    jarw-markup is a library for document preparation from s-expressions to html or latex, together with automated registration and conversion of medis and mathematics.

    Homepage: http://www.jarw.org.uk/lisp/markup.html

    Source repository: http://www.jarw.org.uk/lisp/cl-markup.git

    License: ???

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/jarw-media.html b/clones/lisp/www.cliki.net/jarw-media.html deleted file mode 100644 index 142c9b0b..00000000 --- a/clones/lisp/www.cliki.net/jarw-media.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: jarw-media - - - - - - - -
    jarw-media
    media is application for managing and caching the conversion of media. Most common use is to create png or jpeg images for a web page from encapsulated postscript or from latex math expressions. Conversions may be preregistered or carried out on demand. They are carried out using a background process. The interface is designed to be extensible with a registration process to specify how different conversions are carried out.

    Homepage: http://www.jarw.org.uk/lisp/media.html

    Download: http://www.jarw.org.uk/lisp/media.tar.gz

    License: GPL

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/jarw.html b/clones/lisp/www.cliki.net/jarw.html deleted file mode 100644 index 61f9864f..00000000 --- a/clones/lisp/www.cliki.net/jarw.html +++ /dev/null @@ -1,80 +0,0 @@ - - - - - CLiki: JARW - - - - - - - -
    JARW
    Dr John AR Williams' utilities.

    Includes the following packages: -

      -
    • :jarw.lib -provides idoms such as while and when-bind as well as functions to convert between different ways of implementing mappings in common lisp. -
    • -
    • :jarw.io -provides io functions including printing readably CLOS classes and other LISP structures, for managing temporary files, logging operations, and io operations for reading and writing standard internet style headers on streams. -
    • -
    • :jarw.string -provides operations for splitting and joining lists from strings, word wrapping, string concatenation, folding strings on line breaks, the Boyer-Moore-Horspool search algorithm, algorithms for creating prefix tables and doing efficient prefix matches against that table, and conversion to and from Roman numerals -
    • -
    • :jarw.parse -main extensible library for converting strings (from external sources such as users or internet protocols) into internal data types (parse-input) according to type conversion specifications and, to convert internal types into strings (format-output) with the same conversion specification -
    • -
    • :jarw.properties -utilities for hierarchical property sets. -
    • -
    • :jarw.search -Search indexing API and keyword searching -
    • -
    • :jarw.math -some mathematical functions -
    • -
    • :crypt -Implementation of the unix crypt function in COmmon Lisp -
    • -
    • :jarw.mop -exports the MOP API -
    • -

    Homepage: http://www.jarw.org.uk/lisp/jarw.html

    Source repository: http://www.jarw.org.uk/lisp/cl-jarw.git

    License: ???

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/java.html b/clones/lisp/www.cliki.net/java.html deleted file mode 100644 index f982284a..00000000 --- a/clones/lisp/www.cliki.net/java.html +++ /dev/null @@ -1,108 +0,0 @@ - - - - - CLiki: Java - - - - - - - -
    Java
    Packages that help with CL/Java integration:

      -
    • -ABCL - - Armed Bear Common Lisp (aka ABCL) is a -
    • -
    • -abcl-jazz - - Code examples on to call the Java Swing API under ABCL to program GUIs -
    • -
    • -cloak - - cloak is an experimental implementation of the JVM for SBCL on Linux/x86 -
    • -
    • -CLplusJ - - CL+J is an exact, safe and complete Common Lisp interface to Java through JNI -
    • -
    • -decaf - - Decaf is an Java debugger GUI written in Lisp using CLIM -
    • -
    • -Foil - - Foil (Foreign Object Interface for Lisp) consists of a protocol and a set of libraries that facilitate access to popular object runtimes, such as the JVM (Java) and the CLI/CLR (.NET), and their libraries, from Lisp -
    • -
    • -JACOL - - The JACOL system can be used to link Java and Common Lisp applications -
    • -
    • -Jatha - - Jatha is a Java library that implements a fairly large subset of Common LISP, including most of the datatypes (e.g -
    • -
    • -jfli - - jfli provides comprehensive, safe, dynamic and Lisp-y access to Java and Java libraries as if they were Lisp libraries, for use in Lisp programs, i.e -
    • -
    • -jss - - jss is an extension for ABCL that makes it easier for me(AlanRuttenberg) to write lisp code that calls java libraries -
    • -
    • -LinJ - - Linj is a Common Lisp-like language that tries to be as similar to -
    • -
    • -Lisplets - - Lisplets are Java Servlets that forward their requests, and gather their response headers, using s-expressions over sockets -
    • -
    • -Mark Davidson - - I have been working with these infernal machines for over 22 years, and have dabbled with Lisp over time.. -
    • -
    • -snow - - Snow is a GUI description language for Java and Common Lisp, currently supporting the Swing UI library -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/javascript.html b/clones/lisp/www.cliki.net/javascript.html deleted file mode 100644 index 9e4d20e5..00000000 --- a/clones/lisp/www.cliki.net/javascript.html +++ /dev/null @@ -1,111 +0,0 @@ - - - - - CLiki: JavaScript - - - - - - - -
    JavaScript
    JavaScript is a popular client-side web scripting language. It has higher-order functions and is by many accounts a jolly nice scripting language.

    Implementations

    -
      -
    • -CL-JavaScript is a JavaScript implementation in Common Lisp.
    • -
    • -js/semantics is a tool to generate LR(1) and LALR(1) grammars and compile and check formal semantics for JavaScript.
    • -

    Generating JavaScript Code

    -
      -
    • -Parenscript is Javascript with Lisp syntax and macros.
      -
    • -
    • -jsgen is a similar package with a more direct mapping to JavaScript.
    • -
    • -parse-js is a simple ECMAScript 3 parser
    • -

    Talking to JavaScript

    -JavaScript is also needed to implement the client-side part -of AJAX (Asynchronous JavaScript And XML)-- a Common-Lisp implementation of which can be found as CL-AJAX for araneida and HT-AJAX for Hunchentoot.

    -If XML seems too heavy-weight one can use cl-json or st-json to directly send JSON (Java Script Object Notation).

    All pages in topic:

    -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/jd-time-utils.html b/clones/lisp/www.cliki.net/jd-time-utils.html deleted file mode 100644 index 72c5ecb9..00000000 --- a/clones/lisp/www.cliki.net/jd-time-utils.html +++ /dev/null @@ -1,97 +0,0 @@ - - - - - CLiki: jd-time-utils - - - - - - - -
    jd-time-utils
    jd-time-utils is a Common Lisp library for computing time and parsing time strings outside the Lisp UT range of 1900-01-01 onward, using Julian Days internally.

    The purpose was initially to allow transparent date parsing into structures from scraped data; then it was extended because dates before 1900 were not parsed.

    It uses Julian Days, with 4613 BCE at time zero, as the basis for internal computations, and performs parsing using an included modified version of cl-date-time-parser, -switching from Gregorian to Julian calendar (ie, no leap years) on Oct 15, 1582.

    It allows negative Julian Days, and negative lisp UT, so it should work over a billion years or so.

    It is available under an MIT license.

    It can be obtained from the jd-time-utils github repository at https://github.com/jetmonk/jd-time-utils.

    -Examples:

    -

    -CL>  (jd-time-utils::build-date-time-struct-from-ut 
    -          -1 ;; one second before Lisp era
    -	  :timezone 10)
    - ==>	  
    -  #S(jd-time-utils:date-time
    -      :year 1899
    -      :month 12
    -      :day 31
    -      :hour 13   
    -      :minute 59
    -      :second 59
    -      :fractional-second 0.0d0
    -      :day-of-week 6
    -      :ut -1 
    -      :timezone 10 ;; new output timezone (10 zones west of meridian)
    -      :float-year 1899.9999999682902d0
    -      :julian-time #S(jd-time-utils:julian-time
    -                      :day 2415020
    -                      :second 86399
    -                      :nanosecond 0))
    -
    -;; --------------------------------------------------------------------------------------------
    -CL>  (jd-time-utils:parse-date-time-string
    -	  "5:42:00.1 July 4, 1976 EST" :output-timezone 5)
    -==>
    -  #S(jd-time-utils:date-time
    -     :year 1976
    -     :month 7
    -     :day 4
    -     :hour 5
    -     :minute 42
    -     :second 0
    -     :fractional-second 0.1d0
    -     :day-of-week 6
    -     :ut 2414313720
    -     :timezone 5
    -     :float-year 1976.506682604736d0
    -     :julian-time #S(jd-time-utils:julian-time
    -                           :day 2442964
    -                           :second 38520
    -                           :nanosecond 100000000))
    -
    -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/jfli.html b/clones/lisp/www.cliki.net/jfli.html deleted file mode 100644 index b565ca5f..00000000 --- a/clones/lisp/www.cliki.net/jfli.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: jfli - - - - - - - -
    jfli
    jfli provides comprehensive, safe, dynamic and Lisp-y access to Java and Java libraries as if they were Lisp libraries, for use in Lisp programs, i.e. with an emphasis on working in Lisp rather than in Java.

    It is compatible with the LispWorks implementation of Common Lisp.

    http://jfli.sourceforge.net/

    License: CPL

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/jmt.lisp.html b/clones/lisp/www.cliki.net/jmt.lisp.html deleted file mode 100644 index 38681e0b..00000000 --- a/clones/lisp/www.cliki.net/jmt.lisp.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: jmt.lisp - - - - - - - -
    jmt.lisp
    jmt.lisp is Jason's Mersenne Twister. jmt.lisp is a Free as in Freedom software implementation -of the Mersenne Twister pseudorandom number generator.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/joelh.html b/clones/lisp/www.cliki.net/joelh.html deleted file mode 100644 index 4b83c456..00000000 --- a/clones/lisp/www.cliki.net/joelh.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: joelh - - - - - - - -
    joelh
    Joel Ray Holveck, (concatenate 'string "joelh" "@" "piqnet" ".org")

    I work for Juniper Networks, where I get to use Lisp in a professional environment as a toolsmith. As of this writing, the deployed systems are based on CMUCL, which I really like using. However, I'm now moving to Xanalys LispWorks, because I need some of the libs that Xanalys has, and fast.

    I used to be a volunteer sysadmin for GNU, but internal structure changes have ended that relationship. I am still a big fan of GNU and the free software philosophy.

    I use GNU Emacs constantly.

    person

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/jonathan.html b/clones/lisp/www.cliki.net/jonathan.html deleted file mode 100644 index db7159f2..00000000 --- a/clones/lisp/www.cliki.net/jonathan.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Jonathan - - - - - - - -
    Jonathan
    Jonathan is a fast JSON encoder/decoder.

    It's faster than jsown - high performance Common Lisp JSON parser.

    Homepage: https://github.com/Rudolph-Miller/jonathan

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/journal.html b/clones/lisp/www.cliki.net/journal.html deleted file mode 100644 index aed96b79..00000000 --- a/clones/lisp/www.cliki.net/journal.html +++ /dev/null @@ -1,82 +0,0 @@ - - - - - CLiki: journal - - - - - - - -
    journal
    A library for logging, tracing, testing and persistence.

    HTML documentation: https://melisgl.github.io/mgl-pax-world/journal-manual.html

    Repository: https://github.com/melisgl/journal

    Author: Gabor Melis

    Distinguishing features

    As a logging facility

      -
    • Nested contexts and single messages
    • -
    • Customizable content and format
    • -
    • Human- or machine-readable output
    • -

    #68200.234: ("some-context") -#68200.234: Informative log message -#68200.250: => NIL

    See Logging for a complete example.

    Compared to TRACE -

      -
    • Ability to handle non-local exits
    • -
    • Customizable content and format
    • -
    • Optional timestamps, internal real- and run-time
    • -

    (FOO 2.1) - (1+ 2.1) - =&gt; 3.1 -=E "SIMPLE-ERROR" "The assertion (INTEGERP 3.1) failed."

    See Tracing for a complete example.

    As a test framework

      -
    • White-box testing based on execution traces
    • -
    • Isolation of external dependencies
    • -
    • Record-and-replay testing
    • -

    (define-file-bundle-test (test-user-registration :directory "registration") - (let ((username (replayed ("ask-username") - (format t "Please type your username: ") - (read-line)))) - (add-user username) - (assert (user-exists-p username))))

    See Testing for a complete example.

    As a solution for persistence

      -
    • Event Sourcing: replay interactions with the external world
    • -
    • Unchanged control flow
    • -
    • Easy to implement history, undo
    • -

    (defun my-resumable-autosaving-game-with-history () - (with-bundle (bundle) - (play-guess-my-number)))

    See Persistence for a complete example.

    -


    -MIT-LICENSE, Logging, Debugging, Test Framework, Persistence
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/jpeg.html b/clones/lisp/www.cliki.net/jpeg.html deleted file mode 100644 index 8d5faccd..00000000 --- a/clones/lisp/www.cliki.net/jpeg.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: jpeg - - - - - - - -
    jpeg
    jpeg.lisp is a library for reading and writing JPEG image files in Lisp.

    The author is Christopher J. Vogt. Though the license of the file is non-free "for personal use only", it is also included in the public-domain Lispix. In case licensing matters, the author should be contacted to resolve the issue.

    See also cl-jpeg.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/jpl-queues.html b/clones/lisp/www.cliki.net/jpl-queues.html deleted file mode 100644 index 725feb6a..00000000 --- a/clones/lisp/www.cliki.net/jpl-queues.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - CLiki: jpl-queues - - - - - - - -
    jpl-queues
    jpl-queues is a library implementing a few different kinds of queue data structures.

    These kinds of queues are provided:

      -
    • Bounded and unbounded FIFO queues.
    • -
    • Lossy bounded FIFO queues that drop elements when full.
    • -
    • Unbounded random-order queues that use less memory than unbounded FIFO queues.
    • -

    Additionally, a synchronization wrapper is provided to make any queue conforming to the jpl-queues API thread-safe for lightweight multithreading applications. (See Calispel for a more sophisticated CL multithreaded message-passing library with timeouts and alternation among several blockable channels.)

    jpl-queues is used by Calispel.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/jscl.html b/clones/lisp/www.cliki.net/jscl.html deleted file mode 100644 index 44dafbe5..00000000 --- a/clones/lisp/www.cliki.net/jscl.html +++ /dev/null @@ -1,63 +0,0 @@ - - - - - CLiki: JSCL - - - - - - - -
    JSCL
    jscl is the Common Lisp to JavaScript Compiler, a subset of Common Lisp implementation.

    JSCL is a Common Lisp to Javascript compiler, which is bootstrapped from Common Lisp and executed from the browser.

    JSCL is and will be a subset of Common Lisp. Of course it is far from complete, but it supports partially most common special operators, functions and macros. In particular:

    - Multiple values -- Explicit control transfers tagbody and go -- Static and dynamic non local exit catch, throw; block, return-from. -- Lexical and special variables. However, declare expressions are missing, but you can proclaim special variables. -- Optional and keyword arguments -- SETF places -- Packages -- The LOOP macro -- CLOS -- Others

    The compiler is very verbose, some simple optimizations or minification could help to deal with it.

    Most of the above features are incomplete. The major features that are still missing are:

    - The format function

    Feel free to hack it yourself

    -License: GPL3 -
    -Project GitHub

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/jsgen.html b/clones/lisp/www.cliki.net/jsgen.html deleted file mode 100644 index 2a54b87b..00000000 --- a/clones/lisp/www.cliki.net/jsgen.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: jsgen - - - - - - - -
    jsgen
    JSGEN is an extension to AllegroServe that allows one to write JavaScript programs in an s-expression syntax. The primary advantage of this approach is that the user has the ability to extend the language using macros, resulting in shorter more manageable programs. A disadvantage is that the debugging of programming errors within a web browser will require working with the generated JavaScript code. Errors raised in the browser will have to be manually traced to their source within corresponding s-expression code. JSGEN is a good choice if you believe the benefits of syntactic abstraction (shorter programs, fewer bugs) outweighs the cost added to the debugging process.

    Read the Documentation

    ASDF-install package (obsolete) http://www.kantz.com/jason/programs/jsgen/jsgen_v0_4.tar.gz

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/json-streams.html b/clones/lisp/www.cliki.net/json-streams.html deleted file mode 100644 index 4f695494..00000000 --- a/clones/lisp/www.cliki.net/json-streams.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: json-streams - - - - - - - -
    json-streams
    json-streams is a Common Lisp library for reading and writing JSON text.

    It's designed to used as a building block for more high level libraries.

    Homepage is at GitHub.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/json-template.html b/clones/lisp/www.cliki.net/json-template.html deleted file mode 100644 index 22c04046..00000000 --- a/clones/lisp/www.cliki.net/json-template.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: json-template - - - - - - - -
    json-template
    An implementation of JSON Template in Common Lisp.

    Repository: https://git.benkard.de/mulk/cl-json-template

    License: Apache 2


    -JSON, templating library
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/jsown.html b/clones/lisp/www.cliki.net/jsown.html deleted file mode 100644 index c89e2d0d..00000000 --- a/clones/lisp/www.cliki.net/jsown.html +++ /dev/null @@ -1,63 +0,0 @@ - - - - - CLiki: jsown - - - - - - - -
    jsown
    A fast JSON parser and generator.

    Introduction

    jsown is a high-performance Common Lisp JSON parser. Its aim is to allow for the fast parsing of JSON objects into Lisp s-expressions, which can then be edited or accessed like any other Lisp code, and re-encoded into JSON.

    Installation

    jsown is available via Quicklisp. To install, evaluate:

    CL-USER> (ql:quickload :jsown)

    Basic Usage

    Assume we have a dynamic variable *json-string* which, as the name helpfully suggests, contains an encoded JSON string:

    CL-USER> (defvar *json-string* "{\"foo\":\"bar\",\"baz\":[1,2,\"blub\"]}") -=> *JSON-STRING* -

    To convert this JSON string into jsown's internal representation, use the PARSE function:

    CL-USER> (jsown:parse *json-string*) -=> (:OBJ ("foo" . "bar") ("baz" 1 2 "blub")) -

    jsown decodes JSON Objects into lists whose first member is the :OBJ keyword symbol. Each subsequent sub-list represents a key-value association as a CONS-ed pair; thus, for each sub-list, the members of the JSON object can be accessed with CAR and CDR to retrieve the key and value, respectively.

    JSON Arrays are also decoded into lists, though without the leading :OBJ symbol. Rather than CONS-ed pairs, decoded arrays are proper lists (lists whose last element is itself a list). This can result in seemingly ambiguous Lisp representations of data; for example, in the above code, the key-value pair "baz": [1, 2, "blub"] is parsed as ("baz" 1 2 "blub"). This may appear like a decoded array at first, but as this is a sub-list of an object, it can be separated into key and value by the usual combination of CAR and CDR.

    From here, we can convert this internal representation back into valid JSON using the TO-JSON method: -

    CL-USER> (defvar *json-object* (jsown:parse *json-string*)) -=> *JSON-OBJECT* -CL-USER> (jsown:to-json *json-object*) -=> "{\"foo\":\"bar\",\"baz\":[1,2,\"blub\"]}" -

    We can also use the VAL function to retrieve values from jsown objects:

    CL-USER> (jsown:val *json-object* "foo") -=> "bar" -

    External Links

    The project's repository on GitHub

    Reference Manual

    License

    -MIT
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/jss.html b/clones/lisp/www.cliki.net/jss.html deleted file mode 100644 index 34c4affc..00000000 --- a/clones/lisp/www.cliki.net/jss.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: jss - - - - - - - -
    jss
    jss is an extension for ABCL that makes it easier for me(AlanRuttenberg) to write lisp code that calls java libraries. jss stands for java syntax solution if I'm using it to write, and java syntax sucks when I have been reading java in it's usual form.

    It can be downloaded from my subversion repository.

    Be a pal: Make jss work in other common lisps that can call Java. :)

    This tool depends on jscheme, a tiny 600k library which you should grab from http://jscheme.sourceforge.net/jscheme/main.html and put in your class path. JSS makes ABCL fun. -- fusss


    -Java
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/jwacs.html b/clones/lisp/www.cliki.net/jwacs.html deleted file mode 100644 index 4ab440c6..00000000 --- a/clones/lisp/www.cliki.net/jwacs.html +++ /dev/null @@ -1,57 +0,0 @@ - - - - - CLiki: jwacs - - - - - - - -
    jwacs
    jwacs stands for Javascript With Advanced Continuation Support. It's a program transformer that converts an extended Javascript syntax to regular Javascript. The extended syntax provides the ability to capture and resume first-class continuations.

    James Wright is the author. See the project page for details.

    It is installable using Quicklisp: -

    -(ql:quickload :jwacs)
    -

    The darcs repository is publicly available for those who want to be able to track the up-to-the-minute, possibly-broken bleeding-edge. To get a copy of the current darcs repo: -

    -darcs get http://chumsley.org/jwacs/unstable
    -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/kdtree-jk.html b/clones/lisp/www.cliki.net/kdtree-jk.html deleted file mode 100644 index facf4349..00000000 --- a/clones/lisp/www.cliki.net/kdtree-jk.html +++ /dev/null @@ -1,58 +0,0 @@ - - - - - CLiki: kdtree-jk - - - - - - - -
    kdtree-jk
    KDTREE-JK is a package for building efficent KD-Trees in Common Lisp

    A KD-Tree is a data structure for searching N-dimensional space in -log(N) time by splitting a data set iteratively across, eg for 3 -dimensions, dimensions x,y,z,x,y,z

    In KDTREE-JTK, data are stored in block arrays instead of linked -structures, for minimal (usually zero) consing and allocation -overheads.

    Balancing is done in-place with Wirth's median partition method, so it -should be fast and memory efficient.

    By default, all floats are double precision, but this can be -changed in kdtree-jk-structs.lisp

    Access on GitHub


    -Topic: data structure
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/kl-verify.html b/clones/lisp/www.cliki.net/kl-verify.html deleted file mode 100644 index f8f1637b..00000000 --- a/clones/lisp/www.cliki.net/kl-verify.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: kl-verify - - - - - - - -
    kl-verify
    kl-verify is a common lisp library to generate a simple verify code image.

    It's licensed by MIT.

    Usage:

    (kl-verify:generate-verify-code stream 75 20 4 'exp)

    This will generate a simple expression picture to the stream, and return the -expression result as a string.

    Author: Kevin Lynx <kevinlynx@gmail.com>


    -graphics library
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/klatschbase.html b/clones/lisp/www.cliki.net/klatschbase.html deleted file mode 100644 index f00eb5af..00000000 --- a/clones/lisp/www.cliki.net/klatschbase.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - CLiki: klatschbase - - - - - - - -
    klatschbase
    Klatschbase -is a web based chat software application by Christian Haselbach using AJAX and a REST -like API with polling and JSON as data exchange format. The server side is -implemented in common lisp and requires hunchentoot. The client side is -implemented in Javascript.

    There is also a live version of klatschbase.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/kmrcl.html b/clones/lisp/www.cliki.net/kmrcl.html deleted file mode 100644 index 2e5f567c..00000000 --- a/clones/lisp/www.cliki.net/kmrcl.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: kmrcl - - - - - - - -
    kmrcl
    KMRCL is a collection of utilities used by a number of Kevin Rosenberg's CL packages.

    FAQ

    Q1. Is there any doc for KMRCL?

    A1. The source. :-) -A2. There is Tinaa documentation available as of 12 December 2005.

    Looks like this will not compile with a newer version of SBCL 0.8.20.31. byte-array.lisp will not compile due to file-stream not being a structure. More recent versions of SBCL (eg 0.9.5.32) compile correctly.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/knowledge representation systems.html b/clones/lisp/www.cliki.net/knowledge representation systems.html deleted file mode 100644 index 036b85d2..00000000 --- a/clones/lisp/www.cliki.net/knowledge representation systems.html +++ /dev/null @@ -1,89 +0,0 @@ - - - - - CLiki: Knowledge Representation Systems - - - - - - - -
    Knowledge Representation Systems
    Knowledge Representation Systems are an important subcategory of AI.

      -
    • -ap5 - - A mature, embedded, in-memory Relational ObjectStore and a high-level/declarative/specification language -
    • -
    • -Epilog System and Episodic Logic - - In contrast to Epilog Inference Package, the original Epilog system was created by Schubert, Hwang and Schaeffer for knowledge representation in Natural Language Processing, and is documented at the University of Rochester's Web -
    • -
    • -GBBopen - - GBBopen is a high-performance open source distributed systems framework based on the concepts that were explored and refined in the UMass Generic Blackboard system (see PDF article on that history) and the commercial GBB product -
    • -
    • -KR - - Knowledge Representation is a highly flexible and dynamic prototype-based object system for Common Lisp -
    • -
    • -LISA - - Lisp Intelligent Software Agents - is a production rule system for Common Lisp -
    • -
    • -PowerLoom - - A (not written in Common Lisp) Knowledge Representation & Reasoning System -
    • -
    • -Scone - - Scone is a high-performance, open-source knowledge-base (KB) system intended for use as a component in many different software applications -
    • -
    • -SNePS - - SNePS (Semantic Network Processing System) is an AI system for building, using and retrieving information from propositional semantic networks -
    • -

    External Links

    -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/kpax.html b/clones/lisp/www.cliki.net/kpax.html deleted file mode 100644 index 701ef75f..00000000 --- a/clones/lisp/www.cliki.net/kpax.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: KPAX - - - - - - - -
    KPAX
    A Common Lisp web framework by Sven Van Caekenberghe.

    Homepage at http://homepage.mac.com/svc/kpax/
    -Repository at https://github.com/svenvc/KPAX

    Evaluation, 20100901

    A very brief assessment of all web frameworks listed in cliki was carried out in September 2010. This assessment comprised: check websites, download source if available, attempt to compile, review documentation.

    The review found that, to quote the website, 'Altough KPAX is quite mature and has been in production use for years, the documentation is currently not good enough to support use by the general public.' Not encouraging.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/l-math.html b/clones/lisp/www.cliki.net/l-math.html deleted file mode 100644 index ec68deb1..00000000 --- a/clones/lisp/www.cliki.net/l-math.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: l-math - - - - - - - -
    l-math
    L-MATH is a library for simple linear algebra in geometric applications. Vector and matrix classes are available, as are simple linear interpolation functions and various operations related to creating rotation matrices using pre-specified frames.

    L-MATH is licensed under the GPL with the classpath exception.

    Development occurs on Launchpad.

    Tarballs are available from here, and documentation is available in the README file.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/lQuery.html b/clones/lisp/www.cliki.net/lQuery.html deleted file mode 100644 index 1c78a60d..00000000 --- a/clones/lisp/www.cliki.net/lQuery.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: lQuery - - - - - - - -
    lQuery
    lQuery is a DOM manipulation library inspired by and based on the jQuery syntax and functions. It uses Plump and CLSS in the background to achieve its work. Its main idea is to replace HTML templating systems and allow generated documents for websites while relying on pure HTML files. This achieves a much cleaner separation of static and dynamic page parts.

    The project can be found on github including a fully documented symbol index and a getting started tutorial.
    -As of August 2013, lQuery is available on Quicklisp.

    lQuery is licensed under the Artistic License 2.0.


    -XML HTML web
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/lambda-gtk.html b/clones/lisp/www.cliki.net/lambda-gtk.html deleted file mode 100644 index 93d32c83..00000000 --- a/clones/lisp/www.cliki.net/lambda-gtk.html +++ /dev/null @@ -1,63 +0,0 @@ - - - - - CLiki: lambda-gtk - - - - - - - -
    lambda-gtk
    Lambda-GTK is an apparently complete set of GTK+2 bindings, autogenerated by FFIGEN. From the website:

    -λgtk is a cross-platform Lisp interface to the complete GTK+2 family of shared libraries. λgtk currently runs in the following Lisp environments:

      -
    • PPC/Darwin OpenMCL 0.14.2-p1 -
    • -
    • x86/Linux SBCL 0.8.16 -
    • -
    • x86/Linux CMUCL 19a -
    • -
    -and is released under the Lisp Lesser General Public License (LLGPL).

    If you are familiar with Lisp function call syntax and the GTK API then programming with λgtk is straightforward. See examples.lisp for some demonstrations translated from the GTK tutorial. -

    It was generously released by Rick Taube, using Gary Byers' ffigen.

    The website is at -https://common-lisp.net/project/lambda-gtk/


    -GTK binding, GUI
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/lambda-reader.html b/clones/lisp/www.cliki.net/lambda-reader.html deleted file mode 100644 index 199e677e..00000000 --- a/clones/lisp/www.cliki.net/lambda-reader.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: lambda-reader - - - - - - - -
    lambda-reader
    lambda-reader is a language extension that lets you use the Unicode character λ for LAMBDA in the Lisp reader and printer.

    It was written by Fare Rideau based on an original idea by Brian Mastenbrook.

    It depends on named-readtables for managing the readtable.

    Repository: https://gitlab.common-lisp.net/frideau/lambda-reader

    License: MIT

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/language extension.html b/clones/lisp/www.cliki.net/language extension.html deleted file mode 100644 index 64fd8ce5..00000000 --- a/clones/lisp/www.cliki.net/language extension.html +++ /dev/null @@ -1,460 +0,0 @@ - - - - - CLiki: language extension - - - - - - - -
    language extension
    Language extensions are libraries that are not domain-specific (that is, just concern themselves with "programming" as opposed to "implementing algorithm/datastructure/service x"), widely usable, and could potentially be candidates for Proposed Extensions To ANSI, but are wider in scope than utilities. Examples would be new object systems, CPS-transformers, etc.

    Since Common Lisp is the "programmable programming language," many of these extensions are quite far-reaching.

      -
    • -ap5 - - A mature, embedded, in-memory Relational ObjectStore and a high-level/declarative/specification language -
    • -
    • -CAPTURED-STREAM - - captured-stream is a small Common Lisp library for viewing streams as sequences -
    • -
    • -CL Enumerations - - A package; an implementation of java.util.Enumeration and java.util.Iterator for Common Lisp -
    • -
    • -cl-2dsyntax - - cl-2dsyntax is an indentation-sensitive syntax system like Python (the programming language, not the CMUCL/SBCL compiler) does -
    • -
    • -cl-ana - - cl-ana aims to provide the basic tools necessary to analyze large/medium-large datasets -
    • -
    • -cl-annot - - cl-annot adds Python-like decorators (or Java-like annotations) to Common Lisp -
    • -
    • -cl-cont - - cl-cont is a delimited continuations library for Common Lisp -
    • -
    • -cl-dsl - - Define your Domain Specific Languages in a user-friendly way -
    • -
    • -cl-events - - Composable events system for Common Lisp -
    • -
    • -cl-groupby - - Short implementation of Scalas groupBy functionality for Common Lisp -
    • -
    • -cl-hooks - - cl-hooks allows the description of extension points in software using a concept of hooks (borrowed from Emacs) -
    • -
    • -cl-itertools - - Write iterators in CL in a way close to Python ones -
    • -
    • -cl-op - - A partial application library inspired by Goo's op function and SRFI 26 -
    • -
    • -cl-package-aliases - - Extends the standard CL package system with the ability to define package-local aliases (nicknames) to other packages in a transparent way -
    • -
    • -cl-parametric-types - - [BETA] A tool to repeatedly compile the same source code with different types -
    • -
    • -cl-read-macro-tokens - - Modify lisp reader, so that it could dispatch not only on characters, but also on arbitrary symbols in CAR -
    • -
    • -cl-rttemplate - - cl-rttemplate is a quotation system which works in a similar way like the quasiquotation, but during the read-time -
    • -
    • -cl-secure-read - - Define constrained versions of READ, READ-PRESERVING-WHITESPACE and READ-FROM-STRING -
    • -
    • -cl-slice - - This library was unmaintained for several years -
    • -
    • -cl-splicing-macro - - Define macros, that splice multiple forms directly into body of enclosing macro, without any PROGN's left -
    • -
    • -cl-typed - - ML-like syntax for ftypes with library-side type-checking -
    • -
    • -CLLIB - - CLLIB is a varied collection of Common lisp tools and routines in CLOCC -
    • -
    • -COLLECTING - - Common Lispy ways of collecting values during evaluation are diverse; here we discuss some well established and some proposed -
    • -
    • -collectors - - collectors is a common lisp library that aims to ease accumulating values (similar to loop/iter's collecting / appending clauses) -
    • -
    • -Common Lisp Reasoner - - Common Lisp meets AI problem-solving meets the semantic web -
    • -
    • -comparisons - - Comparison is a simple library adding comparison functions similar to EQUAL and EQUALP, which handle multiple types gracefully -
    • -
    • -computed-class - - A class metaobject for computed slot values and more -
    • -
    • -conduit-packages - - conduit-packages provides some enhancements to Common Lisp's package system -
    • -
    • -Context Lite - - Context Lite is a language extension for writing methods that specialize on the values of dynamic/special variables at runtime -
    • -
    • -ContextL - - ContextL is a language extension for Context-oriented Programming -
    • -
    • -data-lens - - This library provides a language for expressing data manipulations as the composition of more primitive operations -
    • -
    • -DBC - - DBC is a library for doing Design by contract ala the Eiffel programming language in Common Lisp -
    • -
    • -defmacro-enhance - - Extend DEFMACRO facility in spirit of Let Over Lambda -
    • -
    • -doplus - - doplus is a high-level, lispy, extensible iteration construct for Common Lisp -
    • -
    • -dynamic-classes - - Lets you specify CLOS classes (e.g., as arguments to make-instance) using parameters at run-time, letting you use mixins more conveniently -
    • -
    • -fare-quasiquote - - fare-quasiquote is a portable quasiquote implementation that plays well with pattern-matching -
    • -
    • -fast-generic-functions - - Generic functions that can be sealed on certain domains for performance -
    • -
    • -Filtered Functions - - filtered-functions implements arbitrary predicate dispatch for CLOS -
    • -
    • -function-cache - - Function-cache is a Common Lisp function caching / memoization library -
    • -
    • -gecol - - gecol provides bindings to GECODE in order to enjoy constraint programming in Lisp -
    • -
    • -General accumulator - - General accumulator is a general-purpose, extensible value accumulator library -
    • -
    • -generators - - Generators is a library that provides python style generators in common lisp, by using cl-cont delimited continuations -
    • -
    • -ia-hash-table - - Indifferent access hash-tables for Common Lisp -
    • -
    • -incognito-keywords - - incognito-keywords introduces a new kind of keyword that looks just like any non-keyword symbol and allows safe usage of convenient but clashy symbol names by multiple libraries without conflicts through sharing -
    • -
    • -Incongruent Methods - - A library that provides methods with incongruent lambda lists -
    • -
    • -inlined-generic-function - - A MOP-based implementation of fast inlined generic functions dispatched in compile-time -
    • -
    • -iterate - - iterate is a lispy and extensible replacement for the LOOP macro -
    • -
    • -iterate-keywords - - Lispy and extensible replacement for the LOOP macro, fork of iterate -
    • -
    • -lambda-reader - - lambda-reader is a language extension that lets you use the Unicode character λ for LAMBDA in the Lisp reader and printer -
    • -
    • -macrodynamics - - Macrodynamics is a language extension that broadens the notion of dynamic scope inside macroexpansion code -
    • -
    • -memoize - - Memoize is a small library for performing memoization -
    • -
    • -metacopy - - Metacopy is a library that makes it easy to specify how to make copies of an object -
    • -
    • -method-versions - - A Common Lisp library for dispatching generic methods based on the value of a global parameter rather than on one of the required parameters -
    • -
    • -mexpr - - mexpr is an Infix syntax library -
    • -
    • -modf - - An immutable setf -
    • -
    • -Modularize - - Modularize is an attempt at providing a common interface to segregate major application components -
    • -
    • -MW-EQUIV - - mw-equiv provides one of many possible equivalence relations between Common Lisp objects, similar to the standard EQUAL function family, but extensible -
    • -
    • -named-readtables - - Named-Readtables is a language extension library that provides a namespace for readtables akin to the -
    • -
    • -package-renaming - - package-renaming is a library for locally renaming CL packages -
    • -
    • -place-modifiers - - place-modifiers essentially gives access to hundreds of modify-macros through one single macro: modify -
    • -
    • -prompt-for - - Prompt the user for input of a particular type, or satisfying some predicate -
    • -
    • -quid-pro-quo - - A contract programming library for Common Lisp in the style of Eiffel’s Design by contract -
    • -
    • -readable - - readable adds additional abbreviations in the sexp reader; supports infix, optional standard function call notation, optional indentation -
    • -
    • -sb-sequence - - An SBCL implementation of the protocol for user defined sequences -
    • -
    • -screamer - - Screamer adds support for nondeterministic and constraint programming, including backtracking and undoable side-effects -
    • -
    • -Series - - A library providing data structure that combines aspects of sequences, (lazy) streams and loops, using a technique known as “fusion” or “deforestation” -
    • -
    • -Sheeple - - Sheeple is a delegative prototype-based object system inspired by CLOS -
    • -
    • -snakes - - Python style generators for Common Lisp -
    • -
    • -SRFI - - Scheme Requests for Implementation (SRFI) are proposed language extensions to Scheme, but that doesn't stop people from implementing them for Common Lisp -
    • -
    • -syntax-case - - SYNTAX-CASE is a system for macros proposed by R -
    • -
    • -xarray - - This package implements a generalized interface for array-like -
    • -

    Pattern matching: (main topic: pattern matching) -

      -
    • -bind - - Bind combines let*, destructuring-bind and multiple-value-bind into a single form -
    • -
    • -bpm2 - - bpm2 is a pattern matching language originally designed for doing code transformation [ie, writing compilers] -
    • -
    • -cartesian-product-switch - - cartesian-product-switch is a macro for choosing the appropriate form to execute according to the combined results of multiple tests -
    • -
    • -cl-unification - - Provides unification (as used in Prolog) over fairly arbitrary Common Lisp objects -
    • -
    • -cl-xmlspam - - XML Stream PAttern Matcher - concise, regexp-like pattern matching on streaming XML -
    • -
    • -let-plus - - LET+ extends let* with destructuring forms, slot access, hash table elements and various other constructs with a consistent interface -
    • -
    • -MCPat - - MCPat is a meta-circular pattern matching library -
    • -
    • -screamer - - Screamer adds support for nondeterministic and constraint programming, including backtracking and undoable side-effects -
    • -
    • -spath - - SPath is a library for running search queries against s-expressions, intended to match parts of them that the user needs -
    • -
    • -Toadstool - - Toadstool is a library for pattern matching -
    • -
    • -Trivia - - Trivial pattern matching compiler -
    • -
    • -type-r - - The complete collection of accessor functions and patterns to access the elements in a compound type specifier -
    • -

    Metaprogramming: (main topic: metaprogramming) -

      -
    • -agnostic-lizard - - An almost correct portable code walker for Common Lisp -
    • -
    • -arrow-macros - - Clojure-like arrow macros in Common Lisp -
    • -
    • -bubble-operator-upwards - - bubble-operator-upwards is a function that "bubbles an operator upwards" in a form, demultiplexing all alternative branches by way of cartesian product -
    • -
    • -cl-cont - - cl-cont is a delimited continuations library for Common Lisp -
    • -
    • -cl-curlex - - Leak *LEXENV*, which describes lexical environment, into the runtime -
    • -
    • -cl-indeterminism - - Find and manipulate undefined variables and functions in forms -
    • -
    • -cl-walker - - cl-walker implements an sexp → CLOS AST tree transformation (and vice versa) -
    • -
    • -Concrete-Syntax-Tree - - Concrete Syntax Trees represent s-expressions with source information -
    • -
    • -de.setf.utility - - de setf utility is a collection of Common Lisp utilities functions and several purpose-specific libraries -
    • -
    • -deprecations - - deprecations allows you to define functions, generic functions, macros and symbol macros as deprecated -
    • -
    • -linewise-template - - A Common Lisp library for processing text files and streams as templates conforming to simple line-based hierarchical formats -
    • -
    • -macro-eval - - A kind of eval for use at macro-expansion time (such as for constant-folding purposes) -
    • -
    • -macroexpand-dammit - - macroexpand-dammit is a code walker by John Fremlin -
    • -
    • -parse-declarations - - Parse-Declarations is a metaprogramming library to parse, filter, and build Common Lisp declarations (things like (inline foo)) -
    • -
    • -parse-number-range - - parse-number-range parses loop's convenient "for-as-arithmetic" syntax into 5 simple values -
    • -
    • -quasiquote-2.0 - - An alternative quasiquote syntax aimed at being more suitable for macros that define other macros -
    • -
    • -reader-interception - - reader-interception is a library for replacing the lisp reader with your own, so you can define your own syntax or compile other language through Lisp -
    • -
    • -symbol-namespaces - - symbol-namespaces defines a new kind of package that's named by a symbol rather than a string -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/langutils.html b/clones/lisp/www.cliki.net/langutils.html deleted file mode 100644 index 1f1dc094..00000000 --- a/clones/lisp/www.cliki.net/langutils.html +++ /dev/null @@ -1,61 +0,0 @@ - - - - - CLiki: langutils - - - - - - - -
    langutils
    langutils is a Common Lisp Natural Language Processing library which provides a set of functions related to the structured analysis and processing of open English text, written by Ian Eslick and now maintained by Kevin Raison and based in part on Python code from Hugo Liu.

    Supported functions starting over raw text strings are:

      -
    • String tokenization (string -> string) -
    • -
    • Part of speech tagging (string -> tokens -> vector-document) -
    • -
    • Phrase chunking (vector-document -> phrases) -
    • -
    • Miscellaneous (other functions like surface form generation and lemmatization can be found on the main page) -
    • -

    The main page for the distribution can currently be found at: -http://common-lisp.net/project/langutils/

    Detailed guide to the main parts of the API can be found in the distribution README file. Also included is a paper presented at the 2005 Lisp Conference discussing aspects of the library implementation.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/lapax.html b/clones/lisp/www.cliki.net/lapax.html deleted file mode 100644 index 6dcb796f..00000000 --- a/clones/lisp/www.cliki.net/lapax.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: lapax - - - - - - - -
    lapax
    is a Person, a u*ix system admin and striving programmer, also otherwise known as lex lapax,
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/lass.html b/clones/lisp/www.cliki.net/lass.html deleted file mode 100644 index 88a4252a..00000000 --- a/clones/lisp/www.cliki.net/lass.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: LASS - - - - - - - -
    LASS
    Writing CSS files comes with a lot of repetition and is generally much too verbose. With lispy syntax, shortcuts, and improvements, LASS aims to help you out in writing CSS quick and easy. LASS was largely inspired by SASS.

    The project can be found on github including a fully documented symbol index and a getting started tutorial.
    -As of September 2014, LASS is on Quicklisp.

    LASS is licensed under the Artistic License 2.0.


    -CSS web
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/lassie.html b/clones/lisp/www.cliki.net/lassie.html deleted file mode 100644 index 91a07020..00000000 --- a/clones/lisp/www.cliki.net/lassie.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: lassie - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/latex-table.html b/clones/lisp/www.cliki.net/latex-table.html deleted file mode 100644 index 9b19e466..00000000 --- a/clones/lisp/www.cliki.net/latex-table.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: latex-table - - - - - - - -
    latex-table
    Latex-table is a simple Common Lisp library for writing vectors and matrices into LaTeX tables. It won't allow you to do anything magical that you could not do in LaTeX otherwise, but it simplifies formatting (mostly numerical) tables. Floats can be aligned on the decimal dot.

    For examples, see the announcement on my blog.

    You can obtain the library from Github.


    -Topics: document preparation
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/lazy.html b/clones/lisp/www.cliki.net/lazy.html deleted file mode 100644 index 4daa6d4f..00000000 --- a/clones/lisp/www.cliki.net/lazy.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: lazy - - - - - - - -
    lazy
    This is a simple lazy form evaluation package for Common Lisp.

    Repository: https://github.com/massung/lazy/

    License: Apache 2


    -data structure
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/lep.html b/clones/lisp/www.cliki.net/lep.html deleted file mode 100644 index 7f134f77..00000000 --- a/clones/lisp/www.cliki.net/lep.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: lep - - - - - - - -
    lep
    Provides a LEP server for SBCL as well as command line clients eval and listener. Download here. For background information, see ELI.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/let-plus.html b/clones/lisp/www.cliki.net/let-plus.html deleted file mode 100644 index 9e676688..00000000 --- a/clones/lisp/www.cliki.net/let-plus.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: let-plus - - - - - - - -
    let-plus
    LET+ extends let* with destructuring forms, slot access, hash table elements and various other constructs with a consistent interface

    Supported: destructuring forms for lists and vectors, slot access for structures and classes, convenient forms for short functions, property list and hash table elements, various other constructs. Consistent interface supports editor hints via placeholder macros.

    The best documentation and tutorial is probably the README file, which you can find rendered on the main page of the git repo.

    It should be very easy to extend this library with your own constructs—see the documentation for a short example.

    The library should be installable using Quicklisp after June 2011.


    -pattern matching, convenience library, sharplispers, BSL
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/lexer.html b/clones/lisp/www.cliki.net/lexer.html deleted file mode 100644 index aa067366..00000000 --- a/clones/lisp/www.cliki.net/lexer.html +++ /dev/null @@ -1,77 +0,0 @@ - - - - - CLiki: lexer - - - - - - - -
    lexer
    Lexers (also called tokenizers) can be used to prepare a string or stream of character data into a form suitable as an input for parsers generated by parser generators.

      -
    • -cl-lex - - cl-lex is a set of Common Lisp macros for generating lexical analyzers automatically -
    • -
    • -DEFLEXER - - The LEXER package implements a lexical-analyzer-generator called DEFLEXER, which is built on top of both REGEX and CLAWK -
    • -
    • -dso-lex - - Allows lexers to be defined using regular expressions a la cl-ppcre -
    • -
    • -graylex - - graylex offers a means to do string operations on input streams without slurping all input at once by using Common Lisp Gray Streams, fixed-sized and flexible buffers -
    • -
    • -token-stream - - Lexer class for cl-stream -
    • -
    • -Zebu - - A Tool for Specifying Reversible LALR(1) Parsers -
    • -
    -

    The LEXER Package

    The lexer package is a tokenizer for Common Lisp that makes heavy use of the re package.

    Repository: https://github.com/massung/lexer

    License: Apache 2

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/lfarm.html b/clones/lisp/www.cliki.net/lfarm.html deleted file mode 100644 index 9bf5cfd4..00000000 --- a/clones/lisp/www.cliki.net/lfarm.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: lfarm - - - - - - - -
    lfarm
    a library for distributing work across machines using the lparallel API.

    Available on QuickLisp and github.


    -distributed
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/lfe.html b/clones/lisp/www.cliki.net/lfe.html deleted file mode 100644 index 68460c34..00000000 --- a/clones/lisp/www.cliki.net/lfe.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: lfe - - - - - - - -
    lfe
    LFE, Lisp Flavoured Erlang, is a lisp s-exp syntax front-end to the Erlang compiler. Code produced with it is compatible with "normal" Erlang code. An LFE evaluator and shell is also included.

    https://github.com/rvirding/lfe

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/lgtk.html b/clones/lisp/www.cliki.net/lgtk.html deleted file mode 100644 index 8783e9aa..00000000 --- a/clones/lisp/www.cliki.net/lgtk.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: lgtk - - - - - - - -
    lgtk
    Lgtk is Common Lisp GTK binding; not available for CLISP.

    Hosted at: http://www.common-lisp.net/project/lgtk/

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/lh-usb.html b/clones/lisp/www.cliki.net/lh-usb.html deleted file mode 100644 index ce3670c2..00000000 --- a/clones/lisp/www.cliki.net/lh-usb.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: lh-usb - - - - - - - -
    lh-usb
    lh-usb is a set of bindings for the Linux usbfs interface for writing usb device drivers from user-space Lisp code. It uses some SBCL-specific functions, particularly the SB-ALIEN FFI.

    Homepage: http://lisphacker.com/projects/lh-usb/

    There is an updated fork with support for other CL implementations and newer Linux kernels at https://github.com/deepfire/lh-usb


    -Topics: system programming
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/liards.html b/clones/lisp/www.cliki.net/liards.html deleted file mode 100644 index fcfe10f1..00000000 --- a/clones/lisp/www.cliki.net/liards.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: liards - - - - - - - -
    liards
    Liards is a Nintendo DS rom creator and a potential NDS library

    Licence: LLGPL

    Dependencies: umpa-lumpa, armish, SPLIT-SEQUENCE, FiveAM, arnesi

    Homepage: http://common-lisp.net/project/liards/

    Download: darcs get http://common-lisp.net/project/liards/darcs/liards

    Topic: file format

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/libgpg-error.html b/clones/lisp/www.cliki.net/libgpg-error.html deleted file mode 100644 index 708ecda5..00000000 --- a/clones/lisp/www.cliki.net/libgpg-error.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: libgpg-error - - - - - - - -
    libgpg-error
    libgpg-error is a small library with error codes and descriptions shared by most GnuPG related software.

    libgpg-error includes a complete Common Lisp CFFI binding with an ASDF, licensed under LGPL.


    -protocol
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/libraries.html b/clones/lisp/www.cliki.net/libraries.html deleted file mode 100644 index ee639de9..00000000 --- a/clones/lisp/www.cliki.net/libraries.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Libraries - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/library.html b/clones/lisp/www.cliki.net/library.html deleted file mode 100644 index 003c9158..00000000 --- a/clones/lisp/www.cliki.net/library.html +++ /dev/null @@ -1,164 +0,0 @@ - - - - - CLiki: Library - - - - - - - -
    Library
    Please do not use this topic for marking pages. Use a more specific topic marker. If you see any pages listed below, please categorize them appropriately!

    Quicklisp is a good way to get lisp libraries.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/license.html b/clones/lisp/www.cliki.net/license.html deleted file mode 100644 index 50f88cbb..00000000 --- a/clones/lisp/www.cliki.net/license.html +++ /dev/null @@ -1,127 +0,0 @@ - - - - - CLiki: License - - - - - - - -
    License
    A software license is a set of terms which specify how the user can use, modify or distribute the software.

    For a software package to be listed on CLiki, its license must usually be free according to the Debian Free Software Guidelines (or DFSG). -CLiki pages about licensing (most of which describe specific licenses) are

    There are also substantial lists of licenses elsewhere:

    -Because the Open Source Definition is derived from the DFSG, code licensed under any OSI-compatible license should be ok...
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/lightgbm.html b/clones/lisp/www.cliki.net/lightgbm.html deleted file mode 100644 index 5eafde82..00000000 --- a/clones/lisp/www.cliki.net/lightgbm.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: lightgbm - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/linear algebra.html b/clones/lisp/www.cliki.net/linear algebra.html deleted file mode 100644 index 54e0e718..00000000 --- a/clones/lisp/www.cliki.net/linear algebra.html +++ /dev/null @@ -1,144 +0,0 @@ - - - - - CLiki: linear algebra - - - - - - - -
    linear algebra
    Anything to do with linear algebra or matrices. See mathematics for other math libraries.

      -
    • -3d-matrices - - This is a library implementing common matrix operations, mainly intended as the counterpiece to 3d-vectors and thus being aimed at operations in 3D space -
    • -
    • -3d-vectors - - This is a simple library for 3D vectors -
    • -
    • -april - - A subset of APL (A Programming Language) compiling to Common Lisp -
    • -
    • -cl-blapack - - A wrapper around the Fortran BLAS and LAPACK libraries for dense linear algebra -
    • -
    • -cl-clsparse - - Common Lisp bindings for clSPARSE -
    • -
    • -cl-octave - - An FFI to the Octave linear algebra language (CMUCL-only) -
    • -
    • -cl-tuples - - cl-tuples is a library for writing optimised vector math -
    • -
    • -clem - - A library for representing and performing various operations on matrices -
    • -
    • -CLLIB - - CLLIB is a varied collection of Common lisp tools and routines in CLOCC -
    • -
    • -FSVD - - FSVD is a Common Lisp implementation of Simon Funk's quasi SVD as described at http://sifter.org/~simon/journal/20061211.html in the context of its application to the netflix prize -
    • -
    • -GSLL - - GNU Scientific Library for Lisp allows you to use the GNU Scientific Library (GSL) from Common Lisp -
    • -
    • -l-math - - L-MATH is a library for simple linear algebra in geometric applications -
    • -
    • -Linear-algebra - - Linear-algebra is a Common Lisp library of numeric linear algebra routines -
    • -
    • -lisp-matrix - - A matrix linear algebra library for common lisp building on work by Mark Hoemmen, Evan Monroig, Tamas Papp and Rif -
    • -
    • -LispLab - - The main purpose of Lisplab is to to integrate all kinds of mathematics capabilities into one framework -
    • -
    • -LLA - - [unmaintained, maintainers welcome] “Lisp Linear Algebra”, LLA for short, aims to provide convenient and fast matrix operations by binding to LAPACK -
    • -
    • -magicl - - Matrix Algebra proGrams In Common Lisp: numerical linear algebra routines with auto-generated bindings to BLAS, LAPACK and Expokit -
    • -
    • -MatLisp - - A BLAS and LAPACK linear algebra library wrapper which makes their features accessible through a set of CLOS classes -
    • -
    • -MGL-MAT - - MAT is a linear algebra library for working with multi-dimensional arrays which supports efficient interfacing to foreign and CUDA code -
    • -
    • -NLISP - - NLISP is an environment for numerical computation and visualisation like IDL or Matlab -
    • -
    • -sb-cga - - SB-CGA is a computer graphics algebra library for Common Lisp -
    • -
    • -Sheafhom - - Sheafhom is a package by Mark McConnell for large sparse linear algebra computations over the integers and other exact number types -
    • -
    • -spartns - - Spartns is a SPARse TeNSor representation library -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/linedit.html b/clones/lisp/www.cliki.net/linedit.html deleted file mode 100644 index 9ba89dcb..00000000 --- a/clones/lisp/www.cliki.net/linedit.html +++ /dev/null @@ -1,79 +0,0 @@ - - - - - CLiki: Linedit - - - - - - - -
    Linedit
    Linedit is a portable line-editing console library for Common Lisp.

    Successor to cl-readline.

    More information on -Linedit homepage.

    New in release 0.16: -

      -
    • Should work on Lispworks and OpenMCL/CCL.
    • -

    Bug-reports appreciated. Patches appreciated even more.

    -Well, submitting bugs and patches is not allowed at all without having a pre-existing gitlab account, there's no apparant way to get a gitlab account, and the mailing list link leads to a 404 page not found, so perhaps bug-reports and patches aren't all that appreciated after all. But maybe you meant submitting bug reports on the page here? I can do that!

    This is for SBCL 1.2.10 on Arch Linux, readline library version 6.3

      -
    • pressing "Up-arrow" introduces garbage binary data to the input, if you are at the beginning of input history. Checking whether you are at the beginning of a list is pretty basic stuff... so this package should probably do that.
    • -
    • I don't know why I was having trouble with end-of-file conditions. It started working for some reason, ctrl-d and it prompts and lets me exit.
    • -
    -Might offer some patches later, but of course I can't send them to common-lisp.net without a gitlab account. -

    -- cy

    Installing Linedit as REPL for SBCL without disturbing ILISP or SLIME requires some tweaking:

    In your .sbclrc: -

    ;;; Check for --no-linedit command-line option. -(if (member "--no-linedit" sb-ext:*posix-argv* :test 'equal) - (setf sb-ext:*posix-argv* - (remove "--no-linedit" sb-ext:*posix-argv* :test 'equal)) - (when (interactive-stream-p *terminal-io*) - (require :sb-aclrepl) - (require :linedit) - (funcall (intern "INSTALL-REPL" :linedit) :wrap-current t))) -

    And then in your .emacs: -

    -(setq inferior-lisp-program "sbcl --noinform --no-linedit")
    -

    You might also want to add :eof-quits t to the install-repl form.


    Another way is instead to say in your .sbclrc -

    (when (and (interactive-stream-p *terminal-io*) - (null (find-package 'swank))) - (require :linedit) - (funcall (intern "INSTALL-REPL" :linedit) :wrap-current t)) -

    which doesn't require having a separate file for your ordinary initialization code. -- James A. Crippen

    How do you make this second method work? I can't and don't see how since -SBCL by necessity processes its initfiles before it gets around loading swank. -- Nikodemus Siivola

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/linewise-template.html b/clones/lisp/www.cliki.net/linewise-template.html deleted file mode 100644 index 06843dec..00000000 --- a/clones/lisp/www.cliki.net/linewise-template.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: linewise-template - - - - - - - -
    linewise-template
    A Common Lisp library for processing text files and streams as templates conforming to simple line-based hierarchical formats. It is primarily intended for metaprogramming purposes.

    Project page: https://github.com/agrostis/linewise-template

    License: BSD License

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/linux-packaging.html b/clones/lisp/www.cliki.net/linux-packaging.html deleted file mode 100644 index c9f1d1f8..00000000 --- a/clones/lisp/www.cliki.net/linux-packaging.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: linux-packaging - - - - - - - -
    linux-packaging
    ASDF-extension to generate Linux packages.

    Repository: https://gitlab.com/ralt/linux-packaging

    License: MIT

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/linux.html b/clones/lisp/www.cliki.net/linux.html deleted file mode 100644 index 2f3a2068..00000000 --- a/clones/lisp/www.cliki.net/linux.html +++ /dev/null @@ -1,80 +0,0 @@ - - - - - CLiki: Linux - - - - - - - -
    Linux
    Linux is a widely popular Unix kernel. Several Common Lisp Implementations run on Linux, including ABCL, CCL, CLISP, CMUCL, GCL, SBCL, ECL, emacs-cl, OpenMCL, PopLog, Sacla and others.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/lisp IDE.html b/clones/lisp/www.cliki.net/lisp IDE.html deleted file mode 100644 index 0ad8b7c5..00000000 --- a/clones/lisp/www.cliki.net/lisp IDE.html +++ /dev/null @@ -1,60 +0,0 @@ - - - - - CLiki: lisp IDE - - - - - - - -
    lisp IDE
      -
    • -Lisp in a Box - - Self-contained Lisp IDEs for various OSes (soon): -
    • -
    • -LispEdit - - LispEdit is a Geany plugin that provides shortcuts for sending s-expressions (symbolic expressions) to a Lisp process running in Geany's embedded terminal -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/lisp books.html b/clones/lisp/www.cliki.net/lisp books.html deleted file mode 100644 index 43f25371..00000000 --- a/clones/lisp/www.cliki.net/lisp books.html +++ /dev/null @@ -1,173 +0,0 @@ - - - - - CLiki: Lisp books - - - - - - - -
    Lisp books
    A list of favorite Lisp books.

    Another list of Lisp books.

    Online books: -

    Offline books with web pages: -

    Other interesting things: -

    See also topic AI for a list of AI lisp books.

    Lisp books pages on cliki (topic "book"): -

    -Using "book" instead of the previously used "lisp books" makes it easier to put the marker in the text.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/lisp-cgi-utils.html b/clones/lisp/www.cliki.net/lisp-cgi-utils.html deleted file mode 100644 index 6a6fd81f..00000000 --- a/clones/lisp/www.cliki.net/lisp-cgi-utils.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: lisp-cgi-utils - - - - - - - -
    lisp-cgi-utils
    lisp-cgi-utils is a Lisp project for developing web applications using the CGI interface. It contains a package for handling the HTTP requests as well as a HTML generator package with special support for handling forms. Currently, the request handling supports both GET and POST. It also handles cookies for state keeping in the client.

    The lisp-cgi-utils has been developed originally for CLISP but is also tested with SBCL and CMUCL.

    Homepage: http://www.thangorodrim.de/software/lisp-cgi-utils/index.html

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/lisp-executable.html b/clones/lisp/www.cliki.net/lisp-executable.html deleted file mode 100644 index cf0e3459..00000000 --- a/clones/lisp/www.cliki.net/lisp-executable.html +++ /dev/null @@ -1,59 +0,0 @@ - - - - - CLiki: lisp-executable - - - - - - - -
    lisp-executable
    The lisp-executable library provides a language for defining programs and creating executables from Lisp systems.

    The library consists of

      -
    • a language for defining programs that accept command line arguments. -
    • -
    • the ability to automatically generate an executable for a defined program. -
    • -
    • an ASDF:COMPONENT so that executables can be built using an ASDF:OPERATION. -
    • -

    Automatic executable creation has been implemented for SBCL, ECL, CLISP, CCL and CMUCL.

    Homepage: https://github.com/markcox80/lisp-executable

    License: BSD license -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/lisp-gflags.html b/clones/lisp/www.cliki.net/lisp-gflags.html deleted file mode 100644 index 1f733a5e..00000000 --- a/clones/lisp/www.cliki.net/lisp-gflags.html +++ /dev/null @@ -1,61 +0,0 @@ - - - - - CLiki: lisp-gflags - - - - - - - -
    lisp-gflags
    Lisp GFlags is a Common Lisp implementation of gflags, Google's command line -flag parsing library. The library implements functionality similar to that of Google's C++ and Python gflags libraries, which live here: https://github.com/gflags.

    The code allows you to define command line flags using the DEFINE-FLAG macro. -For instance, the following form defines a boolean flag called *DEBUG-FLAG* -that is set based on the presence of "--debug" in the application's command -line.

    (define-flag *debug-flag* - :default-value nil - :selector "debug" - :type boolean - :help "Turn on debugging mode?" - :documentation "Is debugging mode turned on?")

    If the command line contains "--debug" or "--debug=true", then *DEBUG-FLAG* is set to T. Otherwise, it defaults to NIL.

    The function PARSE-COMMAND-LINE is used to parse the command line.

    The file flag-test.lisp contains more examples.


    -command-line options parser
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/lisp-interface-library.html b/clones/lisp/www.cliki.net/lisp-interface-library.html deleted file mode 100644 index c918a569..00000000 --- a/clones/lisp/www.cliki.net/lisp-interface-library.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: lisp-interface-library - - - - - - - -
    lisp-interface-library
    lisp-interface-library is a collection of pure and stateful data structures in interface-passing style from Fare Rideau.

    Implemented data-structures include pure and stateful functional maps, notably AVL trees, hash-tables based on the previous and big-endian patricia trees (tries).

    The library uses Interface-Passing Style for parametric polymorphism.

    The source code is at: - https://github.com/fare/lisp-interface-library

    This code was previously part of fare-utils but has been split into its own package since Quicklisp has now tipped the balance of practicality towards having plenty of small interdependent libraries rather than big independent monoliths.

    We are committed to making this the go-to library for both stateful and pure functional data-structures in CL, so we encourage you to send your feedback about how we can improve our code or API, and even to contribute patches.

    lisp-interface-library is not yet quite as good as cl-containers regarding stateful data structures.

    On our to-do list includes importing code from funds and from Chris Okasaki's book (e.g. porting Hari Prashant's Racket implementation).

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/lisp-magick.html b/clones/lisp/www.cliki.net/lisp-magick.html deleted file mode 100644 index 287dc20d..00000000 --- a/clones/lisp/www.cliki.net/lisp-magick.html +++ /dev/null @@ -1,56 +0,0 @@ - - - - - CLiki: lisp-magick - - - - - - - -
    lisp-magick
    lisp-magick is a binding for the ImageMagick graphics library.

    ImageMagick is a library for creating and manipulating -bitmap images and supports a wide variety of file formats.

    lisp-magick requires cffi and should work on any CL implementation -supported by it. However, so far only SBCL and CLISP have been tested.

    So far there isn't much documentation about lisp-magick, but you can use the -MagickWand C-API documentation. The lisp-magick -homepage -has a few simple examples.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/lisp-matrix.html b/clones/lisp/www.cliki.net/lisp-matrix.html deleted file mode 100644 index b9225173..00000000 --- a/clones/lisp/www.cliki.net/lisp-matrix.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: lisp-matrix - - - - - - - -
    lisp-matrix
    A matrix linear algebra library for common lisp building on work by Mark Hoemmen, Evan Monroig, Tamas Papp and Rif.

    Its git-repository can be found here. -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/lisp-network-server.html b/clones/lisp/www.cliki.net/lisp-network-server.html deleted file mode 100644 index 3f849e7a..00000000 --- a/clones/lisp/www.cliki.net/lisp-network-server.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: lisp-network-server - - - - - - - -
    lisp-network-server
    lisp-network-server is a simple framework for writing Common Lisp networking applications. It takes care of listening on the network, accepting the connection and starting a new thread with handler functions of your network aware application.


    -SBCL-specific, BSD sockets, LGPL
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/lisp-on-lines.html b/clones/lisp/www.cliki.net/lisp-on-lines.html deleted file mode 100644 index a7228883..00000000 --- a/clones/lisp/www.cliki.net/lisp-on-lines.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: lisp-on-lines - - - - - - - -
    lisp-on-lines
    Lisp-on-lines is a web framework built on top of ContextL and UCW and provides a unique declarative application development model.

    Homepage: https://github.com/drewc/lisp-on-lines

    License: MIT

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/lisp-stat.html b/clones/lisp/www.cliki.net/lisp-stat.html deleted file mode 100644 index 586b4cc8..00000000 --- a/clones/lisp/www.cliki.net/lisp-stat.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: lisp-stat - - - - - - - -
    lisp-stat
    Lisp-Stat is an environment for statistical computing, conceptually similar to R, that is also suitable for front-line production deployment of machine learning and statistical models. It grew out of a desire to have an environment for rapidly prototyping analytical and AI solutions, and move to production environments with minimal friction. It includes high accuracy statistical and mathematical functions, derived from the same sources as SciPy, a data frame implementation similar to Tidyverse/R and high quality interactive graphics via Vega-Lite
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/lisp-unit.html b/clones/lisp/www.cliki.net/lisp-unit.html deleted file mode 100644 index 036bd68d..00000000 --- a/clones/lisp/www.cliki.net/lisp-unit.html +++ /dev/null @@ -1,66 +0,0 @@ - - - - - CLiki: lisp-unit - - - - - - - -
    lisp-unit
    lisp-unit is a simple Common Lisp Test Framework. It is an extension of the library written by Chris Riesbeck . There is a long history of testing packages in Lisp, usually called "regression" testers. More recent packages in Lisp and other languages have been inspired by JUnit for Java. For more information on both unit testing and JUnit, visit www.junit.org.

    lisp-unit project page on github.

    Overview


    - The main goal for lisp-unit was to make it simple to use. The advantages of lisp-unit are: -
      -
    • Written in portable Common Lisp.
    • -
    • Loadable as a single file.
    • -
    • Loadable with ASDF or QuickLisp.
    • -
    • Simple to define and run tests.
    • -
    • Redefine functions and macros without reloading tests.
    • -
    • Test return values, printed output, macro expansions, and conditions.
    • -
    • Fine grained control over the testing output.
    • -
    • Store all test results in a database object that can be examined
    • -
    • Groups tests by package for modularity.
    • -
    • Group tests using tags
    • -

    -

    Features in Version 0.9.3


    - A comprehensive test results database has been implemented for Version 0.9.3. run-tests and run-tags return the test results database object. Two new functions have been added for examining the results, print-failures and print-errors.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/lisp-unit2.html b/clones/lisp/www.cliki.net/lisp-unit2.html deleted file mode 100644 index ddd9c19d..00000000 --- a/clones/lisp/www.cliki.net/lisp-unit2.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: lisp-unit2 - - - - - - - -
    lisp-unit2
    Lisp-unit2 is a major refactoring of the Common Lisp Test Framework lisp-unit.

    For more info see:

    Git Hub: https://github.com/AccelerationNet/lisp-unit2

    Topic:AccelerationNet, Test Framework

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/lisp-xl.html b/clones/lisp/www.cliki.net/lisp-xl.html deleted file mode 100644 index f74b5018..00000000 --- a/clones/lisp/www.cliki.net/lisp-xl.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: lisp-xl - - - - - - - -
    lisp-xl
    Common Lisp Microsoft XLSX (Microsoft Excel) loader for arbitrarily-sized / big-size files.

    Common Lisp Library for working with Microsoft Excel XLSX files, for example for ETL (extract-transform-load) and data cleansing purposes. This library is geared for working with large files (i.e. 100MB excel files).

    It does not load the whole file into RAM, thus, processing large files is possible. However, be careful with files that contain a lot of "unique strings" (strings that do not repeat frequently on the file), for they need to be loaded onto RAM.

    The software is still work in progress, although it works.

    Source: GitHub

    License: MIT

    Topics: file format, Windows

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/lisp.html b/clones/lisp/www.cliki.net/lisp.html deleted file mode 100644 index f68b3b6e..00000000 --- a/clones/lisp/www.cliki.net/lisp.html +++ /dev/null @@ -1,176 +0,0 @@ - - - - - CLiki: Lisp - - - - - - - -
    Lisp
    Alan Kay called it "the best language ever designed."

    There are many free Common Lisp Implementations - free as defined by the Debian Free Software Guidelines (DFSG).

    Topic Listing

      -
    • -cl-sgdos-csv - - cl-sgdos-csv is a library for mapping CSV files to LISP lists and CLOS objects and viceversa. -
    • -
    • -Coding Convention - - This page describes some common coding convention that you'll see in lisp source code -
    • -
    • -Conference - - Planning on going to a conference? This Cliki page is intended as a starting point for news of conferences with a Lisp theme or at which Lispers are likely to be present in significant numbers -
    • -
    • -copying problem - - Placeholder for the idea that there is no 'copy of this object' in Lisp -
    • -
    • -CRACL - - CRACL, the Campaign for Real Ale and Common Lisp, the Lisp user group for the greater Los Angeles area -
    • -
    • -Debian - - Debian GNU/Linux is a non-commercial Linux-distribution which is very popular with developers, and has CMUCL packages which are frequently updated -
    • -
    • -Donald Fisk - - An instance of the class Person -
    • -
    • -Editing Lisp Code with Emacs - - Keyboard tips -
    • -
    • -Fear of Lisp - - Fear of Lisp, 'parenthephobia' in Greek, is a disease that affects a large percentage of the population involved in the information technologies -
    • -
    • -Features - - Common lisp allows implementations to have extensions, and has an official way of testing for them, via membership of the *features* list -
    • -
    • -ffi - - FFI is short for Foreign Function Interface, which is useful for linking to arbitrary C (and not only) libraries from Lisp code -
    • -
    • -GMane - - GMane is a bidirectional Mail to News gateway -
    • -
    • -GNU - - GNU is a project to create a GPL-licensed UNIX that was started by Richard Stallman, the creator of EMACS -
    • -
    • -Graduate Student - - Lisp using Graduate Students include Cyrus Harmon -
    • -
    • -lambda-reader - - lambda-reader is a language extension that lets you use the Unicode character λ for LAMBDA in the Lisp reader and printer -
    • -
    • -Lisp - Next Generation - - In a time far, far in the future exists a kinder, gentler, friendlier Lisp -
    • -
    • -Lisp Companies - - Companies which uses Lisp, Scheme, .. -
    • -
    • -Lisp Markup Languages - - Lisp Markup Languages are Markup Languages that extend a Lisp system -
    • -
    • -macro example - - Some CLiki pages contain Lisp macros: -
    • -
    • -ObjectStore - - ObjectStore is a commercial object database for C++ and Java -
    • -
    • -Performance - - Performance is either the subject of programmer performance (speed and quality of programming) or program performance (speed and quality of execution (or of compilation when the program under consideration is a compiler)) -
    • -
    • -PowerShell - - An experiment in sending tasks to PowerShell from CL -
    • -
    • -profiler - - The goal of profiling is to find out the bottlenecks of the program, such as which function consumes the most time, which function is called most times etc -
    • -
    • -Proposed ANSI Revisions and Clarifications - - Entries under this page have been moved to one of the following two pages: -
    • -
    • -Quick Arrays - - A re-run benchmark on original code by Ron Parr, with a couple of tweaks by David Mullen to run on CCL, figuring that the contrast between then and now (1996 versus 2020) might be interesting -
    • -
    • -reeder - - A toy table-driven reader for Lisp, written in Common Lisp -
    • -
    • -REPL - - The Read Eval Print Loop of a Lisp listener -
    • -
    • -Self-Generation - - An expression that evaluates to itself -
    • -
    • -Three Comma Programmer - - A Three Comma Programmer is the Lisp version of the Three Star Programmer in C -
    • -
    • -uLisp - - uLisp is an embedded Lisp for microcontrollers, supporting Arduino, Adafruit M0/M4, Micro:bit, ESP8266/32, and RISC-V boards -
    • -
    • -YoungLispers - - Lisp is not just your grandpa's language -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/lisp2wish.html b/clones/lisp/www.cliki.net/lisp2wish.html deleted file mode 100644 index e6bbd67b..00000000 --- a/clones/lisp/www.cliki.net/lisp2wish.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: lisp2wish - - - - - - - -
    lisp2wish
    lisp2wish is not actively maintained, see cl-tk for a currently maintained interface to Tk. Is it obsolete?

    lisp2wish is a simple interface to the Tk GUI toolkit. The interface starts the Tcl/Tk interpreter wish from Lisp as a subprocess, with which it communicates asynchronously by sending Tcl commands and receiving responses.

    lisp2wish was developed by Matthias Lindner and the source code has apparently not been changed since 1995. Although the system works with Allegro CL, CLISP, KCL and Lucid, it should be straightforward to port it to other Common Lisp implementations. Only a few functions that start a subprocess and open I/O streams with it need to be adapted.

    A version that works for CLISP, SBCL and CMUCL can be found here: http://www.riise-data.net/lisp2wish-2004-01-31.tgz. This file also has an asdf system file and documentation how to invoke it for the three Common Lisp implementations above.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/lispbuilder-clawk.html b/clones/lisp/www.cliki.net/lispbuilder-clawk.html deleted file mode 100644 index 586f4e1b..00000000 --- a/clones/lisp/www.cliki.net/lispbuilder-clawk.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: lispbuilder-clawk - - - - - - - -
    lispbuilder-clawk
    Stub added for asdf-install see Lispbuilder site for more details.

    They have .zip files, I merely downloaded, extracted and re-packaged to tgz to be able to asdf-install it.

    I didn't sign the package.


    -string lispbuilder
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/lispbuilder-lexer.html b/clones/lisp/www.cliki.net/lispbuilder-lexer.html deleted file mode 100644 index 9cf71d5e..00000000 --- a/clones/lisp/www.cliki.net/lispbuilder-lexer.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: lispbuilder-lexer - - - - - - - -
    lispbuilder-lexer
    Stub added for asdf-install see Lispbuilder site for more details.

    They have .zip files, I merely downloaded, extracted and re-packaged to tgz to be able to asdf-install it.

    I didn't sign the package.


    -string lispbuilder
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/lispbuilder-regex.html b/clones/lisp/www.cliki.net/lispbuilder-regex.html deleted file mode 100644 index 0265e9e2..00000000 --- a/clones/lisp/www.cliki.net/lispbuilder-regex.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: lispbuilder-regex - - - - - - - -
    lispbuilder-regex
    Stub added for asdf-install see Lispbuilder site for more details.

    They have .zip files, I merely downloaded, extracted and re-packaged to tgz to be able to asdf-install it.

    The standard regexp package is cl-ppcre but this is used for lispbuilder-lexer and lispbuilder-clawk.

    This is my first post here, I didn't sign the package.


    -string lispbuilder
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/lispbuilder-sdl-gfx.html b/clones/lisp/www.cliki.net/lispbuilder-sdl-gfx.html deleted file mode 100644 index 2296a20a..00000000 --- a/clones/lisp/www.cliki.net/lispbuilder-sdl-gfx.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: lispbuilder-sdl-gfx - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/lispbuilder-sdl-image.html b/clones/lisp/www.cliki.net/lispbuilder-sdl-image.html deleted file mode 100644 index 1a5ffaf2..00000000 --- a/clones/lisp/www.cliki.net/lispbuilder-sdl-image.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: lispbuilder-sdl-image - - - - - - - -
    lispbuilder-sdl-image
    LISPBUILDER-SDL-IMAGE provides a Lisp wrapper for the SDL_Image library. The following image file formats are supported: TGA, BMP, PNM, PBM, PGM, PPM, XPM, XCF, PCX , GIF, JPG, TIF, LBM and PNG.

    The project homepage is located at http://lispbuilder.sourceforge.net/lispbuilder-sdl-image.html

    See also: lispbuilder-sdl.

    lispbuilder

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/lispbuilder-sdl-mixer.html b/clones/lisp/www.cliki.net/lispbuilder-sdl-mixer.html deleted file mode 100644 index ba503371..00000000 --- a/clones/lisp/www.cliki.net/lispbuilder-sdl-mixer.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: lispbuilder-sdl-mixer - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/lispbuilder-sdl-ttf.html b/clones/lisp/www.cliki.net/lispbuilder-sdl-ttf.html deleted file mode 100644 index 4e6be8ac..00000000 --- a/clones/lisp/www.cliki.net/lispbuilder-sdl-ttf.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: lispbuilder-sdl-ttf - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/lispbuilder-sdl.html b/clones/lisp/www.cliki.net/lispbuilder-sdl.html deleted file mode 100644 index 7475b8fb..00000000 --- a/clones/lisp/www.cliki.net/lispbuilder-sdl.html +++ /dev/null @@ -1,76 +0,0 @@ - - - - - CLiki: lispbuilder-sdl - - - - - - - -
    lispbuilder-sdl
    Lispbuilder-SDL provides Common Lisp bindings for the SDL graphics library.

    Lispbuilder-SDL runs on a number of platforms: -

      -
    • ACL: Linux, win32, OS X
    • -
    • CCL: Linux, win32, OS X (CCL on OS X requires a single-threaded build in order to avoid thread safety issues with Cocoa)
    • -
    • CLISP: Linux, win32, OS X, BSD
    • -
    • CMUCL: Linux
    • -
    • ECL: Linux, win32
    • -
    • LispWorks: Linux, win32, OS X
    • -
    • SBCL: Linux, win32, OS X, BSD (Win32 version is single threaded.)
    • -
    • See the download page for a complete list of supported platforms. -
    • -

    The project page is at LISPBUILDER-SDL Wiki.

    Additional functionality: -

      -
    • Lispbuilder-SDL can be used as a rendering back-end for cl-vectors. Lisp native TTF font support is provided by zpb-ttf.
    • -
    • -VECTO can be used to provide vector drawing and font rendering capabilities (By copying VECTO image data to a Lispbuilder-SDL surface.)
    • -
    • -CL-OpenGL can be used for OpenGL 3D rendering (though note that the examples bundled with CL-OpenGL use the GLUT binding that CL-OpenGL includes and thus won't work without modification). -
      • If you're using cl-opengl and want to use advanced opengl functionality, at time of writing it helps to know to do: -
      -
    • -
    -   ; N.B. don't use any ext. functions which go through GetProcAddress
    -   ; until AFTER an opengl sdl surface exists, presumably there's late binding going on...
    -   (setf cl-opengl-bindings:*gl-get-proc-address* #'sdl-cffi::sdl-gl-get-proc-address)
    -

    See also: lispbuilder-sdl-image, lispbuilder-sdl-gfx, lispbuilder-sdl-ttf, lispbuilder-sdl-mixer, CFFI.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/lispbuilder.html b/clones/lisp/www.cliki.net/lispbuilder.html deleted file mode 100644 index 8fd4ef00..00000000 --- a/clones/lisp/www.cliki.net/lispbuilder.html +++ /dev/null @@ -1,85 +0,0 @@ - - - - - CLiki: LispBuilder - - - - - - - -
    LispBuilder
    LispBuilder is a Common Lisp Application Builder providing several useful cross-platform packages for Common Lisp.

    Projects included in LispBuilder include


    -library
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/lispc.html b/clones/lisp/www.cliki.net/lispc.html deleted file mode 100644 index 335d368b..00000000 --- a/clones/lisp/www.cliki.net/lispc.html +++ /dev/null @@ -1,91 +0,0 @@ - - - - - CLiki: lispc - - - - - - - -
    lispc
    A powerful macrolanguage for C.

    Examples:

    LISP/c turns -

    (header stdio) -(main - (@printf (str "Hello, world!")) - (return 0)) -

    into (after it being cleaned up)

    #include <stdio.h> - -int main(int argc,char **argv) -{ - printf("Hello, world!"); - return 0; -} -

    Macros: -

    (lisp/c-macro for-m (vars nums &rest body) - (if (or (null vs) (null nums)) - `(block ,body nil) ;; "NIL" to get rid of extra {}s - `(for (var ,(car vars) int 0) - (< ,(car vars) ,(car ns)) - (++ ,(car vars)) - ,(apply for-m (cdr vs) (cdr ns) body))))) -
    -Now, -
    (for-m (i j k l m) (3 3 3 4 5) (@printf (s. "%d %d %d %d %d") i j k l m))
    -will compile to -
    for(int i=0;((i)<(3));++(i)) -{ - for(int j=0;((j)<(3));++(j)) - { - for(int k=0;((k)<(3));++(k)) - { - for(int l=0;((l)<(4));++(l)) - { - for(int m=0;((m)<(5));++(m)) - { - printf("%d %d %d %d %d",i,j,k,l,m); - }; - }; - }; - }; -} -

    See homepage for other examples, including C++ and CUDA.

    Homepage: GitHub

    License: MIT

    Topics: convenience library

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/lispcafe.html b/clones/lisp/www.cliki.net/lispcafe.html deleted file mode 100644 index 68299a76..00000000 --- a/clones/lisp/www.cliki.net/lispcafe.html +++ /dev/null @@ -1,69 +0,0 @@ - - - - - CLiki: lispcafe - - - - - - - -
    lispcafe
    #lispcafe on www.libera.chat

    The lispcafe is where lispers come to drink or discuss about anything.

    -

    - -

    Well, our topic was getting super-full of links. Not wanting to destroy them, here they are, may they serve you well:


    -Categories: IRC
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/lispdebug.html b/clones/lisp/www.cliki.net/lispdebug.html deleted file mode 100644 index 4ac0ad88..00000000 --- a/clones/lisp/www.cliki.net/lispdebug.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: LISPDEBUG - - - - - - - -
    LISPDEBUG
    LISPDEBUG is a source-level Common Lisp debugger written by Marc Mertens. It runs on a variety of platforms, including CMUCL, ACL, CLISP and GCL flavors.

    LISPDEBUG features a GUI, form highlighting, conditional breakpoints, code stepper, watching of variables or expressions, profiling, support of multisource projects and so on. LISPDEBUG is succeeded by Jabberwocky, no new versions are planned.

    Information about LISPDEBUG can be found here. The version of LISPDEBUG on this website is not the latest version (I can no longer maintain this page). For the latest version of LISPDEBUG, see the Jabberwocky home page - Jabberwocky includes LISPDEBUG.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/lisppaste.html b/clones/lisp/www.cliki.net/lisppaste.html deleted file mode 100644 index 0db272e2..00000000 --- a/clones/lisp/www.cliki.net/lisppaste.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: lisppaste - - - - - - - -
    lisppaste
    lisppaste sits on a webserver and users can paste text into it. Once pasted, lisppaste will notify a pre-configured IRC channel about the paste and where it can be located. The web application includes syntax colorization, annotations, XML-RPC support, and more. It was active at paste.lisp.org but the site indicates that "Due to continued abuse, this service has been disabled."

    Depends on: hunchentoot, puri, cl-irc, split-sequence, s-xml, s-xml-rpc, cl-ppcre, html-encode, cl-who, bordeaux-threads

    Repository: https://github.com/stassats/lisp-bots

    Mirror: https://gitlab.common-lisp.net/lisppaste/new-bots

    License: MIT

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/lispweb.html b/clones/lisp/www.cliki.net/lispweb.html deleted file mode 100644 index d50e3fa0..00000000 --- a/clones/lisp/www.cliki.net/lispweb.html +++ /dev/null @@ -1,57 +0,0 @@ - - - - - CLiki: lispweb - - - - - - - -
    lispweb
    lispweb is a mailing list intended for the discussion of all things dealing with the use of lisp variants for Web development. -Many people are finding lisps of various flavors (and that includes Scheme) are wonderful languages for web -development. However, there are not many community resources for lisp web development. Often the tools that exist to -make this task easier are difficult to find, or effort is being duplicated. Lisp doesn't have the masses of developers that -other languages do, so coordinating the limited labor available is very important.

    The web page for the mailing list is at http://www.red-bean.com/lispweb/. Archives can be had at -https://www.red-bean.com/pipermail/lispweb/

    Here's a paper by -Alberto Riva and Marco Ramoni desribing the design and and implementation of LispWeb.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/lispworks-udp.html b/clones/lisp/www.cliki.net/lispworks-udp.html deleted file mode 100644 index 1d867353..00000000 --- a/clones/lisp/www.cliki.net/lispworks-udp.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: LispWorks-UDP - - - - - - - -
    LispWorks-UDP
    UDP networking for LispWorks

    Use by cl-net-snmp, OMax 2 and other apps.

    Contact Chun Tian (binghe) if you need any help on this package.

    Versions

    1.x: 1.1 (2008-9-6), 1.0 (2008-6-16)

    2.x: 2.2 (2008-9-6), 2.1 (2008-7-21)

    3.x: 3.0 (2008-9-6), 3.1 (2008-9-8), 3.2 (2008-9-9)

    4.x: 4.0 (2008-11-20)

    All versions can be download at sourceforge, or common-lisp.net, choose the biggest version if you're new user.

    Documentation

    Please go LispWorks-UDP home.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/lispx-proxy.html b/clones/lisp/www.cliki.net/lispx-proxy.html deleted file mode 100644 index 5134cac3..00000000 --- a/clones/lisp/www.cliki.net/lispx-proxy.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: lispx-proxy - - - - - - - -
    lispx-proxy
    lispx-proxy (Lisp Execution Proxy) is a Lisp application launcher for Windows (A *nix port with limited functionality is also available). lispx-proxy allows creation of executable Lisp source code distributions, which require zero configuration to run.

    Homepage: http://lispx-proxy.sourceforge.net/

    lispx-proxy is included with Lisp Cabinet.

    deployment

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/literate programming.html b/clones/lisp/www.cliki.net/literate programming.html deleted file mode 100644 index 1db130b9..00000000 --- a/clones/lisp/www.cliki.net/literate programming.html +++ /dev/null @@ -1,64 +0,0 @@ - - - - - CLiki: literate programming - - - - - - - -
    literate programming
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/literate-lisp.html b/clones/lisp/www.cliki.net/literate-lisp.html deleted file mode 100644 index bc7a1980..00000000 --- a/clones/lisp/www.cliki.net/literate-lisp.html +++ /dev/null @@ -1,57 +0,0 @@ - - - - - CLiki: literate-lisp - - - - - - - -
    literate-lisp
    Provides some support for org files as Lisp source files, including ASDF interface.

    Example: -

    (asdf:defsystem literate-demo - :components ((:module demo :pathname "./" - :components ((:org "readme")))) - :depends-on (:literate-lisp)) -

    Thus, no explicit tangling on Org side is necessary to load lisp code from org files.

    Homepage: GitHub

    License: MIT


    -convenience library, utilities
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/littleb.html b/clones/lisp/www.cliki.net/littleb.html deleted file mode 100644 index f68c3f64..00000000 --- a/clones/lisp/www.cliki.net/littleb.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: littleb - - - - - - - -
    littleb
    Little b is a language to build mathematical models of complex systems.

    Homepage

    Getting source trough cvs:

    -cvs -d:pserver:anonymous@littleb.cvs.sourceforge.net:/cvsroot/littleb login
    -cvs -z3 -d:pserver:anonymous@littleb.cvs.sourceforge.net:/cvsroot/littleb co -P b1
    -

    Little b is released under the MIT license.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/lml.html b/clones/lisp/www.cliki.net/lml.html deleted file mode 100644 index a8f87d14..00000000 --- a/clones/lisp/www.cliki.net/lml.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: LML - - - - - - - -
    LML
    LML (Lisp Markup Language) is a Web tool for generating XHTML documents. Is is written by Kevin Rosenberg who uses it for generating all of his web pages. This includes his Debian package maintenance -page which is automatically -generated from a database of package information.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/lml2.html b/clones/lisp/www.cliki.net/lml2.html deleted file mode 100644 index c70c05e2..00000000 --- a/clones/lisp/www.cliki.net/lml2.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: LML2 - - - - - - - -
    LML2
    LML2 is a Web tool for generating XHTML documents. It is based on the LML package by Kevin Rosenberg and the open source htmlgen macro by Franz.

    A summary of the differences between LML, LML2, and htmlgen are given on LML2's readme.html.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/local-time.html b/clones/lisp/www.cliki.net/local-time.html deleted file mode 100644 index cc09b858..00000000 --- a/clones/lisp/www.cliki.net/local-time.html +++ /dev/null @@ -1,61 +0,0 @@ - - - - - CLiki: local-time - - - - - - - -
    local-time
    local-time is a library for manipulating date and time information in a semi-standard manner. It is based almost entirely off of Erik Naggum's paper, The Long, Painful History of Time. It includes such features as:

      -
    • Time and date arithmetic
    • -
    • -ISO 8601 timestring formatted output and parsing
    • -
    • Reader macros to embed timestrings directly in code
    • -
    • Timezone handling (will read unix tzfile format)
    • -
    • Conversion between universal and unix time epochs
    • -
    • Julian date calculation
    • -
    -This library is still under development. Contributors and feedback are both very welcome.

    The maintainer of this project is Daniel Lowe. The last update was 1.0.6 on 2015-05-27.


    -BSD license
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/lodematron.html b/clones/lisp/www.cliki.net/lodematron.html deleted file mode 100644 index 66a628ba..00000000 --- a/clones/lisp/www.cliki.net/lodematron.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: lodematron - - - - - - - -
    lodematron
    lodematron parses md2, 3ds and lwo (pre LightWave 6) 3d object mesh file format files.

    Depends on: iterate, ieee-floats, mixamesh, babel, cl-fad

    Source repository: https://repo.or.cz/lodematron.git

    License: ???


    -Topics: CAD
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/log4cl.html b/clones/lisp/www.cliki.net/log4cl.html deleted file mode 100644 index af57b486..00000000 --- a/clones/lisp/www.cliki.net/log4cl.html +++ /dev/null @@ -1,87 +0,0 @@ - - - - - CLiki: Log4CL - - - - - - - -
    Log4CL
    Log4CL is high performance extensible logging library for Common Lisp

    Status

    Library is maintained by sharplispers at https://github.com/sharplispers/log4cl.

    Features

    -
      -
    • Modeled after Log4J with the familiar concepts such as log categories, appenders and layouts -
    • -
    • No dependencies other then Bordeaux-threads -
    • -
    • High performance implementation that minimizes consing, with benchmarking showing it faster then log4j in most cases. -
    • -
    • Buffered and un-buffered stream appenders, console appender, file appender and daily rolling file appender with configurable name are all implemented. Auto-flushing of buffered appenders by background thread. -
    • -
    • Automatic naming of log categories, so that a log statement that does -not specifically name a logger, appearing in a function SOME-PACKAGE:FOO inside of a local flet function BAR, will automatically log into the category SOME-PACKAGE:FOO:BAR -
    • -
    • Appenders, layouts, and most everything else is implemented via CLOS, -and can be easily changed/extended/customized. Automatic log category naming -is also implemented via CLOS and can be specialized per-package, so packages -can implement their own custom naming options. -
    • -
    • Easy/abbreviated configuration function for interactive REPL work, with several pre-defined "sane" configurations, as well as traditional log4j like configuration via properties file, with option to auto-reload on changes. -
    • -
    • Pattern layout, with several enhancements, such as options to modify - separator and case (including invert) of log categories, for example one can print log category FOO:BAR:BAZ as foo--bar--baz -
    • -
    • Multiple logging hierarchies support, with each having an completely -independent configuration with regards to log levels and appenders, suitable for example for virtual hosts. -
    • -
    • Extensive test suite with over 400+ assertions. -
    • -
    • Tested on SBCL, CCL, CLISP and LispWorks -
    • -

    A quick-start guide is provided in README.md file.


    -Apache 2
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/log5.html b/clones/lisp/www.cliki.net/log5.html deleted file mode 100644 index 11d56fea..00000000 --- a/clones/lisp/www.cliki.net/log5.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: log5 - - - - - - - -
    log5
    Log5 is a logging library organized around five things: categories, outputs, senders, messages and contexts.

    You can find more out about log5 at its home page on Common-Lisp.net.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/logging.html b/clones/lisp/www.cliki.net/logging.html deleted file mode 100644 index fa741993..00000000 --- a/clones/lisp/www.cliki.net/logging.html +++ /dev/null @@ -1,108 +0,0 @@ - - - - - CLiki: logging - - - - - - - -
    logging
    Logging libraries. See also other tools for development, and a tutorial on logging and debugging. There's an article on Common Lisp and Logging, which discuss the ecosystem and general requirements for loggers in Common Lisp.

      -
    • -a-cl-logger - - A common lisp logging library providing context sensitive logging of more than just strings to more than just local files / output streams -
    • -
    • -cl-grip - - cl-grip is a high-level logging system for Common Lisp, focusing on a clear user interface, support for flexible structured logging, and easy extensibility for different backends to support direct logging to various inputs -
    • -
    • -cl-log - - CL-LOG is a general purpose logging utility, loosely modelled in some respects after Gary King's Log5 -
    • -
    • -cl-syslog - - Common Lisp interface to local and remote Syslog facilities -
    • -
    • -flood - - Comfortable, powerful and tiny logging library for common lisp -
    • -
    • -hu.dwim.logger - - hu,dwim,logger is a logging library -
    • -
    • -irc-logger - - irc-logger is a networking library written by Kevin Rosenberg which uses the cl-irc library to provide multichannel Internet Relay Chat (IRC) logging -
    • -
    • -journal - - A library for logging, tracing, testing and persistence -
    • -
    • -Log4CL - - Log4CL is high performance extensible logging library for Common Lisp -
    • -
    • -log5 - - Log5 is a logging library organized around five things: categories, outputs, senders, messages and contexts -
    • -
    • -LoGS - - A programmable log analysis engine available under the terms of the GPL -
    • -
    • -logv - - Logv is a cognitively lightweight logging utility for Common Lisp -
    • -
    • -Verbose - - Verbose is a logging framework that aims to provide a good default setup as well as an extensible back-end to suit all your logging needs -
    • -
    • -vom - - A tiny logging library for Common Lisp -
    • -

    When in doubt, you can go with log4cl, the "de facto" logging library maintained by the Sharplispers community. Or have a look at the Comparison of Common Lisp Logging Libraries, which is fairly extensive (last updated in 2016).

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/logv.html b/clones/lisp/www.cliki.net/logv.html deleted file mode 100644 index 507f9c4c..00000000 --- a/clones/lisp/www.cliki.net/logv.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: logv - - - - - - - -
    logv
    Logv is a cognitively lightweight logging utility for Common Lisp.

    Depends on: rw-ut, trivial-utf-8, bordeaux-threads

    Repository: https://github.com/nallen05/logv

    License: BSD 3-Clause

    Author: Nick Allen

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/lol-re.html b/clones/lisp/www.cliki.net/lol-re.html deleted file mode 100644 index 595029ef..00000000 --- a/clones/lisp/www.cliki.net/lol-re.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: lol-re - - - - - - - -
    lol-re
    Tiny wrapper around CL-PPCRE, inspired by #~M and #~S read-macro from Let Over Lambda, making use of regular expressions more perly.

    Introduces M~ and S~ read macro tokens (see cl-read-macro-tokens), which do not require backslashes in string describing regular expression to be escaped -and establish plenty of anaphoric variables useful for analyzing the match.

    Also introduces couple of iterate drivers, to ease use of M~ with iterate.

    See README on the homepage for more info.

    Licence: GPL

    Homepage: GitHub

    Topics: regular expression

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/lparallel.html b/clones/lisp/www.cliki.net/lparallel.html deleted file mode 100644 index a0c0bc0f..00000000 --- a/clones/lisp/www.cliki.net/lparallel.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: lparallel - - - - - - - -
    lparallel
    lparallel is a new concurrency library. It allows tasks (defined as functions) to be set up to run in parallel. Task control is special to the library. - Control and data flow among tasks is supported with structures including queues, "promises", and "ptrees". Parallelized cognates of Common Lisp functions are provided. -Homepage: http://lparallel.org/

    License: BSD

    Source repository: https://github.com/lmj/lparallel

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ltd.html b/clones/lisp/www.cliki.net/ltd.html deleted file mode 100644 index 04f563f7..00000000 --- a/clones/lisp/www.cliki.net/ltd.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: ltd - - - - - - - -
    ltd
    ltd is a Common Lisp to Dylan translator.

    Peter Norvig wrote the Lisp to Dylan translator (ltd) while at Harlequin. It handles a lot of the boring "grunt work" required to convert a Common Lisp program to Dylan, such as changing to infix syntax and substituting function names for commonly-used functions.

    The documentation and the original source can be found here.

    Peter S. Housel has updated ltd with an ASDF definition, fixed it to run on SBCL, and updated the Dylan utility runtime library for modern Dylan compilers (Gwydion Dylan and Open Dylan). This version is not yet released, but it may be checked out from the Subversion repository at svn://anonsvn.gwydiondylan.org/scm/svn/dylan/trunk/ltd/.


    -Dylan s-exp syntax
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ltk.html b/clones/lisp/www.cliki.net/ltk.html deleted file mode 100644 index b454ed29..00000000 --- a/clones/lisp/www.cliki.net/ltk.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: ltk - - - - - - - -
    ltk
    LTK is a set of CL bindings for the Tk GUI library, which provides a complete CLOS binding to the Tk widget set. It is implemented by means of talking to a Tcl interpreter. This makes the toolkit portable and capable of working over a remote socket.

    LTK was written by Peter Herth.

    Although the last release is somewhat dated, the project is still under active development. Most activity happens on its mailing list. The canonical repository seems to be on Github.

    Many examples, covering the tkdocs tutorial, were contributed by Peter Lane: https://peterlane.netlify.app/ltk-examples/.

    Plotting with Ltk

    A wrapper around tklib's Plotchart library is also available here: https://peterlane.netlify.app/ltk-plotchart/.

    Issues

    -One unfortunate problem is that LTK mysteriously fails to run on some Windows computers, depending on what programs happen to be running in the background. People are encouraged to either donate a Windows box for testing, or helpfully volunteer to track the issue down.

    This may be an issue limited to certain Lisp implementations, as SBCL has not been observed to manifest this problem.

    See cl-tk or clTcl for alternatives.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/lw-compat.html b/clones/lisp/www.cliki.net/lw-compat.html deleted file mode 100644 index c82ae6ac..00000000 --- a/clones/lisp/www.cliki.net/lw-compat.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: lw-compat - - - - - - - -
    lw-compat
    LW Compat contains a few utility functions from the LispWorks library that are used in Pascal Costanza's software such as ContextL.

    Repository: https://github.com/pcostanza/lw-compat

    License: MIT

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/m2cl.html b/clones/lisp/www.cliki.net/m2cl.html deleted file mode 100644 index 5bde5465..00000000 --- a/clones/lisp/www.cliki.net/m2cl.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: m2cl - - - - - - - -
    m2cl
    An implementation of the mongrel2 API

    https://github.com/sshirokov/m2cl


    -Web CGI
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/machina-policy.html b/clones/lisp/www.cliki.net/machina-policy.html deleted file mode 100644 index ed57380c..00000000 --- a/clones/lisp/www.cliki.net/machina-policy.html +++ /dev/null @@ -1,60 +0,0 @@ - - - - - CLiki: machina-policy - - - - - - - -
    machina-policy
    machina-policy is a way to parse and query robots.txt files so your web-scraping bot can be a good bot instead of a bad bot.

    machina-policy supports the following basic elements of robots.txt files: -

      -
    • Allow: lines
    • -
    • Disallow: lines
    • -
    • URL globbing (like Googlebot: * is a wildcard, $ is a terminating anchor)
    • -
    • Crawl-delay (actually obeying crawl-delay is up to you)
    • -
    • Defaulting to User-agent: * if specified user-agent not found
    • -
    -
    -URI, MIT-LICENSE
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/machine code.html b/clones/lisp/www.cliki.net/machine code.html deleted file mode 100644 index 953186e5..00000000 --- a/clones/lisp/www.cliki.net/machine code.html +++ /dev/null @@ -1,100 +0,0 @@ - - - - - CLiki: machine code - - - - - - - -
    machine code
    Assemblers, disassemblers, machine code debuggers, etc.

      -
    • -Apple II archaeology - - Apple II archaeology is a collection of Lisp code useful for Apple II retrocomputing -
    • -
    • -armish - - Armish is an arm assembler -
    • -
    • -Assem - - Assem is an ISA-level code layer for Common Lisp -
    • -
    • -BITMOP - - BITMOP is a DSL for definition and manipulation of register sets, registers, bitfields and bitfield values, all of which are first-class objects -
    • -
    • -cl-comfy-arm - - cl-comfy-arm is an implementation by JosephOswald of Henry Baker's COMFY assembler for the ARM architecture -
    • -
    • -cl-elf - - cl-elf is a library for reading and writing the ELF executable file format -
    • -
    • -CL-IO-ELF - - CL-IO-ELF is a parser for ELF executable file format -
    • -
    • -cl-larval - - S-Exp syntax to write assembler for AVR microcontrollers -
    • -
    • -COMFY-6502 - - COMFY-6502 is a port by JosephOswald of Henry Baker's COMFY-6502 compiler to Common Lisp -
    • -
    • -LLVM - - LLVM stands for Low Level Virtual Machine -
    • -
    • -swap-bytes - - swap-bytes is a library for efficient endianness conversion in SBCL and CCL -
    • -
    • -SYMTABLE - - SYMTABLE is a simplistic symbol-table abstraction -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/machine learning.html b/clones/lisp/www.cliki.net/machine learning.html deleted file mode 100644 index fbdc58f1..00000000 --- a/clones/lisp/www.cliki.net/machine learning.html +++ /dev/null @@ -1,94 +0,0 @@ - - - - - CLiki: machine learning - - - - - - - -
    machine learning
    -Common Lisp Machine Learning projects:

      -
    • -MaLeCoLi, Machine Learning in Common Lisp.
    • -
    • -clml, Common Lisp Machine Learning Library.
    • -
    • -ML-Progs: More "Research-Level" Implementations of Learning Algorithms
    • -
    • -cl-bayesian, Common Lisp routines for Bayesian estimation and analysis.
    • -
    • -cl-mlep, a machine learning library for educational purposes
    • -
    • -cl-association-rules, an association rule mining library.
    • -
    • -cl-online-learning, a collection of machine learning algorithms for online linear classification.
    • -
    • -cl-random-forest, a fast implementation of Random Forest for multiclass classification and univariate regression
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/macho.html b/clones/lisp/www.cliki.net/macho.html deleted file mode 100644 index ada9f800..00000000 --- a/clones/lisp/www.cliki.net/macho.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: macho - - - - - - - -
    macho
    Macho is an email web archiving system, similar in scope to pipermail or mhonarc. It generates static html views of an email archive, organized and indexed for easy browsing. It is written entirely in common lisp.

    More information is available on the macho common-lisp.net page.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/macos x.html b/clones/lisp/www.cliki.net/macos x.html deleted file mode 100644 index 5e9c3723..00000000 --- a/clones/lisp/www.cliki.net/macos x.html +++ /dev/null @@ -1,74 +0,0 @@ - - - - - CLiki: MacOS X - - - - - - - -
    MacOS X
    Apple's Unix platform based on the open source Darwin. Mac OS X offers the Aqua GUI layer, QuickTime integration, and MacOS Classic compatibility on top of the capabilities of the Darwin layer.

    Free Common Lisp implementations for Mac OS X include: -

    CLISP and SBCL are the easiest to get running. Both are in Fink, MacPorts, and SBCL now offers downloadable Mac OS X binaries. OpenMCL tends to be slightly more difficult to get running with SLIME, but it does also have a binary distribution and a couple of native interactive environments, namely Clotho and Alpaca. SBCL and OpenMCL are the fastest free Lisps on Mac OS X. OpenMCL has the best integration with the Mac OS X GUI and other Mac OS X features.

    There is a first attempt at a Lisp in a Box for Mac OS X by Mikel Evins. His other works in progress are also interesting: Clotho, a native IDE for Mac OS X, and Alpaca, a writer's editor, built with Bosco and OpenMCL.

    Most Mac OS X Lispers will need Emacs. Mac OS X comes with a console-only build of GNU Emacs 21.2. Fink contains GUI ports of GNU Emacs and XEmacs that use the X11 bundled with MacOS X. Carbon Emacs is a solid port of GNU EMacs with GUI support.

    See EmacsWiki:EmacsForMacOS.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/macro example.html b/clones/lisp/www.cliki.net/macro example.html deleted file mode 100644 index 7bc43b51..00000000 --- a/clones/lisp/www.cliki.net/macro example.html +++ /dev/null @@ -1,105 +0,0 @@ - - - - - CLiki: macro example - - - - - - - -
    macro example
    Some CLiki pages contain Lisp macros: -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/macro-eval.html b/clones/lisp/www.cliki.net/macro-eval.html deleted file mode 100644 index ef764bde..00000000 --- a/clones/lisp/www.cliki.net/macro-eval.html +++ /dev/null @@ -1,98 +0,0 @@ - - - - - CLiki: macro-eval - - - - - - - -
    macro-eval
    A kind of eval for use at macro-expansion time (such as for constant-folding purposes). Why?

      -
    1. The standard provides constantp, which may take an environment. But eval takes no environment, always using the global environment. -
    2. -
    3. The value of a constant variable isn't necessarily available at the time constantp returns true (such as in the compilation environment). -
    4. -
    5. If we are passing information via symbol macros (e.g. doing compiler-let-like tricks) then we'd like an easy way to get those values. -
    6. -
    -Thus macro-eval attempts to reduce a form to a constant value (relative to the given environment) while expanding macro forms. Then the secondary value is T if the form was actually evaluated. This is easy for things that are self-evaluating (predicate self-evaluating-p), or macros that expand to such forms. The more difficult question would be how to recognize things like (sqrt pi) as constant, without duplicating too much of the functionality of the compiler itself. That's almost getting into code walker territory.

    (defun quoted-form-p (form) - "Return true if FORM is a QUOTE special form." - (typep form '(cons (eql quote) (cons t null)))) - -(defun self-evaluating-p (form) - "Return true if FORM evaluates to itself (in any environment)." - (typep form '(and atom (or null (eql t) keyword (not symbol))))) - -(defun constant-form-p (form) - "Return true if FORM is a (bound) constant variable." - (and (symbolp form) (constantp form) (boundp form))) - -(defun macro-eval (form &optional env) - (prog ((expansion form) expanded-p) - macro-eval-1 - (when (self-evaluating-p expansion) - (return (values expansion t))) - (when (quoted-form-p expansion) - (return (values (cadr expansion) t))) - (multiple-value-setq (expansion expanded-p) - (macroexpand-1 expansion env)) - (when expanded-p (go macro-eval-1)) - (return (if (constant-form-p expansion) - ;; (1) We have a constant variable, and - ;; (2) the value is actually available. - (values (symbol-value expansion) t) - ;; No evaluation. - (values form nil)))))

    Note that constantp is "not permitted" to expand compiler macros, but macro-eval could be extended to do this.

    Related reading

    -
    -metaprogramming
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/macro-html.html b/clones/lisp/www.cliki.net/macro-html.html deleted file mode 100644 index 984a0200..00000000 --- a/clones/lisp/www.cliki.net/macro-html.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: macro-html - - - - - - - -
    macro-html
    MACRO-HTML is Max Rottenkolber's HTML generator.

    Abstract from the manual: -

    -
    MACRO-HTML is a HTML generation library. It aims to be fast, modular, cachable and concise. It does so by defining each tag as a macro which expands to code printing the respective HTML source. It also employs a DSL for element attributes.

    -

    Topics

    HTML, HTML generator

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/macro-level.html b/clones/lisp/www.cliki.net/macro-level.html deleted file mode 100644 index 629c5245..00000000 --- a/clones/lisp/www.cliki.net/macro-level.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: macro-level - - - - - - - -
    macro-level
    macro-level is an embarassingly trivial convenience macro that saves on indentation while being more concise and direct.

    See the project's home for all details.


    -convenience library, Unlicense, Public Domain
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/macrodynamics.html b/clones/lisp/www.cliki.net/macrodynamics.html deleted file mode 100644 index fcfa9685..00000000 --- a/clones/lisp/www.cliki.net/macrodynamics.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: macrodynamics - - - - - - - -
    macrodynamics
    Macrodynamics is a language extension that broadens the notion of dynamic scope inside macroexpansion code. Macrodynamic bindings are scoped not just to the code called during an individual expansion, but also to subsequent expansions of the code returned within the dynamic scope of those bindings.

    Depends on: alexandria

    Repository: https://github.com/DalekBaldwin/macrodynamics

    License: LLGPL

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/macroexpand-dammit.html b/clones/lisp/www.cliki.net/macroexpand-dammit.html deleted file mode 100644 index 400257f2..00000000 --- a/clones/lisp/www.cliki.net/macroexpand-dammit.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: macroexpand-dammit - - - - - - - -
    macroexpand-dammit
    macroexpand-dammit is a code walker by John Fremlin.

    Transforms code to return a quoted version its macroexpansion using the host lisp to implicitly augment the lexical environment. Expands macros, macrolets, symbol-macros, symbol-macrolets, and compiler-macros. Removes macrolets and symbol-macrolets.

    Homepage: http://john.freml.in/macroexpand-dammit

    License: public domain


    -Topics: metaprogramming -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/magicffi.html b/clones/lisp/www.cliki.net/magicffi.html deleted file mode 100644 index 64b770b3..00000000 --- a/clones/lisp/www.cliki.net/magicffi.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: magicffi - - - - - - - -
    magicffi
    Magicffi is a CFFI interface to libmagic(3), the file type determination library using magic numbers. It can be used to guess file formats.

    It's written by Desmond O. Chang and can be found at http://common-lisp.net/project/magicffi/. Source code is at http://github.com/dochang/magicffi.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/magicl.html b/clones/lisp/www.cliki.net/magicl.html deleted file mode 100644 index bed844d4..00000000 --- a/clones/lisp/www.cliki.net/magicl.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: magicl - - - - - - - -
    magicl
    Matrix Algebra proGrams In Common Lisp: numerical linear algebra routines with auto-generated bindings to BLAS, LAPACK and Expokit

    (née FLAIL: Finally, Linear Algebra In Lisp!)

    As of 2022-04-06, this library is SBCL-, CCL- and ECL-only.

    Homepage: GitHub

    License: BSD

    See Also: cl-blapack

    Topics: linear algebra

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/manardb.html b/clones/lisp/www.cliki.net/manardb.html deleted file mode 100644 index 05c2cf55..00000000 --- a/clones/lisp/www.cliki.net/manardb.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: manardb - - - - - - - -
    manardb
    Fast, persistent, mmap'd Lisp object store

    Manardb provides persistent classes (integrated into the object system via the meta-object protocol), stored efficiently in memory mapped regions. It features transactions, two different garbage collection mechanisms (to clean up unreferenced objects in the database), in-place modification of arrays, efficient in-place numeric typed slots, and the ability to transparently serialise Lisp objects of many types (lists, vectors, floats, integers, symbols, strings).

    It allows Common Lisp programs to efficiently access in-memory representations of large numbers of persistent objects without putting pressure on the Lisp garbage collector.

    2020 review of manardb for a particular use case

    Repository: https://github.com/danlentz/manardb


    -ObjectStore
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/manifest.html b/clones/lisp/www.cliki.net/manifest.html deleted file mode 100644 index 6e9b1f54..00000000 --- a/clones/lisp/www.cliki.net/manifest.html +++ /dev/null @@ -1,57 +0,0 @@ - - - - - CLiki: manifest - - - - - - - -
    manifest
    Manifest is a documentation tool for semi-automatically documenting Common Lisp packages as a set of web pages, using the toot web server. It was written by Peter Seibel and can be installed via Quicklisp.

    From the README: -(A manifest tells you what's in a package. Also this system -makes manifest a bunch of information that is actually present in a -Lisp system.) The basic premise is that every exported symbol in a -package should be documented.

    -To check it out, after loading the system, evaluate (start) and point -your browser at the URL it returns.

    You can see it in action in this Video.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/map-bind.html b/clones/lisp/www.cliki.net/map-bind.html deleted file mode 100644 index 6671b9fd..00000000 --- a/clones/lisp/www.cliki.net/map-bind.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: map-bind - - - - - - - -
    map-bind
    map-bind is a macro that allows visual grouping of variables with their corresponding values (not necessarily 1:1) in calls to mapping operators when using an inline LAMBDA. It does so in a way that automatically supports virtually every existing and future mapping operator, all lambda keywords and FUNCALL/APPLY/MULTIPLE-VALUE-CALL variations.

    It does all this with a surprisingly simple implementation!

    See the project's home for all details.


    -convenience library, Unlicense, Public Domain
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/marcoxa.html b/clones/lisp/www.cliki.net/marcoxa.html deleted file mode 100644 index 3378662b..00000000 --- a/clones/lisp/www.cliki.net/marcoxa.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: marcoxa - - - - - - - -
    marcoxa
    Marco Antoniotti is now an old Common Lisp curmudgeon.

    He writes and maintains a number of libraries and tries (with little success) to tempt others to use them.

    Meanwhile he teaches Common Lisp to students, just to let them know that "something completely different" is "out there".

    person

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/markdown.cl.html b/clones/lisp/www.cliki.net/markdown.cl.html deleted file mode 100644 index 0c7df240..00000000 --- a/clones/lisp/www.cliki.net/markdown.cl.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: markdown.cl - - - - - - - -
    markdown.cl
    markdown.cl is a markdown parsing library for Common Lisp. It also parses table markdown using the github syntax. Now in Quicklisp.

    Depends on: cl-ppcre, xmls, split-sequence

    License: MIT


    -document preparation
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/mathematics.html b/clones/lisp/www.cliki.net/mathematics.html deleted file mode 100644 index e72b91dc..00000000 --- a/clones/lisp/www.cliki.net/mathematics.html +++ /dev/null @@ -1,428 +0,0 @@ - - - - - CLiki: Mathematics - - - - - - - -
    Mathematics
    Mathematics Library and Application packages

      -
    • -Antik - - A library for computational mathematics, science, and engineering -
    • -
    • -axiom - - Axiom is a general purpose Computer Algebra application -
    • -
    • -Bordeaux-FFT - - Bordeaux-FFT is a fast, pure-Lisp implementation of Fast Fourier Transforms -
    • -
    • -cl-ana - - cl-ana aims to provide the basic tools necessary to analyze large/medium-large datasets -
    • -
    • -cl-buchberger - - cl-buchberger is a Common Lisp implementation of Buchberger's algorithm for the computation of Gröbner bases -
    • -
    • -cl-factoradic - - cl-factoradic is a Mathematics/Combinatorics library that implements calculation and iteration of permutations based on the factoradic numbers system -
    • -
    • -cl-fftw3 - - cl-fftw3 provides a CFFI interface for Common Lisp programs to use the FFTW3 Fourier transform library -
    • -
    • -cl-geometry - - cl-geometry is a Common Lisp package for simple two dimensional computational geometry -
    • -
    • -cl-graph - - CL-Graph is a set of Common Lisp utilities for manipulating graphs -
    • -
    • -cl-gsl - - cl-gsl provides bindings to the GNU Scientific Library (GSL) of mathematics routines -
    • -
    • -cl-jointgen - - CL-JOINTGEN is a Common Lisp implementation of the Joint Generation Algorithm for computing the dual of a monotone boolean function -
    • -
    • -cl-mathstats - - CL-MathStats is a set of miscellaneous Common Lisp mathematics and statistics utilities -
    • -
    • -CL-NUM-UTILS - - Simple numerical functions, including intervals, Chebyshev polynomials and univariate rootfinding -
    • -
    • -cl-permutation - - CL-PERMUTATION is a Mathematics library for doing permutation and permutation group calculations written by Robert Smith -
    • -
    • -cl-rmath - - [unmaintained, maintainers welcome] A simple, autogenerated foreign interface for the standalone R API -
    • -
    • -cl-satwrap - - A thin generic SAT (propositional satisfiability problem) solver interface to your favorite “industrial-strength” SAT solver -
    • -
    • -CLLIB - - CLLIB is a varied collection of Common lisp tools and routines in CLOCC -
    • -
    • -clmath - - CLMATH is a modern re-packaging of an old Common Lisp scientific library by Gerald Roylance -
    • -
    • -COMPUTABLE-REALS - - COMPUTABLE-REALS is a Mathematics library for dealing with arbitrary precision reals -
    • -
    • -Decimals - - A decimal number parser and formatting package for Common Lisp -
    • -
    • -embeddable-maxima - - embeddable-maxima is the fork of Maxima CAS to make it embeddable into common lisp application -
    • -
    • -Factorial - - The Factorial of n is the product of all the integers between 1 -
    • -
    • -FEMLISP - - FEMLISP is a Mathematics Application which solves partial differential equations with the help of the finite element method (FEM) -
    • -
    • -FFT - - A Common Lisp library to do Fast Fourier Transform on a multi-dimensional array of numbers -
    • -
    • -Fibonacci - - The Fibonacci sequence of numbers was described in a mathematics book by Leonardo da Pisa (Fibonacci) called Liber Abaci -
    • -
    • -float-features - - float-features is a portability library for IEEE float features that are not covered by the CL standard -
    • -
    • -floating-point - - Floating-point is a Common Lisp library with functions for calculating -
    • -
    • -Forward Discrete Cosine Transform - - forward-dct! is a function implementing forward Discrete Cosine Transform, as used in JPEG -
    • -
    • -graph-utils - - graph-utils: graph analysis utilities for Common Lisp -
    • -
    • -GSLL - - GNU Scientific Library for Lisp allows you to use the GNU Scientific Library (GSL) from Common Lisp -
    • -
    • -IMPS - - IMPS is an Interactive Mathematical Proof System developed by W -
    • -
    • -Integrate - - Integrate is a package to aid in solving differential equations, currently slightly limited in scope -
    • -
    • -LispLab - - The main purpose of Lisplab is to to integrate all kinds of mathematics capabilities into one framework -
    • -
    • -Mandelbrot set explorer - - This mathematics application was written in Common Lisp (by Edi Weitz) -
    • -
    • -MatLisp - - A BLAS and LAPACK linear algebra library wrapper which makes their features accessible through a set of CLOS classes -
    • -
    • -Maxima - - Maxima is a GPL'd Common Lisp mathematics application for computer based algebra (an implementation of MIT's Macsyma system) -
    • -
    • -maxima-json-rpc - - maxima-json-rpc is http post json-rpc server for embeddable-maxima -
    • -
    • -micmac - - Common Lisp Mathematics library by Gabor Melis that implements alpha-beta, beam search, UCT and Metropolis-Hastings MCMC -
    • -
    • -Mitch's LISP Mathematical Library - - Large Mathematics library by Mitch Richling: numerical analysis, dynamical systems, symbolic algebra, combinatorial enumeration and counting algorithms, computational group theory, probabilistic modeling and simulation -
    • -
    • -Nuprl - - The Nuprl system, based on the type theory of Martin-Löf, is a system for manipulating proofs -
    • -
    • -Oct - - Lisp implementation of quad-double floats -
    • -
    • -patxi-2 - - PatXi-2 is a library for doing numerical computations in Common Lisp -
    • -
    • -plot-2d - - Plot-2D is a 2-dimensional data representation and plotting application for Mathematics and scientific data -
    • -
    • -plotting - - Library and Application packages to produce 2D and 3D plots -
    • -
    • -primecount - - Sublinear (in time and space) counting and summing of integer primes using optimized sieving method -
    • -
    • -PRL - - The Proof (or Program) Refinement Logic program, led by Robert Constable of Cornell -
    • -
    • -Quantile estimator - - Biased Quantiles over Data Streams -
    • -
    • -ratmath - - Utilities for Rational Numbers in Common Lisp (rational approximations and interval arithmetic) -
    • -
    • -SimLab - - SimLab Is a scientific simulation and analysis tool that uses the weyl computer algebra system -
    • -
    • -TPS - - TPS, standing for Theorem Proving System, is a theorem prover for first-order logic and type theory -
    • -
    • -ulimyhmpqs - - ulimyhmpqs is an implementation of the Hypercube Multiple Polynomial Quadratic Sieve (HMPQS), an algorithm for the factorisation of large (up to about 110 digits, where the Number Field Sieve (NFS) algorithms become more efficient) integers -
    • -
    • -Weyl - - A computer algebra substrate for Common Lisp -
    • -
    • -wu-decimal - - Wu-Decimal is a decimal number package developed by Wukix -
    • -

    Linear algebra: (main topic: linear algebra) -

      -
    • -3d-matrices - - This is a library implementing common matrix operations, mainly intended as the counterpiece to 3d-vectors and thus being aimed at operations in 3D space -
    • -
    • -3d-vectors - - This is a simple library for 3D vectors -
    • -
    • -april - - A subset of APL (A Programming Language) compiling to Common Lisp -
    • -
    • -cl-blapack - - A wrapper around the Fortran BLAS and LAPACK libraries for dense linear algebra -
    • -
    • -cl-clsparse - - Common Lisp bindings for clSPARSE -
    • -
    • -cl-octave - - An FFI to the Octave linear algebra language (CMUCL-only) -
    • -
    • -cl-tuples - - cl-tuples is a library for writing optimised vector math -
    • -
    • -clem - - A library for representing and performing various operations on matrices -
    • -
    • -CLLIB - - CLLIB is a varied collection of Common lisp tools and routines in CLOCC -
    • -
    • -FSVD - - FSVD is a Common Lisp implementation of Simon Funk's quasi SVD as described at http://sifter.org/~simon/journal/20061211.html in the context of its application to the netflix prize -
    • -
    • -GSLL - - GNU Scientific Library for Lisp allows you to use the GNU Scientific Library (GSL) from Common Lisp -
    • -
    • -l-math - - L-MATH is a library for simple linear algebra in geometric applications -
    • -
    • -Linear-algebra - - Linear-algebra is a Common Lisp library of numeric linear algebra routines -
    • -
    • -lisp-matrix - - A matrix linear algebra library for common lisp building on work by Mark Hoemmen, Evan Monroig, Tamas Papp and Rif -
    • -
    • -LispLab - - The main purpose of Lisplab is to to integrate all kinds of mathematics capabilities into one framework -
    • -
    • -LLA - - [unmaintained, maintainers welcome] “Lisp Linear Algebra”, LLA for short, aims to provide convenient and fast matrix operations by binding to LAPACK -
    • -
    • -magicl - - Matrix Algebra proGrams In Common Lisp: numerical linear algebra routines with auto-generated bindings to BLAS, LAPACK and Expokit -
    • -
    • -MatLisp - - A BLAS and LAPACK linear algebra library wrapper which makes their features accessible through a set of CLOS classes -
    • -
    • -MGL-MAT - - MAT is a linear algebra library for working with multi-dimensional arrays which supports efficient interfacing to foreign and CUDA code -
    • -
    • -NLISP - - NLISP is an environment for numerical computation and visualisation like IDL or Matlab -
    • -
    • -sb-cga - - SB-CGA is a computer graphics algebra library for Common Lisp -
    • -
    • -Sheafhom - - Sheafhom is a package by Mark McConnell for large sparse linear algebra computations over the integers and other exact number types -
    • -
    • -spartns - - Spartns is a SPARse TeNSor representation library -
    • -

    Statistics: (main topic: statistics) -

      -
    • -cl-ana - - cl-ana aims to provide the basic tools necessary to analyze large/medium-large datasets -
    • -
    • -cl-mathstats - - CL-MathStats is a set of miscellaneous Common Lisp mathematics and statistics utilities -
    • -
    • -cl-randist - - This package is a manual translation from C to common lisp of some random number generation functions of GSL library -
    • -
    • -cl-random - - [unmaintained, maintainers welcome] A library for uni- and multivariate probability distributions and statistics functions -
    • -
    • -CLLIB - - CLLIB is a varied collection of Common lisp tools and routines in CLOCC -
    • -
    • -common-lisp-stat - - Common Lisp Statistics -- based on LispStat but updated for Common Lisp and incorporating lessons from R -
    • -
    • -Mersenne Twister - - The Mersenne Twister is a pseudorandom number generation algorithm created by Makoto Matsumoto -
    • -
    • -py-random - - A translation of the random module in the Python standard library -
    • -
    • -RCL - - RCL is an FFI to communicate with the R statistics environment -
    • -
    • -rclg - - An R (statistics programming language) FFI for Common Lisp -
    • -
    • -sapaclisp - - sapaclisp is a collection of Common Lisp functions for spectral analysis -
    • -
    • -SimpSamp - - SimpSamp is a statistics library for simple random sampling without replacement -
    • -
    • -Stats - - Stats by Larry Hunter is a statistics library -
    • -

    Other stuff: -

      -
    • -RCL is a library for interfacing Common Lisp with the R environment using CFFI. (October 7 2007) rukubites: RCL doesn't work in SBCL, and requires some small modifications in alien-defs.lisp to accomodate CFFI API changes for defcvar.
    • -
    • -RCLG is an unfinished R interface that works for sbcl but not clisp (as of git version October 7 2007). It seems to have a similar interface as RCL.
    • -
    • -FriCAS is a fork of the Axiom computer algebra system.
    • -
    • -cl-ana is Common Lisp data analysis library.
    • -
    • -Kenzo is a program for doing computational algebraic topology. -
    • -
    • -CommonLispStat (see also GitHub location), is a port/rewrite/re-intentioning of XLispStat to Common Lisp. The goal is to develop an "R like" set of packages which deliver additional functionality to Common Lisp for applied statistical data analysis. -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/matrix.html b/clones/lisp/www.cliki.net/matrix.html deleted file mode 100644 index 1b71f2f8..00000000 --- a/clones/lisp/www.cliki.net/matrix.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: matrix - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/maxima-json-rpc.html b/clones/lisp/www.cliki.net/maxima-json-rpc.html deleted file mode 100644 index 1d119807..00000000 --- a/clones/lisp/www.cliki.net/maxima-json-rpc.html +++ /dev/null @@ -1,76 +0,0 @@ - - - - - CLiki: maxima-json-rpc - - - - - - - -
    maxima-json-rpc
    maxima-json-rpc is http post json-rpc server for embeddable-maxima.

    Licence: MIT

    Author: Michael Filonenko

    Depends on:
    embeddable-maxima
    cl-json
    restas

    Source code: -https://github.com/liangmuxue/maxima-json-rpc

    Start server:

    - git clone https://github.com/liangmuxue/maxima-json-rpc
    -  sbcl
    -    (pushnew "/path/to/maxima-json-rpc/" asdf:*central-registry*)
    -    (pushnew "/path/to/embeddable-maxima/" asdf:*central-registry*)
    -    (ql:quickload :maxima-json-rpc)
    -    (restas:start :maxima-json-rpc :port 9090)
    -

    Examples of JSON-RPC clients:

    See also: embeddable-maxima, Maxima.


    -Mathematics
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/maxima.html b/clones/lisp/www.cliki.net/maxima.html deleted file mode 100644 index bbeeb42a..00000000 --- a/clones/lisp/www.cliki.net/maxima.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Maxima - - - - - - - -
    Maxima
    Maxima is a GPL'd Common Lisp mathematics application for computer based algebra (an implementation of MIT's Macsyma system). Until recently, it was maintained by William Schelter at http://www.ma.utexas.edu/maxima.html . He passed away in 2001 and since then a group of developers co-ordinated around http://maxima.sourceforge.net -have been working on it.

    How to Install Maxima shows how you can build Maxima with CLISP and also demonstrates how to make Maxima use geomview, rendering amazing graphics via MesaGL. Also, how to set up TeXmacs with it.

    Maxima can also be used from Common Lisp programs as a library. See the section Lisp and Maxima in the Maxima manual for more information.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/maxpc.html b/clones/lisp/www.cliki.net/maxpc.html deleted file mode 100644 index 7acaaf91..00000000 --- a/clones/lisp/www.cliki.net/maxpc.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: MaxPC - - - - - - - -
    MaxPC
    Max’s Parser Combinators is a simple and pragmatic library for writing parsers and lexers based on combinatory parsing. MaxPC is capable of parsing deterministic, context-free languages, provides powerful tools for parse tree transformation and error handling, and can operate on sequences and streams.

    Repository: https://github.com/eugeneia/maxpc

    License: AGPL


    -parser generator
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/mcclim-desktop.html b/clones/lisp/www.cliki.net/mcclim-desktop.html deleted file mode 100644 index 5d0f8a2e..00000000 --- a/clones/lisp/www.cliki.net/mcclim-desktop.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: mcclim-desktop - - - - - - - -
    mcclim-desktop
    A clim-desktop clone.

    Depends on: McCLIM, bordeaux-threads, alexandria, swank

    Repository: https://github.com/gas2serra/mcclim-desktop

    License: GPLv3, © 2016 Alessandro Serra


    -CLIM development
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/mcclim.html b/clones/lisp/www.cliki.net/mcclim.html deleted file mode 100644 index 12d7dc6b..00000000 --- a/clones/lisp/www.cliki.net/mcclim.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - CLiki: McCLIM - - - - - - - -
    McCLIM
    McCLIM is Mike McDonald's Free and portable implementation of CLIM, the Common Lisp ueber-GUI toolkit.

    The current release is 0.9.7 (Imbolc), released 2018-02-16. Using Quicklisp is a preferred way to run McCLIM.

    The project page for McCLIM contains information about the mailing lists, code repository, and development.

    -(ql:quickload 'mcclim)
    -(ql:quickload 'clim-examples)
    -(clim-demo:demodemo)
    -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/mccme-helpers.html b/clones/lisp/www.cliki.net/mccme-helpers.html deleted file mode 100644 index 48e7da97..00000000 --- a/clones/lisp/www.cliki.net/mccme-helpers.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: mccme-helpers - - - - - - - -
    mccme-helpers
    Yet another set of utilities functions. Maintained by Michael Raskin.

    Currently provide unified structured data access macros, some CLSQL wrappers, some CommonLisp hacks.

    Depends on: cl-utilities, iterate, yason, cl-ppcre, parse-number, cl-emb, clsql, hunchentoot, ironclad, trivial-backtrace, local-time, fare-csv, trivial-utf-8

    Repository: https://gitlab.common-lisp.net/mccme-helpers/mccme-helpers

    License: LLGPL


    -convenience library
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/md5.html b/clones/lisp/www.cliki.net/md5.html deleted file mode 100644 index 02721bd8..00000000 --- a/clones/lisp/www.cliki.net/md5.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: md5 - - - - - - - -
    md5
    md5 is a cryptographic Message-Digest algorithm from RSA Data Security, Inc. It is defined in RFC 1321, by Ron L. Rivest. An implementation is included in the Ironclad package.

    Another portable implementation, by Pierre R. Mai, which has been highly bummed for CMUCL with copious input from other developers and users on the cmucl-help mailing list, is available from https://pmsf.eu/resources/lisp/MD5.html.

    and also (adjusted for SBCL compatibility) in SBCL contrib as sb-md5 - just (require :asdf) and (require :sb-md5) to load it.

    and also as a Debian package (stale) thanks to Kevin Rosenberg.

    Note that MD5 collisions have been found: Xiaoyun Wang and Dengguo Feng and Xuejia Lai and Hongbo Yu: -Collisions for Hash Functions MD4, MD5, HAVAL-128 and RIPEMD, so you should consider SHA1 instead.


    -cryptography
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/mel-base.html b/clones/lisp/www.cliki.net/mel-base.html deleted file mode 100644 index b47a594d..00000000 --- a/clones/lisp/www.cliki.net/mel-base.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: mel-base - - - - - - - -
    mel-base
    mel-base is a library for handling email with support for Maildir, POP3, IMAP and SMTP folders.

    It makes no difference from the programmer's side if an E-Mail gets copied from a Maildir folder to an IMAP folder or from POP3 to Maildir. Sending E-Mails through SMTP is simply done through the same mechanism. One just copies an E-Mail from a folder supporting the "receiver" protocol like IMAP, Maildir or POP3 to the SMTP folder which supports the "sender" protocol.

    E-Mails are first-class objects and on-demand fetching of parts of an e-mail -like the header or a particular part is supported.

    Mel-base got used to implement a POP3 server, a Spam-Filter and a CLIM Mail-Reader/Composer and many small scripts to process, filter and deliver E-Mails. Mel-Base itself is Open Source and licensed under a license similar to the BSD License. The mentioned applications, while not Open Source, are available on request.

    Author: Jochen Schmidt

    It works in SBCL , CMUCL, OpenMCL and LispWorks with partial support for -CLISP and ABCL. Porting it should be straightforward because implementation dependent parts are encapsulated in a thin compatibility layer.

    As of 2020, it has an updated fork here


    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/memento-mori.html b/clones/lisp/www.cliki.net/memento-mori.html deleted file mode 100644 index de196d77..00000000 --- a/clones/lisp/www.cliki.net/memento-mori.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: memento-mori - - - - - - - -
    memento-mori
    memento-mori is a library for writing robust, actor-based systems. It draws inspiration from Erlang/OTP, particularly its crash-first approach to high-availability systems, as well as Akka.

    -


    -thread concurrency actors
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/memoization.html b/clones/lisp/www.cliki.net/memoization.html deleted file mode 100644 index b06de831..00000000 --- a/clones/lisp/www.cliki.net/memoization.html +++ /dev/null @@ -1,64 +0,0 @@ - - - - - CLiki: memoization - - - - - - - -
    memoization
    Memoization is a package that extends the traditional memoization macros to not only easily define such functions, but also to save the cache to disk.

    What is memoization?

    Memoization is a dirty little trick that can be used for a lot of problems: suppose you have a function F that is slow to calculate, or that (in the ideal case) calls itself a lot and only depends on his arguments, then you can write a wrapper function F' that saves the result of every call to F and before calling F checks if it already knows the result.

    This easy trick can reduce runtimes of programs for 5e9 years to 15 minutes (Peter Van Eynde did this for a physics problem).

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/memoize-form.html b/clones/lisp/www.cliki.net/memoize-form.html deleted file mode 100644 index b63b317c..00000000 --- a/clones/lisp/www.cliki.net/memoize-form.html +++ /dev/null @@ -1,72 +0,0 @@ - - - - - CLiki: memoize-form - - - - - - - -
    memoize-form
    A simpler need than memoizing the results of a function with arguments is that of memoizing the results of a form. The tricky thing here is to do it just inline in the code, without using a global variable or such.

    ;; (MEMOIZED form) memoizes the result of form from its first evaluation. -;; Use like this: -;; (defun secret-password (...) ....... (memoized (random 1000)) ......) - -(eval-when (compile load eval) - (when (eval '(flet ((ltv () (load-time-value (cons nil nil)))) (eq (ltv) (ltv)))) - (pushnew :eval-uses-compiler *features*))) - -(defmacro memoized (form) - `(LET ((MEMORY - (IF #-eval-uses-compiler (EVAL-WHEN (EVAL) T) #+eval-uses-compiler NIL - ',(cons nil nil) - ;; Careful: Different expansions of MEMOIZED forms must yield - ;; LOAD-TIME-VALUE forms that are not EQ, otherwise compile-file - ;; will coalesce these LOAD-TIME-VALUE forms. Therefore here we - ;; explicitly cons up the list and don't use backquote. - ,(list 'LOAD-TIME-VALUE '(CONS NIL NIL))))) - (UNLESS (CAR MEMORY) - (SETF (CDR MEMORY) ,form) - (SETF (CAR MEMORY) T)) - (CDR MEMORY)))

    You should probably be using either DEFVAR, LOAD-TIME-VALUE, or fare-memoization:MEMOIZED-FUNCALL for local memoizations.


    -macro example
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/memoize.html b/clones/lisp/www.cliki.net/memoize.html deleted file mode 100644 index 796de3ca..00000000 --- a/clones/lisp/www.cliki.net/memoize.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: memoize - - - - - - - -
    memoize
    Memoize is a small library for performing memoization. It was written by Tim Bradshaw.

    See also memoize-form.

    You should be using fare-memoization instead.


    -language extension
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/messaging.html b/clones/lisp/www.cliki.net/messaging.html deleted file mode 100644 index dd721496..00000000 --- a/clones/lisp/www.cliki.net/messaging.html +++ /dev/null @@ -1,88 +0,0 @@ - - - - - CLiki: messaging - - - - - - - -
    messaging
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/meta-sexp.html b/clones/lisp/www.cliki.net/meta-sexp.html deleted file mode 100644 index d1a0f126..00000000 --- a/clones/lisp/www.cliki.net/meta-sexp.html +++ /dev/null @@ -1,207 +0,0 @@ - - - - - CLiki: meta-sexp - - - - - - - -
    meta-sexp
    meta-sexp is a META parser generator using LL(1) grammars with s-expressions. -meta-sexp uses in-memory string vectors, instead of commonly used streams, -for efficiently stepping backward and forward through the input. It is tested -on SBCL but should be portable to other implementations as well.

    meta-sexp is implemented using several transformation methods. -Therefore, besides builtin grammar transformations coming with -meta-sexp by default, you are allowed to add your own transformation -methods too.

    Project is released under BSD license and -currently maintained by Volkan YAZICI.

    (Tarball comes with the latest .git source tree. Feel free to play with it.)

    Inspired by src/streams/parser.lisp of the core-server project: https://github.com/evrim/core-server/blob/master/src/streams/parser.lisp

    Idea is based on the META language discussed in `Pragmatic Parsing -in Common Lisp' paper of Henry G. Baker [ACM Lisp Pointers 4, 2 (Apr/Jun 1991), 3-15]

    Quick Introduction

    In most of the time, you'll need to define your own parsers using -CREATE-PARSER-CONTEXT methods and DEFRULE, DEFRENDERER macros.

      -
    • create-parser-context ((input string) &key start end attachment)
    • -
    • create-parser-context ((input string-stream) &key buffer-size start end attachment)
    • -
    • defrule (name (&rest args) (&optional attachment) &body body)
    • -
    • defrenderer (name (&rest args) (&optional attachment) &body body)
    • -
    -In a rule or renderer body, if supplied, ATTACHMENT argument will get -bound to ATTACHMENT keyword given to CREATE-PARSER-CONTEXT.

    In some certain situations, you may also need to use DEFATOM too. See -atoms.lisp for DEFATOM examples.

    Here is a tiny example:

    (defrule integer? (&aux (sign 1) d (num 0)) () - (:? (:or (:and "-" (:assign sign -1)) - "+")) - (:+ (:assign d (:type digit?)) - (:assign num (+ (* num 10) - (- (char-code d) #.(char-code #\0))))) - (:return (* sign num))) - -(integer? (create-parser-context "+123")) ==> 123 -(integer? (create-parser-context "-123")) ==> -123 - -(defrule in-wonderland? () () - "META-SEXP" - (progn - (format t "META-SEXP in Wonderland!") - (meta (:type space?) - "in Wonderland!")) - (:return t)) - -(in-wonderland? (create-parser-context :data "META-SEXP in Wonderland!")) -META-SEXP in Wonderland! -==> T - -(in-wonderland? (create-parser-context :data "META-SEXP in Fooland!")) -META-SEXP in Wonderland! -==> NIL

    Here's a complete example with renderers and attachments.

    (defrenderer internal-link! (label &optional text) (attachment) - (format attachment "<a href='~a'>~a</a>" - label (if (empty-char-accum-p text) label text))) - -(defrule internal-link? (&aux (ref (make-char-accum)) (text (make-char-accum))) () - "[[" - (:+ (:not (:or "]]" (:type (or white-space? newline?)))) - (:char-push ref)) - (:? (:* (:type (or white-space? newline?))) - (:+ (:not "]]") - (:char-push text))) - "]]" - (:render internal-link! ref text)) - -(defrule wiki-markup? (&aux c) (attachment) - (:* (:or (:rule internal-link?) - (:and (:assign c (:read-atom)) - (write-char c attachment)))) - (get-output-stream-string attachment)) - -(wiki-markup? (create-parser-context - "foo bar [[ref text]] and [[just-ref]] here." - :attachment (make-string-output-stream))) -==> "foo bar <a href='ref'>text</a> and <a href='just-ref'>just-ref</a> here."

    What's the role of ATTACHMENT slot given to CREATE-PARSER-CONTEXT (or -specified as a keyword while making an instance of PARSER-CONTEXT -class)? Think it as a state storage unit between passes to defined -rules and renderers. (For instance, in our above example, ATTACHMENT -used as a common output stream.) Yes, it is possible to let this -problem get solved by the programmer, e.g. via global variables. But this -approach yields to another problem: thread safety. Anyway, that was -the best that I can come up with; if you have any other ideas, I'd be -happy to hear them.

    Available Type Checkers

    -These functions (and types) are routines introduced using DEFATOM -and operates on character codes. In case of need, you can add your -own type checkers. (See source for examples.)

    ALNUM? ALPHA? GRAPHIC? ASCII? BIT? DIGIT? EXTENDED? LOWER? NEWLINE? -SPACE? TAB? UPPER? WHITE-SPACE?

    Available Transformation Directives

    -
    -
    (:ICASE FORM FORM ...)
    -
    Process supplied FORMs case-insensitive.

    (:CHECKPOINT FORM FORM ...)
    -
    If form returns NIL, cursor will be back-positioned to its old -location :CHECKPOINT keyword was used.

    (:AND FORM FORM ...)
    -
    (:OR FORM FORM ...)
    -

    (:NOT FORM)
    -
    Besides its normal behaviour, (:NOT ...) expressions -automatically get encapsulated in (:CHECKPOINT ...) clauses.

    (:RETURN VAR VAR ...)
    -
    Returns supplied variables using VALUES function.

    (:RENDER RENDERER ARG ARG ...)
    -
    Calls specified RENDERER (that is defined with DEFRENDERER) with -supplied arguments.

    (:? FORM FORM ...)
    -
    May appear once. (Similar to `?' in regular expressions.)

    (:* FORM FORM ...)
    -
    May appear none or more. (Similar to `*' in regular expressions.)

    (:+ FORM FORM ...)
    -
    Must appear at least once. (Similar to `{1,}' in regular expressions.)

    (:TYPE TYPE-CHECKER)
    -
    (:TYPE (OR TYPE-CHECKER TYPE-CHECKER ...))
    -
    Checks type of the atom at the current position through supplied -function(s).

    (:RULE RULE ARG ARG ...)
    -
    (:RULE (OR RULE RULE ...) ARG ARG ...)
    -
    Tests input in the current cursor position using specified -type/form. If any, supplied arguments will get passed to rule.

    (:ASSIGN VAR FORM)
    -
    (:ASSIGN (VAR VAR ...) FORM)
    -
    Assigns returned value of FORM to VAR, and returns assigned value. -(Latter form expands into MULTIPLE-VALUE-SETQ.)

    (:LIST-PUSH ITEM-VAR LIST-ACCUM)
    -
    (:CHAR-PUSH CHAR-VAR CHAR-ACCUM)
    -
    (:CHAR-PUSH CHAR-ACCUM)
    -
    Pushes supplied ITEM-VAR/CHAR-VAR into specified -LIST-ACCUM/CHAR-ACCUM. If :CHAR-PUSH is called with only one -argument, current character gets read and pushed into supplied -accumulator. (You can use MAKE-LIST-ACCUM and MAKE-CHAR-ACCUM -functions to initialize new accumulators. Moreover, you'll probably need -EMPTY-LIST-ACCUM-P and EMPTY-CHAR-ACCUM-P predicates too.)

    (:LIST-RESET LIST-ACCUM)
    -
    (:CHAR-RESET CHAR-ACCUM)
    -
    Resets supplied accumulators.
    -

    (:EOF)
    -
    Returns true when reached to the end of supplied input data.

    (:READ-ATOM)
    -
    Reads current atom at the cursor position.

    (:DEBUG)
    -
    (:DEBUG VAR)
    -
    Prints current character and its position in the input data. -If VAR is supplied, its current value gets printed.

    -If a form doesn't start with any of the above keywords, there're -three possiblities remaining:

      -
    1. This can be a character.
    2. -
    3. This can be a string. (Expand it into character list form and -return to 1st step.)
    4. -
    5. Treat as a custom form. (Will get evaluated as is.)
    6. -

    When you're in the third situation, to be able to get your META -s-expressions compiled again, use META keyword. (See the second -example in the Quick Introduction.)

    Introducing New Transformations

    Every transformation process issued by meta-sexp is controlled by -TRANSFORM-GRAMMAR methods.

    (defgeneric transform-grammar (ctx in-meta directive &optional args) - (:documentation "META grammar transformation methods."))

    To introduce a new transformation directive, just create a new -TRANSFORM-GRAMMAR method with related lambda list specializers. For -instance, consider how :AND and :NOT directive -transformations are implemented:

    (defmethod transform-grammar - (ctx (in-meta (eql t)) (directive (eql :and)) &optional args) - `(and ,@(mapcar #'(lambda (form) (transform-grammar ctx t form)) - args))) - -(defmethod transform-grammar - (ctx (in-meta (eql t)) (directive (eql :not)) &optional args) - (transform-grammar - ctx t :checkpoint - `((not ,(transform-grammar ctx t (car args))))))

    Also pay attention how meta-sexp handles unrecognized transformation -directives:

    (defmethod transform-grammar (ctx in-meta directive &optional args) - "The most unspecific transformation method." - (declare (ignore args)) - (cond - ((and in-meta (consp directive) (keywordp (car directive))) - (transform-grammar ctx t (car directive) (cdr directive))) - ((and (not in-meta) (consp directive) (eql 'meta (car directive))) - (transform-grammar ctx t :and (cdr directive))) - ((consp directive) - (mapcar #'(lambda (form) (transform-grammar ctx nil form)) - directive)) - (t directive)))

    With similar patterns, you can introduce new transformation directives -to meta-sexp.

    References

      -
    • -ALIW project uses meta-sexp to parse the common wiki syntax that is adopted by the most popular wiki projects. (e.g. wikipedia, trac, moin moin.)
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/meta.html b/clones/lisp/www.cliki.net/meta.html deleted file mode 100644 index 2178285a..00000000 --- a/clones/lisp/www.cliki.net/meta.html +++ /dev/null @@ -1,57 +0,0 @@ - - - - - CLiki: Meta - - - - - - - -
    Meta
    A recursive-descent parser DSL that is a simpler alternative to parser generators. Described by Henry Baker: -Pragmatic Parsing in Common Lisp; or, putting defmacro on steroids (ACM Lisp Pointers, vol. IV, no. 2, April--June 1991, pp. 3--15, DOI 10.1145/121983.121984). A few dozen lines of code in Common Lisp.

    The scheme involves building a tiny language, called Meta, on top of Lisp. Whereas it does not handle all possible regular and context-free grammars, it can be used for a surprisingly large fraction of the grammars Lisp programmers encounter.

    I think the family of grammars that Meta handles is usually called LL(1) as opposed to LL(k) which some other recursive descent parser generators support. -A. Kjeldaas. -Actually the look-ahead limitation to one character is an artifact of using CL streams. The same technique and software can be used with sexprs and strings (and could be used with your own buffering streams if you dared) to provide unlimited look-ahead. -Fare Rideau -I also believe that the languages Meta can parse can also be generated by Regular Tree Grammars: a formalism that under-pins xml schema languages like Relax-NG. -M. Swank

    A simple practical package that uses Meta is Scribble, which you may take as an example.

    meta source code is at: - https://gitlab.common-lisp.net/frideau/meta

    mel-base contains a modified version of cl-meta which uses sexprs instead -of the reader. Huh? Baker's META works equally well on objects of type STREAM, STRING or LIST. cl-meta features access to these 3 via WITH-STRING-META, WITH-STREAM-META, WITH-LIST-META: lexical scoping is the solution, via MACROLET and/or LABELS. -Jörg Höhle Also, meta-sexp package is yet another META parser generator using s-expressions.


    -s-exp syntax
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/metacopy.html b/clones/lisp/www.cliki.net/metacopy.html deleted file mode 100644 index 8370af41..00000000 --- a/clones/lisp/www.cliki.net/metacopy.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: metacopy - - - - - - - -
    metacopy
    Metacopy is a library that makes it easy to specify how to make copies of an object. You can learn more at its Common-lisp.net home.

    Depends on: moptilities

    Repository: https://github.com/gwkkwg/metacopy

    License: MIT


    -Topics: language extension
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/metapeg.html b/clones/lisp/www.cliki.net/metapeg.html deleted file mode 100644 index af6efdf0..00000000 --- a/clones/lisp/www.cliki.net/metapeg.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: metapeg - - - - - - - -
    metapeg
    Metapeg is a PEG parser generator created by John Leuner.

    See the blog post accompanying the initial release.

    metapeg is released under the MIT License.

    metapeg was bootstrapped with cl-peg but can now compile and generate itself

    The latest version is available from the darcs repository at: http://subvert-the-dominant-paradigm.net/repos/metapeg/

    Fork: https://github.com/bhyde/metapeg

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/metaprogramming.html b/clones/lisp/www.cliki.net/metaprogramming.html deleted file mode 100644 index 30dd02cf..00000000 --- a/clones/lisp/www.cliki.net/metaprogramming.html +++ /dev/null @@ -1,124 +0,0 @@ - - - - - CLiki: metaprogramming - - - - - - - -
    metaprogramming
    Things that help you analyze and write code (code walkers, code transformers, introspection libraries, etc.)

      -
    • -agnostic-lizard - - An almost correct portable code walker for Common Lisp -
    • -
    • -arrow-macros - - Clojure-like arrow macros in Common Lisp -
    • -
    • -bubble-operator-upwards - - bubble-operator-upwards is a function that "bubbles an operator upwards" in a form, demultiplexing all alternative branches by way of cartesian product -
    • -
    • -cl-cont - - cl-cont is a delimited continuations library for Common Lisp -
    • -
    • -cl-curlex - - Leak *LEXENV*, which describes lexical environment, into the runtime -
    • -
    • -cl-indeterminism - - Find and manipulate undefined variables and functions in forms -
    • -
    • -cl-walker - - cl-walker implements an sexp → CLOS AST tree transformation (and vice versa) -
    • -
    • -Concrete-Syntax-Tree - - Concrete Syntax Trees represent s-expressions with source information -
    • -
    • -de.setf.utility - - de setf utility is a collection of Common Lisp utilities functions and several purpose-specific libraries -
    • -
    • -deprecations - - deprecations allows you to define functions, generic functions, macros and symbol macros as deprecated -
    • -
    • -linewise-template - - A Common Lisp library for processing text files and streams as templates conforming to simple line-based hierarchical formats -
    • -
    • -macro-eval - - A kind of eval for use at macro-expansion time (such as for constant-folding purposes) -
    • -
    • -macroexpand-dammit - - macroexpand-dammit is a code walker by John Fremlin -
    • -
    • -parse-declarations - - Parse-Declarations is a metaprogramming library to parse, filter, and build Common Lisp declarations (things like (inline foo)) -
    • -
    • -parse-number-range - - parse-number-range parses loop's convenient "for-as-arithmetic" syntax into 5 simple values -
    • -
    • -quasiquote-2.0 - - An alternative quasiquote syntax aimed at being more suitable for macros that define other macros -
    • -
    • -reader-interception - - reader-interception is a library for replacing the lisp reader with your own, so you can define your own syntax or compile other language through Lisp -
    • -
    • -symbol-namespaces - - symbol-namespaces defines a new kind of package that's named by a symbol rather than a string -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/metatilities-base.html b/clones/lisp/www.cliki.net/metatilities-base.html deleted file mode 100644 index c8a04496..00000000 --- a/clones/lisp/www.cliki.net/metatilities-base.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: metatilities-base - - - - - - - -
    metatilities-base
    Everyone needs their own set of utilities... Many utilities come in layers. This is the base of Gary King's utilities. The rest of the utilities are in Metatilities.

    Project: https://common-lisp.net/project/metatilities-base/

    Repository: https://github.com/gwkkwg/metatilities-base

    License: MIT

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/metatilities.html b/clones/lisp/www.cliki.net/metatilities.html deleted file mode 100644 index 8625f875..00000000 --- a/clones/lisp/www.cliki.net/metatilities.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: metatilities - - - - - - - -
    metatilities
    Everyone needs their own set of utilities… These are Gary King's.

    Project: https://common-lisp.net/project/metatilities/

    Repository: https://github.com/gwkkwg/metatilities

    License: MIT

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/metering.html b/clones/lisp/www.cliki.net/metering.html deleted file mode 100644 index e7072ece..00000000 --- a/clones/lisp/www.cliki.net/metering.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: metering - - - - - - - -
    metering
    The Metering System is a portable Common Lisp code profiling tool. It gathers timing and consing statistics for specified functions while a program is running.

    Repository: https://gitlab.common-lisp.net/dkochmanski/metering

    License: Public Domain

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/method-combination-utilities.html b/clones/lisp/www.cliki.net/method-combination-utilities.html deleted file mode 100644 index ba053c6f..00000000 --- a/clones/lisp/www.cliki.net/method-combination-utilities.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: method-combination-utilities - - - - - - - -
    method-combination-utilities
    Various utilities to make use and creation of custom method combinations easier.

    Repository: https://github.com/sellout/method-combination-utilities

    Depends on: closer-mop


    -MIT-LICENSE
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/method-versions.html b/clones/lisp/www.cliki.net/method-versions.html deleted file mode 100644 index 42393a1c..00000000 --- a/clones/lisp/www.cliki.net/method-versions.html +++ /dev/null @@ -1,66 +0,0 @@ - - - - - CLiki: method-versions - - - - - - - -
    method-versions
    A Common Lisp library for dispatching generic methods based on the value of a global parameter rather than on one of the required parameters.

    Homepage: http://nklein.com/software/method-versions/

    This library is by Patrick Stein.

    In this example, we do a silly form of internationalization. To that end, we will use English as the default language and define some other languages.

    (method-versions:define-method-version latin) - (method-versions:define-method-version pig-latin) - (method-versions:define-method-version french latin) - (method-versions:define-method-version spanish latin)

    We will prepare a language parameter and a welcome method that is versioned on the language.

    (declaim (special *language*)) - (defparameter *language* nil) - - (defgeneric welcome () - (:method-combination method-versions:method-version-method-combination - *language*))

    And, we define welcome methods for the various languages (accidentally forgetting spanish).

    (defmethod welcome () :welcome) - (defmethod welcome :latin () :velkominum) - (defmethod welcome :pig-latin () :elcomeway) - (defmethod welcome :french () :bonjour)

    Then, we will try each of the languages in turn.

    (mapcar #'(lambda (ll) - (let ((*language* ll)) - (welcome))) - '(nil :latin :pig-latin :french :spanish)) - => (:welcome :velkominum :elcomeway :bonjour :velkominum)

    clos language extension

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/mexpr.html b/clones/lisp/www.cliki.net/mexpr.html deleted file mode 100644 index b683291f..00000000 --- a/clones/lisp/www.cliki.net/mexpr.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: mexpr - - - - - - - -
    mexpr
    mexpr is an Infix syntax library. It can be used either with a macro, or a read macro. It is similar in intent to infix, but is a little simpler (for example it currently only allows binary operators), and more extensible. -In particular, additional operators can be added using the defop macro.

    Example:

    #m(3 + 4 ** 2) => 19

    language extension convenience library

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/micmac.html b/clones/lisp/www.cliki.net/micmac.html deleted file mode 100644 index 094acacf..00000000 --- a/clones/lisp/www.cliki.net/micmac.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: micmac - - - - - - - -
    micmac
    Common Lisp Mathematics library by Gabor Melis that implements alpha-beta, beam search, UCT and Metropolis-Hastings MCMC.

    It's under the MIT licence.

    It can be found at https://github.com/melisgl/micmac.

    Documentation is at http://melisgl.github.io/mgl-pax-world/micmac-manual.html.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/microlisp.html b/clones/lisp/www.cliki.net/microlisp.html deleted file mode 100644 index 67c65e25..00000000 --- a/clones/lisp/www.cliki.net/microlisp.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: MICROLISP - - - - - - - -
    MICROLISP
    MicroLisp is a compiler for a minimalistic Lisp dialect targeting ANSI C. Suited for educational purposes.

    Written by Max Rottenkolber.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/midi.html b/clones/lisp/www.cliki.net/midi.html deleted file mode 100644 index 6a70fe04..00000000 --- a/clones/lisp/www.cliki.net/midi.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: midi - - - - - - - -
    midi
    A library for parsing MIDI (Musical Instrument Digital Interface) file format files and representing MIDI events, previously distributed as part of the Gsharp project.

    MIDI messages are represented as CLOS class instances in a class hierarchy that reflects interesting aspects of the messages themselves.

    Homepage: http://www.doc.gold.ac.uk/isms/lisp/midi/

    License: LGPL

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/mime4cl.html b/clones/lisp/www.cliki.net/mime4cl.html deleted file mode 100644 index 5e9ca20e..00000000 --- a/clones/lisp/www.cliki.net/mime4cl.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: MIME4CL - - - - - - - -
    MIME4CL
    MIME4CL allows you to craft MIME compliant messages or to parse and handle them programmatically.

    It depends on SCLF, NPG, and Gray streams (as implemented in SBCL/CMUCL, extending CL streams).

    Homepage: http://wcp.sdf-eu.org/software/#mime4cl

    Download: http://wcp.sdf-eu.org/software/mime4cl-20150207T211851.tbz

    License: LGPL

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/minheap.html b/clones/lisp/www.cliki.net/minheap.html deleted file mode 100644 index f8d54d6e..00000000 --- a/clones/lisp/www.cliki.net/minheap.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: minheap - - - - - - - -
    minheap
    minheap provides several heap data structures with meldable min-heap and priority queue functionality. Due to this lib's history, all implemented heaps are currently limited to fixnum keys in min-first order though an adaption for other needs should be quite simple.

    In the current version this library sports the following heap data structures: binary, Fibonacci, pairing (in a number of variants), rank pairing, splay, violation

    Git repository is at: http://github.com/sfrank/minheap

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/minion.html b/clones/lisp/www.cliki.net/minion.html deleted file mode 100644 index 608b5b72..00000000 --- a/clones/lisp/www.cliki.net/minion.html +++ /dev/null @@ -1,56 +0,0 @@ - - - - - CLiki: minion - - - - - - - -
    minion
    minion is an IRC robot (who prefers the term "electronically composed.") For online help, try
    /msg minion help
    - Minion is hosted at common-lisp.net and is usually connected to the #lisp IRC channel. It has some personality to entertain IRC users, and also serves as a knowledgebase and a tool for looking up CLiki.

    For minion sources, look at the lisp-bots repository. Cliki-bot was written by Brian Mastenbrook.

    By the way, if you want to keep on terms with IRC users, do not play with minion in a channel. If you must, use private IRC messages.


    -IRC -cl-irc -Lisp Irc Bots -Person
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/mit-license.html b/clones/lisp/www.cliki.net/mit-license.html deleted file mode 100644 index 7635224d..00000000 --- a/clones/lisp/www.cliki.net/mit-license.html +++ /dev/null @@ -1,66 +0,0 @@ - - - - - CLiki: MIT-LICENSE - - - - - - - -
    MIT-LICENSE
    The MIT License is a DFSG-compliant License.

    This definition is reproduced from http://www.opensource.org/licenses/mit-license.html

    -Copyright (c)

    Permission is hereby granted, free of charge, to any person obtaining -a copy of this software and associated documentation files (the -"Software"), to deal in the Software without restriction, including -without limitation the rights to use, copy, modify, merge, publish, -distribute, sublicense, and/or sell copies of the Software, and to -permit persons to whom the Software is furnished to do so, subject to -the following conditions:

    The above copyright notice and this permission notice shall be included -in all copies or substantial portions of the Software.

    THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR -OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, -ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -OTHER DEALINGS IN THE SOFTWARE.

    -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/mixalot.html b/clones/lisp/www.cliki.net/mixalot.html deleted file mode 100644 index c3e7b0dd..00000000 --- a/clones/lisp/www.cliki.net/mixalot.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Mixalot - - - - - - - -
    Mixalot
    Mixalot is a grab bag of systems related to audio in Common Lisp under an MIT-style license.

    Currently it consists of a mixer component providing straightforward audio output on Linux (via ALSA) and other platforms (using libao), a CFFI binding to the libmpg123 library, and a helper component allowing playback of MP3 files through the mixer.

    License: MIT

    Homepage: http://github.com/ahefner/mixalot

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/mixamesh.html b/clones/lisp/www.cliki.net/mixamesh.html deleted file mode 100644 index 920f56ae..00000000 --- a/clones/lisp/www.cliki.net/mixamesh.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: mixamesh - - - - - - - -
    mixamesh
    Renderable triangle mesh handling library for Common Lisp. Works in conjunction with cl-glfw and lodematron to handle renderable meshes imported from a variety of file formats, or created procedurally.

    Mixamesh aims to be a Common Lisp equivalent of Open Mesh, which treats the mesh as a flexible data type containing varying numbers of arrays of vertices, and tagged vertex attributes indexed by a collection of faces. Common Lisp macro expansion being somewhat more concise and less syntax laden than C++ Template expansion, the interface is somewhat simpler, too.

    Depends on: iterate, closer-mop, cl-tuples

    Repository: https://repo.or.cz/mixamesh.git


    -graphics library
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/mk-defsystem.html b/clones/lisp/www.cliki.net/mk-defsystem.html deleted file mode 100644 index 6ce4aefe..00000000 --- a/clones/lisp/www.cliki.net/mk-defsystem.html +++ /dev/null @@ -1,84 +0,0 @@ - - - - - CLiki: mk-defsystem - - - - - - - -
    mk-defsystem
    MK-defsystem is a system definition utility; it fills a similar role for CL as make(1) does for C. MK-defsystem can be downloaded from the CLOCC and its current official version identifier is MK:DEFSYSTEM 3.4 Interim (MK3).

    The new experimental version of mk-defsystem is MK:DEFSYSTEM 4.x (MK4). It is completely CLOS based and backward compatible with 3.x.

    The sourceforge link to mk-defsystem is https://sourceforge.net/projects/clocc/

    The CVS modules in the CLOCC are -

      -
    • -defsystem-3.x and -
    • -
    • -defsystem-4.x -
    • -

    If you have patches to make mk-defsystem more usable, please submit them to the CLOCC mailing lists or to one of the CLOCC maintainers.



    Note that the latest version of MK3 already includes the code shown below.



    Did you know? You can also load foreign files with defsystem. For -example, to define that C components are compiled by calling out to "make" -and loaded using the foreign loader, try something like this example -(originally from db-sockets):

    (defparameter *make-program* "make") - -(defun c-make-file (filename &rest args &key output-file error-file) - ;; make foo.o - (declare (ignore args error-file)) - (make::run-unix-program *make-program* (list output-file))) - -(make:define-language :c - :compiler #'c-make-file - :loader - #+:lucid #'load-foreign-files - #+cmu #'alien::load-foreign - #+sbcl #'sb-alien::load-foreign - #+:allegro #'load - #-(or :cmu :sbcl :lucid :allegro) #'load - :source-extension "c" - :binary-extension "o")

    then you define the relevant component like this:

    (:file "get_h_errno.c" :language :c - :source-extension "c" :binary-extension "o")

    Commentary

    Are there any documents for mk-defsystem out there? How does one add a path to its search path?

    Chapter 4 of http://www-2.cs.cmu.edu/afs/cs.cmu.edu/project/ai-repository/ai/lang/lisp/code/tools/mkantdoc.tgz

    I have done a mild update to the defsystem.html that appears in clocc/src/defsystem-3.3i/docs/. I have submitted the changes, but don't believe they have been incorporated. You can find the documents here. I'll try to add some of the material discussed on this page, as time permits.

    The CLOCC version of mk-defsystem has some TeX/DVI/PS documentation. As to the specific question, the magical variable you're looking to push things onto is mk:*central-registry*.

    Just to clarify: the CLOCC documentation is limited and needs to be updated. As per the specific question, both MK3 and MK4 now have a new function

    (mk:add-registry-location ...)

    which does the PUSH in a more meaningful way.

    Henrik Motakef's Fight the System explains how to use and load libraries with mk-defsystem.

    Update (2020-08-01)

    An updated version (3.8) of the first widely available (and quite portable) DEFSYSTEM for Common Lisp: https://gitlab.common-lisp.net/mantoniotti/mk-defsystem

    MK:DEFSYSTEM was, and is, the first widely available, -implementation independent, DEFSYSTEM (or make) for Common Lisp.

    The current distribution and repository (3.8) contains a file -defsystem.lisp, a docs directory, and this README file. The -current version is based on MK:DEFSYSTEM distributed with CLOCC, -but it contains a few enhancements and extensions for newer CL implementations.

    MK:DEFSYSTEM works on most current (August 2020) Common Lisp implementations and it is still used by a wide variety of projects.


    -build
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/mk-string-metrics.html b/clones/lisp/www.cliki.net/mk-string-metrics.html deleted file mode 100644 index 236efa49..00000000 --- a/clones/lisp/www.cliki.net/mk-string-metrics.html +++ /dev/null @@ -1,69 +0,0 @@ - - - - - CLiki: mk-string-metrics - - - - - - - -
    mk-string-metrics
    This library implements efficient algorithms that calculate various string metrics in Common Lisp:

    -GitHub repository: https://github.com/cbaggers/mk-string-metrics

    You can install it via Quicklisp:

    (ql:quickload "mk-string-metrics")

    mk-string-metrics is written and maintained by Mark Karpov.

    It's distributed under MIT-license.


    -Relevant topics: text, algorithm
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/mock.html b/clones/lisp/www.cliki.net/mock.html deleted file mode 100644 index dae2ba6d..00000000 --- a/clones/lisp/www.cliki.net/mock.html +++ /dev/null @@ -1,60 +0,0 @@ - - - - - CLiki: mock - - - - - - - -
    mock
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/mockingbird.html b/clones/lisp/www.cliki.net/mockingbird.html deleted file mode 100644 index e632bb46..00000000 --- a/clones/lisp/www.cliki.net/mockingbird.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: mockingbird - - - - - - - -
    mockingbird
    This package provides some useful stubbing and mocking macros for unit testing. Used when specified functions in a test should not be computed but should instead return a provided constant value.

    Repository: https://github.com/Chream/mockingbird

    License: MIT

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/mod_ecl.html b/clones/lisp/www.cliki.net/mod_ecl.html deleted file mode 100644 index 7feab724..00000000 --- a/clones/lisp/www.cliki.net/mod_ecl.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - CLiki: mod_ecl - - - - - - - -
    mod_ecl
    mod_ecl is an apache module to use lisp in the way php is used for website scripting.

    There are various ways to use lisp as web scripting language. One solution is to use mod_proxy with hunchentoot. The other solution is to use mod_lisp with cl-modlisp. -The problem with these implementations is that you can not just upload your code to the webserver and visit the link. There are additional steps required, like loading the written files manually and creating a list where you put in virtual website files and assign actions to that pages. -So if you visit a link in hunchentoot, a main array with available links is searched, and the functions assigned to the link will be executed.

    Therefore I wrote mod_ecl. It's a not yet finished, but working apache module in alpha stage. It uses the ECL lisp distribution to embedd lisp into apache. Therefore lisp can be used like php. There is also no need to use remote shells or file hash tables. Every .lsp file you visit is simply executed and its output is delivered to the client.

    You can download mod_ecl here. -


    -CGI
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/mod_lisp.html b/clones/lisp/www.cliki.net/mod_lisp.html deleted file mode 100644 index 911fd8be..00000000 --- a/clones/lisp/www.cliki.net/mod_lisp.html +++ /dev/null @@ -1,57 +0,0 @@ - - - - - CLiki: mod_lisp - - - - - - - -
    mod_lisp
    mod_lisp is an Apache module to write dynamic web servers and applications. It was written by Marc Battyani and contributors.

    Release 2.0 now reuses the Apache → Lisp sockets, boosting performance by a factor from 40 to 80.

    License: Apache 2

    Repository: https://github.com/mbattyani/mod_lisp

    Contributions

      -
    • -Boris Smilga ported mod_lisp for the Lighttpd server. It implements exactly the same web-server Lisp protocol as the original mod_lisp, so, Apache can be replaced with Lighttpd seamlessly, without any change noticeable from the Lisp side's point of view (well, actually, you'd get different server-baseversion and modlisp-version headers). The code base is largely independent of the v. 2.43 where it took off, though, and it has its own version numbering scheme. See the project page for installation and configuration instructions. [2015-09-22: "mod_lisp-lighttpd has been phased out and is no longer actively maintained."—README]
    • Chris Beggy wrote a tutorial showing how mod_lisp 2.2 + apache (of course) + cmucl + clsql + lml + uffi + mysql -were used to create a simple dynamic database website which explained installation, did some advocacy, shared some code, and incorporated the comments of visitors.
    • -
    -
    -CGI
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/modf.html b/clones/lisp/www.cliki.net/modf.html deleted file mode 100644 index 4244b99b..00000000 --- a/clones/lisp/www.cliki.net/modf.html +++ /dev/null @@ -1,60 +0,0 @@ - - - - - CLiki: modf - - - - - - - -
    modf
    An immutable setf.

    Example:

    (defparameter *crazy* '(1 #(a (2 #(b (3 #(c (4 t)))))))) -==> *CRAZY* -

    Change the last t to nil with modf:

    (modf - (cadr (aref (cadr (aref (cadr (aref (cadr *crazy*) 1)) 1)) 1)) - nil) -==> (1 #(A (2 #(B (3 #(C (4 NIL))))))) -

    Original data is unchanged:

    *crazy* -==> (1 #(A (2 #(B (3 #(C (4 T))))))) -

    -Homepage: GitHub

    License: BSD

    See Also: versioned-objects

    Topics: language extension

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/monitoring.html b/clones/lisp/www.cliki.net/monitoring.html deleted file mode 100644 index cb30ca46..00000000 --- a/clones/lisp/www.cliki.net/monitoring.html +++ /dev/null @@ -1,68 +0,0 @@ - - - - - CLiki: monitoring - - - - - - - -
    monitoring
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/monkeylib-atom.html b/clones/lisp/www.cliki.net/monkeylib-atom.html deleted file mode 100644 index 6349f137..00000000 --- a/clones/lisp/www.cliki.net/monkeylib-atom.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: monkeylib-atom - - - - - - - -
    monkeylib-atom
    monkeylib-atom is an Atom syndication feed generator library.

    Homepage: https://github.com/gigamonkey/monkeylib-atom

    License: BSD 3-Clause

    Author: Peter Seibel


    -XML protocol
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/monkeylib-json.html b/clones/lisp/www.cliki.net/monkeylib-json.html deleted file mode 100644 index f3c16c67..00000000 --- a/clones/lisp/www.cliki.net/monkeylib-json.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: monkeylib-json - - - - - - - -
    monkeylib-json
    monkeylib-json is a library for reading and writing JSON.

    Homepage: https://github.com/gigamonkey/monkeylib-json

    License: BSD

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/monkeylib-parser.html b/clones/lisp/www.cliki.net/monkeylib-parser.html deleted file mode 100644 index d498ed5b..00000000 --- a/clones/lisp/www.cliki.net/monkeylib-parser.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: monkeylib-parser - - - - - - - -
    monkeylib-parser
    monkeylib-parser is a parser generator loosely based on Henry Baker's META paper.

    Homepage: https://github.com/gigamonkey/monkeylib-parser

    License: BSD

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/monkeylib-prose-diff.html b/clones/lisp/www.cliki.net/monkeylib-prose-diff.html deleted file mode 100644 index b6f54cca..00000000 --- a/clones/lisp/www.cliki.net/monkeylib-prose-diff.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: monkeylib-prose-diff - - - - - - - -
    monkeylib-prose-diff
    monkeylib-prose-diff is a diff program optimized for comparing text files containing prose.

    Homepage: https://github.com/gigamonkey/monkeylib-prose-diff

    License: BSD


    -Topics: text
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/monkeylib-utilities.html b/clones/lisp/www.cliki.net/monkeylib-utilities.html deleted file mode 100644 index cfa3a141..00000000 --- a/clones/lisp/www.cliki.net/monkeylib-utilities.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: monkeylib-utilities - - - - - - - -
    monkeylib-utilities
    monkeylib-utilities are Peter Seibel's utilities.

    Homepage: https://github.com/gigamonkey/monkeylib-utilities

    License: BSD

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/montezuma.html b/clones/lisp/www.cliki.net/montezuma.html deleted file mode 100644 index b413879d..00000000 --- a/clones/lisp/www.cliki.net/montezuma.html +++ /dev/null @@ -1,59 +0,0 @@ - - - - - CLiki: Montezuma - - - - - - - -
    Montezuma
    Montezuma is a text search engine for Common Lisp. It is a Common Lisp port of Ferret. Ferret is a Ruby port of Lucene. Lucene is sort of Doug Cutting's Java version of Text Database (TDB), which he and Jan Pedersen developed at Xerox PARC, and which, to complete the circle, was written in Common Lisp (see "An Object-Oriented Architecture for Text Retrieval" in PS format, or PDF).


    -sharplispers
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/mop-utils.html b/clones/lisp/www.cliki.net/mop-utils.html deleted file mode 100644 index 04c4d73d..00000000 --- a/clones/lisp/www.cliki.net/mop-utils.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: mop-utils - - - - - - - -
    mop-utils
    MOP-utils is a small library of utilities for the MetaObject Protocol. It is used by Submarine, with which it shares a webpage: https://common-lisp.net/project/submarine/.

    The author of MOP-utils is Ryszard Szopa.


    -utilities MOP
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/moptilities.html b/clones/lisp/www.cliki.net/moptilities.html deleted file mode 100644 index 080788a0..00000000 --- a/clones/lisp/www.cliki.net/moptilities.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: moptilities - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/mpc.html b/clones/lisp/www.cliki.net/mpc.html deleted file mode 100644 index 2afd8b99..00000000 --- a/clones/lisp/www.cliki.net/mpc.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: MPC - - - - - - - -
    MPC
    MPC is a fork of Drew Crampsie's Smug, a monadic parser combinators library for Common Lisp. The focus of this fork lies on providing a stable and practical API suited for production use. To achieve this goal more work has to be put into performance considerations (any one want to try to implement a memoization scheme for MPC?) and thorough quality assurance. MPC is deprecated in favor of MaxPC. See: Max’s Parser Combinators: Why? How?

    Maintained by Max Rottenkolber.


    -obsolete
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/multiple-value-variants.html b/clones/lisp/www.cliki.net/multiple-value-variants.html deleted file mode 100644 index 695e4781..00000000 --- a/clones/lisp/www.cliki.net/multiple-value-variants.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: multiple-value-variants - - - - - - - -
    multiple-value-variants
    multiple-value-variants gives access to multiple-value variants of operators through one macro: multiple-value. There are built-in variants for some standard operators; it's easy to create your own variants for other operators. The multiple-value mapping operators are especially useful.

    See the project's home for all details.


    -convenience library, Unlicense, Public Domain
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/music.html b/clones/lisp/www.cliki.net/music.html deleted file mode 100644 index 0012121e..00000000 --- a/clones/lisp/www.cliki.net/music.html +++ /dev/null @@ -1,177 +0,0 @@ - - - - - CLiki: Music - - - - - - - -
    Music
    Free software related to creating or manipulating music in Common Lisp. See also audio for general audio playing/recording/manipulation software.

      -
    • -AC Toolkit - - AC Toolkit is an open source Common Lisp application aimed at aiding music composition, ideas are based on AC Toolbox -
    • -
    • -Bach Chorales - - A database of music (100 chorale melodies) harmonised by J.S Bach -
    • -
    • -cl-collider - - cl-collider is an interface to the SuperCollider audio synthesis server -
    • -
    • -CL-IO-MOD - - CL-IO-MOD is a parser for a subset of the MOD music tracker file format -
    • -
    • -cl-wav-synth - - cl-wav-synth is a wav sample editor, a spectrum editor and a song editor. -
    • -
    • -CLCE - - CLCE (Common Lisp Composition Environment) is a complete environment for Musical composition based on the Common Lisp language and on the MidiShare operating system -
    • -
    • -cmpl - - Computer Music Programming Language -
    • -
    • -Common Lisp Music - - is a Music synthesis and signal processing package in the Music V family -
    • -
    • -Common Music - - Common Music (CM) is an object-oriented Music composition environment -
    • -
    • -Common Music Notation - - Common Music Notation is an independent subsystem of Common Music -
    • -
    • -Compo - - Compo is a language to describe in a natural way simple or complex structures of Music -
    • -
    • -EMI - - EMI (Experiments in Musical Intelligence) is David Cope's project to develop systems which are capable of automatic analysis and resynthesis of musical styles -
    • -
    • -Gsharp - - Gsharp is a graphical, interactive score editing application for standard Music notation -
    • -
    • -Incudine - - Incudine is a music/DSP programming environment for Common Lisp -
    • -
    • -midi - - A library for parsing MIDI (Musical Instrument Digital Interface) file format files and representing MIDI events, previously distributed as part of the Gsharp project -
    • -
    • -MIPS - - MIPS (Mathematical Investigation of Pitch Systems) is a mathematical formal language for investigating the structural properties of Musical scales, pitch systems and their associated notational systems -
    • -
    • -Music Mind Machine - - The Music Mind Machine research group at the Universities of Nijmegen and Amsterdam have a variety of Common Lisp software available for the computational modeling of Music cognition including: -
    • -
    • -Ntccrt - - Ntccrt is an interpreter for the Non-deterministic Timed Concurrent Constraint (ntcc) calculus capable of real-time interaction -
    • -
    • -OMax - - OMax is a software environment which learns in real-time typical features of a musician's style and plays along with him interactively, giving the flavor of a machine co-improvisation -
    • -
    • -OpenMusic - - OpenMusic is a visual programming language based on Common Lisp and CLOS -
    • -
    • -OSC - - An implementation of the OpenSoundControl protocol -
    • -
    • -Phorx - - Phorx is a program that allows you to write Music that can change dynamically as it is playing -
    • -

    Other

    -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/mw-diff-sexp.html b/clones/lisp/www.cliki.net/mw-diff-sexp.html deleted file mode 100644 index 78719a1d..00000000 --- a/clones/lisp/www.cliki.net/mw-diff-sexp.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: mw-diff-sexp - - - - - - - -
    mw-diff-sexp
    A Common Lisp library to calculate a naive Levenshtein-like edit distance for s-expressions.

    Repository: https://github.com/michaelw/mw-diff-sexp

    Background: http://foldr.org/mw/log/programming/lisp/diff-sexp

    License: BSD-style


    -algorithm
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/my-util.html b/clones/lisp/www.cliki.net/my-util.html deleted file mode 100644 index 32282bb9..00000000 --- a/clones/lisp/www.cliki.net/my-util.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: my-util - - - - - - - -
    my-util
    Tomoyuki Matsumoto's common lisp utilities

    Depends on (and re-exports): anaphora, cl-ppcre

    Repository: https://github.com/tomoyuki28jp/my-util

    License: BSD

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/myweb.html b/clones/lisp/www.cliki.net/myweb.html deleted file mode 100644 index 7b5d069e..00000000 --- a/clones/lisp/www.cliki.net/myweb.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: myweb - - - - - - - -
    myweb
    simple web server written in common lisp for educational reasons (tested on sbcl but should work with other implementations)

    Repository: https://github.com/troydm/myweb

    Author: Dmitry Geurkov <dmitry_627@mail.ru>

    Licensed under LGPL v3 (see LICENSE file)


    -HTTP server
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/named-readtables.html b/clones/lisp/www.cliki.net/named-readtables.html deleted file mode 100644 index 6152dd08..00000000 --- a/clones/lisp/www.cliki.net/named-readtables.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: named-readtables - - - - - - - -
    named-readtables
    Named-Readtables is a language extension library that provides a namespace for readtables akin to the -already-existing namespace of packages. More details can be found on the cl-net page named-readtables
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/naming conventions.html b/clones/lisp/www.cliki.net/naming conventions.html deleted file mode 100644 index fe9939c3..00000000 --- a/clones/lisp/www.cliki.net/naming conventions.html +++ /dev/null @@ -1,235 +0,0 @@ - - - - - CLiki: Naming conventions - - - - - - - -
    Naming conventions
    Some symbol naming conventions, distilled from CLHS, the Lisp FAQ, and comp.lang.lisp.

    Widely used "need-to-know" conventions:

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    foo-bar"-" is used as a word delimiter
    *foo*(global) special variable
    foo*slightly different variant of the foo operator
    &foolambda list keyword. These symbols will be in the lambda-list-keywords list.
    nfoo(possibly) destructive (non-consing) function
    fooppredicate (also foo-p); see notes below for when to hyphenate
    foofplace changing (like in SETF, INCF, ...) (also foo-f)
    +foo+constant, or single CLOS instance
    %foolow-level, fast, dangerous function, or Lisp system specific implementation of foo
    make-foocreate a foo and return it
    define-foo(globally) define a new foo (also short version: "deffoo")
    with-foocreate a dynamic context with a foo
    do-fooiterate through a foo
    foo-casefoo-specific case expression
    foo-bartype-slot, converting FOO to BAR
    foo-to-barconverting FOO to BAR

    Often seen, but not-quite-so-common conventions:

    - - - - - - - - - - - - - - - - - - - - -
    bar-ofslot bar of an object
    foo/bartype/operation, foo with bar, bar version of foo
    foo.bartype.slot or, in some implementations conventional hierarchical package (e.g. ACL and CMUCL)
    ?foovariable in embedded language
    <foo<variable in embedded language

    Occasionally seen:

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    <foo>class
    %foo%local special variable
    .foo.internal special variable
    .foo.private macro symbol
    /foo/global lexical variable
    $foofunction visible from Macsyma
    foo&foo, operating on fixnums
    foo$foo, operating on floats

    Conventions in Scheme:

    - - - - - - - - - - - - - - - - - - - - -
    foo!destructive function
    foo?predicate
    $fooconstant
    call-with-fooInvoke a thunk in some dynamic context
    foo->barCoerce object of type foo to object of type bar

    This is standard syntax, not convention:

    - - - - - - - - - - - - - - - - -
    :barkeyword
    foo:barexternal symbol bar in package foo
    foo::barinternal symbol bar in package foo (don't try this at home, kids!)
    #:baruninterned symbol (does not belong to any package)

    These will annoy people:

    - - - - - - - - - - - - - -
    CamelCaseIdentifiersUse identifiers-like-this
    identifiers_with_underscoresare harder to type
    hungarian-identifiers-pcsnsi
    abbrv-idntfrsUse Emacs to expand them.

    Unless there is a good reason to use them (for instance, you need to interface -to a third-party package that uses them), they should be avoided.

    Some additional style notes:

      -
    • A function that tests for something involving its arguments is called a predicate and usually ends in p or -p. CLTL2 explains the rationale for each suffix:

      -By convention, the names of predicates usually end in the letter p (which stands for "predicate"). Common Lisp uses a uniform convention in hyphenating names of predicates. If the name of the predicate is formed by adding a p to an existing name, such as the name of a data type, a hyphen is placed before the final p if and only if there is a hyphen in the existing name. For example, number begets numberp but standard-char begets standard-char-p. On the other hand, if the name of a predicate is formed by adding a prefixing qualifier to the front of an existing predicate name, the two names are joined with a hyphen and the presence or absence of a hyphen before the final p is not changed. For example, the predicate string-lessp has no hyphen before the p because it is the string version of lessp (a MACLISP function that has been renamed < in Common Lisp). The name string-less-p would incorrectly imply that it is a predicate that tests for a kind of object called a string-less, and the name stringlessp would connote a predicate that tests whether something has no strings (is "stringless")! -

    • -
    • There are useful conventions for macros: deffoo or define-foo defines objects of type foo. Setting up a context for some actions, usually performing some binding, and including setup and teardown code, is usually a with-foo. Iterating macros are defined usually as do-foo.

    • -
    • -deffoo vs. define-foo used to be, and is in the spec, determined by foo. If foo is a hyphenated name, then the define-foo format is used, otherwise deffoo is used. For example, defmethod and defsetf vs. define-method-combination and define-setf-expander.

    • -
    • Occasionally, there will be a pair of operator functions, and one is a destructive version of the other. Historical tradition will name the destructive variant nfoo for the basic non-destructive function, but this is inconsistently used.

    • -
    • The CLIM specification supports a rather large protocol, and has a "spread arguments" convention for functions where there is a desire not to have to construct a large object just to call one function with it. A spread function takes many small constituent arguments and is named foo* for a basic function foo.

    • -
    • There are some various methods ending in f, notably setf (but some advanced ones include locf for old ZetaLisp). The f stands for a generic field of an object, like a part of a cons cell, structure, vector, array, class instance, and so forth. Kent M. Pitman explained the origin of it on comp.lang.lisp.

    • -
    • Note that nested conversions (e.g., (bar-to-baz (foo-to-bar x)) or (bar->baz (foo->bar x))) compose nicer if written the other way around: (baz-from-bar (bar-from-foo x)), (baz<-bar (bar<-foo x)). -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/nary-tree.html b/clones/lisp/www.cliki.net/nary-tree.html deleted file mode 100644 index 44f1ed03..00000000 --- a/clones/lisp/www.cliki.net/nary-tree.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: nary-tree - - - - - - - -
    nary-tree
    The n-ary-tree package implements an automatically rebalancing B-tree data structure which supports n >= 5 items in any mixture of types per node. By storing multiple items per node, per-item memory overhead is decreased and searches are potentially made more efficient. This is done by increasing the distance traversed over the search space with each step since the number of nodes discarded is multiplied by the number of items per node. Duplicate items are allowed and items are always maintained in sort order. The user must supply a sort function, a key calculation function and optionally, an equality test function. By allowing the user to define the characteristics of the key values, the N-ARY tree allows the user to implement ordering in a convienent & hopefully efficient manner.

    License: GPL2

    Homepage: http://pounceatron.dreamhosters.com/nary-tree/

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/natural language processing.html b/clones/lisp/www.cliki.net/natural language processing.html deleted file mode 100644 index 5376386f..00000000 --- a/clones/lisp/www.cliki.net/natural language processing.html +++ /dev/null @@ -1,100 +0,0 @@ - - - - - CLiki: Natural Language Processing - - - - - - - -
    Natural Language Processing
    Natural Language Processing is a subcategory of AI, consisting of a set of algorithms, theories and techniques used to process natural language (that spoken by humans) on computers.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/neo4cl.html b/clones/lisp/www.cliki.net/neo4cl.html deleted file mode 100644 index 59956e6f..00000000 --- a/clones/lisp/www.cliki.net/neo4cl.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: neo4cl - - - - - - - -
    neo4cl
    neo4cl is a simple interface to the Neo4j graph database. It uses the Neo4j REST API.

    Author: James Fleming

    License: Apache-2.0

    Newest code: https://github.com/equill/neo4cl


    StructuredStorage

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/net-telent-date.html b/clones/lisp/www.cliki.net/net-telent-date.html deleted file mode 100644 index 730572d1..00000000 --- a/clones/lisp/www.cliki.net/net-telent-date.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: net-telent-date - - - - - - - -
    net-telent-date
    net-telent-date consists of the time parsing routines from CMUCL and a universal-time to RFC 822 date converter.

    net-telent-date is deprecated! Please use other date/time libraries instead!


    -obsolete
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/net4cl.html b/clones/lisp/www.cliki.net/net4cl.html deleted file mode 100644 index 6549e495..00000000 --- a/clones/lisp/www.cliki.net/net4cl.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: NET4CL - - - - - - - -
    NET4CL
    NET4CL is a collection of network functions, mostly encapsulation of existing functions to uniform the interface between different Lisp systems. Some other code in this page depends on it. Currently only CMUCL and SBCL are supported.

    Home page: http://wcp.sdf-eu.org/software/#net4cl

    Download: http://wcp.sdf-eu.org/software/net4cl-20150207T212000.tbz

    License: LGPL


    -networking
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/networking.html b/clones/lisp/www.cliki.net/networking.html deleted file mode 100644 index d488d288..00000000 --- a/clones/lisp/www.cliki.net/networking.html +++ /dev/null @@ -1,596 +0,0 @@ - - - - - CLiki: Networking - - - - - - - -
    Networking
    Code that helps with networking. Protocols, clients, servers, etc. For web (HTTP) specific software, see the web topic. See also the distributed topic.

      -
    • -aftpd - - aftpd is an FTP server written in Common Lisp -
    • -
    • -Allegro NFS Server - - Allegro NFS Server for Microsoft Windows, written in Common Lisp -
    • -
    • -carrier - - Carrier is an async HTTP client driven by cl-async and fast-http -
    • -
    • -chaos-lisp - - chaos-lisp implements a multi-threaded ChaosNET Network Control Program under OpenMCL running on Mac OS X, interfacing with Unix-domain sockets containing emulated ChaosNET packets -
    • -
    • -Chunga - - Chunga is a web/networking library which implements portable chunked HTTP streams as described in RFC 2616 -
    • -
    • -CL+SSL - - CL+SSL is a portable interface to OpenSSL -
    • -
    • -cl-agraph - - CL-AGRAPH is a minimal portable Lisp client for AllegroGraph -
    • -
    • -cl-async - - Cl-async is a asynchronous I/O library wrapping the libuv C library -
    • -
    • -cl-cidr-notation - - cl-cidr-notation is a library for converting IP addresses and CIDR blocks from integer to string representations and vice versa -
    • -
    • -cl-curl - - Cl-curl is a set of Lisp binding to the C libcurl HTTP client library, a multiprotocol file transfer library -
    • -
    • -CL-DBUS - - CL-DBUS aims to be an implementation of the popular D-BUS IPC/networking protocol -
    • -
    • -CL-DTYPE - - CL-DTYPE is a Common Lisp library implementing the DType networking protocol, introduced by MIT Media Labs -
    • -
    • -cl-fix - - cl-fix enables you to write FIX-based systems using Common Lisp -
    • -
    • -cl-flowd - - cl-flowd is an native Common Lisp interface to the flowd Netflow collector -
    • -
    • -CL-FTP - - cl-ftp is an FTP client -
    • -
    • -cl-growl - - Growl is a notification system for Mac OS X -
    • -
    • -CL-MEMCACHED - - CL-MEMCACHED is a fast interface to the memcached object caching system -
    • -
    • -cl-net-snmp - - cl-net-snmp is an SNMP library for Common Lisp -
    • -
    • -cl-oauth - - cl-oauth is an implementation of the OAuth 1.0a API authorization protocol -
    • -
    • -cl-openid - - Cl-OpenID is an implementation of OpenID protocol in Common Lisp -
    • -
    • -CL-PLUS-SSL - - This library is a fork of SSL-CMUCL -
    • -
    • -cl-sasl - - cl-sasl is a client implementation of the Simple Authentication and Security Layer (SASL) networking protocol -
    • -
    • -CL-TELNETD - - CL-TELNETD is a CL telnet networking server -
    • -
    • -CL-TLS - - CL-TLS is a prototype Common Lisp implementation of TLS and related protocols and standards including: -
    • -
    • -CL-ZEROCONF - - CL-ZEROCONF is a networking library for Lisp that handles Zeroconf service discovery (popularized by Apple's implementation, originally called Rendezvous and renamed to Bonjour for OS X 10.4) -
    • -
    • -CLERIC - - CLERIC (Common Lisp Erlang Interface) is an implementation of the Erlang distribution protocol, comparable with erl_interface and jinterface -
    • -
    • -CLOCC - - The Common Lisp Open Code Collection contains Lisp code for various -
    • -
    • -CLX - - CLX provides an implementation of the X Window System protocol to Lisp graphics library[ies] and applications -
    • -
    • -CLXS - - CLXS is an early-stage implementation of an X11 server (the part that does the drawing and keyboard/mouse handling) in Common Lisp -
    • -
    • -Etiquette - - Etiquette is a networking protocol construction framework -
    • -
    • -IOlib - - I/O(mainly networking) library containing: a BSD sockets library, a DNS resolver and an I/O multiplexer that supports select(2), epoll(4) and kqueue(2) -
    • -
    • -ip-interfaces - - ip-interfaces provides a convenient way to obtain a list of available networking interfaces on a machine -
    • -
    • -ipcalc - - A Common Lisp library for manipulating and calculating IPv4 and IPv6 network addresses -
    • -
    • -jarw-inet - - jarw-inet supports several Internet networking Standards including writing servers and clients, http, smtp, nntp protocols, header parsing, mime decoding -
    • -
    • -LENS - - Lisp Educational Network Simulator (LENS) provides a Common Lisp environment for network simulations -
    • -
    • -lisp-network-server - - lisp-network-server is a simple framework for writing Common Lisp networking applications -
    • -
    • -LispWorks-UDP - - UDP networking for LispWorks -
    • -
    • -NET.QUADIUM.LDAP - - NET QUADIUM LDAP is an LDAP library for Common Lisp -
    • -
    • -NET.QUADIUM.LDIF - - NET QUADIUM LDIF is an LDIF (LDAP Data Interchange Format) library for Common Lisp -
    • -
    • -NET4CL - - NET4CL is a collection of network functions, mostly encapsulation of existing functions to uniform the interface between different Lisp systems -
    • -
    • -org-davep-dict - - org-davep-dict is a Common Lisp networking protocol library for talking to a dict server -
    • -
    • -OSC - - An implementation of the OpenSoundControl protocol -
    • -
    • -plokami - - PLOKAMI is a libpcap/winpcap interface -
    • -
    • -Saluto - - Saluto is a submodule for RESTAS web-framework, which allow web-site users to be authorized with OAuth 2.0 protocol -
    • -
    • -Slitch - - A not-very-under-development-lately-but-will-get-back-to-it-some-day-soon TCP/IP networking stack in CMU Common Lisp (CMUCL) -
    • -
    • -SSL-CMUCL - - SSL-CMUCL is an interface to SSL streams for CMUCL -
    • -
    • -teepeedee2 - - teepeedee2 is a fast HTTP server and web framework -
    • -
    • -telnetlib - - telnetlib is a networking library for doing Telnet -
    • -
    • -trivial-ldap - - TRIVIAL-LDAP is a one-file, pure-Lisp client library for parts of RFC 4510 - Lightweight Directory Access Protocol (v3), LDAP -
    • -
    • -trivial-sockets - - trivial-sockets is a trivial networking library for undemanding Internet applications (for example "scripting" and interactive use) -
    • -
    • -unicly - - Unicly is a Common Lisp library for generation of UUIDs (Universally Unique -
    • -
    • -usocket - - USOCKET is a networking portability layer for BSD-style sockets -
    • -
    • -Usocket-UDP - - UDP networking patch for USOCKET -
    • -
    • -uuid - - A library for generation of universally unique identifiers (UUIDs) as described by RFC 4122 -
    • -
    • -Volemad - - VOLEMAD is an application for quickly interacting with Mullvad’s WireGuard servers, written in Common Lisp -
    • -
    • -Woo - - Woo is a fast async HTTP server built on top of libev, with aim to be the fastest -
    • -
    • -zen - - zen is a hackable X server written in Common Lisp -
    • -

    Dealing with email: (main topic: email) -

      -
    • -Allegro Maild - - Allegro Maild is an SMTP email server written in Common Lisp -
    • -
    • -cl-icalendar - - An implementation of the iCalendar (RFC 5545) file format -
    • -
    • -cl-pop - - CL-POP is a lisp networking library that provides a POP email client based on RFC 1939 -
    • -
    • -CL-Sendmail - - CL-Sendmail is a library for sending email using the external program 'sendmail' -
    • -
    • -CL-SES4 - - AWS SES email sender using Signature Version 4 of Amazon's API -
    • -
    • -CL-SMTP - - CL-SMTP is an SMTP (RFC 5321) client -
    • -
    • -clonsigna - - Clonsigna is a Common Lisp library that allows interaction with IMAP4rev1 servers -
    • -
    • -CLPMR - - CLPMR is the Common Lisp ProcMail Replacement -
    • -
    • -cocoa-mail - - cocoa-mail is a basic interface for OpenMCL on Mac OS X to the Cocoa Mail infrastructure -
    • -
    • -de.setf.utility - - de setf utility is a collection of Common Lisp utilities functions and several purpose-specific libraries -
    • -
    • -Demyltify - - Demyltify is a library that lets you write Sendmail email filters (milters) in Common Lisp -
    • -
    • -esmtp-client - - esmtp-client is a library for sending email via SMTP according to RFC 6409 -
    • -
    • -imap - - imap is a client library for Allegro CL for sending and receiving email with support for POP, IMAP and SMTP -
    • -
    • -jarw-inet - - jarw-inet supports several Internet networking Standards including writing servers and clients, http, smtp, nntp protocols, header parsing, mime decoding -
    • -
    • -macho - - Macho is an email web archiving system, similar in scope to pipermail or mhonarc -
    • -
    • -MARCH - - MArch is a daemon program that saves email going through a mail server into a database -
    • -
    • -mel-base - - mel-base is a library for handling email with support for Maildir, POP3, IMAP and SMTP folders -
    • -
    • -org-davep-newsrc - - org-davep-newsrc is a Common Lisp library that provides a couple of classes for reading a Unix Usenet newsrc file -
    • -
    • -org-davep-nntp - - org-davep-nntp is a Common Lisp library for talking to an NNTP (RFC 3977) server -
    • -
    • -rfc2822 - - Text email as defined in RFC 2822 -
    • -
    • -smta - - smta is a simple SMTP email server -
    • -
    • -smtp4cl - - SMTP4CL is a SMTP client library to send messages to an MTA (Mail Transport Agent) -
    • -
    • -trivial-email-utf-8 - - trivial-email-utf-8 is like CL-SMTP's send-mail, but qprints any Unicode characters in the message title or content and includes the appropriate headers if necessary -
    • -

    Libraries specific to MIME: (main topic: MIME) -

    Dealing with URIs: (main topic: URI) -

    Messaging: (main topic: messaging) -

    Wire formats: (main topic: wire format) -

      -
    • -ASN.1 - - Abstract Syntax Notation #1, the Common Lisp implementation and language mapping -
    • -
    • -cl-marshal - - Simple and fast marshalling of all kinds of Lisp data structures -
    • -
    • -cl-protobufs - - CL-PROTOBUFS is a library to use Google Protocol Buffers in Common Lisp, originally written by Scott McKay at ITA by Google -
    • -
    • -cl-stomp - - cl-stomp is an implementation of STOMP (Streaming Text Orientated Messaging Protocol) -
    • -
    • -de.setf.thrift - - de.setf.thrift is a binding for the Apache Thrift framework for scalable cross-language services development -
    • -
    • -S-PROTOBUF - - S-PROTOBUF is a library to encode data in the Google Protocol Buffers wire format -
    • -
    • -Swank - - Swank is distributed as part of SLIME -
    • -
    • -userial - - A Common Lisp library for serializing to binary buffers -
    • -

    IRC clients and bots: (main topic: IRC) -

      -
    • -beirc - - beirc is a CLIM IRC client application using the cl-irc library as a backend, initially written by Gilbert Baumann, now maintained by Dave Murray and others -
    • -
    • -Birch - - Birch is a simple IRC client library -
    • -
    • -cl-irc - - cl-irc is an IRC library written in Common Lisp -
    • -
    • -Colleen - - Colleen is yet another IRC chat bot framework -
    • -
    • -IRC Quotes - - Some moments from IRC, preserved for posterity, some humorous -
    • -
    • -irc-logger - - irc-logger is a networking library written by Kevin Rosenberg which uses the cl-irc library to provide multichannel Internet Relay Chat (IRC) logging -
    • -
    • -Lisp IRC Bots - - There are several IRC bots written in Lisp -
    • -
    • -lispcafe - - #lispcafe on www.libera.chat -
    • -
    • -lisppaste - - lisppaste sits on a webserver and users can paste text into it -
    • -
    • -Maiden - - Maiden is a collection of systems to help you build applications and libraries that interact with chat servers -
    • -
    • -minion - - minion is an IRC robot (who prefers the term "electronically composed.") For online help, try /msg minion help -
    • -
    • -trivial-irc - - trivial-irc is a small IRC library that provides only very basic facilities for communicating with IRC servers, and has no facilities for extensions like DCC, CTCP etc -
    • -
    • -WeirdIRC - - WeirdIRC is a simple IRC client using CLIM -
    • -
    • -X-Chat Common Lisp Plugin - - The X-Chat Common Lisp plugin is a plugin for X-Chat version 2 and up (the famous IRC client) that allows you to use Common Lisp scripts to control X-Chat behaviour -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/nibbles.html b/clones/lisp/www.cliki.net/nibbles.html deleted file mode 100644 index 148f1a21..00000000 --- a/clones/lisp/www.cliki.net/nibbles.html +++ /dev/null @@ -1,70 +0,0 @@ - - - - - CLiki: nibbles - - - - - - - -
    nibbles
    Nibbles is a library for accessing octet-addressed blocks of data.

    When dealing with network protocols and file formats, it's common to -have to read or write 16-, 32-, or 64-bit datatypes in signed or -unsigned flavors. Common Lisp sort of supports this by specifying -:ELEMENT-TYPE for streams, but that facility is underspecified and -there's nothing similar for read/write from octet vectors. What most -people wind up doing is rolling their own small facility for their -particular needs and calling it a day.

    This library attempts to be comprehensive and centralize such -facilities. Functions to read 16-, 32-, and 64-bit quantities from -octet vectors in signed or unsigned flavors are provided; these -functions are also SETFable. Since it's sometimes desirable to -read/write directly from streams, functions for doing so are also -provided. On some implementations, reading/writing IEEE singles/doubles -(i.e. SINGLE-FLOAT and DOUBLE-FLOAT) will also be supported.

    In addition to centralizing such facilities, NIBBLES also aspires to -become a place where compiler optimizations can be written once and used -everywhere. The intention is that (eventually):

    (nibbles:sb32ref/le vector index)

    will compile (with any necessary safety checks) to a MOVSX instruction -on an x86oid processor in SBCL (or other implementations) if VECTOR and -INDEX are of appropriate types.

    I remember reading a post on comp.lang.lisp that suggested the designers -of Common Lisp ignored the realities of octets and endianness and so -forth. This library is a small step towards remedying that deficiency.

    Homepage: https://github.com/sharplispers/nibbles

    License: BSD


    -Topics: binary format system programming
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ningle.html b/clones/lisp/www.cliki.net/ningle.html deleted file mode 100644 index 9a74669f..00000000 --- a/clones/lisp/www.cliki.net/ningle.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: ningle - - - - - - - -
    ningle
    ningle is a lightweight web application framework for Common Lisp. ningle is a fork project of Caveman that doesn't require you to generate a project skeleton.

    Homepage: https://8arrow.org/ningle/

    araneus wraps ningle with syntactic sugar.

    License: LLGPL


    -web framework
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ninglex.html b/clones/lisp/www.cliki.net/ninglex.html deleted file mode 100644 index 0c442d7e..00000000 --- a/clones/lisp/www.cliki.net/ninglex.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: ninglex - - - - - - - -
    ninglex
    Easy to learn, quick and dirty, bare-bones web framework for Common Lisp based on ningle.

    A really tiny, ready-to-go micro web framework for simple, quick and dirty stuff, based on Ningle. It is ready to go, learning curve almost zero.

    Not as small as Ningle and not as big as Caveman2. Ningle was too minimal, so Ninglex adds just a few functions and macros on top of Ningle, then gets you ready to go!

    Ninglex is only about defining your routes and your route handlers. Starting and stopping the server. The rest is left to your control.

    Underlying Ninglex is Eitaro Fukamachi's Clack & Lack, which allows different servers, so your app can be hosted using Hunchentoot Wookie, etc. What this means is that there's something that you want to do with Ninglex and you don't know how to do, you can do it by glancing at Clack and Lack's documentation.

    GitHub

    web framework

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/nodgui.html b/clones/lisp/www.cliki.net/nodgui.html deleted file mode 100644 index c03ad812..00000000 --- a/clones/lisp/www.cliki.net/nodgui.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: nodgui - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/non-free.html b/clones/lisp/www.cliki.net/non-free.html deleted file mode 100644 index b0dae534..00000000 --- a/clones/lisp/www.cliki.net/non-free.html +++ /dev/null @@ -1,64 +0,0 @@ - - - - - CLiki: non-free - - - - - - - -
    non-free
    If we cannot be free, at least we can be cheap - FZ

    Some of the resources listed in CLiki have Licenses which are not free according to the DFSG. Typically these are packages which are freely downloadable but forbid or place onerous restrictions on commercial use or redistribution

    Non-free resources with their own CLiki pages

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/north.html b/clones/lisp/www.cliki.net/north.html deleted file mode 100644 index 49e90bd6..00000000 --- a/clones/lisp/www.cliki.net/north.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: north - - - - - - - -
    north
    North is a library that implements the OAuth 1.0a consumer and provider protocols. It allows you to connect to an OAuth provider and request its resources, or to build your own OAuth provider.

    The project can be found on github including a fully documented symbol index and a getting started tutorial.
    -As of March 2016, North is available on Quicklisp.

    North is licensed under the Artistic License 2.0.


    -web web api
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/noss.html b/clones/lisp/www.cliki.net/noss.html deleted file mode 100644 index 9cadc0ae..00000000 --- a/clones/lisp/www.cliki.net/noss.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: noss - - - - - - - -
    noss
    -A Person that is often found in opn #lisp IRC channel. -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/nrw-xmcl.html b/clones/lisp/www.cliki.net/nrw-xmcl.html deleted file mode 100644 index b62836a7..00000000 --- a/clones/lisp/www.cliki.net/nrw-xmcl.html +++ /dev/null @@ -1,61 +0,0 @@ - - - - - CLiki: nrw-xmcl - - - - - - - -
    nrw-xmcl
    Nrw-xmcl is a library to transform xml data into calls of Lisp-functions or macros.

    Intended Applications:

      -
    • Analyzing XML data -
    • -
    • Transformation of XML data -
    • -
    • Build Yet another HTML-Templating engine in Lisp -
    • -
    • Implement dumbed down syntax for Lisp -
    • -
    -The "download" link on the home page is broken, see archived link:

    http://web.archive.org/web/20100612150412/http://common-lisp.net/webftp/pub/project/nrw-xmcl/

    License: BSD 2-Clause

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/nuclblog.html b/clones/lisp/www.cliki.net/nuclblog.html deleted file mode 100644 index 10133c40..00000000 --- a/clones/lisp/www.cliki.net/nuclblog.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: nuclblog - - - - - - - -
    nuclblog
    Blog software for use with Hunchentoot.

    License: BSD

    See on GitHub

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/oauth2.html b/clones/lisp/www.cliki.net/oauth2.html deleted file mode 100644 index c0da4511..00000000 --- a/clones/lisp/www.cliki.net/oauth2.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: oauth2 - - - - - - - -
    oauth2
    Small library which allows to use OAuth2 protocol, original repository is here https://github.com/Neronus/oauth2
    -Newest updates are here https://github.com/html/oauth2


    -web API
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/object-class.html b/clones/lisp/www.cliki.net/object-class.html deleted file mode 100644 index 036c6c2a..00000000 --- a/clones/lisp/www.cliki.net/object-class.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: object-class - - - - - - - -
    object-class
    object-class ensures that special subclasses of standard-object cluster right in front of standard-object in the class precedence list.

    See the project's home for all details.


    -Unlicense, Public Domain
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/obsolete.html b/clones/lisp/www.cliki.net/obsolete.html deleted file mode 100644 index cf8d58fb..00000000 --- a/clones/lisp/www.cliki.net/obsolete.html +++ /dev/null @@ -1,297 +0,0 @@ - - - - - CLiki: obsolete - - - - - - - -
    obsolete
    Collection of pages about obsolete software. This is intended to help cleaning up CLiki. -
      -
    • -ASDF-Binary-Locations - - Note: this system is no longer being maintained -
    • -
    • -asdf-config - - (DEPRECATED, July 2006: This functionality was superseded by Gary King's new asdf operation load-preferences—it provides a slightly different and more general variant of the variable initialization support of asdf-config) -
    • -
    • -asdf-package-system - - asdf-package-system is an ASDF-extension (pre-3.1) whereby every file is its own system, and starts with a defpackage from which dependencies are deduced -
    • -
    • -asdf-system-connections - - Note: this system is no longer being maintained -
    • -
    • -asdf-upgrade - - This is a start at an ASDF-extension to upgrade -
    • -
    • -atom-slime - - Atom-slime is an Atom plugin for Common Lisp development -
    • -
    • -bundler - - the Bundler is an ASDF-Extension to combine many systems into one automatically -
    • -
    • -cclan-get - - cclan-get downloads and install vn-cclan packages automatically -
    • -
    • -ch-image - - ch-image is a common lisp image representation and processing library -
    • -
    • -ch-util - - Cyrus Harmon's CL utilities -
    • -
    • -CIM - - CIM aims to be a tool which allows you to easily install, manage, run REPL with, and execute with multiple Common Lisp implementation and systems -
    • -
    • -cl-async-future - - cl-async-future is a future (or "promise") implementation that allows a simple abstraction for values that may or may not be available yet -
    • -
    • -cl-couchdb - - cl-couchdb is a Common Lisp library for working with the CouchDB system -
    • -
    • -cl-en - - cl-en provides a common lisp interface to the echonest music analysis web API -
    • -
    • -CL-LDAP - - CL-LDAP is a UFFI interface to the OpenLDAP library -
    • -
    • -CL-Librarian - - CL-Librarian aims to be a manager for Common Lisp libraries that is focused on libraries updated dynamically by version control systems and targeted at power users -
    • -
    • -cl-match - - [unmaintained, optima recommended] extended ML-style pattern matching library -
    • -
    • -cl-pattern - - [superseded by optima] cl-pattern is a very fast ML-like pattern matching library for Common Lisp -
    • -
    • -CL-SDL - - CL-SDL is a set of Common Lisp bindings for the SDL graphics library, and OpenGL, using UFFI -
    • -
    • -cl-semantic - - cl-semantic is a collection of RDF/OWL extraction and relationship parsing macros -
    • -
    • -cl-toolbox - - This package is now obsolete -
    • -
    • -cl-variates - - CL-Variates is a set of platform independent Common Lisp utilities for mucking with random number generation -
    • -
    • -cl-yahoo - - CL-YAHOO is a Common Lisp interface to the Yahoo! API, a web API which enables searching the web through yahoo -
    • -
    • -cl-zlib - - CL-ZLIB is a UFFI interface to the zlib compression library -
    • -
    • -CLEE - - Unmaintained libevent bindings -
    • -
    • -CLiCC - - CLiCC is a Common Lisp to C Compiler, last released 1995 -
    • -
    • -db-sockets - - db-sockets is obsolete and no longer supported, see usocket for a currently maintained library -
    • -
    • -DebianIRC - - Drop by Debian IRC (irc.debian.org) channel #lisp some time -
    • -
    • -defsystem-compatibility - - Defsystem-compatibility papers over the differences between system definition tools and also provides a small set of relective capabilities to help system groveling tools be more portable -
    • -
    • -Dynamic ADTs - - Dynamic ADTs are abstract data types with a framework for observation and adaptation -
    • -
    • -eager-future - - Eager Future has been superseded by Eager Future2 -
    • -
    • -ediware - - Ediware is a darcs mirror of Edi Weitz's libraries, maintained and updated by Luís­ Oliveira using the downloadable release tarballs at http://common-lisp.net/~loliveira/ediware/ -
    • -
    • -Encline - - Encline is a Common Lisp software engine for enterprise-class software development -
    • -
    • -Eos - - Eos is an obsolete fork of FiveAM developed by Adlai Chandrasekhar -
    • -
    • -fare-matcher - - [superseded by optima according to optima's CLiki page] Extends CL with ML-like pattern matching in an extensible way -
    • -
    • -faslpath - - Faslpath is a build tool that relies on package naming conventions to automatically resolve dependencies between files, eliminating the need to have a separate system definition/make file -
    • -
    • -folio - - [superseded by folio2] A set of modules that make some functional programming idioms more convenient for use in Common Lisp -
    • -
    • -ILISP - - ILISP is an Emacs based interface to various lisp-like systems - a pretty essential development aid -
    • -
    • -IMHO - - IMHO is dead, as far as anyone knows -
    • -
    • -IOlib-POSIX - - This library is obsolete and should not be used -
    • -
    • -LIJOS - - The LIJOS system is a Lisp Implementation of the Java ObjectStream -
    • -
    • -lisp2wish - - lisp2wish is not actively maintained, see cl-tk for a currently maintained interface to Tk -
    • -
    • -LispGameIssues - - This page might be obsolete and superseded by the Lisp Games Wiki. -
    • -
    • -MPC - - MPC is a fork of Drew Crampsie's Smug, a monadic parser combinators library for Common Lisp -
    • -
    • -net-telent-date - - net-telent-date consists of the time parsing routines from CMUCL and a universal-time to RFC 822 date converter -
    • -
    • -optima - - [deprecated by trivia, see link below] A pattern matching library -
    • -
    • -PonzuDB - - This was just an experimental project -
    • -
    • -pxmlutils - - development on the xml parser in pxmlutils has stopped, use Miles Egan's XMLS parser instead. -
    • -
    • -RDNZL - - RDNZL (pronounced "Redunzl") enables Common Lisp applications to interact with dot-NET libraries -
    • -
    • -Reticule - - Reticule is an NNTP server written in Common Lisp by Lars Magne Ingebrigtsen -
    • -
    • -rt - - rt is a 1990 regression testing library that is used by some older software -
    • -
    • -Salza - - If you're writing new code, you probably want to check out Salza2, which is a from-scratch reimplementation, and is much faster and simpler (and maintained). -
    • -
    • -salza-png - - salza-png is considered obsolete by the author in favor of ZPNG. -
    • -
    • -ssqlfs - - ssqlfs is an application which generates a SQL database which corresponds -
    • -
    • -Stefil - - hu.dwim.stefil is an abandoned test framework with a living fork at fiasco, and its philosophy is to stay as transparent as possible, disrupting the normal Lisp application development process as little as possible -
    • -
    • -The Old Cliki - - This is a page about the old version of the wiki software that used to run cliki.net -
    • -
    • -TIMER - - An event scheduling library for SBCL by Zach Beane -
    • -
    • -trivial-https - - trivial-https was a fork of Brian Mastenbrook's trivial-http adding support for HTTPS using CL+SSL -
    • -
    • -turtl - - Turtl lets you take notes, bookmark websites, and store documents for sensitive projects -
    • -
    • -Verrazano - - Verrazano is no longer actively developed; see cl-autowrap (which uses c2ffi) or maybe SWIG. -
    • -
    • -xmlutils - - The xmlutils project is no longer hosted at Franz because it has been superseded by the newer sax parser -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ocml.html b/clones/lisp/www.cliki.net/ocml.html deleted file mode 100644 index ca6638d6..00000000 --- a/clones/lisp/www.cliki.net/ocml.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: OCML - - - - - - - -
    OCML
    The Operational Conceptual Modelling Language (OCML) combines logical reasoning in a frame-based language with the flexibility of extra-logical facilities like procedural attachment. It is implemented in Common Lisp, and has been tested with Lispworks, SBCL, and Allegro implementations. It is used by the Internet Reasoning System.

    Repository: https://github.com/kmi/ocml

    License: BSD-like


    -Theorem Provers
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/odd-streams.html b/clones/lisp/www.cliki.net/odd-streams.html deleted file mode 100644 index 302573d1..00000000 --- a/clones/lisp/www.cliki.net/odd-streams.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: odd-streams - - - - - - - -
    odd-streams
    ODD-STREAMS implements binary streams with "odd" byte sizes.

    It was written by Edi Weitz and can be found at https://github.com/lispstudent/weitz-lispOld/tree/master/odd-streams.


    -binary format
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/okra.html b/clones/lisp/www.cliki.net/okra.html deleted file mode 100644 index 918d6b22..00000000 --- a/clones/lisp/www.cliki.net/okra.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Okra - - - - - - - -
    Okra
    Okra provides CFFI bindings to the Ogre 3D graphics engine.

    The project page is at https://github.com/erikg/okra

    Related libraries: Buclet, clois-lane.

    Topics: graphics library.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/online tutorial.html b/clones/lisp/www.cliki.net/online tutorial.html deleted file mode 100644 index cc35f721..00000000 --- a/clones/lisp/www.cliki.net/online tutorial.html +++ /dev/null @@ -1,155 +0,0 @@ - - - - - CLiki: Online Tutorial - - - - - - - -
    Online Tutorial
    Online Tutorials for programming Common Lisp or with Common Lisp. See also the rest of the Documents and Lisp Books, and the Getting Started guide.

    Recommended for beginners

    Further reading

    University course material

    Implementation Provided Tutorials

    Those are Common Lisp tutorial provided by implementations. They may have some implementation specific examples, but may still be useful to all.

    Cliki Tutorials

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/openMCL.html b/clones/lisp/www.cliki.net/openMCL.html deleted file mode 100644 index 1735fe65..00000000 --- a/clones/lisp/www.cliki.net/openMCL.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: OpenMCL - - - - - - - -
    OpenMCL
    OpenMCL is called Clozure Common Lisp (CCL) now.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/opengl-extensions.html b/clones/lisp/www.cliki.net/opengl-extensions.html deleted file mode 100644 index cffff508..00000000 --- a/clones/lisp/www.cliki.net/opengl-extensions.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: opengl-extensions - - - - - - - -
    opengl-extensions
    Extends cl-sdl to add bindings to opengl versions 1.3-2.0. Currently lacks documentation and demos.

    Installation -(asdf-install:install 'opengl-extensions)

    Usage -(asdf:operate 'asdf:load-op 'opengl-extensions) -Will load appropriate definitions into the gl package

    Currently it just calls sgum:def-foreign-routine to bind the extensions so it will probably fail miserably if you don't have opengl 2.0 drivers and a newish GPU.

    Send comments/flames to tatk@deakin.edu.au

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/opengl-text.html b/clones/lisp/www.cliki.net/opengl-text.html deleted file mode 100644 index 81194e90..00000000 --- a/clones/lisp/www.cliki.net/opengl-text.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: opengl-text - - - - - - - -
    opengl-text
    opengl-text is a library for loading and displaying TrueType fonts as texture maps in OpenGL.

    Homepage: https://github.com/Ramarren/opengl-text

    License: BSD

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/opengl.html b/clones/lisp/www.cliki.net/opengl.html deleted file mode 100644 index 6333cead..00000000 --- a/clones/lisp/www.cliki.net/opengl.html +++ /dev/null @@ -1,112 +0,0 @@ - - - - - CLiki: OpenGL - - - - - - - -
    OpenGL
    Interfaces and implementations of the OpenGL 3d graphics library

    Work is ongoing (as of Dec. 2009) to add the GLX extension to CLX. See http://www.ltn.lv/~jonis/glx.html for details.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/opticl.html b/clones/lisp/www.cliki.net/opticl.html deleted file mode 100644 index f31a4742..00000000 --- a/clones/lisp/www.cliki.net/opticl.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: opticl - - - - - - - -
    opticl
    An image processing library for Common Lisp.

    Depends on: alexandria, retrospectiff, zpng, png-read, cl-jpeg, skippy, cl-tga

    Repository: https://github.com/slyrus/opticl

    License: BSD 2-Clause


    -graphics library
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/optima.html b/clones/lisp/www.cliki.net/optima.html deleted file mode 100644 index 3ae9f43f..00000000 --- a/clones/lisp/www.cliki.net/optima.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: optima - - - - - - - -
    optima
    [deprecated by trivia, see link below] A pattern matching library

    It actually optimizes the pattern-matching, and has a complete and well-documented API including an extension mechanism.

    optima is the recommended pattern-matching library. It notably supersedes cl-pattern, cl-match, fare-matcher, arnesi's pattern-matching fragment, pcond, and more.

    The library trivia uses similar patterns for pattern matching. However unlike optima it provides a unified API for extension. When trivia achieves feature parity with optima, it will officially supersede optima.

    Homepage: GitHub


    -obsolete
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/optparser.html b/clones/lisp/www.cliki.net/optparser.html deleted file mode 100644 index a82529bf..00000000 --- a/clones/lisp/www.cliki.net/optparser.html +++ /dev/null @@ -1,77 +0,0 @@ - - - - - CLiki: optparser - - - - - - - -
    optparser
    optparser is a Unix command-line options parser for simple shell scripts, geared towards ease-of-use and unambiguity.

    Inspired by python optparse module.

    Example usage (SBCL)

    -#!/usr/bin/sbcl --script
    -(load "/path/to/asdf-init.lisp")
    -(asdf:operate 'asdf:load-op 'optparser)
    -
    -(optparser:argv-let
    -  (argz
    -    (concurrency ("c" "concurrency" :value t))
    -    (verbose("v" "verbose")))
    -  *posix-argv*
    -  (format t
    -    "Arguments: ~s~%Optional values:~% verbose: ~s~% concurrency: ~s~%"
    -    argz verbose concurrency))
    -
    -
    -~% ./optparser-test.cl somepath1 --verbose somepath2 --concurrency 30
    -Arguments: ("/usr/bin/sbcl" "somepath1" "somepath2")
    -Optional values:
    - verbose: T
    - concurrency: "30"
    -
    -~% ./optparser-test.cl -vc 10 somepath
    -Arguments: ("/usr/bin/sbcl" "somepath")
    -Optional values:
    - verbose: T
    - concurrency: "10"
    -

    Note that *posix-argv* var is SBCL-specific

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/org-davep-cldict.html b/clones/lisp/www.cliki.net/org-davep-cldict.html deleted file mode 100644 index 7fe3f7e6..00000000 --- a/clones/lisp/www.cliki.net/org-davep-cldict.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: org-davep-cldict - - - - - - - -
    org-davep-cldict
    org-davep-cldict is a Common Lisp Application that provides a McCLIM based interface for talking to a dict server. - You can download the latest version from http://www.davep.org/lisp/#org-davep-cldict.

    Here's a little screenshot:

    -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/org-davep-dict.html b/clones/lisp/www.cliki.net/org-davep-dict.html deleted file mode 100644 index 06595e4e..00000000 --- a/clones/lisp/www.cliki.net/org-davep-dict.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: org-davep-dict - - - - - - - -
    org-davep-dict
    org-davep-dict is a Common Lisp networking protocol library for talking to a dict server. See www.dict.org. You can download the latest version from http://www.davep.org/lisp/#org-davep-dict. As a bit of test -code you can try org-davep-dictrepl. If you're into McCLIM then -org-davep-cldict might interest you too.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/org-davep-dictrepl.html b/clones/lisp/www.cliki.net/org-davep-dictrepl.html deleted file mode 100644 index cd3ce70b..00000000 --- a/clones/lisp/www.cliki.net/org-davep-dictrepl.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: org-davep-dictrepl - - - - - - - -
    org-davep-dictrepl
    org-davep-dictrepl is a Common Lisp application that provides a simple repl for talking to a dict server. - You can download the latest version from http://www.davep.org/lisp/#org-davep-dictrepl.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/org-davep-newsrc.html b/clones/lisp/www.cliki.net/org-davep-newsrc.html deleted file mode 100644 index e1e454fd..00000000 --- a/clones/lisp/www.cliki.net/org-davep-newsrc.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: org-davep-newsrc - - - - - - - -
    org-davep-newsrc
    org-davep-newsrc is a Common Lisp library that provides a couple of classes for reading a Unix Usenet newsrc file. You can download the latest version from http://www.davep.org/lisp/#org-davep-newsrc.

    Topics: email

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/org-davep-nntp.html b/clones/lisp/www.cliki.net/org-davep-nntp.html deleted file mode 100644 index ea62d045..00000000 --- a/clones/lisp/www.cliki.net/org-davep-nntp.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: org-davep-nntp - - - - - - - -
    org-davep-nntp
    org-davep-nntp is a Common Lisp library for talking to an NNTP (RFC 3977) server. You can download the latest version (org-davep-nntp-2.0.tar.gz) from http://www.davep.org/lisp/#Forg-davep-nntp. Requires split-sequence and acl-compat. Released under the Lisp Lesser GNU Public License (LLGPL).


    -Topics: email
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/osicat.html b/clones/lisp/www.cliki.net/osicat.html deleted file mode 100644 index daaf2b32..00000000 --- a/clones/lisp/www.cliki.net/osicat.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Osicat - - - - - - - -
    Osicat
    Operating system interface library mainly for Unix. It is not a POSIX-style API, but rather a simple lispy accompaniment to the standard ANSI facilities, built on top of CFFI.

    Homepage


    -system programming
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/outer-parentheses-free-repl.html b/clones/lisp/www.cliki.net/outer-parentheses-free-repl.html deleted file mode 100644 index 9410f7f7..00000000 --- a/clones/lisp/www.cliki.net/outer-parentheses-free-repl.html +++ /dev/null @@ -1,74 +0,0 @@ - - - - - CLiki: outer-parentheses-free-repl - - - - - - - -
    outer-parentheses-free-repl
    outer-parentheses-free-repl (OPFR) lets you input the outermost s-exp into your REPL without having to surround it with parentheses.

    This short example compares the syntaxes. First, normal Common Lisp:

    -> (+ 1 2)
    -3
    -> (defvar x 34)
    -X
    -> (defvar y 25)
    -Y
    -> (expt x y)
    -193630125104980427932766033374162714624
    -> (expt x (- y 12))
    -81138303245565435904
    ->
    -

    Now, exactly the same sequence of operations using OPFR syntax:

    -opfr> + 1 2
    -3
    -opfr> defvar x 34
    -opfr> defvar y 25
    -opfr> expt x y
    -193630125104980427932766033374162714624
    -opfr> expt x (- y 12)
    -81138303245565435904
    -opfr>
    -

    Original source: at rpw3.org

    Repository: https://github.com/deepfire/opfr

    License: BSD


    -Topics: convenience library, development
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/package-renaming.html b/clones/lisp/www.cliki.net/package-renaming.html deleted file mode 100644 index 05c2f9d7..00000000 --- a/clones/lisp/www.cliki.net/package-renaming.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: package-renaming - - - - - - - -
    package-renaming
    package-renaming is a library for locally renaming CL packages.

    It allows you to use short nicknames for long package names in your code.

    Repository: https://github.com/fare/package-renaming

    License: MIT


    -language extension
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/packer.html b/clones/lisp/www.cliki.net/packer.html deleted file mode 100644 index 7e5a8d1d..00000000 --- a/clones/lisp/www.cliki.net/packer.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: packer - - - - - - - -
    packer
    The PACKER binary format library implements a "little language" for C-style structures, along the lines of Perl's pack() or Python's struct module. It is similar in spirit to Binary-types, although much less general. Version 0.2 (packer.tar.gz) is a near-complete rewrite and offers portable packing and unpacking (of SINGLE-FLOAT and DOUBLE-FLOATs as well) and a more obviously extensible packing protocol. (See also: CL-PACK.)
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/pal.html b/clones/lisp/www.cliki.net/pal.html deleted file mode 100644 index 8a30f0ce..00000000 --- a/clones/lisp/www.cliki.net/pal.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: pal - - - - - - - -
    pal
    PAL is a Common Lisp multimedia library that provides simple and easy to use Lisp interface for all your basic graphics and audio needs. Drawing thousands of sprites on screen, playing sound and music, handling events and drawing text with different fonts. It uses CFFI to interface with native libraries. Learn more on the common-lisp.net project page.


    -Topics: graphics library, MIT-LICENSE
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/parachute.html b/clones/lisp/www.cliki.net/parachute.html deleted file mode 100644 index 7fd2ea6b..00000000 --- a/clones/lisp/www.cliki.net/parachute.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: parachute - - - - - - - -
    parachute
    Parachute is a simple-to-use and extensible testing framework with compatibility layers to other test frameworks.

    The project can be found on github including a fully documented symbol index and a getting started tutorial.
    -As of 2016, Parachute is on Quicklisp.

    Parachute is licensed under the Artistic License 2.0.


    -Test Framework
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/parenscript.html b/clones/lisp/www.cliki.net/parenscript.html deleted file mode 100644 index ce583b4f..00000000 --- a/clones/lisp/www.cliki.net/parenscript.html +++ /dev/null @@ -1,77 +0,0 @@ - - - - - CLiki: parenscript - - - - - - - -
    parenscript
    Parenscript is a translator from an extended subset of Common Lisp to JavaScript. Parenscript code can run almost identically on both the browser (as JavaScript) and server (as Common Lisp).

    Parenscript code is treated the same way as Common Lisp code, making the full power of Lisp macros available for JavaScript. This provides a web development environment that is unmatched in its ability to reduce code duplication and provides advanced metaprogramming facilities to web developers.

    At the same time, Parenscript is different from almost all other "language X" to JavaScript translators in that it imposes almost no overhead.

    License: BSD-3-Clause

    Homepage: http://common-lisp.net/project/parenscript/

    Parenscript is available in Quicklisp since version 2.1 (at least).

    It is a kind of s-exp syntax for Javascript.

    Live coding

    Trident-mode is an Emacs mode for live Parenscript interaction.

    More precisely it is a minor mode and a collection of commands for working with Parenscript code in SLIME and sending it to the browser via Skewer. The goal is to create an environment for hacking Parenscript which fits as naturally as possible into the Lisp style of interactive development. It can also open a Javascript REPL connected to the browser and connect to a page the server of which you don’t control.

    TodoMVC example

    This Todo MVC example is implemented in Parenscript, using the Panic wrapper around React.

    All pages in topic "Parenscript":

    -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/parenscriptm.html b/clones/lisp/www.cliki.net/parenscriptm.html deleted file mode 100644 index 784ed691..00000000 --- a/clones/lisp/www.cliki.net/parenscriptm.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: parenscriptm - - - - - - - -
    parenscriptm
    Tool for generating mithrilJS code in parenscript

    GitHub

    parenscript JavaScript

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/parenscriptx.html b/clones/lisp/www.cliki.net/parenscriptx.html deleted file mode 100644 index 273165d6..00000000 --- a/clones/lisp/www.cliki.net/parenscriptx.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: parenscriptx - - - - - - - -
    parenscriptx
    A simple tool for aiding with creating React UIs in parenscript. Example included.

    GitHub


    JavaScript

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/parse-declarations.html b/clones/lisp/www.cliki.net/parse-declarations.html deleted file mode 100644 index 08d634bc..00000000 --- a/clones/lisp/www.cliki.net/parse-declarations.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: parse-declarations - - - - - - - -
    parse-declarations
    Parse-Declarations is a metaprogramming library to parse, filter, and build Common Lisp declarations (things like (inline foo)).

    Repository: https://gitlab.common-lisp.net/parse-declarations/parse-declarations

    API: https://common-lisp.net/project/parse-declarations/manual/html_node/index.html


    -MIT-LICENSE
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/parse-float.html b/clones/lisp/www.cliki.net/parse-float.html deleted file mode 100644 index 08b72a63..00000000 --- a/clones/lisp/www.cliki.net/parse-float.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: parse-float - - - - - - - -
    parse-float
    A function to parse floating-point values from a string in Common Lisp.

    Depends on: alexandria (plus lisp-unit for tests)

    Repository: https://github.com/soemraws/parse-float

    License: Public Domain


    -parser
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/parse-js.html b/clones/lisp/www.cliki.net/parse-js.html deleted file mode 100644 index c6ed3d10..00000000 --- a/clones/lisp/www.cliki.net/parse-js.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: parse-js - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/parse-number-range.html b/clones/lisp/www.cliki.net/parse-number-range.html deleted file mode 100644 index d84d982c..00000000 --- a/clones/lisp/www.cliki.net/parse-number-range.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: parse-number-range - - - - - - - -
    parse-number-range
    parse-number-range parses loop's convenient "for-as-arithmetic" syntax into 5 simple values. The values are from, to, limit-kind (:inclusive, :exclusive or nil if unbounded), by (step) and direction (+ or -)). Further related utilities are provided. Intended for easy implementation of analogous functionality in other constructs.

    See the project's home for all details.


    -metaprogramming, Unlicense, Public Domain
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/parse-number.html b/clones/lisp/www.cliki.net/parse-number.html deleted file mode 100644 index 09f6b61b..00000000 --- a/clones/lisp/www.cliki.net/parse-number.html +++ /dev/null @@ -1,65 +0,0 @@ - - - - - CLiki: parse-number - - - - - - - -
    parse-number
    parse-number accepts an arbitrary string and attempts to parse the string into one of the standard Common Lisp number types, if possible, or else parse-number signals an error of type invalid-number.

    Exported symbols

    Function PARSE-NUMBER (string &key start end radix float-format)
    - Function PARSE-REAL-NUMBER (string &key start end radix float-format)
    - Function PARSE-POSITIVE-REAL-NUMBER (string &key start end radix float-format)
    - Condition INVALID-NUMBER
    - Reader INVALID-NUMBER-VALUE
    - Reader INVALID-NUMBER-REASON

    Download

    The source code is availabe from a repository at github. -You can download the repository as a zip file or you can get a -tar file of the version 1.3.
    -In addition parse-number is available via Quicklisp.

    Installation

    parse-number comes with an asdf file for compilation.

    You can test the installation with asdf. This is an example output: -

    - (asdf:test-system :parse-number)
    -=> .PARSE-NUMBER: 23 assertions passed, 0 failed.
    -=> T
    -

    Documentation

    An online documentation is availabe at parse-number API documentation.

    Note

    parse-number does not handle thousands separators, so if you use this package, you might think about adding that.


    -parser utilities
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/parse.html b/clones/lisp/www.cliki.net/parse.html deleted file mode 100644 index f917c8a6..00000000 --- a/clones/lisp/www.cliki.net/parse.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: parse - - - - - - - -
    parse
    The parse package is a simple token parsing library for Common Lisp.

    It is based on Haskell's Parsec library, but using macros to make more accessible to Lisp.

    Repository: https://github.com/massung/parse

    License: Apache 2


    -parser generator
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/parseq.html b/clones/lisp/www.cliki.net/parseq.html deleted file mode 100644 index f7eda7c4..00000000 --- a/clones/lisp/www.cliki.net/parseq.html +++ /dev/null @@ -1,97 +0,0 @@ - - - - - CLiki: parseq - - - - - - - -
    parseq
    A parser generator for common lisp, inspired by ESRAP

    Features:

    -
      -
    • Parses strings, vectors (e.g. binary data) and lists -
    • -
    • Allows parsing of nested sequences (e.g. trees, strings within lists, ...) -
    • -
    • Simple interface, very similar to Esrap -
    • -
    • Provides many specific and non-specific terminal symbols -
    • -
    • Implements the standard PEG (parsing expression grammar) expressions as well as useful extensions -
    • -
    • Packrat parsing can be enabled for individual PEG rules -
    • -
    • Parsing expression rules are compiled -
    • -
    • Parse tree transformations can be defined together with each PEG rule -
    • -
    • Grammars can be made context aware: -
        -
      • Run parse results of a PEG rule through lisp code to influence parsing success -
      • -
      • Share data between parse rules -
      • -
      -
    • -
    • Parsing rules can be parameterised -
    • -
    • Uses separate namespace(s) for parse rules -
    • -
    • Tracing of grammar rules -
    • -
    • Meaningful parse error messages -
    • -

    Usage:

    -First, define a set of grammar rules: -
    (defrule foo () "foo") -(defrule bar () "bar") -(defrule foobar () (and foo bar)) -
    -The rule foobar will parse the string "foobar".

    Parsing is initiated by calling -

    (parseq 'foobar "foobar") -
    -The result is the list ("foo" "bar").

    Homepage:

    -https://github.com/mrossini-ethz/parseq

    Installation:

    -Parseq can be installed through Quicklisp.

    License:

    -GPL
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/parser generator.html b/clones/lisp/www.cliki.net/parser generator.html deleted file mode 100644 index c4239981..00000000 --- a/clones/lisp/www.cliki.net/parser generator.html +++ /dev/null @@ -1,144 +0,0 @@ - - - - - CLiki: parser generator - - - - - - - -
    parser generator
    Parser generators can be an alternative to writing recursive-descent parsers by hand. Some parser generators are best used with lexers (although you can also do your lexing with regular expressions).

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/parser-combinators.html b/clones/lisp/www.cliki.net/parser-combinators.html deleted file mode 100644 index ce49f359..00000000 --- a/clones/lisp/www.cliki.net/parser-combinators.html +++ /dev/null @@ -1,57 +0,0 @@ - - - - - CLiki: parser-combinators - - - - - - - -
    parser-combinators
    An implementation of parser combinators.

    GitHub page

    README.

    It can be obtained either with git from git://github.com/Ramarren/cl-parser-combinators.git , or by automatic tarball. It depends on iterate and Alexandria.

    The implementation is fairly naive, which means that for highly ambiguous grammars it can become exponential in length of input unless the parser is carefully constructed. It is likely not suitable for parsing large amounts of data, but might be a useful replacement for regular expressions in some situations.

    There is nothing which requires the parsed data to be characters, it will work just as well on vectors/list of arbitrary objects. The library cannot parse streams, since it requires the ability to arbitrarily backtrack.

    There is no built-in error reporting as failure to parse is indistinguishable from normal backtracking. It is possible to create component parsers which will signal an error on failure, but this require knowing where the component failure means parse failure.

    Simple example: -

    (defun example-parser ()
    -  (bracket? #\[ (sepby? (int?) #\,) #\]))
    -
    -;;(parse-string* (example-parser) "[1,2,-5,4,-3]") => (1 2 -5 4 -3)
    -

    For some more examples see test suite.


    -library text parser
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/parser.html b/clones/lisp/www.cliki.net/parser.html deleted file mode 100644 index 40b30189..00000000 --- a/clones/lisp/www.cliki.net/parser.html +++ /dev/null @@ -1,137 +0,0 @@ - - - - - CLiki: parser - - - - - - - -
    parser
    Pages tagged as on the topic of parser:


    -Topic tags: Library Text XML
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/path-parse.html b/clones/lisp/www.cliki.net/path-parse.html deleted file mode 100644 index 724cc6a8..00000000 --- a/clones/lisp/www.cliki.net/path-parse.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: path-parse - - - - - - - -
    path-parse
    Parse the PATH environment variable, portably.

    Depends on: uiop, split-sequence

    Repository: https://github.com/eudoxia0/path-parse

    License: MIT


    -parser
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/pathname-utils.html b/clones/lisp/www.cliki.net/pathname-utils.html deleted file mode 100644 index ba32f291..00000000 --- a/clones/lisp/www.cliki.net/pathname-utils.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: pathname-utils - - - - - - - -
    pathname-utils
    This is a collection of common tests and operations to help handling pathnames. It does not actually deal in handling the accessing of files on the underlying system however.

    The project can be found on github including a fully documented symbol index and a getting started tutorial.
    -As of February 2016, pathname-utils is on Quicklisp.

    Pathname-utils is licensed under the Artistic License 2.0.


    -convenience library utilities
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/patron.html b/clones/lisp/www.cliki.net/patron.html deleted file mode 100644 index 809aed9c..00000000 --- a/clones/lisp/www.cliki.net/patron.html +++ /dev/null @@ -1,57 +0,0 @@ - - - - - CLiki: patron - - - - - - - -
    patron
    Patron is a multi-consumer/multi-producer thread pooling library written -in Common Lisp with flexibility and performance in mind. You simply create a PATRON with a job queue of fixed size, specify a fixed number -of WORKER threads and start submitting your JOBs into the work queue.

    While Patron is written in portable Common Lisp in mind, because of some -platform specific features (semaphores, missing threading features—THREAD-JOIN, -WITHOUT-INTERRUPTS, etc.—in bordeaux-threads, WITH-TIMEOUT macro) -used, it currently works on SBCL and CCL platforms. As a side note, Patron currently depends on bordeaux-threads library for -common threading functionalities.

    Repository: https://github.com/vy/patron

    License: BSD 2-Clause

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/pattern matching.html b/clones/lisp/www.cliki.net/pattern matching.html deleted file mode 100644 index 0e36999f..00000000 --- a/clones/lisp/www.cliki.net/pattern matching.html +++ /dev/null @@ -1,109 +0,0 @@ - - - - - CLiki: pattern matching - - - - - - - -
    pattern matching
    Libraries adding data-structure pattern matching operations to Common Lisp.

    We recommend trivia for pattern matching, that is a drop-in replacement for optima. For unification, see unification.

      -
    • -bind - - Bind combines let*, destructuring-bind and multiple-value-bind into a single form -
    • -
    • -bpm2 - - bpm2 is a pattern matching language originally designed for doing code transformation [ie, writing compilers] -
    • -
    • -cartesian-product-switch - - cartesian-product-switch is a macro for choosing the appropriate form to execute according to the combined results of multiple tests -
    • -
    • -cl-unification - - Provides unification (as used in Prolog) over fairly arbitrary Common Lisp objects -
    • -
    • -cl-xmlspam - - XML Stream PAttern Matcher - concise, regexp-like pattern matching on streaming XML -
    • -
    • -let-plus - - LET+ extends let* with destructuring forms, slot access, hash table elements and various other constructs with a consistent interface -
    • -
    • -MCPat - - MCPat is a meta-circular pattern matching library -
    • -
    • -screamer - - Screamer adds support for nondeterministic and constraint programming, including backtracking and undoable side-effects -
    • -
    • -spath - - SPath is a library for running search queries against s-expressions, intended to match parts of them that the user needs -
    • -
    • -Toadstool - - Toadstool is a library for pattern matching -
    • -
    • -Trivia - - Trivial pattern matching compiler -
    • -
    • -type-r - - The complete collection of accessor functions and patterns to access the elements in a compound type specifier -
    • -

    See also: -

      -
    • EEL
    • -
    • -destructuring-bind can be used to bind variables to components of a tree, but does not provide for multiple alternative patterns.
    • -
    • -typecase can be used to test structures against a pattern (type), but does not destructure.
    • -
    • -cl-phonetic — phonetical pattern matcher (work in progress)
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/patty.html b/clones/lisp/www.cliki.net/patty.html deleted file mode 100644 index 6426d66a..00000000 --- a/clones/lisp/www.cliki.net/patty.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: patty - - - - - - - -
    patty
    Patty is a library that facilitates working with functional data structures on top of CLOS. It consists of a few macros and metaclasses that integrate nicely with CLOS. Code using patty is similar in style to Haskell code using algebraic data types, primitive pattern matching and type classes.

    The project home page is at http://common-lisp.net/project/patty

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/patxi-2.html b/clones/lisp/www.cliki.net/patxi-2.html deleted file mode 100644 index 4fda1858..00000000 --- a/clones/lisp/www.cliki.net/patxi-2.html +++ /dev/null @@ -1,72 +0,0 @@ - - - - - CLiki: patxi-2 - - - - - - - -
    patxi-2
    PatXi-2 is a library for doing numerical computations in Common Lisp. It's released under the BSD license.

    It's composed by the things I need usually: non linear equations solving, linear algebra on matrices, minimal squares methods, montecarlo method ...

    I've programmed this to my own use and for fun. Please, feel free to suggest me new methods to implement. You can mail me at superratoli@gmail.com.

    Download: https://common-lisp.net/project/nixies/download/patxi2_latest.tar.gz

    CLDOC documentation: https://common-lisp.net/project/nixies/docpatxi/

    Some examples:

    (use-package :ph_random ) - -;; Initializes the Carlson pseudoaleatorial number generator -(carlson_init 200.) - -;; Generates a U(0,1) number -(carlson ) - -(use-package :ph_linear_algebra) - -(setq matrix (make-array '(3 3 ))) -(matrix_asign_values matrix (list 1. 2. 3. 4. 5. 6. 7. 8. 9.)) -(inverse matrix ) - -;; Solves a linear equations system -(solve_linear_equations matrix #2A( (2. ) (3. ) ( 6.) ) ) - -(use-package :ph_montecarlo ) -;; Integrates sin^{2}(x) at [0 : PI ] -(montecarlo (lambda (x) (expt (sin x) 2)) (list 0. pi) :points 10000 ) -

    Note: underscores are bad Common Lisp style


    -Mathematics
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/paul.html b/clones/lisp/www.cliki.net/paul.html deleted file mode 100644 index 632378b6..00000000 --- a/clones/lisp/www.cliki.net/paul.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: paul - - - - - - - -
    paul
    Describe paul here -A Person.

    This is truely amazing stuff. -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/pavelpenev.html b/clones/lisp/www.cliki.net/pavelpenev.html deleted file mode 100644 index e7b95a97..00000000 --- a/clones/lisp/www.cliki.net/pavelpenev.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - CLiki: pavelpenev - - - - - - - -
    pavelpenev
    I am a CS student and a lisper.

    Contacts:
    -Homepage: ppenev.com
    -Blog blog.ppenev.com
    -Twitter: @pavelpenev
    -Github: pvlpenev

    I am the author of Lisp Web Tales.

    person

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/pcall.html b/clones/lisp/www.cliki.net/pcall.html deleted file mode 100644 index d2ecc7be..00000000 --- a/clones/lisp/www.cliki.net/pcall.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: pcall - - - - - - - -
    pcall
    PCall is a concurrency library that implements simple 'result-oriented' parallelism on top of Bordeaux-Threads. See also this article for background information.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/pcl.html b/clones/lisp/www.cliki.net/pcl.html deleted file mode 100644 index 126fae90..00000000 --- a/clones/lisp/www.cliki.net/pcl.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: pcl - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/percent-encoding.html b/clones/lisp/www.cliki.net/percent-encoding.html deleted file mode 100644 index d5508e15..00000000 --- a/clones/lisp/www.cliki.net/percent-encoding.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: PERCENT-ENCODING - - - - - - - -
    PERCENT-ENCODING
    PERCENT-ENCODING is a library for URI percent encoding/decoding as specified in RFC3986.

    Source repository: https://github.com/llibra/percent-encoding

    License: MIT

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/performance benchmarks.html b/clones/lisp/www.cliki.net/performance benchmarks.html deleted file mode 100644 index 5e6eb012..00000000 --- a/clones/lisp/www.cliki.net/performance benchmarks.html +++ /dev/null @@ -1,542 +0,0 @@ - - - - - CLiki: Performance Benchmarks - - - - - - - -
    Performance Benchmarks
    Here are the results of several performance benchmarking tests run on ten different Common Lisp implementations running on a MacBook Pro, a dual P4 3.0 GHz, a P3 1.1 GHz, a G3 400 MHz and an UltrasparcIIe 500 MHz. The tests run include

      -
    • the well-known Gabriel benchmarks -
    • -
    • hashtable exercising -
    • -
    • READ-LINE exercising -
    • -
    • mathematical functions: factorial, fibonacci, ackermann's number -
    • -
    • some bignum intensive code from Bruno Haible -
    • -
    • various aspects of CLOS: time taken to compile and execute - DEFCLASS forms which create a class hierarchy, instance creation - time, time taken to compile and execute DEFMETHOD forms, execution - of method combinations, both with and without :after methods. -
    • -
    • various operations on arrays, bitvectors and strings. -
    • -
    • Odd Benchmarks that test various features of CL against each other -
    • -

    Except for the CLOS code, timings do not include compilation time. The -garbage collector is run before each test to try to make the timings -more repeatable. Remember that the only real benchmark is your -application: this code is only representative of real-life programs to -a limited extent. For certain targets, we assume that the times -reported by GET-INTERNAL-RUN-TIME and GET-INTERNAL-REAL-TIME are -accurate.

    The code for these performance benchmarks can be downloaded from -http://www.chez.com/emarsden/downloads/cl-bench.tar.gz. (For some reason -this seems to error out as a direct link but not when accessed from -the following page: http://www.chez.com/emarsden/downloads/.) A Makefile and a Bourne shell are used to run the benchmarks. A Windows user may not have those installed or wish to use them; in that case, create a .bat file in the toplevel cl-bench directory. Examples:

    -rem Clozure Common Lisp 1.6 32-bit ran successfully
    -set lisp=C:\ccl16\wx86cl.exe
    -set opt=--batch --no-init
    -set optimize=(declaim (optimize (speed 3) (space 1) (safety 0) (debug 0) (compilation-speed 0)))
    -if exist files/optimize.txt goto got_olisp
    -cd files
    -echo %optimize% > optimize.txt
    -for %%i in (*.lisp) do copy optimize.txt+%%i %%i_o
    -rename *.lisp_o *.olisp
    -cd ..
    -:got_olisp
    -%lisp% %opt% --load sysdep/setup-openmcl.lisp --load do-compilation-script.lisp --eval "(quit)"
    -%lisp% %opt% --load sysdep/setup-openmcl.lisp --load do-execute-script.lisp --eval "(quit)"
    -

    -rem Steel Bank Common Lisp 1.0.47 ran successfully
    -set lisp="C:\Program Files\Steel Bank Common Lisp\1.0.47\sbcl.exe"
    -rem Heap size must be 1GB or STRING-CONCAT will exhaust it.
    -set opt=--dynamic-space-size 1000
    -set optimize=(declaim (optimize (speed 3) (space 1) (safety 0) (debug 0) (compilation-speed 0)))
    -if exist files/optimize.txt goto got_olisp
    -cd files
    -echo %optimize% > optimize.txt
    -for %%i in (*.lisp) do copy optimize.txt+%%i %%i_o
    -rename *.lisp_o *.olisp
    -cd ..
    -:got_olisp
    -rem --script is required.  --load blah --eval "(quit)" will not work.
    -%lisp% %opt% --load sysdep/setup-sbcl.lisp --script do-compilation-script.lisp
    -%lisp% %opt% --load sysdep/setup-sbcl.lisp --script do-execute-script.lisp
    -

    Not all Windows CLs can run cl-bench. As of 15 April 2011:

      -
    • Allegro CL 8.2 Express Edition will not run cl-bench because the heap size is restricted. -
    • -
    • Lispworks Personal Edition 6.0.1 does not have a console available. Attempts to run cl-bench manually through the IDE failed because the listener doesn't appear to understand hierarchical directories. Also the Personal Edition has a heap size restriction so it will probably fail anyways. -
    • -
    • The CLISP 2.49 Windows native binary does not have a POSIX module. cl-bench will fail with an error 'there is no package named "OS"'. Also, watch out when installing this binary. The CLISP Windows binary installer will completely destroy your system %PATH%, if you check the "add CLISP to your path" option. If you notice that your system path has been destroyed before you reboot, you may be able to recover an older copy of it by starting regedit and looking under HKLM\System\ControlSetXXX\Control\Session Manager\Environment\Path, where "XXX" is a number such as "004". Otherwise once you reboot you are SOL. -
    • -
    • The CLISP 2.48 Cygwin package provides a POSIX layer, so most benchmarks do run. However, STRING-CONCAT fails because a desired string length of 6553600 exceeds the supported maximum length. This test can be skipped by adding #-(or clisp) before the STRING-CONCAT test in do-execute-script.lisp. -
    • -
    - -Here is an example of the type of results you can obtain, for x86 and -SPARC platforms. To interpret these numbers: the number in the Reference column is a number of seconds taken to execute that test. The other numbers are the relative performance of that implementation, so for example a number of 1.3 means 30% slower than the reference implementation. A number of -1 means that the corresponding test was not run on that implementation, either because it does not support the given feature (certain types of method combination for CLISP, for instance), or because of implementation limits (heap size limit on LispWorks Personal, for example).

    -
    -+-- MAC-Pro 2x2.66 GHz Dual Core Xeon
    -Benchmark                 Reference  ECL 8  SBCL   CMU C  CLISP
    ------------------------------------------------------------------------
    -COMPILER                 [      0.65]   2.92   1.76   2.05   2.09
    -WALK-LIST/SEQ            [      0.03]   2.79   0.51   0.82   0.49
    -WALK-LIST/MESS           [      0.02]   5.70   1.06   0.99   5.60
    -BOYER                    [      7.97]   0.11   0.29   0.65   4.50
    -BROWSE                   [      0.47]   1.00   0.43   0.98   3.00
    -DDERIV                   [      0.44]   1.86   0.36   1.31   4.24
    -DERIV                    [      0.48]   1.79   0.50   1.49   4.33
    -DESTRUCTIVE              [      0.29]   2.59   0.60   1.18   4.71
    -DIV2-TEST-1              [      0.71]   1.39   0.34   1.52   4.25
    -DIV2-TEST-2              [      0.79]   1.67   0.56   1.65   4.66
    -FFT                      [      0.06]  13.75   0.50   0.73  53.54
    -FRPOLY/FIXNUM            [      0.48]   2.03   0.50   0.69   7.20
    -FRPOLY/BIGNUM            [      1.00]   0.62   0.22   0.53   1.64
    -FRPOLY/FLOAT             [      0.70]   1.99   0.46   0.90   5.51
    -PUZZLE                   [      0.34]   8.24   0.55   0.39  22.65
    -TAK                      [      0.18]   1.62   1.51   1.48  15.63
    -CTAK                     [      0.41]   4.36   0.53   0.44   7.68
    -TRTAK                    [      0.18]   1.62   1.50   1.48  15.58
    -TAKL                     [      0.49]   0.53   0.65   0.81   6.51
    -STAK                     [      0.43]   1.10   0.92   0.73   6.79
    -FPRINT/UGLY              [      1.64]   1.18   0.44   0.40   0.74
    -FPRINT/PRETTY            [      1.90]   7.87   0.89   1.55   1.30
    -TRAVERSE                 [      0.53]   1.37   1.29   1.27  11.41
    -TRIANGLE                 [      0.50]   8.86   1.15   1.10  24.55
    -RICHARDS                 [      1.52]   0.32   0.29   0.23   5.64
    -FACTORIAL                [      0.84]   0.57   0.20   0.68   1.31
    -FIB                      [      0.10]   8.17   3.00   2.92  19.99
    -FIB-RATIO                [      0.04]   4.89   1.07   0.97   1.38
    -ACKERMANN                [      0.81]   9.89   2.67   2.99  -1.00
    -MANDELBROT/COMPLEX       [      0.28]   5.96   1.30   3.76   6.02
    -MANDELBROT/DFLOAT        [      0.13]   1.05   0.13   0.21  10.04
    -MRG32K3A                 [      5.70]   0.92   0.09   0.08   3.70
    -CRC40                    [      1.04]  46.68   7.61  17.49  73.57
    -BIGNUM/ELEM-100-1000     [      0.78]   0.09   0.15   0.22   0.05
    -BIGNUM/ELEM-1000-100     [      5.14]   0.04   0.05   0.07   0.02
    -BIGNUM/ELEM-10000-1      [      5.54]   0.05   0.05   0.07   0.02
    -BIGNUM/PARI-100-10       [      0.48]   0.02   0.04   0.08   0.04
    -BIGNUM/PARI-200-5        [     13.98]   0.00   0.00   0.02   0.00
    -PI-DECIMAL/SMALL         [      2.07]   2.09   0.39   1.38   0.72
    -PI-DECIMAL/BIG           [      2.58]   2.34   0.29   0.86   0.35
    -PI-ATAN                  [      2.27]   0.40   0.31   0.57   0.80
    -PI-RATIOS                [      5.00]   0.26   0.24   0.52   0.12
    -HASH-STRINGS             [      3.57]   0.22   0.04   0.04   0.31
    -HASH-INTEGERS            [      1.97]   0.58   0.14   0.37   0.89
    -SLURP-LINES              [      3.85]   3.07   0.49   1.48   1.53
    -BOEHM-GC                 [      9.18]   0.50   0.09   0.26   1.17
    -DEFLATE-FILE             [      0.29]   3.18   0.82   1.23   9.43
    -1D-ARRAYS                [      0.02]  16.75   1.45   2.41  32.32
    -2D-ARRAYS                [      0.51]  11.36   0.53   1.13  32.18
    -3D-ARRAYS                [      1.26]  22.31   0.68   1.19  28.69
    -BITVECTORS               [     16.87]   0.42   0.03   0.08   0.32
    -BENCH-STRINGS            [      1.70]   4.93   0.24   0.39   8.41
    -fill-strings/adjustable  [     20.59]   0.69   0.24   0.55   1.37
    -STRING-CONCAT            [     27.50]   2.21   0.89   3.76  -1.00
    -SEARCH-SEQUENCE          [      1.80]   3.28   0.06   1.09   3.77
    -CLOS/defclass            [      0.17]   4.23   4.48  16.02   2.71
    -CLOS/defmethod           [      0.11]   2.92  29.41  43.53   1.11
    -CLOS/instantiate         [      3.22]  38.92   1.25   2.27   0.89
    -CLOS/simple-instantiate  [      3.44]  19.83   0.04   0.11   0.57
    -CLOS/methodcalls         [      2.61]   1.88   0.29   0.89   1.43
    -CLOS/method+after        [      1.41]   2.74   1.43   3.46   1.59
    -CLOS/complex-methods     [      0.51]   6.37   2.40   0.08  -1.00
    -EQL-SPECIALIZED-FIB      [      0.45]   7.46   0.44   0.54   2.40
    -Reference time in first column is in seconds; other columns are relative
    -Reference implementation: Clozure Common Lisp Version 1.2-r11313M  (DarwinX8664)
    -Impl ECL 8: ECL 8.9.0 (CVS 2008-06-19 17:09)
    -Impl SBCL : SBCL 1.0.22.17
    -Impl CMU C: CMU Common Lisp CVS Head 2008-11-08 00:35:08 (19E)
    -Impl CLISP: CLISP 2.47+ (2008-10-24) (built 3435106496) (memory 3435106574)
    -
    -
    -,---- MacBook Pro, Intel Core 2 Duo @2.33 GHz ---
    -|
    -| Benchmark                 Reference  OpenMCL  CLISP    ECL   ABCL
    -| -----------------------------------------------------------------
    -| COMPILER                 [      1.21]   0.85   0.95   4.39  -1.00
    -| LOAD-FASL                [      0.34]   1.34   1.39  -1.00  -1.00
    -| SUM-PERMUTATIONS         [      1.09]   4.22   2.04  -1.00   1.73
    -| WALK-LIST/SEQ            [      0.01]   2.67   1.05  26.39  -1.00
    -| WALK-LIST/MESS           [      0.03]   0.72   4.89  12.00  -1.00
    -| BOYER                    [      2.58]   4.50  13.45   0.36   1.06
    -| BROWSE                   [      0.31]   2.35   4.13   1.60   0.72
    -| DDERIV                   [      0.20]   2.40  10.85   6.50   2.06
    -| DERIV                    [      0.30]   1.73   8.19   4.61   1.98
    -| DESTRUCTIVE              [      0.19]   1.63   7.66   4.55   2.68
    -| DIV2-TEST-1              [      0.30]   2.49  11.88   4.01   0.97
    -| DIV2-TEST-2              [      0.53]   1.57   7.97   3.67   0.83
    -| FFT                      [      0.03]   2.27 102.68  24.24  24.82
    -| FRPOLY/FIXNUM            [      0.26]   2.38  13.09   4.17   5.37
    -| FRPOLY/BIGNUM            [      0.27]   5.50   6.69   2.94   2.73
    -| FRPOLY/FLOAT             [      0.35]   2.88  11.03   2.97   3.04
    -| PUZZLE                   [      0.15]   2.64  48.36  25.11  82.40
    -| TAK                      [      0.30]   0.95  10.16   7.84   4.50
    -| CTAK                     [      0.21]   2.24  15.66  18.82 940.77
    -| TRTAK                    [      0.31]   0.94  10.24   7.66   3.68
    -| TAKL                     [      0.37]   1.57   9.65   1.64   2.61
    -| STAK                     [      0.35]   1.37   7.92   3.12   5.60
    -| FPRINT/UGLY              [      0.95]   2.28   1.42   1.19   2.66
    -| FPRINT/PRETTY            [      1.84]   1.35   1.27  31.65   8.18
    -| TRAVERSE                 [      0.75]   0.88   9.91   1.92   6.01
    -| TRIANGLE                 [      0.65]   0.98  20.47   9.78  24.10
    -| RICHARDS                 [      0.44]   2.85  22.54   2.89  42.59
    -| FACTORIAL                [      0.20]   6.84   7.45   2.67   2.28
    -| FIB                      [      0.32]   0.44   5.82   2.42   1.08
    -| FIB-RATIO                [      0.04]   1.83   1.68   7.50   8.73
    -| ACKERMANN                [      2.43]   0.42  -1.00   3.95   1.57
    -| MANDELBROT/COMPLEX       [      0.34]   1.14   6.34   2.22   3.32
    -| MANDELBROT/DFLOAT        [      0.02]  10.35  96.39   4.90  13.94
    -| MRG32K3A                 [      0.54] 186.18  51.36   5.11  11.00
    -| CRC40                    [      9.17]   0.13  10.04   6.62   2.29
    -| BIGNUM/ELEM-100-1000     [      0.13]  10.02   0.32   1.03   2.85
    -| BIGNUM/ELEM-1000-100     [      0.29]  29.53   0.36   1.42   2.67
    -| BIGNUM/ELEM-10000-1      [      0.32]  28.86   0.31   2.36   2.70
    -| BIGNUM/PARI-100-10       [      0.02]  37.14   0.59   1.52   2.82
    -| BIGNUM/PARI-200-5        [      0.08] 305.08   1.02   1.30   2.23
    -| PI-DECIMAL/SMALL         [      0.96]   3.36   1.96   9.86  43.01
    -| PI-DECIMAL/BIG           [      0.86]   4.89   1.29  16.51  93.86
    -| PI-ATAN                  [      0.85]   3.90   2.92   1.80   2.19
    -| PI-RATIOS                [      1.41]   5.98   0.53   1.91   3.36
    -| HASH-STRINGS             [      0.23]   5.54   4.61   4.68   4.49
    -| HASH-INTEGERS            [      0.51]   5.76   2.75   2.26   1.80
    -| SLURP-LINES              [      1.98]   2.59   3.22   2.77   1.43
    -| BOEHM-GC                 [      1.16]  13.17  12.17   6.97   5.67
    -| DEFLATE-FILE             [      0.37]   1.40   8.13   2.96   4.11
    -| 1D-ARRAYS                [      0.06]   0.76   9.54   6.35   2.21
    -| 2D-ARRAYS                [      0.32]   7.55  50.23  17.14  33.41
    -| 3D-ARRAYS                [      0.99]   5.77  35.60  43.07  36.99
    -| BITVECTORS               [      0.60]  -1.00   9.47  11.02   1.09
    -| BENCH-STRINGS            [      0.45]   5.91   1.34  32.56   7.43
    -| fill-strings/adjustable  [     13.64]   2.53   2.01   1.30   0.70
    -| STRING-CONCAT            [     37.05]   1.01  -1.00   1.17   1.71
    -| SEARCH-SEQUENCE          [      0.12]  17.46  60.84  83.05  20.36
    -| CLOS/defclass            [      0.66]   0.35   0.68   2.81  15.94
    -| CLOS/defmethod           [      0.82]   0.11   0.13   2.51   7.91
    -| CLOS/instantiate         [      5.41]   0.97   0.65 121.47   2.57
    -| CLOS/simple-instantiate  [      0.16]  82.43  13.24 663.62  69.45
    -| CLOS/methodcalls         [      0.73]   6.08   6.62  10.67  11.16
    -| CLOS/method+after        [      0.78]   2.87   3.44  34.92  14.77
    -| CLOS/complex-methods     [      1.48]   0.46  -1.00   2.70   3.16
    -| EQL-SPECIALIZED-FIB      [      0.23]   2.67   4.43  13.52  -1.00
    -|
    -| Reference time in first column is in seconds; other columns are relative
    -| Reference implementation: SBCL 1.0.2 (binary download)
    -| Impl OpenMCL: OpenMCL Version 1.1-pre-061231 (DarwinX8664)
    -| Impl ECL: ECL 0.9i (GCC 4.0.1 -O2 -march=nocona -fomit-frame-pointer)
    -| Impl CLISP: CLISP 2.41 (2006-10-13) (built 3379682400) (memory 3379682557)
    -| Impl ABCL: Armed Bear Common Lisp 0.0.9 (Apple Java 1.5.0_06 -server -Xss128M -Xms1G -Xmx1G -Xrs)
    -| === Test machine ===
    -|    Machine-type: X86
    -|    Machine-version: MacBook Pro, Intel Core 2 Duo @2.33 GHz, 3 GB, Mac OS X 10.4.8 
    -`----
    -
    -
    -,---- dual Pentium 4, 3.0 GHz, 1000 MB RAM, 512 KB cache ---
    -| 
    -| Benchmark               Reference  CMUCL CMUCL  SBCL    ACL     ACL  GNUCL   ECL-S  CLISP Poplog     ABCL    ABCL
    -|                         CMUCL 18e    19a 19aP4 0.8.13   6.2     5.0  2.6.3    0.9d 2.33.2  15.53   J1.4.2  J1.5b2
    -| -----------------------------------------------------------------------------------------------------------------
    -| COMPILER                 [  1.98]   1.15  1.05  1.49   0.60    0.90   0.08    3.50   0.69   0.01    20.23   19.35
    -| LOAD-FASL                [  0.18]   1.16  1.12  2.79   1.70    1.19   0.45    2.61   2.19  11.14    24.47   23.08
    -| SUM-PERMUTATIONS         [  2.05]   1.13  1.11  1.52   0.84    1.52   1.24   -1.00   1.51   1.63     6.39    5.51
    -| WALK-LIST/SEQ            [  0.03]   1.00  0.96  1.00   1.07    1.07   1.43    4.29   1.00  10.36     3.93    3.82
    -| WALK-LIST/MESS           [  0.16]   1.31  0.47  1.82  -1.00   -1.00   2.06    0.75   1.57  -1.00    -1.00   -1.00
    -| BOYER                    [  5.51]   0.99  0.97  0.86   1.14    1.05   2.86    4.23  12.43   7.73     5.65    4.22
    -| BROWSE                   [  0.58]   1.04  0.97  0.96   0.44    1.33  12.85    2.50   6.27   1.74     4.86    3.43
    -| DDERIV                   [  0.56]   0.97  0.98  0.91   0.54    1.11   3.97    6.97  12.55   2.30     7.98    6.38
    -| DERIV                    [  0.62]   1.02  1.01  0.93   0.47    0.41   3.65    6.37  12.88   2.11     6.99    5.36
    -| DESTRUCTIVE              [  0.51]   0.97  1.00  0.89   0.33    0.33   3.66    3.72   7.75   2.39     8.89    5.11
    -| DIV2-TEST-1              [  1.30]   0.97  0.94  0.71   0.15    0.18   2.66    4.54  10.66   1.64     4.18    1.99
    -| DIV2-TEST-2              [  1.41]   0.96  0.94  0.84   0.33    0.33   2.89    4.42  10.49   1.34     1.61    0.64
    -| FFT                      [  0.06]   1.03  1.02  0.87   0.94    1.09  55.00   42.03  65.58 250.16    63.09   23.39
    -| FRPOLY/FIXNUM            [  0.54]   0.99  1.00  0.87   1.39    2.00   2.52    4.69  12.59   3.04    13.01    5.85
    -| FRPOLY/BIGNUM            [  0.62]   0.98  1.02  0.84   1.49    2.20   1.68    2.84   7.81   1.60     2.06    1.57
    -| FRPOLY/FLOAT             [  0.94]   0.88  0.90  0.76   1.09    2.76   1.35    2.70  10.75   2.19     1.77    1.27
    -| PUZZLE                   [  0.17]   0.99  1.00  1.10   4.31    1.90   6.21   46.26  71.59  14.14   109.75   61.32
    -| TAK                      [  0.36]   1.02  1.00  1.00   0.62    0.78   1.71    7.17  13.94   2.97    10.29    6.06
    -| CTAK                     [  0.33]   1.20  1.19  0.94   3.71    3.34   4.53    6.90  11.24  25.02  1461.22 1128.68
    -| TRTAK                    [  0.36]   1.01  0.99  0.99   0.61    0.78   1.67    7.13  13.64   2.95     7.44    3.35
    -| TAKL                     [  0.37]   1.05  1.00  0.99   0.85    0.98   0.87    4.78  20.55   5.03     4.37    4.08
    -| STAK                     [  0.47]   1.12  0.99  1.05   5.35    2.54   1.67   -1.00   7.64   7.34    15.64    7.32
    -| FPRINT/UGLY              [  0.68]   1.08  1.06  1.63   3.30   13.72   1.23    1.95   1.70   8.58    21.18   21.04
    -| FPRINT/PRETTY            [  2.23]   0.95  0.94  1.37   2.30    4.40   0.39    1.22   3.34   6.77   216.94  199.28
    -| TRAVERSE                 [  0.80]   1.00  1.00  4.21   0.56    0.64   2.23    7.21  14.10   5.29    20.60   15.60
    -| TRIANGLE                 [  0.60]   1.04  1.07  1.01   1.48    0.68   2.09   18.39  30.20  10.58    17.64   12.62
    -| RICHARDS                 [  0.46]   1.05  1.03  1.01   4.43    3.21   1.19   10.72  30.24  12.08    28.02   24.34
    -| FACTORIAL                [  0.33]   0.98  0.97  1.33   3.15    3.03   9.79    4.71  20.27   2.40     3.55    2.16
    -| FIB                      [  0.44]   1.01  1.00  1.01   0.25    0.27   4.77    2.24   6.44   1.10     5.55    2.26
    -| FIB-RATIO                [  0.34]   0.99  0.99  1.01  11.25   15.95  30.55    0.99   0.11   2.94     3.24    1.69
    -| ACKERMANN                [  5.63]   1.00  1.01  1.00   0.53    0.64  22.28    2.06   6.69   1.92     4.33    2.05
    -| MANDELBROT/COMPLEX       [  9.13]   0.97  0.97  1.01   1.80    5.36   1.93    2.24  10.58   0.77     0.75    0.32
    -| MANDELBROT/DFLOAT        [  5.26]   0.99  0.98  0.96   0.92    5.55   2.51    3.42  13.09   1.50     1.58    0.76
    -| MRG32K3A                 [  0.78]   1.00  1.00  1.03   5.93  183.82   5.45    7.13 118.85   7.38    10.43    8.45
    -| CRC40                    [ 19.30]   1.01  1.11  0.95   4.02    4.27  13.52    8.91  12.63   2.26     4.40    2.23
    -| BIGNUM/ELEM-100-1000     [  0.50]   1.01  1.02  1.17   1.59    1.88   0.77    0.22   0.10   2.40     1.56    1.46
    -| BIGNUM/ELEM-1000-100     [  2.74]   1.01  1.00  1.40   1.66    1.68   0.92    0.05   0.07   3.08     0.43    0.35
    -| BIGNUM/ELEM-10000-1      [  3.00]   1.01  1.00  1.38   4.77    4.80   0.79    0.05   0.06  19.89     0.48    0.37
    -| BIGNUM/PARI-100-10       [  1.28]   0.50  0.49  0.69   0.05    0.07   0.02    0.02   0.01   0.02     0.19    0.15
    -| BIGNUM/PARI-200-5        [ 15.90]   0.49  0.49  0.76   0.02    0.02   0.01    0.00   0.00   0.01     0.02    0.02
    -| PI-DECIMAL/SMALL         [ 25.10]   1.01  1.00  1.42  14.89   15.31   8.44    0.27   0.24   3.31     1.97    1.79
    -| PI-DECIMAL/BIG           [ 53.32]   1.00  1.00  1.55  15.63   15.74   6.07   -1.00   0.05   3.84     1.90    1.58
    -| PI-ATAN                  [  1.38]   1.01  0.99  1.29   2.97    2.98   5.80   -1.00   6.89   1.16     2.40    2.38
    -| PI-RATIOS                [  4.51]   0.99  1.00  1.11   5.31    5.42   3.91    0.58   0.33   2.01     1.54    1.44
    -| SLURP-LINES              [  0.89]   0.96  0.98  1.02   0.57    7.09   2.85    1.63   4.69   3.00    23.99   21.94
    -| HASH-STRINGS             [  0.47]   0.84  0.78  0.81  13.63 4218.26 251.42   50.04   5.81  35.71     7.68    6.02
    -| HASH-INTEGERS            [  0.84]   0.99  0.94  1.21   3.13    4.89   0.58    1.49   6.31  11.79     5.04    4.08
    -| BOEHM-GC                 [  1.89]   1.01  0.97  1.16   1.37    3.82   3.89    7.87  18.34   2.22    12.13    7.14
    -| DEFLATE-FILE             [  0.45]   1.30  1.30  1.22   1.07   24.97   3.27    9.55   8.87   7.80    16.87   11.25
    -| 1D-ARRAYS                [  0.07]   1.01  1.03  1.49   2.60    8.22   4.11    6.30  12.14  18.63     4.79    3.29
    -| 2D-ARRAYS                [  0.87]   1.01  1.01  0.63  10.25    9.77  22.62   21.31  26.39  14.16    46.67   31.88
    -| 3D-ARRAYS                [  2.91]   1.00  1.00  0.77   7.88    7.62   8.91   16.19  16.69   7.88    36.01   26.28
    -| BITVECTORS               [  0.63]   0.97  0.95  1.60   1.69    1.74  10.16   13.12  33.12  -1.00  2334.29  822.13
    -| BENCH-STRINGS            [  2.54]   1.02  0.99  0.14   3.88   16.87   4.30    5.78   0.47  33.55     9.67    4.18
    -| fill-strings/adjustable  [ 19.24]   1.01  1.00  1.00   1.47   -1.00   0.90   15.19   4.62 104.94     1.22    0.91
    -| STRING-CONCAT            [ 55.08]   1.07  1.03  0.50   0.60   -1.00  26.24   -1.00  10.29  -1.00     2.23    1.66
    -| SEARCH-SEQUENCE          [  3.03]   1.00  1.00  0.05   0.73    4.07   2.28    3.29   3.58   3.61    11.74    9.28
    -| CLOS/defclass            [  3.46]   1.08  1.07  0.63   0.05    0.11  -1.00    0.47   0.12   0.02     3.92    3.75
    -| CLOS/defmethod           [  7.27]   1.03  1.05  0.85   0.03    0.05  -1.00    0.17   0.01   0.00     1.34    1.27
    -| CLOS/instantiate         [  8.03]   1.13  1.09  0.98   0.26    0.86  -1.00  281.76   1.36   1.55    28.19   27.07
    -| CLOS/simple-instantiate  [  0.33]   0.99  0.99  0.96   0.84    0.57  -1.00   51.78  18.96 112.65   692.94  635.93
    -| CLOS/methodcalls         [  1.61]   0.97  0.97  1.23   3.25    3.01  -1.00   50.49  10.92   9.61    97.55   86.93
    -| CLOS/complex-methods     [  0.06]   1.00  0.97  7.44   4.92    5.76  -1.00 1963.22  -1.00  -1.00  1799.75 1600.25
    -| EQL-SPECIALIZED-FIB      [  0.32]   1.02  1.01  1.06   1.19   10.87  -1.00    7.16   5.30   9.06 10336.55 9321.19
    -| 
    -| Reference time in first column is in seconds; other columns are relative
    -| Reference implementation: CMU Common Lisp 18e CVS Head 2003-09-14 16:41:12 (binary rel.)
    -| Impl CMUCL:  CMU Common Lisp 19a-pre3 (binary rel. from ftp.linux.org.uk/pub/lisp/cmucl)
    -| Impl CMUCL:  CMU Common Lisp 19a-pre3 Pentium4 (built with CFLAGS="-march=pentium4")
    -| Impl SBCL:   SBCL 0.8.13 (bootstrapped with CMUCL 18e)
    -| Impl ACL6.2: International Allegro CL Enterprise Edition 6.2 [Linux/X86] (binary:)
    -| Impl ACL 5:  Allegro CL Trial Edition 5.0 [Linux/X86] (no heap limit! binary only:)
    -| Impl GNUCL:  Kyoto Common Lisp GCL 2.6.3 ANSI (gcc 3.3.1 -march=pentium4)
    -| Impl ECL-S:  ECL 0.9d CVS Head 2004-07-27 (aka ECL Spain, gcc 3.3.1 -march=pentium4)
    -| Impl CLISP:  CLISP 2.33.2 (2004-06-02) (not optimized for pentium4 because of make failure)
    -| Impl Poplog: Sussex Poplog 15.53e Common Lisp 2.0 (using "easy to install version" haha)
    -| Impl ABCL14: Armed Bear Common Lisp 0.0.3.16+ CVS Head 2004-08-01 / Sun Java 1.4.2-b28
    -| Impl ABCL15: Armed Bear Common Lisp 0.0.3.16+ CVS Head 2004-08-01 / Sun Java 1.5.0-beta2-b51
    -|              Java invocation for ABCL: java -server -Xss64M -Xmx256M -Xrs
    -| === Test machine ===
    -|    Machine-type: X86
    -|    Machine-version: dual Intel Pentium 4 at 3.00GHz, 1000 MB RAM, 512 KB cache
    -|    Linux 2.4.21-199-smp4G i686 i386 GNU/Linux (SuSE 9.0)
    -| (declaim (optimize (speed 3) (space 1) (safety 0) (debug 0) (compilation-speed 0)))
    -`----
    -
    -
    -,---- Pentium III@1.1GHz, 512MB RAM ---
    -|
    -| Benchmark                 Reference   18d   18dsm  CLISP   SBCL  Poplog
    -| -----------------------------------------------------------------------
    -| BOYER                          1.50   0.73   0.74   5.61   1.01   3.03
    -| BROWSE                         0.61   0.74   0.74   2.54   1.26   2.85
    -| DDerviv                        0.66   0.52   0.53   2.14   1.15   1.62
    -| Deriv                          1.29   0.50   0.48   2.05   1.10   1.26
    -| DESTRUCTIVE                    1.05   0.91   0.95   3.17   1.13   3.38
    -| DIV2-TEST-1                    1.09   0.51   0.51   1.66   1.07   1.29
    -| DIV2-TEST-2                    0.54   0.52   0.61   1.69   1.09   1.31
    -| FFT                            0.19   1.00   1.00  37.00   1.21  91.21
    -| FRPOLY/FIXNUM                  0.54   0.87   0.89   6.85   1.09   3.00
    -| FRPOLY/BIGNUM                  1.30   0.73   0.74   2.44   1.08   1.39
    -| FRPOLY/FLOAT                   0.54   0.76   0.78   4.41   1.06   2.11
    -| PUZZLE                         0.68   0.99   0.99  25.09   9.35  27.93
    -| TAK                            0.79   0.97   0.97   9.08   1.25   3.10
    -| CTAK                           0.73   1.00   0.97   6.49   1.05   4.84
    -| TRTAK                          0.79   0.97   0.97   9.13   1.25   3.11
    -| TAKL                           1.37   1.01   1.00   7.70   1.27   4.02
    -| STAK                           0.96   1.02   1.02   7.07   1.08   1.50
    -| FPRINT                         1.21   0.92   0.82   1.06   2.28   4.17
    -| TRAVERSE                       2.00   0.94   0.99  11.45   1.50   5.42
    -| TRIANGLE                       1.70   1.01   1.01  17.58   1.28  23.19
    -| RICHARDS                       0.53   1.00   0.98  21.26   1.00   6.47
    -| FACTORIAL                      0.37   0.54   0.57   0.81   1.14   0.62
    -| FIB                            0.33   1.00   1.00   5.30   1.06   1.18
    -| RATIOS                         2.24   0.96   0.96   0.12   0.96   1.81
    -| BIGNUM/ELEM-100-1000           1.06   0.92   0.97   0.08   0.97   2.27
    -| BIGNUM/ELEM-1000-100           4.99   0.99   0.99   0.05   0.93   2.14
    -| BIGNUM/ELEM-10000-1            5.19   1.01   1.00   0.05   0.92  12.90
    -| BIGNUM/PARI-100-10             1.21   0.99   1.02   0.02   0.95   0.04
    -| BIGNUM/PARI-200-5             14.30   0.99   1.00   0.01   0.92   0.01
    -| HASH-STRINGS                   1.15   0.84   0.69   3.25   0.99  30.89
    -| HASH-INTEGERS                  0.44   0.80   0.66   2.75   1.27   6.95
    -| BOEHM-GC                       6.41   0.47   0.46   4.10   1.12   1.53
    -| DEFLATE                        1.16   1.00   1.02   6.34   1.52   5.53
    -| CLOS/defclass                  1.75   0.90   0.92   0.53   2.53   0.06
    -| CLOS/defmethod                 8.73   0.77   0.71   0.02   2.17   0.00
    -| CLOS/instantiate               6.42   0.57   0.54   0.96   0.99   3.57
    -| CLOS/methodcalls               8.17   0.42   0.44   1.01   0.90   3.93
    -| CLOS/method+after             10.76   0.84   0.77   0.47   2.42   2.01
    -| CLOS/complex-methods           0.29   1.07   1.14  -1.00   6.17  -1.00
    -| 1D-ARRAYS                      2.44   0.81   0.79   5.68   1.39  15.75
    -| 2D-ARRAYS                     11.28   0.99   0.89   3.45   4.39   6.04
    -| BITVECTORS                     2.01   0.82   0.81   0.60   0.98  -1.00
    -| FILL-STRINGS                   6.83   0.88   0.82   1.16   3.77  27.38
    -| fill-strings/adjustable       14.18   0.99   0.87   1.36   1.73 118.49
    -| BENCH-STRING-CONCAT            5.79   1.88   1.62  -1.00   2.75  -1.00
    -| 
    -| Reference implementation: CMU Common Lisp 18c
    -| Impl   18d: CMU Common Lisp 18d-pre, level-1 built 2002-04-08 on melbourne
    -| Impl 18dsm: CMU Common Lisp 18d-pre-small, level-1 built 2002-04-08 on sydney
    -| Impl CLISP: CLISP 2.27.2 (released 2001-10-05) (built 3222523548) (memory 3222523674)
    -| Impl SBCL : SBCL 0.7.1.22 (from debian testing)
    -| Impl Poplog: Sussex Poplog Common Lisp 2.0
    -| Linux melbourne 2.4.17 #2 SMP Wed Feb 6 11:35:03 CET 2002 i686 unknown
    -|  (declaim (optimize (speed 3) (space 0) (safety 1) (debug 0) (compilation-speed 0)))
    -`----
    -
    -
    -,---- 400MHz G3, 1024KB L2 cache, 192 MB RAM --
    -|
    -| Benchmark                 Reference  CLISP   SBCL
    -| --------------------------------------------------
    -| BOYER                          7.15   3.57   0.36
    -| BROWSE                         2.42   2.51   0.61
    -| DDerviv                        4.00   2.62   0.29
    -| Deriv                          6.91   2.83   0.28
    -| DESTRUCTIVE                    3.31   4.42   0.69
    -| DIV2-TEST-1                    5.06   3.26   0.28
    -| DIV2-TEST-2                    2.54   3.27   0.26
    -| FFT                           16.63   1.27   0.05
    -| FRPOLY/FIXNUM                  2.89   4.29   0.40
    -| FRPOLY/BIGNUM                  5.75   2.22   0.46
    -| FRPOLY/FLOAT                   3.53   2.43   0.34
    -| PUZZLE                        19.53   2.37   1.06
    -| TAK                            2.08  12.04   1.45
    -| CTAK                           3.21   6.04   0.76
    -| TRTAK                          2.08  12.05   1.45
    -| TAKL                           6.94   5.36   0.67
    -| STAK                           2.86   7.01   0.94
    -| FPRINT                         5.38   1.33   1.75
    -| TRAVERSE                       7.81  10.37   1.20
    -| TRIANGLE                       7.59  11.73   1.04
    -| RICHARDS                       2.37  17.46   0.72
    -| FACTORIAL                      2.30   1.82   0.30
    -| FIB                            0.45  12.87   1.44
    -| BIGNUM/ELEM-100-1000           2.33   0.17   0.99
    -| BIGNUM/ELEM-1000-100           9.50   0.18   0.61
    -| BIGNUM/ELEM-10000-1           18.52   0.09   0.33
    -| BIGNUM/PARI-100-10             1.88   0.10   1.85
    -| BIGNUM/PARI-200-5             17.84   0.05   3.35
    -| HASH-STRINGS                   5.60   1.49  14.50
    -| HASH-INTEGERS                  2.12   1.28   0.72
    -| BOEHM-GC                      58.63   1.82   0.22
    -| DEFLATE                        4.53   4.78   1.36
    -| CLOS/defclass                  0.75   4.76  14.77
    -| CLOS/defmethod                 0.31   2.87 150.39
    -| CLOS/instantiate              31.41   0.83   0.54
    -| CLOS/methodcalls              29.87   1.34   0.50
    -| CLOS/method+after             12.61   1.69   6.09
    -| CLOS/complex-methods           2.71  -1.00   1.55
    -| 1D-ARRAYS                      8.36   5.42   1.49
    -| BITVECTORS                    11.30   0.36   0.29
    -| FILL-STRINGS                  32.03   0.75   2.84
    -| fill-strings/adjustable       35.86   1.87   2.78
    -|
    -| Reference implementation: OpenMCL Version (Beta: Linux) 0.10.1
    -| Impl CLISP: CLISP 2.28 (released 2002-03-03) (built 3227525942) (memory
    -+3227526439)
    -| Impl SBCL : SBCL 0.7.2
    -`----
    -
    -
    -,---- UltraSPARCIIe at 500MHz, 640MB RAM, SunOS 5.8 ---
    -|
    -| Benchmark                 Reference  CMU C  CLISP
    -| -----------------------------------------------------
    -| BOYER                          3.98   0.91   8.03
    -| BROWSE                         1.72   0.91   2.85
    -| DDerviv                        2.02   0.75   3.21
    -| Deriv                          3.63   0.81   3.13
    -| DESTRUCTIVE                    3.11   1.01   4.18
    -| DIV2-TEST-1                    2.19   0.83   3.92
    -| DIV2-TEST-2                    1.12   0.82   3.85
    -| FFT                            0.74   1.03  28.86
    -| FRPOLY/FIXNUM                  1.87   1.01   7.89
    -| FRPOLY/BIGNUM                  4.59   1.29   3.07
    -| FRPOLY/FLOAT                   1.65   0.96   5.68
    -| PUZZLE                         2.07   0.95  30.62
    -| CTAK                           2.74   1.01   9.04
    -| TAK                            1.84   1.00  14.08
    -| RTAK                           1.84   1.01  13.95
    -| TAKL                           3.37   1.01  11.63
    -| STAK                           2.32   1.01   8.87
    -| FPRINT                         4.17   1.02   1.12
    -| TRAVERSE                       5.84   0.99  13.74
    -| TRIANGLE                       5.53   0.86  15.57
    -| CASCOR                        10.53   0.73  52.81
    -| RICHARDS                       2.35   0.94  22.46
    -| FACTORIAL                      1.46   1.48   2.88
    -| FIB                            0.94   0.99   6.71
    -| BIGNUM/ELEM-100-1000           2.80   1.24   0.28
    -| BIGNUM/ELEM-1000-100          10.14   1.19   0.44
    -| BIGNUM/ELEM-10000-1           11.38   1.35   0.41
    -| BIGNUM/PARI-100-10             2.76   1.15   0.09
    -| BIGNUM/PARI-200-5             27.19   1.06   0.05
    -| READ-LINE                      3.39   1.06   1.19
    -| HASH-STRINGS                   5.42   1.20   2.19
    -| HASH-INTEGERS                  1.61   0.76   2.00
    -| BOEHM-GC                      19.97   0.76   4.14
    -| CLOS/defclass                  4.78   1.01   0.81
    -| CLOS/defmethod                27.61   0.89   0.03
    -| CLOS/instantiate              20.93   0.85   1.28
    -| CLOS/methodcalls              23.62   1.08   1.94
    -| CLOS/method+after             33.70   1.07   0.78
    -| CLOS/complex-methods           1.41   0.92  -1.00
    -| 1D-ARRAYS                     10.77   0.92   3.51
    -| 2D-ARRAYS                     56.66   1.40   2.61
    -| BITVECTORS                     5.35   0.86   0.42
    -| FILL-STRINGS                  18.88   1.07   0.97
    -| fill-strings/adjustable       45.09   1.46   1.41
    -| BENCH-STRING-CONCAT           48.10   0.90  -1.00
    -| 
    -| Reference implementation: CMU Common Lisp 18c, Built 2000-11-27
    -| Impl CMU C: CMU Common Lisp 18d-pre, level-1 built 2001-12-12 on liszt
    -| Impl CLISP: CLISP 2.27.2 (released 2001-10-05) (built on moustacho)
    -| SunOS eagles 5.8 Generic_108528-10 sun4u sparc SUNW,Sun-Blade-100
    -`----
    -

    Note that results prior to 2002-01 were a little bogus, since the optimization settings were not being set correctly across implementations, so default optimization levels were used.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/performance.html b/clones/lisp/www.cliki.net/performance.html deleted file mode 100644 index ce0aedfe..00000000 --- a/clones/lisp/www.cliki.net/performance.html +++ /dev/null @@ -1,105 +0,0 @@ - - - - - CLiki: Performance - - - - - - - -
    Performance
    Performance is either the subject of programmer performance (speed and quality of programming) or program performance (speed and quality of execution (or of compilation when the program under consideration is a compiler)).

    Programmer Performance

    Papers about various studies comparing programmer/language performance:

    In summary, the experiences tend to show that with lisp you get faster development times, at least as fast execution times, and less variance amongst developers (so there's less risk in using lisp than other programming languages).

    Program Performance

    -

    Lisp Performance

    See benchmark for programs trying to measure the performance of Lisp systems.

    In the "program quality" aspect of things:

    -and numerous other pitfalls in programs written in "normal" programming languages.

    That should give a lot of reasons to use CL.

    Algorithm and Algorithm Implementation Performance

    -

    Energy Performance

    -

    Related

    -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/perfpiece.html b/clones/lisp/www.cliki.net/perfpiece.html deleted file mode 100644 index 16215996..00000000 --- a/clones/lisp/www.cliki.net/perfpiece.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: perfpiece - - - - - - - -
    perfpiece
    Perfpiece is a tool for measuring the performance of Lisp code, not -unlike the standard CL:TIME

    https://github.com/luismbo/perfpiece


    -benchmark
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/pergamum.html b/clones/lisp/www.cliki.net/pergamum.html deleted file mode 100644 index c3fa5064..00000000 --- a/clones/lisp/www.cliki.net/pergamum.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: pergamum - - - - - - - -
    pergamum
    pergamum is a collection of small utilities by Samium Gromoff.

    Many general purpose utility function and macros.

    Source code for pergamum is at: - https://github.com/deepfire/pergamum

    Licence: Public Domain

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/periodic-table.html b/clones/lisp/www.cliki.net/periodic-table.html deleted file mode 100644 index 70791464..00000000 --- a/clones/lisp/www.cliki.net/periodic-table.html +++ /dev/null @@ -1,79 +0,0 @@ - - - - - CLiki: periodic-table - - - - - - - -
    periodic-table
    An essential part of any general chemistry program is the periodic table of the elements. Nobody wants to copy the whole thing by hand, and figuring out how to represent it can be a minor headache. Therefore, you should download the periodic-table library. It is fully asdf-installable and has been tested without any problems on SBCL and LispWorks.

    The home page is -https://common-lisp.net/project/chemboy/

    Example

    -
    (use-package :elements)
    -
    -;; Get the name of the element which has the symbol "Kr"
    -(element-name (symbol-element "Kr")) => "Krypton"
    -
    -;; It isn't case sensitive
    -(element-name (symbol-element "kR")) => "Krypton"
    -
    -;; Find the element with the electronegativity closest to 4.0
    -(electronegativity-element 4.0)
    -=>
    -#S(ELEMENT
    -   :NAME "Fluorine"
    -   :ATOMIC-WEIGHT 18.9984
    -   :ATOMIC-NUMBER 9
    -   :OXIDATION-STATES "-1"
    -   :BOILING-POINT 85.0
    -   :SYMBOL "F"
    -   :ELECTRONEGATIVITY 3.98)
    -
    -;; Get an element from its atomic number
    -(element-symbol (get-element 12)) => "Mg"
    -
    -;; Demonstrate another use of the powerful GET-ELEMENT function.
    -;; Boiling point is in Kelvins
    -(element-boiling-point (get-element 'nitrogen)) => 77.344

    It is released under the LLGPL.


    -science
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/perl-in-lisp.html b/clones/lisp/www.cliki.net/perl-in-lisp.html deleted file mode 100644 index 177b6c6d..00000000 --- a/clones/lisp/www.cliki.net/perl-in-lisp.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: perl-in-lisp - - - - - - - -
    perl-in-lisp
    Perl-in-Lisp is a Common Lisp FFI interface to the Perl 5 API. It is licensed under the LLGPL. It consists of CFFI definitions for the Perl 5 API and a Lisp wrapper library to make it convenient to call Perl functions from Lisp.

    License: LLGPL

    Homepage: http://stuartsierra.com/software/perl-in-lisp/

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/persistence.html b/clones/lisp/www.cliki.net/persistence.html deleted file mode 100644 index 1de3ac78..00000000 --- a/clones/lisp/www.cliki.net/persistence.html +++ /dev/null @@ -1,89 +0,0 @@ - - - - - CLiki: persistence - - - - - - - -
    persistence
    -

    Historical interest: MetaStore (1992)

    An early implementation of persistent objects in Common Lisp (via the MOP) is detailed in The Persistent Object System MetaStore (PDF). This PCL-based system "uses the metaprogramming facilities of the metaobject protocol to add persistence to the Common Lisp Object System. This approach leaves the semantics of CLOS 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."

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/persistent-variables.html b/clones/lisp/www.cliki.net/persistent-variables.html deleted file mode 100644 index c5a2eae3..00000000 --- a/clones/lisp/www.cliki.net/persistent-variables.html +++ /dev/null @@ -1,63 +0,0 @@ - - - - - CLiki: persistent-variables - - - - - - - -
    persistent-variables
    Persistent-variables is a convenience library that makes it easy to serialize and deserialize variables. It would be ideal in scripts, and as a light weight alternative to configuration files.

    It is short, well documented (website, manual) and tested.

      -
    • Loadable and testable using ASDF
    • -
    • Variables can be grouped into persistence 'sets' and serialized/deserialized independently.
    • -
    • Late-binding --- you can load the saved data before you load the code. It'll get hooked up appropriately
    • -
    • Forgiving of missing variables and changing package names.
    • -

    For more info see:

    Topics: file format, Text, Warren Wilkinson, CSV

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/person.html b/clones/lisp/www.cliki.net/person.html deleted file mode 100644 index 8b059a48..00000000 --- a/clones/lisp/www.cliki.net/person.html +++ /dev/null @@ -1,1325 +0,0 @@ - - - - - CLiki: Person - - - - - - - -
    Person
    For the purposes of CLiki, a Person is an intelligent lifeform. Traditionally most are carbon-based, bipedal, and breathe oxygen, but we're -happy to welcome AIs, robots, superintelligent shades of the colour blue, and others.

    You might also be interested in YoungLispers and The Road to Lisp Survey.

    Also see the Common Lispers list.

    People who've created a page for themselves - or had one created for them - on CLiki are

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/pgl.html b/clones/lisp/www.cliki.net/pgl.html deleted file mode 100644 index 2a39568c..00000000 --- a/clones/lisp/www.cliki.net/pgl.html +++ /dev/null @@ -1,64 +0,0 @@ - - - - - CLiki: pgl - - - - - - - -
    pgl
    Portable Graphics Library is a simple GUI toolkit, for students and beginners, part of the Stanford Portable Library.

    It is designed to be simple for students to use while learning the languages, and to be portable (goal archieved by using a java back end program and leaving Oracle deal with the gritty details of each platform).

    The backend manages the windows and graphics and UI objects, and forwards events, communicating with the program thru a pipe. -The SPL provides libraries in C, C++ to interfaces with the Java Back End.

    The system com.informatimago.pgl implements such an interface for Common Lisp. It is bundled with the informatimago library, also available thru quicklisp in the ultralisp distribution. -

    -git clone http://gitlab.com/com-informatimago/com-informatimago
    -cd com-informatimago/pgl/
    -

    Note: Currently it only works ccl and clisp, but it should be trivial to adapt it to other implementations, (only not using uiop:run-program apparently, it doesn't seem to be able to make the required stream).

    README

    Example:

    pgl/examples/ball.lisp produces the following window, with the beach ball bouncing around:

    beach-ball screendump

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/pgloader.html b/clones/lisp/www.cliki.net/pgloader.html deleted file mode 100644 index c45c0462..00000000 --- a/clones/lisp/www.cliki.net/pgloader.html +++ /dev/null @@ -1,58 +0,0 @@ - - - - - CLiki: pgloader - - - - - - - -
    pgloader
    pgloader is a data loading tool for PostgreSQL, using the COPY command.

    Its main advantage over just using COPY or \copy, and over using a -Foreign Data Wrapper, is its transaction behaviour, where pgloader -will keep a separate file of rejected data, but continue trying to copy good data in your database.

    The default PostgreSQL behaviour is transactional, which means that -any erroneous line in the input data (file or remote database) will -stop the entire bulk load for the table.

    pgloader also implements data reformatting, a typical example of that -being the transformation of MySQL datestamps 0000-00-00 and -0000-00-00 00:00:00 to PostgreSQL NULL value (because our calendar -never had a year zero).

    Repository: https://github.com/dimitri/pgloader

    License: The PostgreSQL License

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/philip-jose.html b/clones/lisp/www.cliki.net/philip-jose.html deleted file mode 100644 index c947a5a5..00000000 --- a/clones/lisp/www.cliki.net/philip-jose.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: philip-jose - - - - - - - -
    philip-jose
    [obsolete according to a Person page of its author] philip-jose is a farmer, it manages a farm of computers that cooperate in a distributed computation.

    It uses ssh to spawn remote workers and TCP sockets for them to communicate with the farmer. It relies on arnesi's call/cc to build advanced flow control structures in the farmer (parallel, sequential, timeouts, map/reduce, etc.) and provides a distributed-map/centralized-reduce computation model.

    Documentation and packaging are minimal at this point. You need to edit or add code to configure things, but the base software seems to work happily. Please contact the author if you are interested in using philip-jose.

    Its dependencies include cffi, iolib, split-sequence, net-telent-date, parse-number, bordeaux-threads, arnesi and fare-utils.

    Main author: Fare Rideau.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/phos.html b/clones/lisp/www.cliki.net/phos.html deleted file mode 100644 index 9c4c0048..00000000 --- a/clones/lisp/www.cliki.net/phos.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: phos - - - - - - - -
    phos
    An experimental Gemini client written in Common Lisp.

    Depends on: quri, cl-ppcre, trivia, nodgui, usocket, cl+ssl, cl-mime

    Repository: https://github.com/omar-polo/phos

    License: ISC


    -protocol
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/phtml.html b/clones/lisp/www.cliki.net/phtml.html deleted file mode 100644 index b2037fc2..00000000 --- a/clones/lisp/www.cliki.net/phtml.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: phtml - - - - - - - -
    phtml
    A portable version of Franz's HTML Parser from xmlutils.

    Phtml has been ASDF packaged and cleaned from ACL-specific stuff by Nick Allen. It should work at least in ACL and SBCL.

    Download

    GitLab: https://gitlab.common-lisp.net/cl-couch/phtml

    Comments

    Max Mouratov wonders if there is any difference between phtml and CL-HTML-Parse. At first glance these packages seem identical. Unnecessary duplication?


    -LLGPL
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/physical-quantities.html b/clones/lisp/www.cliki.net/physical-quantities.html deleted file mode 100644 index ea08a8e0..00000000 --- a/clones/lisp/www.cliki.net/physical-quantities.html +++ /dev/null @@ -1,95 +0,0 @@ - - - - - CLiki: physical-quantities - - - - - - - -
    physical-quantities
    A library for processing physical quantities: values, units, (and uncertainty).

    Features:

    -
      -
    • Each quantity has a value, an (optional) unit, and an (optional) uncertainty. -
    • -
    • Calculations are done using special functions like q+ or qsqrt. -
    • -
    • Units and uncertainty are affected by calculations: -
        -
      • Unit combination -
      • -
      • Error propagation -
      • -
      -
    • -
    • Units can be converted. -
    • -
    • Convenient read-macro to define quantities: #q(1 kg). -
    • -
    • Value, unit, and uncertainty can be accessed, if needed. -
    • -
    • -SI units are predefined. -
    • -
    • Any other units can be defined. -
    • -

    Usage:

    -
    (require :asdf) -(asdf:load-system :physical-quantities) -(use-package :physical-quantities} -(define-si-units) -(define-read-macros) - -(let (m c E) - ;; Define the mass - (setf m #q(1.00 +/- 0.01 kg)) - ;; The speed of light - (setf c #q(299792458 m / s)) - ;; E = m * c^2 - (setf E (q* m (qpow c 2))) - ;; Print E, converted to petajoule - (print #q(E -> PJ))) -

    Homepage:

    -https://github.com/mrossini-ethz/physical-quantities

    Installation:

    -physical-quantities can be installed through Quicklisp.

    License:

    -GPL
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/picard-csv-parser.html b/clones/lisp/www.cliki.net/picard-csv-parser.html deleted file mode 100644 index 2fc3ee53..00000000 --- a/clones/lisp/www.cliki.net/picard-csv-parser.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: picard-csv-parser - - - - - - - -
    picard-csv-parser
    picard-csv-parser is a CSV file format reader/writer.

    Source code: https://github.com/sharplispers/csv-parser/blob/master/csv-parser.lisp

    License: LLGPL

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/pipes.html b/clones/lisp/www.cliki.net/pipes.html deleted file mode 100644 index af82e614..00000000 --- a/clones/lisp/www.cliki.net/pipes.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: pipes - - - - - - - -
    pipes
    pipes implements the input stream (lazy list) data structure. It is based on ideas from Peter Norvig's Paradigms of Artificial Intelligence Programming.

    ``Pipes'' is an implementation of a concept that goes by many names: streams or functional streams (in SICP), generated lists or glists, and lazy lists.

    Repository: http://git.kpe.io/?p=pipes.git;a=summary

    License: BSD

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/pithy-xml.html b/clones/lisp/www.cliki.net/pithy-xml.html deleted file mode 100644 index 03bcfdc4..00000000 --- a/clones/lisp/www.cliki.net/pithy-xml.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: pithy-xml - - - - - - - -
    pithy-xml
    Read and write XML as lisp objects. Syntax somewhat similar to that of -CL-WHO.

    Repository: https://github.com/frodef/pithy-xml

    License: BSD

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/place-modifiers.html b/clones/lisp/www.cliki.net/place-modifiers.html deleted file mode 100644 index 7f7fd14a..00000000 --- a/clones/lisp/www.cliki.net/place-modifiers.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: place-modifiers - - - - - - - -
    place-modifiers
    place-modifiers essentially gives access to hundreds of modify-macros through one single macro: modify.

    See the project's home for all details.


    -language extension, convenience library, Unlicense, Public Domain
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/place-utils.html b/clones/lisp/www.cliki.net/place-utils.html deleted file mode 100644 index c0b41975..00000000 --- a/clones/lisp/www.cliki.net/place-utils.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: place-utils - - - - - - - -
    place-utils
    place-utils provides a few utilities relating to setfable places.

    See the project's home for all details.


    -Unlicense, Public Domain
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/plain-odbc.html b/clones/lisp/www.cliki.net/plain-odbc.html deleted file mode 100644 index 3ca6c9d3..00000000 --- a/clones/lisp/www.cliki.net/plain-odbc.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - CLiki: plain-odbc - - - - - - - -
    plain-odbc
    Plain-odbc is a simple, yet powerful Common Lisp ODBC interface. -It is possible to use parameterized queries with in and out parameters and call stored procedures. -In principle it should be possible to use any database which offers an ODBC interface (even MS Excel and MS Access).

    The primary development platform is CLISP on win32, but plain-odbc is also usable with CLISP on Linux with unixODBC.

    High level features such as a special reader syntax for sql or mapping of CLOS objects to database tables are not part of plain-odbc.

    The low level parts of the system consist of code from Paul Meurers sqlodbc module. -The system uses now CFFI to interface to the ODBC C functions.

    More Information can be found at the project page.


    -SQL Windows
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/plank.html b/clones/lisp/www.cliki.net/plank.html deleted file mode 100644 index e301c068..00000000 --- a/clones/lisp/www.cliki.net/plank.html +++ /dev/null @@ -1,65 +0,0 @@ - - - - - CLiki: plank - - - - - - - -
    plank
    planks is a 100% portable common lisp ObjectStore.

    Features: -

      -
    • 100% portable common lisp uses bordeaux threads! -
    • -
    • functional, append-only index -
    • -
    • persistent CLOS objects -
    • -
    • thread safe -
    • -
    • multi-value concurrency control -
    • -
    • easy to install and to use -
    • -

    Homepage: https://github.com/drewc/planks

    License: MIT

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/plexippus-xpath.html b/clones/lisp/www.cliki.net/plexippus-xpath.html deleted file mode 100644 index 804a0ed4..00000000 --- a/clones/lisp/www.cliki.net/plexippus-xpath.html +++ /dev/null @@ -1,73 +0,0 @@ - - - - - CLiki: plexippus-xpath - - - - - - - -
    plexippus-xpath
    Project name: - Plexippus XPath

    Author: - Ivan Shvedunov, David Lichteblau

    License: - X11-style

    Homepage: - https://common-lisp.net/project/plexippus-xpath/

    Download (tarball): Yes, see below

    Download (darcs get): http://www.common-lisp.net/project/plexippus-xpath/darcs/plexippus-xpath/ -(darcsweb)

    This project is asdf-installable (release tarball) and available in clbuild (git version).

    Project

    An implementation of XPath 1.0.

    Feature overview

    Plexippus XPath is an implementation of XPath 1.0, written entirely in -Common Lisp.

      -
    • Implements XPath 1.0 (passes XSLT 1.0 test suite) -
    • -
    • Supports any document model using an extensible CLOS protocol -
    • -
    • Protocol implementations for STP and DOM built in -
    • -
    • XPath functions and variables implementable in Common Lisp -
    • -

    Documentation

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/plokami.html b/clones/lisp/www.cliki.net/plokami.html deleted file mode 100644 index caf6bb5d..00000000 --- a/clones/lisp/www.cliki.net/plokami.html +++ /dev/null @@ -1,58 +0,0 @@ - - - - - CLiki: plokami - - - - - - - -
    plokami
    PLOKAMI is a libpcap/winpcap interface.

    SUPPORTED -Realtime network packet capture, packet injection, PCAP dumpfile reading/writing, filtering with BPF, timeouts and operation in non-blocking mode.

    TODO -There is functionality in recent libpcap versions that can be used to control the size of the internal pcap buffer.

    This should be wrapped and offered to lisp, patches are also needed for Windows interface and address lookups and gettimeofday-equivalent for saving packets when timing information does not exist.

    Email me at xristos (AT) sdf (DOT) lonestar (DOT) org if you have anything to contribute.

    PLATFORMS -Tested on: SBCL (darwin/linux), OpenMCL, LispWorks (windows/darwin). -Should work on every platform that CFFI supports.

    INSTALL -Get latest version from github or use Quicklisp.

    LICENSE -BSD


    -Topics: networking
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/plot-2d.html b/clones/lisp/www.cliki.net/plot-2d.html deleted file mode 100644 index 50f049d4..00000000 --- a/clones/lisp/www.cliki.net/plot-2d.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: plot-2d - - - - - - - -
    plot-2d
    Plot-2D is a 2-dimensional data representation and plotting application for Mathematics and scientific data. It's written by Roman Belavkin and requires Garnet. The home page is at http://www.eis.mdx.ac.uk/staffpages/rvb/software/plot-2d/
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/plotting.html b/clones/lisp/www.cliki.net/plotting.html deleted file mode 100644 index 769f0776..00000000 --- a/clones/lisp/www.cliki.net/plotting.html +++ /dev/null @@ -1,148 +0,0 @@ - - - - - CLiki: plotting - - - - - - - -
    plotting
    Library and Application packages to produce 2D and 3D plots. -
  • -Plot - Plot is a common lisp interface to Vega and Vega-Lite plotting
  • -


    -Mathematics, graphics library
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/plump-sexp.html b/clones/lisp/www.cliki.net/plump-sexp.html deleted file mode 100644 index 129f1777..00000000 --- a/clones/lisp/www.cliki.net/plump-sexp.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: plump-sexp - - - - - - - -
    plump-sexp
    Yet another SEXP to HTML thing. This time with Plump back-end.

    Repository: https://github.com/Shinmera/plump-sexp

    License: zlib


    -DOM, serialization
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/plump.html b/clones/lisp/www.cliki.net/plump.html deleted file mode 100644 index 780e4650..00000000 --- a/clones/lisp/www.cliki.net/plump.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: Plump - - - - - - - -
    Plump
    Practically Lenient and Unimpressive Markup Parser

    Plump is a parser for HTML/XML like documents, focusing on being lenient towards invalid markup. It can handle things like invalid attributes, bad closing tag order, unencoded entities, inexistent tag types, self-closing tags and so on. It parses documents to a class representation and offers a small set of DOM functions to manipulate it. You are free to change it to parse to your own classes though.

    The project can be found on github including a fully documented symbol index and a getting started tutorial.
    -As of April 2014, Plump is available on Quicklisp.

    Plump is licensed under the Artistic License 2.0.


    -XML HTML HTML parser
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/pml.html b/clones/lisp/www.cliki.net/pml.html deleted file mode 100644 index b39754c8..00000000 --- a/clones/lisp/www.cliki.net/pml.html +++ /dev/null @@ -1,89 +0,0 @@ - - - - - CLiki: pml - - - - - - - -
    pml
    A command-line interface tool to parse nginx logs and display statistics.

    Depends on: getopt, cl-ppcre, local-time

    License: MIT

    Homepage: GitHub

    Example output:

    -$> ./pml.lisp --logfile sample/big.log --format txt --verb --status --ip --path --start "2017-01-01" --end "2017-02-15"
    -
    - * By verb
    -GET     916     91.6%
    -POST	84      8.4%
    -
    - * By status
    -200     562     56.2%
    -304     304     30.4%
    -404     101     10.1%
    -302     33      3.3%
    -
    - * By remote address
    -10.1.2.3	603     60.3%
    -10.1.2.4	310     31.0%
    -10.1.2.5	60      6.0%
    -10.1.2.6	27      2.7%
    -
    - * By path
    -
    -/               31      3.1%
    -/products       31      3.1%
    -/products/25	31      3.1%
    -/products/2     30      3.0%
    -/about          30      3.0%
    -/contact        30      3.0%
    -/categories/36	30	    3.0%
    -/products/16	30	    3.0%
    -/categories/11	29	    2.9%
    -/products/48	29	    2.9%
    -/categories/85	29	    2.9%
    -/categories/45	29	    2.9%
    -/tags           29	    2.9%
    -/tags/7         19	    1.9%
    -/tags/14        17	    1.7%
    -
    -[... skip ...]
    -

    Topic: file format

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/png-read.html b/clones/lisp/www.cliki.net/png-read.html deleted file mode 100644 index 2e88e8a0..00000000 --- a/clones/lisp/www.cliki.net/png-read.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: png-read - - - - - - - -
    png-read
    png-read is a PNG image file decoder in pure Common Lisp.

    Homepage: https://github.com/Ramarren/png-read

    License: BSD

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/png.html b/clones/lisp/www.cliki.net/png.html deleted file mode 100644 index 43ae9587..00000000 --- a/clones/lisp/www.cliki.net/png.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: PNG - - - - - - - -
    PNG
    PNG is the old name for CL-PNG, a Library for reading and writing PNG (Portable Network Graphics) files.

    cl-png is still called png according to its asdf system definition, hence -the asdf-install tag for cl-png is on this page, not that one. Makes sense? Don't worry

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/point-polygon.html b/clones/lisp/www.cliki.net/point-polygon.html deleted file mode 100644 index f44b0edc..00000000 --- a/clones/lisp/www.cliki.net/point-polygon.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: point-polygon - - - - - - - -
    point-polygon
    point-polygon is a Common Lisp library to test if a point lies inside or outside a polygon in 2 dimensions coordinates.

    Source code is released under an MIT-license and hosted at git repository https://gitlab.com/janduja/point-polygon.

    A compressed zip package can be downloaded at http://janduja.com/point-polygon/point-polygon-1.0.tar.gz.


    -Tags: graphics library
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/poiu.html b/clones/lisp/www.cliki.net/poiu.html deleted file mode 100644 index be5f0fc7..00000000 --- a/clones/lisp/www.cliki.net/poiu.html +++ /dev/null @@ -1,90 +0,0 @@ - - - - - CLiki: poiu - - - - - - - -
    poiu
    poiu is an asdf extension that builds in parallel.

    To use it, just start your build scripts with -

    (require :asdf) (asdf:load-system :asdf) (asdf:load-system :poiu)
    -i.e. add the latter clause, for you should already have the former clauses -(and possibly some asdf configuration between the require and the first load-system). -Make sure that you're using a recent ASDF 3 together with a recent POIU. -POIU will modify the asdf::*default-plan-class* so subsequent calls to asdf:load-system -will implicitly use it.

    You can find POIU on the QITAB homepage: -http://common-lisp.net/project/qitab

    POIU will notably compile each Lisp file in its own forked process, -in parallel with other operations (compilation or loading). -However, it will load FASLs serially as they become available. -In deterministic mode (the default), it will load files in a deterministic order -based on the state at the start of the build (usually, from clean). -If calling operate with :deterministic-p nil, it will load files opportunistically -in an order that depends on which compilation finishes first, -sacrificing determinism to a further parallel speed up.

    POIU will only make a difference with respect to ASDF if the dependencies -are not serial (i.e. no difference for systems using :serial t everywhere). -You can however use Andreas Fuchs's ASDF-DEPENDENCY-GROVEL to autodetect -minimal dependencies from an ASDF system (or a set of multiple such).

    POIU may speed up compilation by utilizing all CPUs of an SMP machine. -POIU may also reduce the memory pressure on the main (loading) process. -POIU will enforce separation between compile- and load- time environments, -helping you detect when :LOAD-TOPLEVEL is missing in EVAL-WHEN's -(as needed for incremental compilation even with vanilla ASDF). -POIU will also catch *some* missing dependencies as exist between the -files that it will happen to compile in parallel (but won't catch other -dependencies that may otherwise be missing from your system).

    When a compilation fails in a parallel process, POIU will retry compiling -in the main (loading) process so you get the usual ASDF error behavior, -with a chance to debug the issue and restart the operation.

    POIU was currently only made to work with SBCL, CCL, CLISP and Allegro. -Porting to another Unix Lisp implementation that supports ASDF should not be difficult.

    Warning to CCL users: you need to save a CCL image that doesn't start threads -at startup in order to use POIU (or anything that uses fork). Watch QITAB -for some package that does just that, single-threaded-ccl.

    To use POIU, just load poiu.lisp after asdf.lisp is loaded, then use it with - (asdf:load-system :your-system) -as usual. The asdf::*default-plan-class* will have been modified to use POIU. -Once again, you may want to first use asdf-dependency-grovel to minimize -the dependencies in your system.

    POIU was initially written for SBCL by Andreas Fuchs in 2006 -as part of an experiment funded by ITA Software, Inc. -It was later modified by François-René Rideau, -who wrote the ports to CCL, CLISP, Allegro, -maintained POIU as ASDF became ASDF 2 and further evolved, -and completely rewrote it for ASDF 3. -The original copyright of ASDF (below) applies to POIU.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/polisher.html b/clones/lisp/www.cliki.net/polisher.html deleted file mode 100644 index 27ea1d53..00000000 --- a/clones/lisp/www.cliki.net/polisher.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: polisher - - - - - - - -
    polisher
    Infix notation to S-expression (Polish notation) translator for Common Lisp.

    Repository: https://github.com/mrcdr/polisher

    License: MIT

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/poly-pen.html b/clones/lisp/www.cliki.net/poly-pen.html deleted file mode 100644 index 0c9bbf11..00000000 --- a/clones/lisp/www.cliki.net/poly-pen.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: poly-pen - - - - - - - -
    poly-pen
    Poly-pen is a graphical proxy for Common Lisp. It links hi-level plotting operations to low-level back-ends graphics library. It offers a simple interface to image generation and a few hi-level operations like plots and color maps. You can find example images with the generation code in the user manual. Current back-ends are for CL-SDL, CL-GD, Skippy and Salza (PNGs). Fract, the web zoomer for the Mandelbrot Set uses poly-pen for its rendering. Download: poly-pen-0.3.5.tar.gz.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/portable hemlock.html b/clones/lisp/www.cliki.net/portable hemlock.html deleted file mode 100644 index 188662a2..00000000 --- a/clones/lisp/www.cliki.net/portable hemlock.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Portable Hemlock - - - - - - - -
    Portable Hemlock
    "An attempt to free Hemlock from its CMUCL prison."

    Runs (more or less) in CMUCL CLISP, OpenMCL, SBCL, SCL.

    Homepage

    See also the git repository for the portable version of Hemlock.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/portable-clx.html b/clones/lisp/www.cliki.net/portable-clx.html deleted file mode 100644 index 53eb4b74..00000000 --- a/clones/lisp/www.cliki.net/portable-clx.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: portable-clx - - - - - - - -
    portable-clx
    portable-clx forms the basis for CLX packages in SBCL, OpenMCL, ECL and CMUCL.

    Source repository: https://github.com/sharplispers/clx

    Mailing list: https://mailman.common-lisp.net/listinfo/clx-devel

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/portableaserve.html b/clones/lisp/www.cliki.net/portableaserve.html deleted file mode 100644 index 976980e2..00000000 --- a/clones/lisp/www.cliki.net/portableaserve.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: portableaserve - - - - - - - -
    portableaserve
    Portable AllegroServe is a fork of the AllegroServe HTTP server, adapted to work with other CL implementations, not only with Allegro CL. Includes htmlgen and acl-compat.


    -LLGPL
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/portch.html b/clones/lisp/www.cliki.net/portch.html deleted file mode 100644 index 00d2f25b..00000000 --- a/clones/lisp/www.cliki.net/portch.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: portch - - - - - - - -
    portch
    Portch is a small framework for organizing and running tests written with ptester [the portable version of Franz's tester library]. It is especially useful when each test or group of tests needs its own files, directories, or place in the file system to work with.

    homepage: https://github.com/nallen05/portch

    Author: Nick Allen


    -test framework
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/positional-lambda.html b/clones/lisp/www.cliki.net/positional-lambda.html deleted file mode 100644 index b94433e6..00000000 --- a/clones/lisp/www.cliki.net/positional-lambda.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: positional-lambda - - - - - - - -
    positional-lambda
    positional-lambda is a concise, intuitive and flexible syntax (macro) for trivial lambdas that eschews explicit (and often contextually-redundant) naming of parameter variables in favor of positional references, with support for a used or ignored &rest parameter and automatic declaration of ignored parameters when logical "gaps" are left in the positional references. Further convenience features are provided.

    See the project's home for all details.


    -convenience library, Unlicense, Public Domain
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/postmodern.html b/clones/lisp/www.cliki.net/postmodern.html deleted file mode 100644 index 93af1690..00000000 --- a/clones/lisp/www.cliki.net/postmodern.html +++ /dev/null @@ -1,63 +0,0 @@ - - - - - CLiki: postmodern - - - - - - - -
    postmodern
    Postmodern is an interface to PostgreSQL SQL databases.

    Features: -

      -
    • Efficient communication with the database server without need for foreign libraries. -
    • -
    • Support for UTF-8 on Lisp implementations with Unicode support -
    • -
    • A lispy syntax for expressing SQL queries -
    • -
    • Convenient support for prepared statements and stored procedures -
    • -
    • Defclass-like definition of tables and associated accessor classes -
    • -

    It supports PostgreSQL versions up from 7.4, and is theoretically portable across Lisp implementations, though not much testing has been done yet.

    License: BSD-style

    Homepage: http://marijn.haverbeke.nl/postmodern/

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/postscript.html b/clones/lisp/www.cliki.net/postscript.html deleted file mode 100644 index 4ed7eca0..00000000 --- a/clones/lisp/www.cliki.net/postscript.html +++ /dev/null @@ -1,60 +0,0 @@ - - - - - CLiki: PostScript - - - - - - - -
    PostScript
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/pregexp.html b/clones/lisp/www.cliki.net/pregexp.html deleted file mode 100644 index 4ed337cf..00000000 --- a/clones/lisp/www.cliki.net/pregexp.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: pregexp - - - - - - - -
    pregexp
    Portable Regular Expressions for Scheme and Common Lisp

    “The file pregexp.lisp is the Common Lisp version of this library. To use it, load it into your Common Lisp.”

    Homepage: pregexp: Portable Regular Expressions for Scheme and Common Lisp.

    License: COPYING

    Topic: regular expression

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/pretend-event-loop.html b/clones/lisp/www.cliki.net/pretend-event-loop.html deleted file mode 100644 index 8f595b70..00000000 --- a/clones/lisp/www.cliki.net/pretend-event-loop.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: pretend-event-loop - - - - - - - -
    pretend-event-loop
    This is a common lisp library that simulates an event loop. It uses threads and queued execution (via jpl-queues) to make blocking operations execute in the background while letting the main thread continue to execute.

    Depends on: bordeaux-threads, jpl-queues

    Repository: https://github.com/orthecreedence/pretend-event-loop

    License: MIT


    -concurrency
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/pretty-function.html b/clones/lisp/www.cliki.net/pretty-function.html deleted file mode 100644 index f773b46c..00000000 --- a/clones/lisp/www.cliki.net/pretty-function.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: pretty-function - - - - - - - -
    pretty-function
    pretty-function provides an API for making individual functions pprint differently when written to an output stream. This is useful for debugging.

    Repository: https://github.com/nallen05/pretty-function

    License: BSD

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/primecount.html b/clones/lisp/www.cliki.net/primecount.html deleted file mode 100644 index 356155e0..00000000 --- a/clones/lisp/www.cliki.net/primecount.html +++ /dev/null @@ -1,62 +0,0 @@ - - - - - CLiki: primecount - - - - - - - -
    primecount
    Sublinear (in time and space) counting and summing of integer primes using optimized sieving method

    Usage examples:

    Count primes upto an upper boundary: -

    (primecount:prime-count (expt 10 11)) -;; => 4118054813 -
    -Sum primes upto an upper boundary: -
    (primecount:prime-sum (expt 10 11)) -;; => 201467077743744681014 -
    -Count primes of the forms 4m+1 and 4m+3 upto an upper boundary: -
    (primecount:prime-count-mod4 (expt 10 11)) -;; => 2059020280, 2059034532 -

    Repository: GitHub

    License: MIT

    See Also: ulimyhmpqs

    Topics: mathematics

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/princ-ut-interval.html b/clones/lisp/www.cliki.net/princ-ut-interval.html deleted file mode 100644 index 5a8e86ce..00000000 --- a/clones/lisp/www.cliki.net/princ-ut-interval.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: princ-ut-interval - - - - - - - -
    princ-ut-interval
    princ-ut-interval prints time durations in human readable format.

    Repository: https://github.com/nallen05/princ-ut-interval

    License: BSD 3-Clause


    -internationalization
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/profiler.html b/clones/lisp/www.cliki.net/profiler.html deleted file mode 100644 index b52f3920..00000000 --- a/clones/lisp/www.cliki.net/profiler.html +++ /dev/null @@ -1,63 +0,0 @@ - - - - - CLiki: profiler - - - - - - - -
    profiler
    The goal of profiling is to find out the bottlenecks of the program, such as which function consumes the most time, which function is called most times etc. in order to improve application performance by "fixing" those hot spots.

      -
    • -Metering by Mark Kantrowitz . -
    • -
    • -SLIME provides an interface to the profilers of supported Lisps with its slime-profile-* functions. -
    • -


    Metering has been adapted for the current times by Daniel Kochmański. It's portable and very capable. -Project home and repository.

    Works on all active implementations.


    SBCL has two: sb-ext:profile which instruments functions, and the statistical sampling sb-sprof contrib (based on CMUCL work).

    (sb-profile:profile function names) -(function call) -(sb-profile:report)

    or

    (sb-sprof:with-profiling (:report :graph) - (function call))


    -Programming Tips
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/programming language.html b/clones/lisp/www.cliki.net/programming language.html deleted file mode 100644 index c40d5347..00000000 --- a/clones/lisp/www.cliki.net/programming language.html +++ /dev/null @@ -1,175 +0,0 @@ - - - - - CLiki: programming language - - - - - - - -
    programming language

    Other programming languages implemented in Common Lisp.

    If Python runs on Common Lisp, does it mean you can have snakes on a cl-trane?

    S-exp syntax for other programming languages.

    See also s-exp syntax, for a list of systems providing a lisp-like syntax for different programming languages.

    Implementations of Common Lisp written in other programming languages

    While Common Lisp implementations are usually written in Common Lisp, some implementations are written at least partially, if not mostly, in a different programming language. Those implementations can be (or could be if they were conforming enough) used to bootstrap other Common Lisp implementations.

    • emacs lisp: emacs-cl is an implementation of Common Lisp written in emacs lisp (23). It would require some love to be updated to emacs 24 and lexical bindings, and complete the CL subset.

    • -
    • Scheme: there's an old bit-rotten implementation of Common Lisp, Butterfly Common Lisp, written in Butterfly Scheme. But no known contemporaneous CL implementation is written in scheme.

    • -
    • C: -
        -
      • CLISP is written mostly in C (with heavy usage of the C preprocessor and of a custom preprocessor), even if some parts are written in Common Lisp, notably the compiler. -
      • -
      • Robert Strandh's Bootstrap-Common-Lisp is implemented in pure C. -
      • -

    • -
    • Java: More than 50% of the sources of ABCL are written in Java (the rest in Common Lisp) (298 java files, 256 lisp files; 13070 java lines, 10195 lisp lines).

    • -
    • Smalltalk: no known CL implementation written in smalltalk (there are toy lisps implemented in smalltalk). -
    • -
    • Python: no known CL implementation written in python (there are toy lisps implemented in python). -
    • -
    • Ruby: no known CL implementation written in python (there are toy lisps implemented in Ruby). -
    • -
    • Javascript: no known CL implementation written in Javascript (there are toy lisps and scheme implemented in Javascript). -
    • -
    • Perl: no known CL implementation written in perl (there are toy lisps implemented in Perl). -
    • -
    • Bash: no known CL implementation written in bash. -
    • -
    • PopLog: contains a CL implementation written in POP-1 (along with Prolog, Standard ML, and POP-11). -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/programming tips.html b/clones/lisp/www.cliki.net/programming tips.html deleted file mode 100644 index ac931b88..00000000 --- a/clones/lisp/www.cliki.net/programming tips.html +++ /dev/null @@ -1,129 +0,0 @@ - - - - - CLiki: Programming Tips - - - - - - - -
    Programming Tips
    The following CLiki pages offer programming tips: -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/prolog.html b/clones/lisp/www.cliki.net/prolog.html deleted file mode 100644 index 38916b28..00000000 --- a/clones/lisp/www.cliki.net/prolog.html +++ /dev/null @@ -1,73 +0,0 @@ - - - - - CLiki: Prolog - - - - - - - -
    Prolog
    Prolog is a programming language based around logical assertions. -The name is a shortened form of "PROgramming in LOGic".

    Common Lisp implementations:

    Pages in category 'prolog:

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/prometheus.cl.html b/clones/lisp/www.cliki.net/prometheus.cl.html deleted file mode 100644 index 7dbf659e..00000000 --- a/clones/lisp/www.cliki.net/prometheus.cl.html +++ /dev/null @@ -1,79 +0,0 @@ - - - - - CLiki: prometheus.cl - - - - - - - -
    prometheus.cl
    Prometheus client.

    Example -

    -(defparameter *http-requests-counter* (prom:make-counter :name "http_requests_count" :help "HTTP requests counter" :labels '("app"))) - -(defparameter *http-requests-duration* (prom:make-histogram :name "http_requests_duration" :help "HTTP requests duration[ms]" :labels '("app") :buckets '(10 25 50 75 100 250 500 750 1000 1500 2000 3000))) - -(defclass acceptor (tbnl:acceptor) - ((application :accessor application-of :initarg :applicaton) - (requests-counter :reader acceptor-requests-counter) - (requests-duration :reader acceptor-requests-duration)) - (:default-initargs - :request-class 'request - :reply-class 'reply)) - -(defmethod initialize-instance :after ((acceptor acceptor) &rest args) - (declare (ignore args)) - (let ((labels (list (string-downcase (class-name (class-of (application-of acceptor))))))) - (setf (slot-value acceptor 'requests-counter) - (prom:get-metric *http-requests-counter* labels) - (slot-value acceptor 'requests-duration) - (prom:get-metric *http-requests-duration* labels)))) - -(defmethod tbnl:acceptor-dispatch-request ((acceptor acceptor) request) - (prom:counter.inc (acceptor-requests-counter acceptor)) - (prom:histogram.time (acceptor-requests-duration acceptor) - ... - )) -

    For more information, see the repository

    License: MIT


    -Topics: Distributed Monitoring
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/prompt-for.html b/clones/lisp/www.cliki.net/prompt-for.html deleted file mode 100644 index 1763d10f..00000000 --- a/clones/lisp/www.cliki.net/prompt-for.html +++ /dev/null @@ -1,65 +0,0 @@ - - - - - CLiki: prompt-for - - - - - - - -
    prompt-for
    Prompt the user for input of a particular type, or satisfying some predicate.

    PROMPT-FOR is a generic function that calls read or a specified function.

    Repository: https://github.com/hyotang666/prompt-for/

    License: MIT

    Tested with


    -language extension
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/proposed extensions to ANSI.html b/clones/lisp/www.cliki.net/proposed extensions to ANSI.html deleted file mode 100644 index 00c98684..00000000 --- a/clones/lisp/www.cliki.net/proposed extensions to ANSI.html +++ /dev/null @@ -1,112 +0,0 @@ - - - - - CLiki: Proposed Extensions To ANSI - - - - - - - -
    Proposed Extensions To ANSI
    This page is for proposed incremental changes and extensions to the language that go beyond what would be appropriate for Proposed ANSI Revisions and Clarifications, but not as radical as changes in Lisp - Next Generation: -
      -
    • Changes to ANSI that are technically extensions, but address long-absent functionality which makes it difficult to portably do simple things. -
    • -
    • Extensions that cannot be reasonably implemented as libraries. (Note: this makes FFI technically in scope, but unless a high-quality spec materializes there's no need to mention it...) -
    • -
    • Extensions that can be implemented as libraries, but are very much standard folklore, like with-gensyms. -
    • -

    CDR is one process for publishing proposed extensions.

    For user-space extensions, go and write a library.

      -
    • -Gray streams user-extensible streams

    • -
    • -simple-streams from Franz, which avoid some problems in Gray streams

    • -
    • User-extensible sequences. See Christophe Rhodes' presentation from ILC 2007: http://www.doc.gold.ac.uk/~mas01cr/talks/2007-04-03%20Cambridge/ilc-talk.pdf.

      From the paper, it seems like the protocol relies on CLOS in a way that makes this impossible to support structures in addition to classes. Which, for example, prevents SERIES in its present form from being upgraded to a user-defined sequence. Even though anything implemented as a structure can be ported to CLOS, I believe it's worth pointing out, since structures can be expected to be more efficient in general. — akater

    • -
    • Case-sensitive symbols. ACL and CLISP both have extensions to provide this (see https://franz.com/support/documentation/current/doc/case.htm and https://clisp.sourceforge.io/impnotes/package-case.html)

    • -
    • Add conformal displacement (array slices) for multidimensional arrays. The other side of the argument is to get rid of displaced arrays altogether, since they are rarely used and prevent certain optimizations. --Vladimir Sedach

    • -
    • Extend ARRAY, VECTOR, STRING, and related type specifiers so that other array attributes can be specified (that the object is/is not displaced, adjustable, or (for vectors) it does/does not have a fill pointer.)

    • -
    • Add weak-key hashtables for example by standardizing on the extensions of Franz -or Lispworks. trivial-garbage is a library that attempts to provide a portable interface to various implementations' weak hashtables. Weak-value hashtables and weak references should also be included. Finalizers are a very important feature. The extension should specify whether the finalizer can have access to the about-to-be-collected object to be able to "resurrect" it (currently some GCs run finalizers post-collection; the pros and cons of either approach should be examined). See Bruno Haible's writeup on weak references which examines the issues and state of various implementations as of 2005.

    • -
    • Have a way to weakly intern symbols in a package. The effect is that if nothing else refers to the symbol, the symbol can be gc-ed and removed from the package. Alternatively, allow gc of every unreferenced truly worthless symbol (that is, one on which BOUNDP, FBOUNDP, and SYMBOL-PLIST all return NIL) --John Cowan

    • -
    • Make WITH-GENSYMS or WITH-UNIQUE-NAMES macro part of the standard, since it is very widely re-implemented in libraries.

    • -
    • Specify, for lisps purporting to conform to :IEEE-FLOATING-POINT, the mechanism for enabling traps and clearing accrued exceptions, and for setting the rounding mode (and precision, where applicable), and how this interacts with standard CL functions such as FFLOOR and FCEILING.

    • -
    • Improve the support for floating-point and complex arithmetic as outlined in section C.9 of the draft version of ISO/IEC 10967-2 and section C.7 of the draft version of ISO/IEC CD 10967-3. (There may be other standards from ISO/IEC JTC1/SC22/WG11 that could be made normative.)

    • -
    • Add an ARGLIST function that, given a function designator, returns the argument list of the function. Suggested alternative name: FUNCTION-LAMBDA-LIST.

    • -
    • Define a way for macros to wrap a LOOP around the body without affecting LOOP-FINISH forms within it. This could be done by defining a new LOOP keyword FINISH-NAME. Then, (loop ... do (loop finish-name foo ... do (loop-finish))) would finish the outer loop directly. To finish just the inner loop, you'd have to use (loop-finish foo). Macros would use gensyms.

      Other possible syntaxes include (loop using (loop-finish foo) ...), which puns on for-as-hash; (loop unfinishable ...), which would be entirely invisible to LOOP-FINISH; and (loop fully named foo ...), which would require both (return-from foo ...) and (loop-finish foo).

      Would extending LOOP-FINISH to take the loop name as an argument be sufficient (exit from the innermost loop with the given name)? --Nikodemus - Not quite. Users of macros would often omit the argument of LOOP-FINISH, for the sake of clarity or compatibility with current CL. Implementors of macros would not be able to handle such cases transparently. If LOOP is extended too, then only macro implementors need be careful, like they already are with names of variables; users can ignore the whole issue. -Kalle Olavi Niemitalo

      I don't understand the need for this. However, LOOP already has a NAMED clause that could be used for LOOP-FINISH. It would overload its meaning, but it would reduce the number of changes needed. - Marco Antoniotti -

    • -
    • -(backquote ...) standard macro (like Scheme quasiquote) to allow for easier and scheme-like programmatic use of ` in constructs. I forget any arguments as to why it standardising it would not be good idea, but no doubt there are some. Constraining implementations seems unlikely as far as I can see. Morality-police discouraging its use, maybe, but I don't like that.

      If the semantics are going to match Scheme, then the name should too. Also, one cannot implement extensions such as `#C(,x ,y) if the ` reader macro is required to just read a form and put (backquote ...) around it. -Kalle Olavi Niemitalo

      Is that really so? I would think that changing #C to translate #C(,x ,y) to (unquote (complex x y)) would do the trick. -Dirk Gerrits

      This is a really, really bad idea; totally contrary to the meaning of backquote. Backquoted material should be handled by the reader (as in most CL implementations now). Turning it into a form is so bad, I'd seriously consider abandoning Lisp if it happened, I feel so strongly about that. -- AC

      No, it's a good idea. While most of the times it doesn't matter whether backquote is handled in the reader or not, there are times when it'd be really nice to know what the sexpression representation of '`(foo ,bar) is. Currently it's implementation defined which means that macro-writing macros can't take backquoted templates as input which they can then frob. A specific example: recently I was writing a mini-language and wanted to write two functions, one that compiled my intermediate representation for use in a macro and another that interpreted it. The compiler and interpreter were essentially identical except one generated code while the other executed it. If backquote templates were read into a specified sexpression form then I could have written a macro that took a list of backquoted templates and generated both functions. Instead I had to essentially implement my own backquote syntax that I could then take apart and put back together. -- Peter Seibel

      I don't claim to have thought this through, but requiring tighter binding of backquote/comma to the reader might let constructions such as #C`(,a ,b) fall -out without extra per-read-macro specifications. --nikodemus -

    • -
    • -Extend MAKE-HASH-TABLE to take any function as an equality predicate, and open it up so users can write their own hash functions. These will put CLOS objects on an equal footing with built-in objects.

      I'd rather see (DEFINE-HASH-TABLE-TEST test-function-name hash-function-designator), and making MAKE-HASH-TABLE accept any defined test in addition to #'eq.*. This way libraries can provide new hash-table types, and users of those libraries don't need to muck about with extra arguments to M-H-T. --Nikodemus --Why not test-function-designator, then? --John Cowan

      I like DEFINE-HASH-TABLE-TEST too. --sds -

    • -
    • -Extend the guaranteed behavior of SUBTYPEP, so that it must succeed in determining subtype relationships in more situations. In particular: -
        -
      • If SUBTYPEP can determine that A is (or is not) a subtype of B, then -it should determine that (NOT B) is (is not) a subtype of (NOT A).
      • -
      • (NOT (NOT A)) should have the same behavior as A.
      • -
      • If SUBTYPEP can determine that A is a subtype of B, and A is a subtype of C, -then it should be able to determine that A is a subtype of (AND B C).
      • -
      • If SUBTYPEP can determine that A is a subtype of C, and B is a subtype of C, -then it should be able to determine that (OR A B) is a subtype of C.
      • -
      • Better yet, require SUBTYPEP to succeed in all situations except those involving SATISFIES (which are undecidable), per Henry Baker's decision algorithm. --John Cowan
      • -
      -
    • -

    • Make more builtins be readably printable in some standard way. Alternately, allow users to define PRINT-OBJECT methods for builtin types on which the implementation does not provide a method.
    • Add an ELASTIC-NEWLINE function.
    • Franz's first-class environments proposal.

    • -
    • Eliminate holes in standardized exceptional situations (where the standard says something is undefined for certain arguments, etc.). The goal should be that safe code does not have undefined behaviors on erroneous arguments, since any such is a potential security hole.

    • -
    • A function to expand user-defined types into primitives. Does this mean a function that takes a type specifier and returns something implementation-specific? Or something else? I don't understand this or why it's needed. --Vladimir Sedach

    • -
    • Ability to efficiently list all specified readtable characters/dispatch-characters.

    • -
    • Custom CLOS specializers without rewriting that much of standard-class. How would this work? --Vladimir Sedach

    • -
    • Reader syntax for hash tables.

    • -
    • Turn COERCE into a generic function.

    • -
    • Add readers RESTART-TEST-FUNCTION, RESTART-INTERACTIVE-FUNCTION, RESTART-REPORT-FUNCTION, which will act analogous to RESTART-NAME. This will make the existing condition system introspection facilities (COMPUTE-RESTARTS and FIND-RESTART) more useful.

    • -
    • Add function SIGNALED-CONDITION to make the currently signaled condition easily accessible within restarts.

    • -
    • Add a dual to COMPUTE-RESTARTS that, given a restart, will return a list of the conditions currently associated with that restart (see CLHS section 9.1.4.2.4 Associating a Restart with a Condition: "A single restart may be associated with several conditions at the same time.")

    • -
    • Add an analogue of PROGV for RESTART-CASE. That is, make it possible to use the result of FIND-RESTART or COMPUTE-RESTARTS to introduce restart handlers in the current dynamic environment. Right now this is possible by constructing a RESTART-CASE expression based on examining restarts, and applying EVAL to that expression. This would extend the introspection facilities of the condition system.

    • -
    • Provide access to SAFETY OPTIMIZE declarations during macroexpansion time ala the Environments chapter of CLtL2. This will make it more convenient to write optimized code with optional type checks/assertions.

    • -
    • A standard way to figure out whether a setf expander has been defined (via either DEFSETF or DEFINE-SETF-EXPANDER) for a symbol FOO . See this mailing list thread for why this is problematic to do with GET-SETF-EXPANSION.

    • -


    -standards
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/protocol.html b/clones/lisp/www.cliki.net/protocol.html deleted file mode 100644 index 65aa6fa4..00000000 --- a/clones/lisp/www.cliki.net/protocol.html +++ /dev/null @@ -1,176 +0,0 @@ - - - - - CLiki: protocol - - - - - - - -
    protocol
    Networking and other RFC-defined protocols:

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/psgraph.html b/clones/lisp/www.cliki.net/psgraph.html deleted file mode 100644 index 7a325cdf..00000000 --- a/clones/lisp/www.cliki.net/psgraph.html +++ /dev/null @@ -1,81 +0,0 @@ - - - - - CLiki: psgraph - - - - - - - -
    psgraph
    psgraph is a small package for generating PostScript pictures of directed acyclic graphs written by Joe Bates and mentioned here: Repositories of Lisp Software. It allows arbitrary information to be displayed by a node, and it supports programmable generation of trees, similar to CLIM's tree drawing.

    It is portable Common Lisp, and has been tested sucessfully on SBCL, Clisp, Allegro, CMUCL, and LispWorks.

    Example

    -This code (look at psgraph.doc file) will make a pretty, small graph:

    -;; Load psgraph
    -(asdf:oos 'asdf:load-op :psgraph)
    -
    -;; Set some drawing settings
    -(setf psgraph:*boxkind* "fill")
    -(setf psgraph:*boxgray* ".8")
    -(setf psgraph:*fontsize* 8)
    -(setf psgraph:*second-fontsize* 6)
    -
    -;; This function will be given the name of a node, like 'A, and
    -;; return a list of the node's children.
    -(defun children (x)
    -  (cond ((eq x 'A) '(B C D))
    -	((member x '(B C D)) '(E F G))
    -	((member x '(E F G)) '(H))
    -	(t nil)))
    -
    -;; This returns the information to be displayed for a node.
    -(defun info (x)
    -  (list (string x)))
    -
    -;; This is the top-level function
    -(defun graph (&optional (shrink t))
    -  (with-open-file (output-stream "g.ps"
    -				 :direction :output
    -				 :if-exists :supersede)
    -    (psgraph:psgraph output-stream 'A #'children #'info shrink nil #'eq)))
    -

    Just call (graph) and view g.ps. You will see something like this:

    An example graph

    Download

    It can be downloaded from the asdf-packaging home page.


    -plotting graphics library
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ptester.html b/clones/lisp/www.cliki.net/ptester.html deleted file mode 100644 index 23b16f12..00000000 --- a/clones/lisp/www.cliki.net/ptester.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: ptester - - - - - - - -
    ptester
    ptester is a portable version of Franz's tester library. It is a test framework library.

    Repository: http://git.kpe.io/?p=ptester.git;a=summary

    License: LLGPL


    -Here is the documentation to tester.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/public domain.html b/clones/lisp/www.cliki.net/public domain.html deleted file mode 100644 index 78af4aca..00000000 --- a/clones/lisp/www.cliki.net/public domain.html +++ /dev/null @@ -1,408 +0,0 @@ - - - - - CLiki: Public Domain - - - - - - - -
    Public Domain
    Works placed in the Public Domain are those to which the copyright has been relinquished.

    Approximately. No doubt it's actually more complex than that.

    A pertinent FAQ says: "Software placed in the public domain has all the freedoms required by the DFSG, and is free software."

    Public Domain Software

      -
    • -Alexandria - - Alexandria is a collection of portable public domain utilities -
    • -
    • -Alive - - An attempt to create a Common Lisp extension for VSCode -
    • -
    • -anaphoric-variants - - anaphoric-variants gives access to anaphoric variants of operators through one macro: anaphoric -
    • -
    • -Basic-English-Grammar - - Basic-English-Grammar is a lisp system for working with the English grammar data from the -
    • -
    • -bubble-operator-upwards - - bubble-operator-upwards is a function that "bubbles an operator upwards" in a form, demultiplexing all alternative branches by way of cartesian product -
    • -
    • -canonicalized-initargs - - canonicalized-initargs provides a :canonicalize slot option accepting an initarg canonicalization function -
    • -
    • -cartesian-product-switch - - cartesian-product-switch is a macro for choosing the appropriate form to execute according to the combined results of multiple tests -
    • -
    • -cesdi - - cesdi provides a compute-effective-slot-definition-initargs generic function that allows for more ergonomic initialization of effective slot definition objects -
    • -
    • -cl-collider - - cl-collider is an interface to the SuperCollider audio synthesis server -
    • -
    • -cl-competitive - - A code collection maintained mainly for competitive programming, and partly for just understanding algorithms -
    • -
    • -cl-ftgl - - cl-ftgl is a set of bindings to the FTGL OpenGL font rendering library -
    • -
    • -cl-glfw - - Is a public domain set of CFFI bindings for the GLFW OpenGL helper library -
    • -
    • -cl-menusystem - - cl-menusystem is a library for making pretty menus for controlling an application and editing the multitude of special variables which invariably exist to control an app's settings -
    • -
    • -cl-openbox - - cl-openbox provides and interface to the box.net file storage service web API -
    • -
    • -cl-perec - - cl-perec is a CLOS ORM based on cl-rdbms -
    • -
    • -cl-soil - - Common Lisp wrapper around the SOIL library -
    • -
    • -cl-sqlite - - cl-sqlite is a library for interacting with sqlite databases through SQL -
    • -
    • -cl-syntax-sugar - - cl-syntax-sugar is a convenience library of reader macros and of helper functions to create new syntax extensions and to use them with ASDF and Slime without enabling them in the global readtable -
    • -
    • -cl-tcod - - Common lisp bindings for the Doryen Library, a "free, fast, portable API for roguelike developers providing an advanced true color console, input, and lots of other utilities frequently used in roguelikes" -
    • -
    • -CL-TELNETD - - CL-TELNETD is a CL telnet networking server -
    • -
    • -cl-utilities - - A library of semi-standard utilities -
    • -
    • -class-options - - class-options provides easy access to the defining class and its options during initialization or reinitialization of its subcomponents -
    • -
    • -clim-chess - - clim-chess is a CLIM chess playing game -
    • -
    • -Clobber - - An ObjectStore which aims to be a simpler, more flexible, and more robust alternative to CommonLispPrevalence systems, especially cl-prevalence -
    • -
    • -compatible-metaclasses - - compatible-metaclasses validates superclasses according to a simple substitution model, thereby greatly simplifying the definition of class mixins -
    • -
    • -COMPOSE - - This is one of the hypothetical Common Lisp Utilities -
    • -
    • -DBC - - DBC is a library for doing Design by contract ala the Eiffel programming language in Common Lisp -
    • -
    • -Decimals - - A decimal number parser and formatting package for Common Lisp -
    • -
    • -definitions-systems - - definitions-systems provides a simple unified extensible way of processing named definitions -
    • -
    • -Enchant - - An interface for Enchant spell-checker library -
    • -
    • -enhanced-boolean - - enhanced-boolean provides a canonical way of converting generalized booleans to booleans -
    • -
    • -enhanced-defclass - - enhanced-defclass provides a truly extensible version of DEFCLASS that can accurately control the expansion according to the metaclass and automatically detect the suitable metaclass by analyzing the DEFCLASS form -
    • -
    • -enhanced-eval-when - - enhanced-eval-when provides an enhanced eval-when macro that supports (eval-when t ...) as a shorthand for (eval-when (:compile-toplevel :load-toplevel :execute) ...), addressing concerns about verbosity -
    • -
    • -enhanced-find-class - - enhanced-find-class provides a canonical way of converting class designators to classes -
    • -
    • -enhanced-multiple-value-bind - - enhanced-multiple-value-bind provides an enhanced multiple-value-bind macro that adds support for lambda list keywords by expanding to a multiple-value-call when necessary -
    • -
    • -enhanced-typep - - enhanced-typep obsoletes all TYPEP thin wrappers -
    • -
    • -evaled-when - - evaled-when provides a way of extracting and replicating the compile-time side-effects of forms -
    • -
    • -f-underscore - - F-underscore is a convenience library to make writing lambdas shorter without having to resort to special syntax like arc's square brackets -
    • -
    • -fakenil - - fakenil provides a canonical stand-in for NIL for contexts where NIL means "no value" -
    • -
    • -first-time-value - - first-time-value returns the result of evaluating a form in the current lexical and dynamic context the first time it's encountered, and the cached result of that computation on subsequent evaluations -
    • -
    • -General accumulator - - General accumulator is a general-purpose, extensible value accumulator library -
    • -
    • -incognito-keywords - - incognito-keywords introduces a new kind of keyword that looks just like any non-keyword symbol and allows safe usage of convenient but clashy symbol names by multiple libraries without conflicts through sharing -
    • -
    • -Infix - - The infix notation for arithmetic in Common Lisp -
    • -
    • -inheriting-readers - - inheriting-readers provides a simple yet powerful value inheritance scheme -
    • -
    • -its-library - - its provides convenient access to multiple values of an object in a concise, explicit and efficient way -
    • -
    • -Jean-Philippe Paradis - - Hello, I'm Hexstream and I've been doing Common Lisp related work intensively for 15 years, including more than a decade of Common Lisp Open Source -
    • -
    • -KR - - Knowledge Representation is a highly flexible and dynamic prototype-based object system for Common Lisp -
    • -
    • -Levenshtein - - The Levenshtein Distance algorithm finds the minimum number of operations needed to transform one string into the other, where an operation is an insertion, deletion, or substitution of a single character -
    • -
    • -Lispix - - Lispix is a public domain image analysis application for Windows, written and maintained by David Bright at NIST -
    • -
    • -LMud - - LMud is a MUD (Multi-User Dungeon) Game implementation written in Common Lisp with heavy use of CLOS and multiple inheritance -
    • -
    • -macro-level - - macro-level is an embarassingly trivial convenience macro that saves on indentation while being more concise and direct -
    • -
    • -macroexpand-dammit - - macroexpand-dammit is a code walker by John Fremlin -
    • -
    • -map-bind - - map-bind is a macro that allows visual grouping of variables with their corresponding values (not necessarily 1:1) in calls to mapping operators when using an inline LAMBDA -
    • -
    • -metering - - The Metering System is a portable Common Lisp code profiling tool -
    • -
    • -Misc-Extensions - - A convenience library containing a motley collection of macros and other extensions -
    • -
    • -multiple-value-variants - - multiple-value-variants gives access to multiple-value variants of operators through one macro: multiple-value -
    • -
    • -object-class - - object-class ensures that special subclasses of standard-object cluster right in front of standard-object in the class precedence list -
    • -
    • -parse-float - - A function to parse floating-point values from a string in Common Lisp -
    • -
    • -parse-number-range - - parse-number-range parses loop's convenient "for-as-arithmetic" syntax into 5 simple values -
    • -
    • -place-modifiers - - place-modifiers essentially gives access to hundreds of modify-macros through one single macro: modify -
    • -
    • -place-utils - - place-utils provides a few utilities relating to setfable places -
    • -
    • -PLisp - - PLisp is an s-exp syntax for generating PostScript files -
    • -
    • -positional-lambda - - positional-lambda is a concise, intuitive and flexible syntax (macro) for trivial lambdas that eschews explicit (and often contextually-redundant) naming of parameter variables in favor of positional references, with support for a used or ignored &rest parameter and automatic declaration of ignored parameters when logical "gaps" are left in the positional references -
    • -
    • -quid-pro-quo - - A contract programming library for Common Lisp in the style of Eiffel’s Design by contract -
    • -
    • -rip-l - - A CD audio ripper and encoder front-end application to paranoia and Ogg Vorbis -
    • -
    • -rtorrent-controller - - rtorrent-controller is an application to control rTorrent -
    • -
    • -sb-texinfo - - sb-texinfo was originally written for processing the SBCL docstrings by Rudi Sclatte in 2004, and has been maintained as part of SBCL since then -
    • -
    • -scalpl - - Market maker + APIs to several Bitcoin exchanges -
    • -
    • -shared-preferences - - shared-preferences notably allows flexible specification of package-local preferences -
    • -
    • -Sheafhom - - Sheafhom is a package by Mark McConnell for large sparse linear algebra computations over the integers and other exact number types -
    • -
    • -SHUT-IT-DOWN - - Exit the Common Lisp implementation -
    • -
    • -simple-guess - - simple-guess defines a simple extensible protocol for computing a guess using advisors -
    • -
    • -Soundex - - The Soundex algorithm indexes words by their sound when pronounced in English, for example to account for differences in spelling -
    • -
    • -spath - - SPath is a library for running search queries against s-expressions, intended to match parts of them that the user needs -
    • -
    • -SQLite Lisp interface - - SQLite Lisp interface is an interface to the SQL database SQLite library -
    • -
    • -stassats-inotify - - stassats-inotify is an interface to the Linux inotify facility for file change notifications -
    • -
    • -stassats-ogg - - stassats-ogg is an Ogg Vorbis container (metadata) reader/writer library -
    • -
    • -stassats-storage - - stassats-storage is a CLOS ObjectStore -
    • -
    • -stassats-subtitles - - stassats-subtitles is a movie subtitle editing library -
    • -
    • -symbol-namespaces - - symbol-namespaces defines a new kind of package that's named by a symbol rather than a string -
    • -
    • -Toadstool - - Toadstool is a library for pattern matching -
    • -
    • -trivial-garbage - - trivial-garbage provides a portable API to finalizers, weak hash-tables and weak pointers -
    • -
    • -trivial-jumptables - - trivial-jumptables provides efficient O(1) jump tables on supported Common Lisp implementations and falls back to O(log(n)) on others -
    • -
    • -trivial-package-local-nicknames - - This was done so there is a portability library for the PLN API not included in DEFPACKAGE -
    • -
    • -trivial-template - - Trivial Template is a really really trivial public domain templating hack -
    • -
    • -trivial-timers - - Trivial-timers is a minimally portable implementation of the SBCL timer extension using Bordeaux-Threads -
    • -
    • -with-output-to-stream - - with-output-to-stream provides a simple way of directing output to a stream according to the concise and intuitive semantics of format's stream argument -
    • -
    • -with-shadowed-bindings - - with-shadowed-bindings establishes a new lexical context within which specified bindings are explicitly shadowed, making it clear that they are not referenced within, thereby reducing cognitive load -
    • -
    • -WSCL - - This repository contains the TeX and plain-text source files for the “Well Specified Common Lisp” specification -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/puri.html b/clones/lisp/www.cliki.net/puri.html deleted file mode 100644 index 703c7471..00000000 --- a/clones/lisp/www.cliki.net/puri.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: puri - - - - - - - -
    puri
    puri, Portable Universal Resource Identifier, is a library for parsing and representing URIs.

    Current API documentation is available from Franz's Allegro CL documentation: https://franz.com/support/documentation/current/doc/uri.htm

    There is a fork that extends puri to support userinfo and specialized uri classes and re-implements the parser with cl-ppcre at https://github.com/lisp/com.b9.puri.ppcre

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/pxmlutils.html b/clones/lisp/www.cliki.net/pxmlutils.html deleted file mode 100644 index 06cf9cb7..00000000 --- a/clones/lisp/www.cliki.net/pxmlutils.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: pxmlutils - - - - - - - -
    pxmlutils
    development on the xml parser in pxmlutils has stopped, use Miles Egan's XMLS parser instead.


    -obsolete
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/py-configparser.html b/clones/lisp/www.cliki.net/py-configparser.html deleted file mode 100644 index 3f4400c9..00000000 --- a/clones/lisp/www.cliki.net/py-configparser.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: py-configparser - - - - - - - -
    py-configparser
    py-configparser allows reading and writing of configuration files stored in the Windows INI file format. It is a port of the Python ConfigParser library.

    Depends on: parse-number

    Repository: https://svn.common-lisp.net/py-configparser/trunk/

    License: MIT

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/py-random.html b/clones/lisp/www.cliki.net/py-random.html deleted file mode 100644 index 1905245b..00000000 --- a/clones/lisp/www.cliki.net/py-random.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: py-random - - - - - - - -
    py-random
    A translation of the random module in the Python standard library.

    License: ?

    Source code: http://users.actrix.co.nz/mycroft/random.lisp


    -statistics
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/python.html b/clones/lisp/www.cliki.net/python.html deleted file mode 100644 index 6f036279..00000000 --- a/clones/lisp/www.cliki.net/python.html +++ /dev/null @@ -1,68 +0,0 @@ - - - - - CLiki: Python - - - - - - - -
    Python
    Python is the name of a free high-performance compiler originally developed at Carnegie-Mellon University for CMU Common Lisp, it is now used by SBCL, Scieneer, and several other environments as well as CMUCL. Python's main feature is efficient native code compilation using powerful type inference, among other, techniques. It also supports block-compilation as well as the usual incremental.

    Python is also the name of a programming language that is not Lisp.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/q-thread-pool.html b/clones/lisp/www.cliki.net/q-thread-pool.html deleted file mode 100644 index 32907e91..00000000 --- a/clones/lisp/www.cliki.net/q-thread-pool.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Q-THREAD-POOL - - - - - - - -
    Q-THREAD-POOL
    Q-THREAD-POOL is a very simple thread pool implementation based on JPL-QUEUES. Written by Max Rottenkolber.

    Repository: https://github.com/eugeneia/q-thread-pool

    License: AGPL

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/qbase64.html b/clones/lisp/www.cliki.net/qbase64.html deleted file mode 100644 index 7388dff9..00000000 --- a/clones/lisp/www.cliki.net/qbase64.html +++ /dev/null @@ -1,57 +0,0 @@ - - - - - CLiki: qbase64 - - - - - - - -
    qbase64
    qbase64 is a fast and flexible base64 encoder for Common Lisp.

    Homepage: https://github.com/chaitanyagupta/qbase64

    Why qbase64?

    Given that a couple of Lisp libraries already exist for working with base64 - cl-base64 and s-base64 - why might you want to pick qbase64? There are two reasons:

      -
    1. Stream-based APIs - neither of the alternatives provide a (gray) stream implementation where you can write bytes to a binary stream that is automatically encoded to an underlying character stream and vice-versa. -
    2. -
    3. Performance - qbase64 was written with the objective of being fast while keeping memory consumption independent of the input size. See the Performance section in the README for benchmarks and other details. -
    4. -


    -data format
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/qbook.html b/clones/lisp/www.cliki.net/qbook.html deleted file mode 100644 index 9be7d096..00000000 --- a/clones/lisp/www.cliki.net/qbook.html +++ /dev/null @@ -1,57 +0,0 @@ - - - - - CLiki: qbook - - - - - - - -
    qbook
    qbook -generates HTML (or LaTeX) formatted code listings of Common -Lisp source files. Comments in the source code are rendered as HTML -paragraphs, text is rendered in <pre> blocks. Headings are -created by preceding the text of the comment with one or more #\* -chars.

    This is inspired by Luke Gorrie's pbook.el (which targets Emacs Lisp).

    Depends on: arnesi, iterate, cl-ppcre, yaclml

    Repository: https://gitlab.common-lisp.net/bese/qbook

    License: BSD 3-Clause


    -Documentation Tool
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/qitab.html b/clones/lisp/www.cliki.net/qitab.html deleted file mode 100644 index 5d7f6d7e..00000000 --- a/clones/lisp/www.cliki.net/qitab.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: qitab - - - - - - - -
    qitab
    qitab is a collection of free software Lisp libraries originally published by ITA Software. See https://common-lisp.net/project/qitab/.

    Currently contains command-line-arguments, cl-protobufs, inferior-shell, poiu, quux-hunchentoot, quux-time, rpm, single-threaded-ccl.


    -MIT-LICENSE
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/qooxlisp.html b/clones/lisp/www.cliki.net/qooxlisp.html deleted file mode 100644 index 58b8e7b5..00000000 --- a/clones/lisp/www.cliki.net/qooxlisp.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: qooxlisp - - - - - - - -
    qooxlisp
    Qooxlisp is a reactive rich web applications framework based on Qooxdoo built on the cells library with which its author built an online algebra learning system and sees continuation in MatrixJS / cljs .

    web framework

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/qt-libs.html b/clones/lisp/www.cliki.net/qt-libs.html deleted file mode 100644 index 687fe7e8..00000000 --- a/clones/lisp/www.cliki.net/qt-libs.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: qt-libs - - - - - - - -
    qt-libs
    Working with CommonQt/Qtools currently requires working with SmokeQt. However, SmokeQt is not easily available on all platforms (especially OS X and Windows). This project should simply ensure that the libraries are either available by your system directly, or that they are built automatically for you. This ensures that CommonQt can be used directly with hopefully no further user intervention being necessary.

    The project can be found on github including a fully documented symbol index and a getting started tutorial.
    -As of 2015, Qt-libs is on Quicklisp.

    Qt-libs is licensed under the Artistic License 2.0.


    -GUI
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/qtools-ui.html b/clones/lisp/www.cliki.net/qtools-ui.html deleted file mode 100644 index 603917bf..00000000 --- a/clones/lisp/www.cliki.net/qtools-ui.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: qtools-ui - - - - - - - -
    qtools-ui
    This is a collection of useful widgets and pre-made components for use in your Qt applications. There is no specific scope that limits what might fit into this library, but for the most part it concerns itself with things like layouting and other base components that can be used anywhere.

    The project can be found on github including a fully documented symbol index.
    -As of November 2015, Qtools-UI is on Quicklisp.

    Qtools-UI is licensed under the Artistic License 2.0.


    -GUI qtools
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/qtools.html b/clones/lisp/www.cliki.net/qtools.html deleted file mode 100644 index 28d61f3e..00000000 --- a/clones/lisp/www.cliki.net/qtools.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: qtools - - - - - - - -
    qtools
    Qtools aims to be a toolkit to support development with CommonQt. This goes to the point of sporting a complete abstraction layer that makes writing Qt applications look like regular Lisp programs. Have a look at the documentation and examples to get an idea.

    The project can be found on github including a fully documented symbol index and a getting started tutorial.
    -As of November 2014, Qtools is on Quicklisp.

    Qtools is licensed under the Artistic License 2.0.


    -GUI
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/quasiquote-2.0.html b/clones/lisp/www.cliki.net/quasiquote-2.0.html deleted file mode 100644 index 25b8e6e8..00000000 --- a/clones/lisp/www.cliki.net/quasiquote-2.0.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: quasiquote-2.0 - - - - - - - -
    quasiquote-2.0
    An alternative quasiquote syntax aimed at being more suitable for macros that define other macros.

    Depends on: iterate

    Repository: https://github.com/mabragor/quasiquote-2.0

    License: MIT


    -metaprogramming
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/query-fs.html b/clones/lisp/www.cliki.net/query-fs.html deleted file mode 100644 index 1282bca9..00000000 --- a/clones/lisp/www.cliki.net/query-fs.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: query-fs - - - - - - - -
    query-fs
    Query-FS is a FUSE-based filesystem that presents database queries as filesystem trees. It first loads plugins (lisp source files) to prepare query parsers, and then loads the queries themselves and creates a virtual filesystem with results.

    An example task may be creating symbolic links to files based on queries to SQL DB with filesystem index. Or you can create an encrypted password store with FS interface (so you just echo the needed data to files).

    query-fs is based on cl-fuse.

    Homepage: https://common-lisp.net/project/cl-fuse/

    License: LLGPL

    There is a CSR2010 paper about cl-fuse-meta.


    -Topics: StructuredStorage
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/queues.html b/clones/lisp/www.cliki.net/queues.html deleted file mode 100644 index b707b037..00000000 --- a/clones/lisp/www.cliki.net/queues.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: queues - - - - - - - -
    queues
    A Common Lisp queue library with features such as non-consing thread safe queues and fibonacci priority queues.

    Depends on: bordeaux-threads (for concurrent queues)

    Repository: https://github.com/oconnore/queues

    License: MIT


    -data structure
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/quick-arrays.html b/clones/lisp/www.cliki.net/quick-arrays.html deleted file mode 100644 index 211d982f..00000000 --- a/clones/lisp/www.cliki.net/quick-arrays.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: quick-arrays - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/quickapp.html b/clones/lisp/www.cliki.net/quickapp.html deleted file mode 100644 index bcb762c9..00000000 --- a/clones/lisp/www.cliki.net/quickapp.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: quickapp - - - - - - - -
    quickapp
    A project for generating template projects that use SBCL and buildapp.

    Repository: https://github.com/triclops200/quickapp


    -BSD License
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/quicklisp.html b/clones/lisp/www.cliki.net/quicklisp.html deleted file mode 100644 index a22812fb..00000000 --- a/clones/lisp/www.cliki.net/quicklisp.html +++ /dev/null @@ -1,65 +0,0 @@ - - - - - CLiki: Quicklisp - - - - - - - -
    Quicklisp
    Quicklisp aims to make it easy to get started with a rich set of community-developed Common Lisp libraries.

    It is currently (2014-10-07) available as a public beta.

    Quicklisp is developed by Zach Beane, and released under an MIT-style license.

    Resources: -

    For a list of libraries that may be installed via Quicklisp, see the Quicklisp releases page.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/quid-pro-quo.html b/clones/lisp/www.cliki.net/quid-pro-quo.html deleted file mode 100644 index 7cc4fd03..00000000 --- a/clones/lisp/www.cliki.net/quid-pro-quo.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: quid-pro-quo - - - - - - - -
    quid-pro-quo
    A contract programming library for Common Lisp in the style of Eiffel’s Design by contract.

    License: public domain

    Homepage: https://github.com/sellout/quid-pro-quo


    -language extension
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/quri.html b/clones/lisp/www.cliki.net/quri.html deleted file mode 100644 index 636f787d..00000000 --- a/clones/lisp/www.cliki.net/quri.html +++ /dev/null @@ -1,65 +0,0 @@ - - - - - CLiki: quri - - - - - - - -
    quri
    quri (pronounced "Q-ree") is yet another URI library for Common Lisp. It is intended to be a replacement of PURI.

    Differences from PURI

    -
      -
    • Fast.
    • -
    • Doesn't encode/decode URL implicitly.
    • -
    • Supports userinfo. (ex. git in git@github.com)
    • -
    • Supports IPv6 hostname. (ex. ldap://[2001:db8::7]/)
    • -
    • Allows byte vectors as input.
    • -
    • Takes optional :start and :end keyword arguments.
    • -
    • Low-level parser functions.
    • -
    • URL encoding/decoding utilities. -
        -
      • url-decode, url-decode-params, url-encode, url-encode-params
      • -
      -
    • -

    Source repository: https://github.com/fukamachi/quri

    License: BSD-3-Clause

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/quux-hunchentoot.html b/clones/lisp/www.cliki.net/quux-hunchentoot.html deleted file mode 100644 index 57d43361..00000000 --- a/clones/lisp/www.cliki.net/quux-hunchentoot.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: quux-hunchentoot - - - - - - - -
    quux-hunchentoot
    quux-hunchentoot is an extension to the hunchentoot webserver that provides a thread-pooling taskmaster.

    It uses lparallel for inter-thread messaging and managing the thread-pool.

    It is published as part of QITAB.


    -MIT-LICENSE
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/quux-time.html b/clones/lisp/www.cliki.net/quux-time.html deleted file mode 100644 index b23f44cb..00000000 --- a/clones/lisp/www.cliki.net/quux-time.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: quux-time - - - - - - - -
    quux-time
    QUUX-TIME is a library to deal with efficient representation of time. It depends on a bunch of macros and utilities that are currently included in QUUX-TIME but will eventually be published (together with plenty of other ones) in their own package that QUUX-TIME will depend on. The little documentation there is currently lies in the code itself. We don't actually recommend you use QUUX-TIME, though you may freely take code from it to extend your own time library. Instead, we recommend you use LOCAL-TIME.


    -MIT-LICENSE
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/radiance.html b/clones/lisp/www.cliki.net/radiance.html deleted file mode 100644 index 2f4e28b2..00000000 --- a/clones/lisp/www.cliki.net/radiance.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: radiance - - - - - - - -
    radiance
    Radiance is a web framework with a focus on allowing you to run multiple applications together. However, it can be just as easily used for any kind of web-focused project. See its homepage for more information.

    The project can be found on github including a lengthy and extensive documentation, and an in-depth tutorial.

    Radiance is licensed under the Artistic License 2.0.


    -web framework web
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/random-state.html b/clones/lisp/www.cliki.net/random-state.html deleted file mode 100644 index 71692147..00000000 --- a/clones/lisp/www.cliki.net/random-state.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: random-state - - - - - - - -
    random-state
    This is a collection of pseudo random number generators (PRNGs). While Common Lisp does provide a RANDOM function, it does not allow the user to pass an explicit seed, nor to portably exchange the random state between implementations. This can be a headache in cases like games, where a controlled seeding process can be very useful.

    The project can be found on github including a fully documented symbol index and a getting started tutorial.
    -As of March 2016 random-state is available on Quicklisp.

    Random-state is licensed under the Artistic License 2.0.


    -cryptography
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ratmath.html b/clones/lisp/www.cliki.net/ratmath.html deleted file mode 100644 index e56e6f09..00000000 --- a/clones/lisp/www.cliki.net/ratmath.html +++ /dev/null @@ -1,58 +0,0 @@ - - - - - CLiki: ratmath - - - - - - - -
    ratmath
    Utilities for Rational Numbers in Common Lisp (rational approximations and interval arithmetic)

    Usage examples:

    Function ratmath:rat is akin to cl:rationalize with keyword arguments :limd and :limn representing the maximum numerator/denominator:

    (ratmath:rat pi :limd 255) -;; => -355/113 -

    Function ratmath:infsup can reduce bignum rational to a fixed bit rational interval (here, 16-bit):

    CL-USER> (* (rational pi) (rational (exp 1.0))) -2520484590068807905375/295147905179352825856 -CL-USER> (values (ratmath:infsup * :limd 65535 :limn 65535)) -(23749/2781 . 50077/5864) -

    More details in README.

    Repository: GitHub

    License: MIT

    See Also: computable-reals

    Topics: mathematics

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/rclg.html b/clones/lisp/www.cliki.net/rclg.html deleted file mode 100644 index 354cd98b..00000000 --- a/clones/lisp/www.cliki.net/rclg.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: rclg - - - - - - - -
    rclg
    An R (statistics programming language) FFI for Common Lisp.

    Homepage: GitHub

    License: BSD

    See Also: cl-rmath, RCL

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/rdp.html b/clones/lisp/www.cliki.net/rdp.html deleted file mode 100644 index 00662918..00000000 --- a/clones/lisp/www.cliki.net/rdp.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: rdp - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/re.html b/clones/lisp/www.cliki.net/re.html deleted file mode 100644 index d1befd83..00000000 --- a/clones/lisp/www.cliki.net/re.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: re - - - - - - - -
    re
    The re package is a small, portable, lightweight, and quick, regular expression library for Common Lisp. It is a non-recursive, backtracing VM. The syntax is similar to Lua-style pattern patching (found here), but has added support for additional regex features. It's certainly not the fastest, but is very easy to understand and extend.

    Depends on: parse

    Repository: https://github.com/massung/re

    License: Apache 2

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/reactive.html b/clones/lisp/www.cliki.net/reactive.html deleted file mode 100644 index db43f9fa..00000000 --- a/clones/lisp/www.cliki.net/reactive.html +++ /dev/null @@ -1,60 +0,0 @@ - - - - - CLiki: Reactive - - - - - - - -
    Reactive
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/read-csv.html b/clones/lisp/www.cliki.net/read-csv.html deleted file mode 100644 index 479c30e0..00000000 --- a/clones/lisp/www.cliki.net/read-csv.html +++ /dev/null @@ -1,61 +0,0 @@ - - - - - CLiki: read-csv - - - - - - - -
    read-csv
    Read-csv is a library for reading csv (comma-separated-values) files. It is short (68 loc), documented (manual) and tested (519 tests)

      -
    • Loadable and testable using ASDF
    • -
    • handles quoted text, including quotes with separators, newlines and quotes-within-quotes.
    • -
    • handles multiline data
    • -
    • handles internationalized data
    • -

    For more info see:

    Topics: file format, Text, Warren Wilkinson, CSV

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/read-macros.html b/clones/lisp/www.cliki.net/read-macros.html deleted file mode 100644 index 5ee1f536..00000000 --- a/clones/lisp/www.cliki.net/read-macros.html +++ /dev/null @@ -1,66 +0,0 @@ - - - - - CLiki: read-macros - - - - - - - -
    read-macros
    read-macros is a convenience library of useful read macros for CL.

    It includes -

      -
    • an extensible syntax (similar to #S) -
    • -
    • conditional reads -
    • -
    • conditional reads based on *features* (similar to #+ and #-) -
    • -
    • stateful block reads (similar to CPP's #if/#elif/#else/#endif) -
    • -
    • lexical read manipulation (e.g. bind *read-base*) -
    • -
    • here documents [fullfilling heredocs in lisp?] -
    • -

    The initial release is available as a tarball or a zipfile.


    -cl-syntax-sugar is a similar library.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/readable.html b/clones/lisp/www.cliki.net/readable.html deleted file mode 100644 index 7ab4f79e..00000000 --- a/clones/lisp/www.cliki.net/readable.html +++ /dev/null @@ -1,72 +0,0 @@ - - - - - CLiki: readable - - - - - - - -
    readable
    readable adds additional abbreviations in the sexp reader; supports infix, optional standard function call notation, optional indentation. It is intended to improve readability.

    Note that well-formatted s-expressions continue to work as-is. The Common Lisp reader already supports abbreviations, such as 'x for (quote x); this library simply adds more abbreviations. As with the original s-expression notation, these abbreviations are generic (the notation does not depend on an underlying semantic) and homoiconic (the underlying data structure is clear from the syntax). Macros, quasiquoting, and other capabilities continue to work as-is.

    You can select one of several tiers; each tier builds on the previous one: -

      -
    1. Curly-infix-expressions (c-expressions) start with traditional s-expressions and adds support for infix notation. In short, {a op b op ...} maps to (op a b ...). For example, {i < max} represents (< i max), and {a * {b + c}} represents (* a (+ b c)). These are "basic" c-expressions; "full" c-expressions support neoteric-expressions inside them. -
    2. -
    3. Neoteric-expressions (n-expressions) add support for traditional function notation. In short, f(...) maps to (f ...), and f{...} maps to (f {...}). For example, car(x) represents (car x), subseq("Hello" 1 3) represents (subseq "Hello" 1 3), terpri() represents (terpri), and fact{n - 1} represents (fact (- n 1)). -
    4. -
    5. Sweet-expressions (t-expressions) reduce the number of explicit parentheses needed (by deducing them from indentation). A line with only one n-expression, and no child lines, represents itself. Otherwise, the line represents a list; each n-expression on the line is an element of the list, and each of its child lines represents an element of the list (in order). Indentation processing is disabled inside parentheses, brackets, and braces, so it is backwards-compatible with typically-formatted files. -
    6. -

    The following are examples of sweet-expressions and what they represent; if you enable the sweet-expression reader, the reader will accept either form:

    -Sweet-expression             Traditional s-expression
    -================             ========================
    -defun fibfast (n)            (defun fibfast (n)
    -  if {n < 2}                   (if (< n 2)
    -    n                              n
    -    fibup(n 2 1 0)                 (fibup n 2 1 0)))
    -
    -defun factorial (n)          (defun (factorial n)
    -  if {n <= 1}                  (if (<= n 1)
    -    1                              1
    -    {n * factorial{n - 1}}         (* n (factorial (- n 1)))))
    -

    Since you can choose a tier, you can choose to just support infix (and nothing else) if you want. This library is implemented by modifying the readtable. Note that this library implements Common Lisp versions of the Scheme specifications SRFI-105 and SRFI-110.

    QuickLisp users can load readable using (ql:quickload "readable") - you can then enable the tier you'd like to use, e.g., (readable:enable-sweet). To stop you can use (readable:disable-readable). It is released under the mit-license.

    This library only implements additions to standard s-expression notation; it does not create a whole new or different language. If you are trying to parse an arbitrary language of your own design, look instead for a parser generator, lexer, or general Text processor.

    Homepage: Readable Lisp s-expressions

    Tutorial (as document): Common Lisp tutorial for readable notations

    Video: Readable Lisp S-expressions: Curly-infix-, Neoteric-, and Sweet-expressions (2013-09-09)

    Download: http://sourceforge.net/projects/readable/files/

    QuickLisp: (ql:quickload "readable")


    -Topics: language extension, s-exp syntax
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/reader-interception.html b/clones/lisp/www.cliki.net/reader-interception.html deleted file mode 100644 index 3121c210..00000000 --- a/clones/lisp/www.cliki.net/reader-interception.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: reader-interception - - - - - - - -
    reader-interception
    reader-interception is a library for replacing the lisp reader with your own, so you can define your own syntax or compile other language through Lisp.

    Repository: https://gitlab.common-lisp.net/frideau/reader-interception

    License: MIT


    -metaprogramming
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/reattatchabe slime.html b/clones/lisp/www.cliki.net/reattatchabe slime.html deleted file mode 100644 index b0fcb53d..00000000 --- a/clones/lisp/www.cliki.net/reattatchabe slime.html +++ /dev/null @@ -1,140 +0,0 @@ - - - - - CLiki: reattatchabe slime - - - - - - - -
    reattatchabe slime
    Here is a little makedef file to start/stop a lisp application and allow the developer to attach to the running process with attachtty or slime.

    For a new application you create a new Makefile, define LISP_DIR and LISP_APP and then include this makedef file. You can then use the following targets with your application: start, stop, restart, attach, slime, dribble and log.

    makedef

    -
    -# -*- makefile -*-
    -### User needs to define the lisp working directory
    -#LISP_DIR=${HOME}/lisp/website
    -### ...and lisp application
    -#LISP_APP=server.lisp
    -
    -######################################################################
    -DETACHTTY_EXE=/usr/bin/detachtty
    -ATTACHTTY_EXE=/usr/bin/attachtty
    -RUNTIME_DIR=${LISP_DIR}/.runtime
    -DRIBBLE_FILE=${RUNTIME_DIR}/${LISP_APP}.dribble
    -LOG_FILE=${RUNTIME_DIR}/${LISP_APP}.detachtty
    -PID_FILE=${RUNTIME_DIR}/${LISP_APP}.pid
    -SOCKET_FILE=${RUNTIME_DIR}/${LISP_APP}.socket
    -SLIME_PORT=4005
    -######################################################################
    -all: help
    -
    -help:
    -        @echo ""
    -        @echo "start   - start the lisp server"
    -        @echo "stop    - stop the lisp server"
    -        @echo "restart - restart the lisp server"
    -        @echo "attach  - attach to the lisp server"
    -        @echo "slime   - connect emacs to the lisp server"
    -        @echo "dribble - tail the dribble file"
    -        @echo "log     - cat the log file"
    -        @echo ""
    -
    -start: cleanup setup start_server log attach
    -start_server:
    -        ${DETACHTTY_EXE} \
    -        --dribble-file ${DRIBBLE_FILE} \
    -        --log-file ${LOG_FILE} \
    -        --pid-file ${PID_FILE} \
    -        ${SOCKET_FILE} \
    -        /usr/bin/sbcl --noinform \
    -        --eval "(asdf:operate 'asdf:load-op :modlisp)" \
    -        --eval "(asdf:operate 'asdf:load-op :swank)" \
    -        --eval "(swank:create-swank-server ${SLIME_PORT} swank:*communication-style* #'(lambda (p) p) t)" \
    -        --eval '(load "${LISP_DIR}/${LISP_APP}")' \
    -        --eval '(start-apache-listener)'
    -        @sleep 2
    -
    -setup:
    -        @mkdir -p ${RUNTIME_DIR}
    -
    -stop: stop_server cleanup
    -
    -stop_server: ${PID_FILE}
    -        @echo "kill `cat ${PID_FILE}`"
    -        @kill -9 `cat ${PID_FILE}`
    -
    -restart: stop start
    -
    -cleanup: 
    -        @rm -fv ${PID_FILE}
    -        @rm -fv ${SOCKET_FILE}
    -        @rm -fv ${DRIBBLE_FILE}
    -        @rm -fv ${LOG_FILE}
    -attach: 
    -        @${ATTACHTTY_EXE} ${SOCKET_FILE} || true
    -
    -dribble:
    -        @tail -f ${DRIBBLE_FILE} || true
    -log:
    -        @cat ${LOG_FILE}
    -slime:
    -        @emacs -nw --eval '(slime-connect "localhost" 4005)'
    -

    -

    sample Makefile

    -
    -LISP_DIR=${HOME}/lisp/website
    -LISP_APP=server.lisp
    -
    -include ../makedefs.sbcl
    -
    -create_db:
    -        mysql -u username < databasename.sql
    -show_db:
    -        mysqldump databasename
    -

    -


    -Category Slime ??

    Slime -SBCL -Emacs -detachtty -linux

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/rebinding.html b/clones/lisp/www.cliki.net/rebinding.html deleted file mode 100644 index 2b852469..00000000 --- a/clones/lisp/www.cliki.net/rebinding.html +++ /dev/null @@ -1,88 +0,0 @@ - - - - - CLiki: rebinding - - - - - - - -
    rebinding
    Here's a macro example. It's to prevent multiple evaluation when writing other macros. Each variable is rebound to a gensym that will then hold the value.

    The effect is that each value is evaluated only once, up-front in the binding thus introduced (hence the alternate name once-only). An implementation is:

    (defmacro rebinding (variables &body body) - (loop with prefix = (symbol-name '#:re) - for var in variables - for g = (gensym prefix) - for temp = `(gensym ,(string var)) - collect `(,g ,temp) into gensyms - collect ``(,,g ,,var) into temps - collect `(,var ,g) into renames - finally (return `(let ,gensyms - `(let (,,.temps) - ,(let ,renames - ,@body))))))

    In use:

    (rebinding (x y z) - `(quux (+ ,x ,y) - (* ,x ,z)))

    Applying macroexpand-1 to this expression produces (in backquote notation):

    (LET ((#:RE23691 (GENSYM "X")) - (#:RE23692 (GENSYM "Y")) - (#:RE23693 (GENSYM "Z"))) - `(LET ((,#:RE23691 ,X) - (,#:RE23692 ,Y) - (,#:RE23693 ,Z)) - ,(LET ((X #:RE23691) - (Y #:RE23692) - (Z #:RE23693)) - `(QUUX (+ ,X ,Y) - (* ,X ,Z)))))

    Propagating values from the outermost LET gives:

    `(LET ((#:X23706 ,X) - (#:Y23707 ,Y) - (#:Z23708 ,Z)) - ,(LET ((X '#:X23706) - (Y '#:Y23707) - (Z '#:Z23708)) - `(QUUX (+ ,X ,Y) - (* ,X ,Z))))

    Evaluating the inner, comma-fronted LET reduces this to:

    `(LET ((#:X23706 ,X) - (#:Y23707 ,Y) - (#:Z23708 ,Z)) - (QUUX (+ #:X23706 #:Y23707) - (* #:X23706 #:Z23708)))

    In the above output, keep in mind that READing the same gensym twice would produce two different (uninterned) symbols. In the REPL:

    ? (eq '#:X23706 '#:X23706)
    -NIL

    The *print-circle* option controls whether the printer will detect shared components.

    An Exercise for the Reader

    There's a variant where the body is "spliced" into the expansion. This would allow—intentionally or otherwise—for (say) declarations:

    (rebinding (x y) - `(declare (fixnum ,x ,y)) - `(do-fixnum-stuff ,x ,y))

    Hint: it's been posted to comp.lang.lisp.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/recursive-regex.html b/clones/lisp/www.cliki.net/recursive-regex.html deleted file mode 100644 index a43b47eb..00000000 --- a/clones/lisp/www.cliki.net/recursive-regex.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: recursive-regex - - - - - - - -
    recursive-regex
    A library to extend CL-PPCRE to make regular expression named capture groups dispatch to custom matcher functions and named-expression patterns.

    Repository: https://github.com/AccelerationNet/recursive-regex

    License: BSD

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/reeder.html b/clones/lisp/www.cliki.net/reeder.html deleted file mode 100644 index 5872dc7d..00000000 --- a/clones/lisp/www.cliki.net/reeder.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: reeder - - - - - - - -
    reeder
    A toy table-driven reader for Lisp, written in Common Lisp. It is not an attempt to reproduce the CL reader and still less is it intended for serious use: rather it's meant to be something to play with which is small enough to understand. It is extensible: you can define macro characters (all macro characters are terminating in CL terms), define your own parsers for tokens, control what is treated as whitespace, define your own token reader and so on. There are configurable single and multiple escapes which by default are \ and | respectively.

    Depends on: org.tfeb.hax.iterate, cl-ppcre

    Repository: https://github.com/tfeb/reeder


    -MIT-LICENSE
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/regex (library by asciian).html b/clones/lisp/www.cliki.net/regex (library by asciian).html deleted file mode 100644 index baaa4890..00000000 --- a/clones/lisp/www.cliki.net/regex (library by asciian).html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: regex (library by asciian) - - - - - - - -
    regex (library by asciian)
    A relatively incomplete (as of Jan 2018) relatively concise backtracking POSIX compatible regular expression library.

    regex is written by asciian. It is faster than CL-PPCRE on Lisp implementations which do not optimize CLOS well enough, e.g. on SBCL.

    Homepage: GitHub

    License: LLGPL

    See Also: cl-ppcre

    Topic: regular expression

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/regular expression.html b/clones/lisp/www.cliki.net/regular expression.html deleted file mode 100644 index ebdcc6fe..00000000 --- a/clones/lisp/www.cliki.net/regular expression.html +++ /dev/null @@ -1,96 +0,0 @@ - - - - - CLiki: Regular Expression - - - - - - - -
    Regular Expression
    Regular Expression (regexp) libraries

      -
    • -cl-irregsexp - - A fast regular expression library with a lispy alternative to traditional syntax for text matching -
    • -
    • -cl-ppcre - - A portable, Perl-compatible regular expression library by Edi Weitz -
    • -
    • -cl-string-match - - Provides substring (subsequence) search and text processing algorithms implementations including regular expression, prefix/suffix tree data structures, etc -
    • -
    • -lol-re - - Tiny wrapper around CL-PPCRE, inspired by #~M and #~S read-macro from Let Over Lambda, making use of regular expressions more perly -
    • -
    • -pregexp - - Portable Regular Expressions for Scheme and Common Lisp -
    • -
    • -re - - The re package is a small, portable, lightweight, and quick, regular expression library for Common Lisp -
    • -
    • -recursive-regex - - A library to extend CL-PPCRE to make regular expression named capture groups dispatch to custom matcher functions and named-expression patterns -
    • -
    • -Regex - - Regex is a full-featured regular expression compiler and matching engine written by Michael Parker -
    • -
    • -regex (library by asciian) - - A relatively incomplete (as of Jan 2018) relatively concise backtracking POSIX compatible regular expression library -
    • -
    • -terse-ppcre - - TERSE-PPCRE aims to make manipulating CL-PPCRE regular expression parse trees easier and more succinct -
    • -
    • -The Regex Coach - - A graphical Common Lisp application which can be used to experiment with (Perl-compatible) regular expressions interactively -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/repl.html b/clones/lisp/www.cliki.net/repl.html deleted file mode 100644 index a3e465f7..00000000 --- a/clones/lisp/www.cliki.net/repl.html +++ /dev/null @@ -1,202 +0,0 @@ - - - - - CLiki: REPL - - - - - - - -
    REPL
    The Read Eval Print Loop of a Lisp listener.

    Implementation of a REPL in Common Lisp

    The most basic REPL implementation is just what it says:

    NOTE: the code presented here lacks flushing (call to finish-output). It'll have to be updated

    Given the order of evaluation imposed by the parentheses, READ is -evaluated first, then EVAL, then PRINT, then LOOP. Hence REPL.

    -cl-user> (Loop (Print (Eval (Read))))
    -(+ 2 3)
    -
    -5 (list 1 'apple 2 'orange)
    -
    -(1 apple 2 orange) ; Evaluation aborted on #<com.informatimago.signal:user-interrupt #x302004E56F0D>.
    -cl-user> 
    -

    -A more sophisticated REPL (conforming to the ANSI Common Lisp -specification) could be:

    (defmacro handling-errors (&body body) - `(handler-case (progn ,@body) - (simple-condition (err) - (format *error-output* "~&~A: ~%" (class-name (class-of err))) - (apply (function format) *error-output* - (simple-condition-format-control err) - (simple-condition-format-arguments err)) - (format *error-output* "~&")) - (condition (err) - (format *error-output* "~&~A: ~% ~S~%" - (class-name (class-of err)) err)))) - -(defun repl () - (do ((+eof+ (gensym)) - (hist 1 (1+ hist))) - (nil) - (format t "~%~A[~D]> " (package-name *package*) hist) - (handling-errors - (setf +++ ++ ++ + + - - (read *standard-input* nil +eof+)) - (when (or (eq - +eof+) - (member - '((quit)(exit)(continue)) :test (function equal))) - (return-from repl)) - (setf /// // // / / (multiple-value-list (eval -))) - (setf *** ** ** * * (first /)) - (format t "~& --> ~{~S~^ ;~% ~}~%" /))))

    It provides the standard REPL variables, -, +, ++, +++, *, **, ***, /, -// and ///, and handle errors reporting a message. In CL -implementations, the debugger would be invoked upon errors.

    -cl-user> (repl)
    -
    -COMMON-LISP-USER[1]> (* 3 4)
    -
    - --> 12
    -
    -COMMON-LISP-USER[2]> (/ 1 0)
    -
    -division-by-zero: 
    -  #<division-by-zero #x302004F8497D>
    -
    -COMMON-LISP-USER[3]> (quit)
    -nil
    -cl-user> 
    -

    -

    Examples and Comparison of REPL

    Here are two examples of REPL interaction.

    The first is with an ANSI Common Lisp implementation; all Common Lisp -implementations have similar REPL, but they differ in the set of -command they offer in the debugger. slime covers the differences -with a common layer.

    The second is with an ANSI C implementation. C implementations don't -often provide a REPL, having an heritage of batch processing much more -than interactive development, but there are a few C implementations -that provide more or less limited REPL.

    Langage: ANSI Common Lisp; Implementation: clisp

    -[pjb@kuiper :0 ~]$ clisp -ansi -norc
    -  i i i i i i i       ooooo    o        ooooooo   ooooo   ooooo
    -  I I I I I I I      8     8   8           8     8     o  8    8
    -  I  \ `+' /  I      8         8           8     8        8    8
    -   \  `-+-'  /       8         8           8      ooooo   8oooo
    -    `-__|__-'        8         8           8           8  8
    -        |            8     o   8           8     o     8  8
    -  ------+------       ooooo    8oooooo  ooo8ooo   ooooo   8
    -
    -Welcome to GNU CLISP 2.49+ (2010-07-17) <http://clisp.org/>
    -
    -Copyright (c) Bruno Haible, Michael Stoll 1992, 1993
    -Copyright (c) Bruno Haible, Marcus Daniels 1994-1997
    -Copyright (c) Bruno Haible, Pierpaolo Bernardi, Sam Steingold 1998
    -Copyright (c) Bruno Haible, Sam Steingold 1999-2000
    -Copyright (c) Sam Steingold, Bruno Haible 2001-2010
    -
    -Type :h and hit Enter for context help.
    -
    -[1]> (defun f (x) (if (< x 1) 1 (* x (f (1- x)))))
    -F
    -[2]> (f 5)
    -120
    -[3]> (defparameter *s* 0)
    -*S*
    -[4]> (loop for i from 0 to 5 do (incf *s* (f i)))
    -NIL
    -[5]> *s*
    -154
    -[6]> (loop for i from 0 to 5 do (incf *s* (f (/ i))))
    -
    -*** - /: division by zero
    -The following restarts are available:
    -ABORT          :R1      Abort main loop
    -Break 1 [7]> :bt 4 1
    -<1/246> #<SYSTEM-FUNCTION SHOW-STACK> 3
    -<2/239> #<COMPILED-FUNCTION SYSTEM::PRINT-BACKTRACE>
    -<3/233> #<COMPILED-FUNCTION SYSTEM::DEBUG-BACKTRACE>
    -<4/224> #<SYSTEM-FUNCTION SYSTEM::READ-EVAL-PRINT> 2
    -<5/221> #<COMPILED-FUNCTION SYSTEM::BREAK-LOOP-2-3>
    -<6/217> #<SYSTEM-FUNCTION SYSTEM::SAME-ENV-AS> 2
    -<7/203> #<COMPILED-FUNCTION SYSTEM::BREAK-LOOP-2>
    -<8/201> #<SYSTEM-FUNCTION SYSTEM::DRIVER>
    -<9/161> #<COMPILED-FUNCTION SYSTEM::BREAK-LOOP>
    -<10/158> #<SYSTEM-FUNCTION INVOKE-DEBUGGER> 1
    -<11/147> #<SYSTEM-FUNCTION /> 1
    -[146] EVAL frame for form (/ I)
    -Printed 11 frames
    -Break 1 [7]> i
    -0
    -Break 1 [7]> :q
    -[8]> (loop for i from 0 to 5 do (incf *s* (f (/ (1+ i)))))
    -NIL
    -[9]> *s*
    -160
    -[10]> (setf *s* 0)
    -0
    -[11]> (loop for i from 0 to 5 do (incf *s* (f (/ (1+ i)))))
    -NIL
    -[12]> *s*
    -6
    -[13]> (f (/ 1 5))
    -1
    -[14]> (f 30)
    -265252859812191058636308480000000
    -[15]> (quit)
    -Bye.
    -[pjb@kuiper :0 ~]$ 
    -

    Langage: ANSI C; Implementation: ch

    -[pjb@kuiper :0 ~]$ ch
    -                              Ch (64-bit)
    -                  Standard edition, version 7.0.0.15151 
    -              Copyright (C) SoftIntegration, Inc. 2001-2011
    -                     http://www.softintegration.com
    -/home/pjb> int f(int x){ return x<1?1:x*f(x-1); }
    -int f(int x){ return x<1?1:x*f(x-1); }
    -/home/pjb> f(5)
    -f(5)
    -120 
    -/home/pjb> int s=0;
    -int s=0;
    -/home/pjb> {int i; for(i=0;i<=5;i++){ s+=f(i); }}
    -{int i; for(i=0;i<=5;i++){ s+=f(i); }}
    -/home/pjb> s
    -s
    -154 
    -/home/pjb> {int i; for(i=0;i<=5;i++){ s+=f(1/i); }}
    -{int i; for(i=0;i<=5;i++){ s+=f(1/i); }}
    -WARNING: integer divide by zero 
    -Segmentation fault
    -[pjb@kuiper :0 ~]$ 
    -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/replay-streams.html b/clones/lisp/www.cliki.net/replay-streams.html deleted file mode 100644 index 9ef29508..00000000 --- a/clones/lisp/www.cliki.net/replay-streams.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: replay-streams - - - - - - - -
    replay-streams
    Replay streams let the programmer rewind to points in a stream that have already been read.

    Depends on: trivial-gray-streams

    Repository: https://codeberg.org/hypergoof/replay-streams

    License: GPL3

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/repo-install.html b/clones/lisp/www.cliki.net/repo-install.html deleted file mode 100644 index e4e01a6b..00000000 --- a/clones/lisp/www.cliki.net/repo-install.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - CLiki: repo-install - - - - - - - -
    repo-install
    Repo-install is a common lisp package manager that can be used to chase down and download dependencies between common lisp packages. Unlike other package managers (asdf-install), repo-install maintains the connection between source code on your disk, and the upstream repository.

    There are two primary advantages to this: -

      -
    1. Changes you make to your local copy of the package remain in place even when you update to a newer version of the package.
    2. -
    3. It is much easier to submit patches to the upstream maintainer. For distributed version control systems, it is also much easier for the upstream maintainer to integrate your patches.
    4. -

    The repo-install homepage is here.

    installer

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/require-module.html b/clones/lisp/www.cliki.net/require-module.html deleted file mode 100644 index 820f1a24..00000000 --- a/clones/lisp/www.cliki.net/require-module.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: require-module - - - - - - - -
    require-module
    A variant of require which has a portable mechanism for searching for and locating files corresponding to modules.

    Repository: https://github.com/tfeb/tfeb-lisp-tools

    License: MIT


    -Development
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/reserve-channel.html b/clones/lisp/www.cliki.net/reserve-channel.html deleted file mode 100644 index d1adbccc..00000000 --- a/clones/lisp/www.cliki.net/reserve-channel.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: reserve-channel - - - - - - - -
    reserve-channel
    Simple routing daemons that checks reachability of packets to external host and switch routing to backup channels if needed. -
    -https://developer.bazon.ru/hg/debian-lisp/reserve-channel/


    -system programming
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/resolver.html b/clones/lisp/www.cliki.net/resolver.html deleted file mode 100644 index 737d4787..00000000 --- a/clones/lisp/www.cliki.net/resolver.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: resolver - - - - - - - -
    resolver
    A UFFI interface to Linux's libresolv library (see resolver(3)). This library is used for domain name lookups utilizing the DNS system.

    Author: Dave Roberts

    http://www.findinglisp.com/packages/

    ffi

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/restas.html b/clones/lisp/www.cliki.net/restas.html deleted file mode 100644 index 459738ff..00000000 --- a/clones/lisp/www.cliki.net/restas.html +++ /dev/null @@ -1,71 +0,0 @@ - - - - - CLiki: RESTAS - - - - - - - -
    RESTAS
    RESTAS is a web framework, used to develop the site lisper.ru

    Homepage: RESTAS

    Documentation: http://restas.lisper.ru/en/

    Source code: https://github.com/archimag/restas

    Features

      -
    • Based on Hunchentoot -
    • -
    • Uses cl-routes for mapping URL (without MVC)
    • -
    • Supports the reuse of web applications as plug-ins
    • -
    • Pure lisp daemonization with SBCL on GNU/Linux without of GNU Screen or detachtty (tested on Gentoo and Debian)
    • -

    Very simple examples

    Screencast -http://www.youtube.com/watch?v=bxnwe16Bqyk

    Currently available restas-plugins

    For Gentoo-users is available of fork gentoo-lisp-overlay, which contains ebuild-files for RESTAS and some plugins: https://github.com/archimag/archimag-lisp-overlay

    Evaluation, 20100901

    A very brief assessment of all web frameworks listed in cliki was carried out in September 2010. This assessment comprised: check websites, download source if available, attempt to compile, review documentation.

    The review found that RESTAS was under active development. Documentation was mainly in Russian.

    Evaluation, 20140602

    -The latest commit to the code repository dates back 7 months.

    The documentation is out to date, by an author's own statement.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/retrospectiff.html b/clones/lisp/www.cliki.net/retrospectiff.html deleted file mode 100644 index dc188a09..00000000 --- a/clones/lisp/www.cliki.net/retrospectiff.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: retrospectiff - - - - - - - -
    retrospectiff
    retrospectiff is a library for reading and writing TIFF image files in Common Lisp.

    Homepage: https://github.com/slyrus/retrospectiff

    License: BSD

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/rfc2109.html b/clones/lisp/www.cliki.net/rfc2109.html deleted file mode 100644 index 53dcf074..00000000 --- a/clones/lisp/www.cliki.net/rfc2109.html +++ /dev/null @@ -1,62 +0,0 @@ - - - - - CLiki: rfc2109 - - - - - - - -
    rfc2109
    rfc2109 (aka cookies1) is a package for dealing with cookies in an RFC-compliant way. This is often needed with Web programming.

    License: BSD 3-Clause

    Repository: https://gitlab.common-lisp.net/rfc2109/rfc2109

    Usage summary: -

    (cookie1:cookie-string "mycookie" "42" :max-age (* 6 24 60 60)) -(cookie1:parse-cookies "thisis=\"an old netscape cookie\"") -(cookie1:parse-cookies "$Version=1;thisis=\"An RFC 2109-style cookie\";domain=\"fake.domain.name\"")

    An araneida example is here: http://paste.lisp.org/display/10504

    It parses old netscape cookies as well as RFC 2109 cookies.

    - Alan Shields


    The function cookie-string in this package does not accept a value of zero, even though RFC2109 says it should. Is this a bug or a feature?


    After receiving no reply from Alan, I'm putting up a separate darcs repo that adds two things to the official one:

      -
    • Allow zero max-age to allow expiring a cookie. -
    • -
    • Add Netscape's "Expires" attribute which some browsers require for -setting a persistent cookie. -
    • -
    • Support parsing cookie values that contain equals signs ('='). Though against the spec, these exist in the wild, used in e.g. Google AdSense/Analytics. -
    • -

    There are no other changes. Ideally these changes would be merged to the main tree.

    Sasha Kovar

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/rfc2388.html b/clones/lisp/www.cliki.net/rfc2388.html deleted file mode 100644 index a47268c2..00000000 --- a/clones/lisp/www.cliki.net/rfc2388.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: rfc2388 - - - - - - - -
    rfc2388
    rfc2388 processes HTTP POST form data using enctype "multipart/form-data", as described in RFC 2388. Its home page is on common-lisp.net.

    There's another branch at the UCW repos, which is not backward compatible but contains extra patches. The main difference is that it accepts that http is a binary protocol and expects a binary network stream.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/rfc2822.html b/clones/lisp/www.cliki.net/rfc2822.html deleted file mode 100644 index 69ca6fb0..00000000 --- a/clones/lisp/www.cliki.net/rfc2822.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: rfc2822 - - - - - - - -
    rfc2822
    Text email as defined in RFC 2822.

    The project is at https://gitlab.common-lisp.net/rfc2822/rfc2822.

    Currently not in production-usable state but is fairly complete (sans OBS rules). It has some performance issues (due to overuse of regexes) which are being worked on.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/rfc3339-timestamp.html b/clones/lisp/www.cliki.net/rfc3339-timestamp.html deleted file mode 100644 index 2b1b1937..00000000 --- a/clones/lisp/www.cliki.net/rfc3339-timestamp.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: rfc3339-timestamp - - - - - - - -
    rfc3339-timestamp
    A library to decode and encode timestamps according to RFC 3339. This library also supports some more sloppily encoded dates (to allow its use in rpc4cl) but can be made to enforce compliant timestamps should this behavior be desired.

    Depends on: cl-yacc

    Homepage: https://github.com/can3p/rfc3339-timestamp

    License: BSD 2-Clause

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/rif.html b/clones/lisp/www.cliki.net/rif.html deleted file mode 100644 index d725763a..00000000 --- a/clones/lisp/www.cliki.net/rif.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: rif - - - - - - - -
    rif
    New to Lisp in 2002. Recently finished my PhD at MIT. Employed by Honda. Interested in artificial intelligence, audio processing, and music.

    person

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/riff-wave.html b/clones/lisp/www.cliki.net/riff-wave.html deleted file mode 100644 index 4c90d03d..00000000 --- a/clones/lisp/www.cliki.net/riff-wave.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: RIFF-WAVE - - - - - - - -
    RIFF-WAVE
    riff-wave provides functions to read and write WAVE files.

    Written by Max Rottenkolber.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/rip-l.html b/clones/lisp/www.cliki.net/rip-l.html deleted file mode 100644 index 8e37d76c..00000000 --- a/clones/lisp/www.cliki.net/rip-l.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: rip-l - - - - - - - -
    rip-l
    A CD audio ripper and encoder front-end application to paranoia and Ogg Vorbis. It aims at becoming a replacement for the ripper part of grip written in Common Lisp. It currently works only on SBCL.

    License: Public Domain

    Homepage: https://www.xach.com/rip-l/

    Author: Zach Beane

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/rlc.html b/clones/lisp/www.cliki.net/rlc.html deleted file mode 100644 index fcac5635..00000000 --- a/clones/lisp/www.cliki.net/rlc.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: rlc - - - - - - - -
    rlc
    RLC is an electronics library which graphs solutions to RLC (resistance, inductance, and capacitance) circuits: http://rlc.kpe.io/
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/rlwrap.html b/clones/lisp/www.cliki.net/rlwrap.html deleted file mode 100644 index 21c59ee6..00000000 --- a/clones/lisp/www.cliki.net/rlwrap.html +++ /dev/null @@ -1,88 +0,0 @@ - - - - - CLiki: rlwrap - - - - - - - -
    rlwrap
    rlwrap provides a nicer repl outside of SLIME. Example use:

    -#!/bin/sh
    -BREAK_CHARS="(){}[],^%$#@\"\";''|\\"
    -RLWRAP=
    -if [ $TERM == "dumb" ]; then  # slime
    -  RLWRAP=
    -else
    -  RLWRAP="rlwrap --remember --history-filename=$HOME/.sbcl_history --histsize=1000000 -c -b $BREAK_CHARS -f $HOME/.sbcl_completions"
    -fi
    -if [ $# -eq 0 ]; then
    -  exec $RLWRAP /opt/local/bin/sbcl
    -else # permits #!/usr/bin/env sbcl , but breaks sbcl --help, etc.
    -  exec /opt/local/bin/sbcl --script $*
    -fi
    -

    And here's an SBCL script to generate the completions:

    -#! /usr/bin/env sbcl
    -(let (symbols)
    -  (do-all-symbols (sym)
    -    (let ((package (symbol-package sym)))
    -      (cond
    -        ((not (fboundp sym)))
    -        ((or (eql #.(find-package :cl) package)
    -             (eql #.(find-package :cl-user) package))
    -         (pushnew (symbol-name sym) symbols))
    -        ((eql #.(find-package :keyword) package)
    -         (pushnew (concatenate 'string ":" (symbol-name sym)) symbols))
    -        (package
    -          (pushnew (concatenate 'string (package-name package)
    -                               ":"
    -                               (symbol-name sym))
    -                  symbols)))))
    -  (with-open-file (output #.(concatenate 'string (posix-getenv "HOME")
    -                                         "/.sbcl_completions")
    -                          :direction :output :if-exists :overwrite
    -                          :if-does-not-exist :create)
    -    (format output "~{~(~A~)~%~}" (sort symbols #'string<))))
    -


    -Development
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/robotics.html b/clones/lisp/www.cliki.net/robotics.html deleted file mode 100644 index 12646e88..00000000 --- a/clones/lisp/www.cliki.net/robotics.html +++ /dev/null @@ -1,57 +0,0 @@ - - - - - CLiki: robotics - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/robots.txt.html b/clones/lisp/www.cliki.net/robots.txt.html deleted file mode 100644 index 9a70bc8e..00000000 --- a/clones/lisp/www.cliki.net/robots.txt.html +++ /dev/null @@ -1,2 +0,0 @@ -User-agent: * -Disallow: /site/ \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/rock.html b/clones/lisp/www.cliki.net/rock.html deleted file mode 100644 index b525710a..00000000 --- a/clones/lisp/www.cliki.net/rock.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: rock - - - - - - - -
    rock
    Rock is an asset manager for Common Lisp. It's basically a combination of Bower and webassets.

    Rock takes care of downloading specific versions of libraries – jQuery, Bootstrap, FontAwesome – and bundling their files together so you can compile all your JavaScript and CSS into single files.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/rootkit.html b/clones/lisp/www.cliki.net/rootkit.html deleted file mode 100644 index 8a725296..00000000 --- a/clones/lisp/www.cliki.net/rootkit.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: rootkit - - - - - - - -
    rootkit
    The root package implements a convenient security backdoor for Unix with CMUCL:

    -  (as-superuser ...)
    -

    So that you can run lisp as a normal user, but temporarily switch to root at will.

    If you are concerned about local root exploits, you probably don't want to use this package. Otherwise, it's a way to make privileged system calls without having to run as root all the time (mucking up your file permissions and so on).

    A better way to do this would be to use the sudo command instead - and it provides for security too.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ropes.html b/clones/lisp/www.cliki.net/ropes.html deleted file mode 100644 index 477c166f..00000000 --- a/clones/lisp/www.cliki.net/ropes.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: ropes - - - - - - - -
    ropes
    ropes is an implementation of the rope data structure, an alternative to strings with more efficient concatenation.

    Homepage: https://github.com/Ramarren/ropes

    License: BSD

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/roswell.html b/clones/lisp/www.cliki.net/roswell.html deleted file mode 100644 index 00db3c90..00000000 --- a/clones/lisp/www.cliki.net/roswell.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Roswell - - - - - - - -
    Roswell
    Roswell is a Lisp implementation installer/manager, launcher, and much more!

    Roswell started out as a command-line tool with the aim to make installing and managing Common Lisp implementations really simple and easy.

    Roswell has now evolved into a full-stack environment for Common Lisp development, and has many features that makes it easy to test, share, and distribute your Lisp applications. With Roswell, we aim to push the Common Lisp community to a whole new level of productivity.

    Roswell is still in beta. Despite this, the basic interfaces are stable and not likely to change. Roswell currently works well on Unix-like platforms such as Linux, Mac OS X and FreeBSD. Roswell also works on other operating systems, but currently some parts or features might be missing or unstable.

    Check out the issues list if you are interested in what's lacking.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/rove.html b/clones/lisp/www.cliki.net/rove.html deleted file mode 100644 index 1634bbf6..00000000 --- a/clones/lisp/www.cliki.net/rove.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: rove - - - - - - - -
    rove
    rove is a test framework with roswell integration.

    Source code repository: https://github.com/fukamachi/rove

    License: BSD-3-Clause

    Author: Eitaro Fukamachi

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/rpc4cl.html b/clones/lisp/www.cliki.net/rpc4cl.html deleted file mode 100644 index 48b494f8..00000000 --- a/clones/lisp/www.cliki.net/rpc4cl.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: rpc4cl - - - - - - - -
    rpc4cl
    Yet another XML-RPC implementation for CL.

    The latest version of rpc4cl can be found on its homepage.

    Version 0.2.1 onwards uses rfc3339-timestamp to parse timestamps.

    License: BSD 2-Clause


    -Topics: XML
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/rpm.html b/clones/lisp/www.cliki.net/rpm.html deleted file mode 100644 index a77a7504..00000000 --- a/clones/lisp/www.cliki.net/rpm.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: rpm - - - - - - - -
    rpm
    rpm is a library that allows you to manipulate RPM packages from CL.

    Repository: https://gitlab.common-lisp.net/qitab/rpm

    License: MIT


    -Linux
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/rt.html b/clones/lisp/www.cliki.net/rt.html deleted file mode 100644 index ecda7705..00000000 --- a/clones/lisp/www.cliki.net/rt.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: rt - - - - - - - -
    rt
    rt is a 1990 regression testing library that is used by some older software.

    Paul Dietz has added some features to rt for his GCL ANSI Test Suite. These extensions have been incorporated into sbcl's sb-rt package and Kevin Rosenberg's cl-rt Debian package.

    Kevin Rosenberg's git repository: http://git.kpe.io/?p=rt.git;a=summary

    Old version from the CMU AI Repository: http://www.cs.cmu.edu/afs/cs/project/ai-repository/ai/lang/lisp/code/testing/rt/0.html


    -obsolete
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/rtch.html b/clones/lisp/www.cliki.net/rtch.html deleted file mode 100644 index c75323ec..00000000 --- a/clones/lisp/www.cliki.net/rtch.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: rtch - - - - - - - -
    rtch
    rtch is a Development tool and hackbrary which facilitates organizing tests in the RT test framework in a directory hierarchy.

    It should be downloadable here.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/rtm-lisp-api.html b/clones/lisp/www.cliki.net/rtm-lisp-api.html deleted file mode 100644 index 78722a15..00000000 --- a/clones/lisp/www.cliki.net/rtm-lisp-api.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: rtm-lisp-api - - - - - - - -
    rtm-lisp-api
    rtm-lisp-api is a Common Lisp interface to the Remember The Milk API, a web API which enables managing the tasks of a given user. Contacts, locations, task lists, timelines and undo's are are all supported.

    Current version is 0.1.

    It requires IRONCLAD, CL-JSON and DRAKMA.

    Tested on Clozure.

    Repository: https://github.com/edgargoncalves/rtm-lisp-api

    Author: Edgar Gonçalves

    License: MIT

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/rtorrent-controller.html b/clones/lisp/www.cliki.net/rtorrent-controller.html deleted file mode 100644 index 61502b09..00000000 --- a/clones/lisp/www.cliki.net/rtorrent-controller.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: rtorrent-controller - - - - - - - -
    rtorrent-controller
    rtorrent-controller is an application to control rTorrent.

    Homepage: https://github.com/stassats/rtorrent-controller

    Depends on: s-xml-rpc, stassats-inotify

    License: public domain


    -Distributed
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/rutils.html b/clones/lisp/www.cliki.net/rutils.html deleted file mode 100644 index b7e96256..00000000 --- a/clones/lisp/www.cliki.net/rutils.html +++ /dev/null @@ -1,139 +0,0 @@ - - - - - CLiki: rutils - - - - - - - -
    rutils
    REASONABLE-UTILITIES (RUTILS) is yet another general purpose utilities package for COMMON-LISP.

    Rationale

    The other utility packages in CL-land include: CL-UTILITIES, METATILITIES, ARNESI and ALEXANDRIA to name a few. There are following motivations for creating another collection:

    1. Virtually everyone talks about utilities in CL (probably, due to Paul Graham's On Lisp, that starts with a chapter on the importance of utilities). But the existing utility packages are not enough visible and widespread either due to: not enough utility :), poor names, or lack of community involvement. The best and, probably, quite usable package is, in my opinion, ALEXANDRIA, which has a great team of developers, but basically suffers from 2 shortcomings:

      -
    • bad name (not recognized as a utilities package) -
    • -
    • the idea to be a "good citizen" in the CL world and not include code from other well-established, but specific utilities packages (SPLIT-SEQUENCE, ITERATE, ANAPHORA, ...) -
    • -

    The second problem is most important, for the utility package should be as much all-around, all-encompassing one as possible. Because it should be used in most of the libraries, and library authors, for obvious reasons, don't like to add dependencies. This is one of the causes of not enough spread of such very useful packages, as ITERATE: one or two usages of the ITER macro often don't justify the dependency on an additional package. Yet, if all various utilities are collected under one roof, it should be a much more reasonable choice to depend on it.

    2. Yet the reverse of coin of all-encompassing utilities' package is bloat. It is a common complain about the CL standard, that it lacks modularity, and the utilities' package can as well suffer from the same problem. But the solution to it is found and implemented using the CL package mechanism: every part of functionality (like list or hash-table handling) is segmented into it's own package. Every package name is formed according to the following template: RUTILS. (like: RUTILS.LIST, RUTILS.ITER). So it's a 1 dependency (1 ASDF system) - multiple packages, that can be used on demand, depending on the project's needs. Besides, there are umbrella packages, that include most of the useful functionality, omitting only experimental stuff. A style distinction of different naming conventions is also taken into consideration, so both long and short names are allowed to coexist and be selected according to one's preferences. So there are such umbrella packages as: RUTILS.USER and RUTILS.USR.

    3. Support for growth of CL

    Our aim is to include in this package as much of the work done in the previous periods and scattered over the Internet, as possible. Those utilities are unified in this package and a lot of effort is put into better documenting them.

    Besides we want to support some (or several) community process for developing the CL environment and incorporating into it new ideas, that are proved important and useful.

    One of such processes is CDR and we aim to provide an implementation of every CDR proposal, that targets "user-space" (i.e. does not require efforts on the implementation side).

    Besides there is RUTILS.EXPERIMENTAL package, that will include some of the ideas, that are not yet tested enough, but might become valuable in the future.

    Finally, the most important goal of this project is to gather around it a big community of Lisp enthusiasts, that will be able to make their impact in improving it. That is why it is planned to establish a web-site, that will allow posting and discussing of the suggestions of features to be added to the collection.

    As well additional maintainers for the project are needed.

    4. What is included and excluded

    Included

    Additional control constructs:

      -
    • Basic (control.lisp) -
    • -
    • Anaphoric utilities -
    • -
    • Symbols' and literals' manipulation (core.lisp) -
    • -
    • A general BIND macro -
    • -
    • ITER macro with keywords support (see iter.txt) -
    • -
    • PKG: read time manipulation of package visibility (see pkg.txt) -
    • -

    Enhanced handling of:

      -
    • Arrays -
    • -
    • Conditions -
    • -
    • Lists -
    • -
    • Functions -
    • -
    • Hash-tables (+ GENHASH, CDR 2) -
    • -
    • Numbers (incl. CDR 5) -
    • -
    • Objects -
    • -
    • Sequences (+ an implementation of the SEQ protocol, loosely based on Clojure, see seq.txt. + SPLIT-SEQUENCE, see split-sequence.txt) -
    • -
    • String handling -
    • -
    • Tree handling -
    • -

    Excluded

      -
    • Support for concurrency. The reason is not, that we consider this not useful or general-purpose enough, but rather, that it's a whole new paradigm, and the scope of RUTILS is too small to comfortably accommodate it. Look at: -
        -
      • CL-STM -
      • -
      • -PCALL -
      • -
      • PORTABLE-FUTURES -
      • -
      • -CL-MUPROC -
      • -
      • BUTTERFLY (proprietary) -
      • -
      -
    • -
    • Functional features. As in the above, it's as well a whole other paradigm. It has a limited, but reasonable support in CL. Other features should be unified in it's own package, and maybe RUTILS can serve as a model for such package or even accommodate it in the future. Look at: - -
    • -
    • Collections are as well a separate area in CS, so it requires a lot of effort to maintain and develop a comprehensive package in it. Look at: - -
    • -
    • -MOP. MOP abstraction layer is a CDR and it is as well an essential part of CL. It is implemented in CLOSER-MOP, and there are plans to integrate it in the future. -
    • -

    Additional notes

    See LICENSE for usage permissions.

    See AUTHORS for credits.

    The following symbols are added to *FEATURES*:

      -
    • :iter -
    • -
    • :split-sequence -
    • -
    • :seq -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/rw-ut.html b/clones/lisp/www.cliki.net/rw-ut.html deleted file mode 100644 index 70993da6..00000000 --- a/clones/lisp/www.cliki.net/rw-ut.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - CLiki: rw-ut - - - - - - - -
    rw-ut
    rw-ut reads and writes lisp universal times as ISO-8601 strings.

    Universal times stored as strings using `rw-ut' have the following advantages over normal universal times stored as integers:

      -
    • they are human readable and thus less prone to bugs
    • they are easier to use with external databases or other programs that expect times dates encoded as strings
    • they are ISO-8601 compliant [by default]
    • -
    -Repository: https://github.com/nallen05/rw-ut

    License: BSD

    Author: Nick Allen


    -data format
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/s-base64.html b/clones/lisp/www.cliki.net/s-base64.html deleted file mode 100644 index 8716fa3f..00000000 --- a/clones/lisp/www.cliki.net/s-base64.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: s-base64 - - - - - - - -
    s-base64
    Base64 encoding/decoding library by Sven Van Caekenberghe.

    Repository: https://github.com/svenvc/s-base64

    License: LLGPL


    -data format
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/s-dot.html b/clones/lisp/www.cliki.net/s-dot.html deleted file mode 100644 index 139a36a1..00000000 --- a/clones/lisp/www.cliki.net/s-dot.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: s-dot - - - - - - - -
    s-dot
    S-Dot by Martin Loetzsch is a Common Lisp interface to the 'dot' tool of the GraphViz graphics library. With s-dot, you can specify a graph in an s-expressions syntax and a there are functions to translate these s-expressions into the native syntax of the dot tool.

    S-Dot is open source under an Apache style licence.

    You may want to check out cl-graphviz and cl-dot.


    -graph visualization
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/s-exp syntax.html b/clones/lisp/www.cliki.net/s-exp syntax.html deleted file mode 100644 index ec4294fd..00000000 --- a/clones/lisp/www.cliki.net/s-exp syntax.html +++ /dev/null @@ -1,124 +0,0 @@ - - - - - CLiki: s-exp syntax - - - - - - - -
    s-exp syntax
    S-exp syntax is a topic for programs that let you translate s-expressions to other grammars. Things that let you write C with s-exps qualify, as do many markup libraries. Some markup libraries with a lot of implementations, like HTML generators, get their own topic, and shouldn't use this one.

      -
    • -AWK Lisp - - AWK Lisp is a A Common Lisp interpreter implemented in Awk and written by Roger Rohrbach -
    • -
    • -c-amplify - - c-amplify is an s-exp syntax for writing C code -
    • -
    • -C-Mera - - C-Mera is a very simple source-to-source compiler that utilizes Lisp's macro system for meta programming of C-like languages -
    • -
    • -cl-larval - - S-Exp syntax to write assembler for AVR microcontrollers -
    • -
    • -css-lite - - css-lite is a library for generating CSS from an s-exp syntax -
    • -
    • -lfe - - LFE, Lisp Flavoured Erlang, is a lisp s-exp syntax front-end to the Erlang compiler -
    • -
    • -LinJ - - Linj is a Common Lisp-like language that tries to be as similar to -
    • -
    • -Liskell - - Liskell is a s-exp syntax for Haskell -
    • -
    • -ltd - - ltd is a Common Lisp to Dylan translator -
    • -
    • -Meta - - A recursive-descent parser DSL that is a simpler alternative to parser generators -
    • -
    • -NPG - - NPG is a Naïve Parser Generator -
    • -
    • -parenscript - - Parenscript is a translator from an extended subset of Common Lisp to JavaScript -
    • -
    • -PLisp - - PLisp is an s-exp syntax for generating PostScript files -
    • -
    • -readable - - readable adds additional abbreviations in the sexp reader; supports infix, optional standard function call notation, optional indentation -
    • -
    • -SC Language - - Tasuku Hiraishi's SC is an s-exp syntax (Scheme-like) for writing C code, implemented in Common Lisp -
    • -
    • -sml - - S-expression-based markup language -
    • -
    • -sst - - SST (SQL Schema Transformer) is a Common Lisp program that transforms an s-expression based database schema format medium into appropriate SQL commands for specified RDBMS -
    • -
    • -SxQL - - An SQL generator for Common Lisp -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/s-http-client.html b/clones/lisp/www.cliki.net/s-http-client.html deleted file mode 100644 index 735317ff..00000000 --- a/clones/lisp/www.cliki.net/s-http-client.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: s-http-client - - - - - - - -
    s-http-client
    s-http-client is an HTTP client library.

    Currently HTTPS is only supported using LispWorks.

    License: LLGPL

    Author: Sven Van Caekenberghe

    Homepage: https://github.com/svenvc/s-http-client

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/s-http-server.html b/clones/lisp/www.cliki.net/s-http-server.html deleted file mode 100644 index afdde2d3..00000000 --- a/clones/lisp/www.cliki.net/s-http-server.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: s-http-server - - - - - - - -
    s-http-server
    s-http-server is a trivial HTTP server by Sven Van Caekenberghe.

    Homepage at https://github.com/svenvc/s-http-server

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/s-protobuf.html b/clones/lisp/www.cliki.net/s-protobuf.html deleted file mode 100644 index 4dc1b7a7..00000000 --- a/clones/lisp/www.cliki.net/s-protobuf.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: S-PROTOBUF - - - - - - - -
    S-PROTOBUF
    S-PROTOBUF is a library to encode data in the Google Protocol Buffers wire format.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/s-sysdeps.html b/clones/lisp/www.cliki.net/s-sysdeps.html deleted file mode 100644 index 053e093a..00000000 --- a/clones/lisp/www.cliki.net/s-sysdeps.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: s-sysdeps - - - - - - - -
    s-sysdeps
    S-SYSDEPS is an abstraction layer over platform dependent functionality.

    Author: Sven Van Caekenberghe

    Repository: https://github.com/svenvc/s-sysdeps

    License: LLGPL


    -system programming
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/s-utils.html b/clones/lisp/www.cliki.net/s-utils.html deleted file mode 100644 index 2858d3e7..00000000 --- a/clones/lisp/www.cliki.net/s-utils.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: s-utils - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/s-xml-rpc.html b/clones/lisp/www.cliki.net/s-xml-rpc.html deleted file mode 100644 index 9065b1ad..00000000 --- a/clones/lisp/www.cliki.net/s-xml-rpc.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: s-xml-rpc - - - - - - - -
    s-xml-rpc
    s-xml-rpc (https://common-lisp.net/project/s-xml-rpc) is an implementation of the XML-RPC protocol in Common Lisp for both client -and server.

    Originally it was written by Sven Van Caekenberghe. It is now being maintained by Sven Van Caekenberghe, Rudi Schlatte and Brian Mastenbrook.

    Repository: https://gitlab.com/ambrevar/s-xml-rpc

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/s-xml.html b/clones/lisp/www.cliki.net/s-xml.html deleted file mode 100644 index df930df3..00000000 --- a/clones/lisp/www.cliki.net/s-xml.html +++ /dev/null @@ -1,61 +0,0 @@ - - - - - CLiki: s-xml - - - - - - - -
    s-xml
    S-XML is a simple basic XML parser with both a function and (S)SAX like event interface as well as a DOM interface with LXML, SXML and an XML-ELEMENT struct DOM representation.

    See also web, for other tools.

    This XML parser implementation has the following features: -

      -
    • It works (handling many common XML usages).
    • -
    • It is very small (the core is about 700 lines of code, including comments and whitespace).
    • -
    • It has a core API that is simple, efficient and pure functional, much like that from SSAX.
    • -
    • It supports different DOM models: an XSML-based one, an LXML-based one and a classic xml-element struct based one.
    • -
    • It is reasonably time and space efficient (internally avoiding garbage generation as much as possible).
    • -
    • It does support CDATA.
    • -
    • It should support the same character sets as your Common Lisp implementation.
    • -
    • It does support XML name spaces.
    • -

    Originally it was written by Sven Van Caekenberghe. It is now being maintained by Sven Van Caekenberghe, Rudi Schlatte and Brian Mastenbrook.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/safe-queue.html b/clones/lisp/www.cliki.net/safe-queue.html deleted file mode 100644 index d843c3d3..00000000 --- a/clones/lisp/www.cliki.net/safe-queue.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: safe-queue - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/salza-png.html b/clones/lisp/www.cliki.net/salza-png.html deleted file mode 100644 index 8cdb8612..00000000 --- a/clones/lisp/www.cliki.net/salza-png.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: salza-png - - - - - - - -
    salza-png
    salza-png is considered obsolete by the author in favor of ZPNG.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/salza.html b/clones/lisp/www.cliki.net/salza.html deleted file mode 100644 index 757fef0a..00000000 --- a/clones/lisp/www.cliki.net/salza.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: Salza - - - - - - - -
    Salza
    If you're writing new code, you probably want to check out Salza2, which is a from-scratch reimplementation, and is much faster and simpler (and maintained).

    Salza is a Common Lisp compression library that provides an FFI-less interface to the ZLIB and DEFLATE compressed data formats.

    Currently, Salza only compresses data, decompression is not implemented.

    Salza's PNG functionality is one of the backends of Yannick Gingras's Fract -fractal explorer. CL-PDF also uses this library for compression of pdf files.

    Salza is licensed under a BSD/MIT/X11-ish license.

    Download: http://www.xach.com/lisp/salza/salza-0.7.4.tar.gz


    -obsolete
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/salza2.html b/clones/lisp/www.cliki.net/salza2.html deleted file mode 100644 index c9957cec..00000000 --- a/clones/lisp/www.cliki.net/salza2.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Salza2 - - - - - - - -
    Salza2
    Salza2 is a native Common Lisp compression library for creating data in the DEFLATE, ZLIB, or GZIP compression formats. It does not yet support decompression. Take a look at chipz for a native Common Lisp library providing DEFLATE/ZLIB decompression.

    It is a from-scratch reimplementation of Salza, which suffered from some design mistakes that made it slower and harder to maintain than it needed to be.

    It is available under a BSD-style license. Full documentation is available on the Salza2 home page.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/sapaclisp.html b/clones/lisp/www.cliki.net/sapaclisp.html deleted file mode 100644 index bdd58552..00000000 --- a/clones/lisp/www.cliki.net/sapaclisp.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: sapaclisp - - - - - - - -
    sapaclisp
    sapaclisp is a collection of Common Lisp functions for spectral analysis. It can be used to perform the calculations presented in the book -"Spectral Analysis for Physical Applications: Multitaper and Conventional Univariate Techniques", by Donald B. Percival and Andrew T. Walden, -Cambridge University Press, Cambridge, England, 1993

    Homepage: http://lib.stat.cmu.edu/sapaclisp/

    License: BSD-like


    -Categories: statistics
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/save-object.html b/clones/lisp/www.cliki.net/save-object.html deleted file mode 100644 index 5846cf29..00000000 --- a/clones/lisp/www.cliki.net/save-object.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: save-object - - - - - - - -
    save-object
    save-object is a library for object serialization.

    Availible at http://www.n-a-n-o.com/lisp/lisp.html

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/sb-cga.html b/clones/lisp/www.cliki.net/sb-cga.html deleted file mode 100644 index 8b584653..00000000 --- a/clones/lisp/www.cliki.net/sb-cga.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: sb-cga - - - - - - - -
    sb-cga
    SB-CGA is a computer graphics algebra library for Common Lisp.

    Despite the prefix it is actually portable—but optimizations that make it fast (using SIMD instructions) are currently implemented for SBCL/x86-64 only.

    There is no fundamental reason why these could not be implemented for other implementations as well, though.

    Repository: https://github.com/nikodemus/sb-cga

    License: MIT


    -linear algebra
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/sb-cpu-affinity.html b/clones/lisp/www.cliki.net/sb-cpu-affinity.html deleted file mode 100644 index 39b2f2a0..00000000 --- a/clones/lisp/www.cliki.net/sb-cpu-affinity.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: sb-cpu-affinity - - - - - - - -
    sb-cpu-affinity
    sb-cpu-affinity lets you set Linux scheduler CPU affinity masks from SBCL.

    Homepage: https://github.com/nikodemus/sb-cpu-affinity

    License: MIT


    -Topics: threads system programming
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/sb-dxf.html b/clones/lisp/www.cliki.net/sb-dxf.html deleted file mode 100644 index 007512f2..00000000 --- a/clones/lisp/www.cliki.net/sb-dxf.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: sb-dxf - - - - - - - -
    sb-dxf
    sb-dxf generates AutoCad dxf CAD vector image files.

    Project hosted at https://github.com/KirillTemnov/sb-dxf

    Lastest source download from https://github.com/KirillTemnov/sb-dxf/tarball/master

    License: BSD


    -file format
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/sb-heapdump.html b/clones/lisp/www.cliki.net/sb-heapdump.html deleted file mode 100644 index 22d78e50..00000000 --- a/clones/lisp/www.cliki.net/sb-heapdump.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: sb-heapdump - - - - - - - -
    sb-heapdump
    sb-heapdump is a library for SBCL which writes graphs of Lisp objects to -disk in the same format SBCL normally uses in memory.

    It is available from https://repo.or.cz/w/sbcl/lichteblau.git, branch master

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/sb-screen.html b/clones/lisp/www.cliki.net/sb-screen.html deleted file mode 100644 index 829821a4..00000000 --- a/clones/lisp/www.cliki.net/sb-screen.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: sb-screen - - - - - - - -
    sb-screen
    sb-screen is a library for displaying text on a console, in the same genre as curses. It's implemented as a wrapper library around the S-Lang library, but hides its operation behind a convenient set of functions. There is texinfo documentation available with the tarball (in PDF format by way of texi2pdf). Anonymous SVN is available at svn://unmutual.info/sb-screen (nope).

    You will need S-Lang installed before loading sb-screen, and you need libslang.so visible somewhere in your linker path. If you have libslang.so.1, a symlink to libslang.so should do (or install your distribution's -dev or -devel package, which is normally responsible for providing such things).

    sb-screen also comes with a wrapper around the SBCL REPL. To use it, once sb-screen is loaded, run (screen-repl:start-repl). Send a Control-D to terminate the REPL.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/sb-sequence.html b/clones/lisp/www.cliki.net/sb-sequence.html deleted file mode 100644 index 9412eaff..00000000 --- a/clones/lisp/www.cliki.net/sb-sequence.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: sb-sequence - - - - - - - -
    sb-sequence
    An SBCL implementation of the protocol for user defined sequences. Strictly speaking, this is not a library but rather an implementation-specific feature but it's Common Lisp code and it's usable. (Note: the feature is implemented in ABCL as well.)

    Check out the 2007 paper by Christophe Rhodes (SBCL maintainer as of 2018-03-19).

    See Also: Proposed Extensions To ANSI

    Topics: language extension

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/sb-simple-audio.html b/clones/lisp/www.cliki.net/sb-simple-audio.html deleted file mode 100644 index 2a300b42..00000000 --- a/clones/lisp/www.cliki.net/sb-simple-audio.html +++ /dev/null @@ -1,65 +0,0 @@ - - - - - CLiki: sb-simple-audio - - - - - - - -
    sb-simple-audio
    sb-simple-audio is a library that provides a simple interface to audio I/O. It is limited to SBCL and Linux (using OSS).

    An example:

    (defparameter *volume* 0.05) - -(defun single-tone (frequency) - "Sounds a tone of the specified frequency, indefinitely." - (with-open-stream (stream (sb-simple-audio:open-audio :sample-rate 44100 :direction :output)) - (let ((phase 0.0d0) - (phase-increment (* 2 pi (/ frequency (sb-simple-audio:sample-rate stream)))) - (amplitude (coerce (* *volume* (sb-simple-audio:max-amplitude stream)) 'double-float)) - (offset (sb-simple-audio:offset stream))) - (loop - (setf phase (mod (+ phase phase-increment) - (* 2 pi))) - (write-byte (+ offset (round (* amplitude (sin phase)))) stream))))) - -(single-tone 600)

    It could for instance be used for playing and recording music or in any other kind of audio signal processing.

    Download Archive

    http://v16.org/lisp/sb-simple-audio_latest.tar.gz

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/sb-texinfo.html b/clones/lisp/www.cliki.net/sb-texinfo.html deleted file mode 100644 index 0721fe9b..00000000 --- a/clones/lisp/www.cliki.net/sb-texinfo.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: sb-texinfo - - - - - - - -
    sb-texinfo
    sb-texinfo was originally written for processing the SBCL docstrings by Rudi Sclatte in 2004, and has been maintained as part of SBCL since then. This version was split from the SBCL sources in 2011 in order to generalize it for documenting other software. Like SBCL, this manual is in the Public Domain.


    -Documentation Tool
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/sbcl.html b/clones/lisp/www.cliki.net/sbcl.html deleted file mode 100644 index 5ea92ff9..00000000 --- a/clones/lisp/www.cliki.net/sbcl.html +++ /dev/null @@ -1,171 +0,0 @@ - - - - - CLiki: SBCL - - - - - - - -
    SBCL
    Steel Bank Common Lisp is an open source / free software Common Lisp implementation. It provides an integrated native compiler, -interpreter, and debugger.

    SBCL is a fork off of the main branch of CMUCL. SBCL is -distinguished from CMUCL by a greater emphasis on maintainability. -In particular, the SBCL system can be built directly from its -source code, so that the output corresponds to the source code in -a controlled, verifiable way, and arbitrary changes can be made to -the system without causing bootstrapping problems. SBCL also -places less emphasis than CMU CL does on new non-ANSI -extensions, or on backward compatibility with old non-ANSI -features.

    More information at the project page at http://sbcl.sourceforge.net/, -and on the SBCL Internals CLiki

    Common-Lisp-Controller-compatible SBCL Debian (.deb) packages are -part of Debian GNU/Linux 3.0/Woody and Debian GNU/Linux 3.1/Sarge for Alpha, x86, PPC, and SPARC. Later releases -will include more architectures.

    Local pages

    Building 0.8.4 on SPARC

    The Sun's assembler doesn't like the GNU syntax used in the SBCL assembler sources, so something like the following is required:

    $ ln -s `which gcc` ~/bin/gcc
    -$ ln -s `which gas` ~/bin/as
    -$ export COMPILER_PATH=~/bin

    Also, when building from CMUCL you need to add the following stanza to src/cold/ansify.lisp:

    #+(and cmu sparc) 
    -(ext:set-floating-point-modes :traps '(:overflow :invalid :divide-by-zero))

    SBCL Advocacy Haiku

    (unless (equalp
    -         (lisp-implementation-type)
    -         "SBCL") (quit))

    #-sbcl(quit)

    Scripts

    -As of SBCL 1.0.22, shebang-scripts are supported via the --script option (add #!/usr/bin/sbcl --script as the first line). However, --script option changes the way initialization is performed (no sysinit (/etc/sbclrc) and no userinit (~/.sbclrc)).

    Older versions of SBCL don't tolerate shebang lines (CLISP does). To create an SBCL script, -manual/Shebang-Scripts.html -suggests using an external trampoline or init hair. That's silly. -An executable file without a shebang line defaults to sh. So an SBCL script is simply -

    $ cat foo
    -#|
    -exec sbcl --noinform --load $0 --end-toplevel-options "$@"
    -|#
    -(format t "hi~%")
    -(quit)
    -$ chmod a+x foo
    -$ ./foo
    -hi
    -$ 
    -To compile, simply -
    #|
    -fasl=`dirname $0`/`basename $0 .lisp`.fasl
    -[ $fasl -ot $0 ] && sbcl --noinform --eval "(compile-file \"$0\")" --eval "(quit)" > /dev/null
    -exec sbcl --noinform --load $fasl --end-toplevel-options "$@"
    -|#

    Installing SBCL from source not in /usr/local

    Unpack the source tarball.

    Set INSTALL_ROOT to where you want it to go.

    - export INSTALL_ROOT=$HOME
    -

    Now use this hack so it will look for the core file in the right place

    -  export CC="cc '-DSBCL_HOME=\"$INSTALL_ROOT/lib/sbcl/\"'"
    -  sh make.sh
    -  sh install.sh
    -

    -

    Using Common Lisp Controller with a self installed SBCL

    Put this in your .sbclrc

    -
    -(require 'sb-bsd-sockets) ; needed now because it does not gel well with the path munging by the common-lisp-controller
    -
    -(load "/usr/share/common-lisp/source/common-lisp-controller/common-lisp-controller.lisp")
    -(common-lisp-controller:init-common-lisp-controller-v4 "sbcl")
    -

    Adding GNU Readline support

    -Evgeniy Zhemchugov has written a GNU readline loader to get uparrow history and tab completion like in CLISP. Download or clone and load it from your ~/.sbclrc

    http://jini-zh.org/sbcl-readline/sbcl-readline.html

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/scalpl.html b/clones/lisp/www.cliki.net/scalpl.html deleted file mode 100644 index d2272654..00000000 --- a/clones/lisp/www.cliki.net/scalpl.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: scalpl - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/scheme.html b/clones/lisp/www.cliki.net/scheme.html deleted file mode 100644 index c0fd5aed..00000000 --- a/clones/lisp/www.cliki.net/scheme.html +++ /dev/null @@ -1,70 +0,0 @@ - - - - - CLiki: Scheme - - - - - - - -
    Scheme
    Scheme is a statically scoped and properly tail-recursive dialect of the Lisp programming language designed by Guy Lewis Steele Jr. and Gerald Jay Sussman.

    Scheme and Common Lisp are the two main Lisp dialects in use today. They represent two opposite examples of how a language can evolve. Both Lisps look very much alike, especially if you are approaching them from the Java or C++ worlds. They are strangely full of parenthesis, for example. But they also have important differences, mainly as a result of their design philosophy. The more visible is their size. The main objective of the CL committee was to incorporate in the new language most of the features of the preceding Lisp dialects (a one and only, a 'Common' Lisp). In contrast, Scheme designers removed everything considered superfluous from the core (and left a core, with no standard libraries).

      -
    • Scheme doesn't have a specification for structures with named fields or object oriented programming, while there are some language implementations and libraries (non standardized) that include these and more. A macro facility was incorporated later to the standard, but it is not identical to its Common Lisp counterpart. Considered safer but more restrictive, Scheme macros are known as Hygienic Macros. -
    • -
    • -Scheme is a dialect of Lisp that stresses conceptual elegance and simplicity. It was also one of the first and few programming languages to fully support continuations. It is much smaller than Common Lisp; the language specification is about 50 pages, compared to Common Lisp's 1300 page draft standard. Advocates of Scheme often find it amusing that the entire Scheme standard is shorter than the index to Guy Steele's Common Lisp: the Language, 2nd Edition. Unlike the Scheme standard, the Common Lisp standard has a large library of utility functions, a standard object-oriented programming facility (CLOS), and a sophisticated condition handling system. -
    • -
    • Scheme was the first dialect of Lisp to use lexical variable scoping (or "static scoping"). -
    • -
    -Precisely because of these characteristics, Scheme has been used successfully in computer science courses. The SICP book of Abelson, Sussman and Sussman, and their courses at MIT, are the best example. There are few "real world use" examples of Scheme. Nevertheless, being small and clear, it can be very well used as an embedded language (as intended by the GNU Guile project). Certainly, good compilers can be found, including some in Java, but Scheme shines as a very efficient interpreted language.

    There has been some buzz recently about the benefits of using Continuation Passing Style (CPS) to facilitate user interaction in Web applications. UnCommon Web (UCW) is an example of how this can be done in Common Lisp. The acknowledged lisp writer and programmer Paul Graham is known to have applied a similar approach (using lexical closures to simulate subroutine-like behavior), among other many advantages given by Lisp, to program important parts of his successful web startup Viaweb (now Yahoo! Store). Considering that Scheme shares most of the benefits of Lisp and supports continuations natively, it clearly is a strong candidate for a continuation-based Web Framework.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/science.html b/clones/lisp/www.cliki.net/science.html deleted file mode 100644 index 357a8322..00000000 --- a/clones/lisp/www.cliki.net/science.html +++ /dev/null @@ -1,72 +0,0 @@ - - - - - CLiki: Science - - - - - - - -
    Science
    Natural Science libraries:

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/screamer.html b/clones/lisp/www.cliki.net/screamer.html deleted file mode 100644 index c538218c..00000000 --- a/clones/lisp/www.cliki.net/screamer.html +++ /dev/null @@ -1,141 +0,0 @@ - - - - - CLiki: screamer - - - - - - - -
    screamer
    Screamer adds support for nondeterministic and constraint programming, including backtracking and undoable side-effects.

    Screamer was originally written by Jeffrey Mark Siskind and David Allen McAllester, and released under an non-DFSG-free "old school" license in 1991. It has since then been released with permission under at least GPL and MIT-licenses.

    Probably the most alive version of Screamer is an MIT-licensed copy on Github, which should run on any ANSI Common Lisp and can be installed using Quicklisp.

    -

    The following Screamer code finds a 3x3 matrix of the integers between 1 and 9, such that the sums of the verticals, horizontals, and diagonals are equal.

    (defun 3X3 () - (let ((a (an-integer-betweenv 1 9)) - (b (an-integer-betweenv 1 9)) - (c (an-integer-betweenv 1 9)) - (d (an-integer-betweenv 1 9)) - (e (an-integer-betweenv 1 9)) - (f (an-integer-betweenv 1 9)) - (g (an-integer-betweenv 1 9)) - (h (an-integer-betweenv 1 9)) - (i (an-integer-betweenv 1 9))) - ;; make sure they all different - (assert! (/=v a b c d e f g h i)) - - ;; make sure the various directions add up - (assert! (=v (+v a b c) (+v d e f) (+v g h i) - (+v a d g) (+v b e h) (+v c f i) - (+v a e i) (+v c e g))) - (apply #'format (append (list t "Solution: ~%~d ~d ~d~%~d ~d ~d~%~d ~d ~d") - (one-value (solution (list a b c d e f g h i) - (static-ordering #'linear-force))))))) - -SCREAMER-USER 4 > (3X3) -Solution: -2 7 6 -9 5 1 -4 3 8 -NIL

    There is also an extension to Screamer, called Screamer+, described in the paper Constraint Handling in Common LISP. A copy of the source code that "may be used cost-free for non-commercial use" can be found here.


    Notes

    Install

    Buried at the bottom of screamer/README, it says you need a certain "preamble" at the top of a file in which you use it. Something like:

    (IN-PACKAGE :CL-USER) -(SCREAMER:DEFINE-SCREAMER-PACKAGE :MY-PACKAGE - ;; ...optional defpackage arguments... - ) -(IN-PACKAGE :MY-PACKAGE)

    Trace weirdness

    I could be somehow mistaken, but it seems that TRACEing a nondeterministic function (Screamer seems to replace normal DEFUN with its own) may not be completely reliable. Here's something from my code where I don't expect SOLVE-ONCE's trace to show that it returns different things:

    (in-package :cl-user) -(screamer:define-screamer-package :blah - (:export :solve-once - :with-indices - :eltv - :mid)) -(in-package :blah) - -;;; Utilities - -(defun solve-once (&rest things) - (one-value (solution things (static-ordering #'linear-force)))) - -(defmacro with-indices (indices &body body) - `(let* ,(loop with last-index = (1- (length indices)) - for i in indices - collect `(,i (an-integer-betweenv 0 ,last-index))) - (assert! (/=v ,@indices)) - ,@body)) - -(defun eltv (&rest rest) - (applyv #'elt rest)) - -;;; Example - -(defun mid (n1 n2 n3) - (let ((numbers (vector n1 n2 n3))) - (with-indices (min mid max) - (assert! (<=v (eltv numbers min) - (eltv numbers mid) - (eltv numbers max))) - (elt numbers (first (solve-once mid min max)))))) - - -(trace solve-once) - -(mid 0 1 2) -;; Trace: -;; 0: (SOLVE-ONCE [1168 integer 0:2 enumerated-domain: (0 1 2)] -;; [1165 integer 0:2 enumerated-domain: (0 1 2)] -;; [1171 integer 0:2 enumerated-domain: (0 1 2)]) -;; 0: SOLVE-ONCE returned (1 0 2) - -(mid 1 2 0) -;; Trace: -;; 0: (SOLVE-ONCE [1180 integer 0:2 enumerated-domain: (0 1 2)] -;; [1177 integer 0:2 enumerated-domain: (0 1 2)] -;; [1183 integer 0:2 enumerated-domain: (0 1 2)]) -;; 0: SOLVE-ONCE returned (0 2 1)


    -Topics: pattern matching, language extension
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/screen.html b/clones/lisp/www.cliki.net/screen.html deleted file mode 100644 index 3bf53613..00000000 --- a/clones/lisp/www.cliki.net/screen.html +++ /dev/null @@ -1,74 +0,0 @@ - - - - - CLiki: screen - - - - - - - -
    screen
    GNU Screen is a Unix utility that permits running multiple interactive windows -on the console. It has many abilities:

      -
    • Spawn arbitrary commands -
    • -
    • Provide titles to windows -
    • -
    • Display multiple windows simultaneously (replaces split-vt) -
    • -
    • Provide history buffer (replaces script) -
    • -
    • Attaches to serial tty ports (if desired) -
    • -
    • Detaches from console -
    • -
    • Logs in or out a particular window -
    • -
    • Copy/paste of text strings -
    • -

    Screen is very flexible and powerful, and does not limit your use to just one screen (or window) and is useful for everyday use. It can run a shell or other program (such as ssh) in another window, and can be detached and reattached on the fly from any logged in terminal with appropriate access.

    You can also use it so that multiple people can see the output while one person controls the screen.

    You can find a nice introduction to screen here.

    -If you want to run start a lisp server under a non-privileged user's account at system startup, you can add something like

    -su -c /path/to/script user -
    -

    to your /etc/rc.local file

    /path/to/script should start with something like

    -screen -d -m
    -

    read the screen manpage for more options

    See also: detachtty, cl-daemonize, tmux

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/scribble.html b/clones/lisp/www.cliki.net/scribble.html deleted file mode 100644 index f1a926c3..00000000 --- a/clones/lisp/www.cliki.net/scribble.html +++ /dev/null @@ -1,79 +0,0 @@ - - - - - CLiki: Scribble - - - - - - - -
    Scribble
    Scribble extends the Common Lisp reader with the text markup syntax of Scribe/Skribe and Scribble document preparation systems.

    The Scribe being discussed is the Scheme-based document preparation system by Manuel Serrano, the author of Bigloo. It is not the antique system of same name that inspired LaTeX and was used in early CMUCL documentation. Its successor is named Skribe. Scribble is a syntax extension for the Racket system, developed by Eli Barzilay. It was named Scribble independently from the first version of this library, that predated it, and initially only supported an extension of the Skribe syntax.

    In Skribe mode, Scribble defines #\[ as a macro-character that reads a Lisp-extended markup language. -Scribble may be useful to you if like Skribe's syntax and want to use it in Common Lisp application. At one point, my documents could compile on both Manuel Serrano's Bigloo-based Scribe and my own CL-based Exscribe, though support for this may have bitrotten.

    The Skribe syntax is a markup syntax that allows to develop documents in a programmatic way. -The syntax integrates very nicely with the LISP syntax; -it is infinitely nicer than XML (easy thing to do); -and it is noticeably shorter than the equivalent SEXP it produces. -

      -
    • [foo ,(bar [baz]) quux] is read as (LIST "foo " (bar "baz") " quux") -
    • -
    -Scribble also contains some extensions to the Scribe syntax: -
      -
    • [:emph foo] is read as (emph "foo") -
    • -
    • [: (font :size 1) bar] is read as (font :size 1 "bar") -
    • -
    • [foo ,[:emph bar] baz] is (list "foo" (emph "bar") "baz") -
    • -
    • [\:\\\[\]] is read as ":\[]" (well, actually that's ":\\[]") -
    • -
    -The actual result is configurable, and configurations already exist for several html generation backends (see below).

    Scribble also features an optional extension to Scribe's semantics: [foo] can be actually read as (pp "foo") rather than "foo", so you can wrap or preprocess strings. You can for instance (with-preprocessor #'string-upcase [foo]). This applies to the strings in the cases demonstrated above; they have been shown with this extension disabled for the sake of simplicity.

    Scribble source code is at: - https://gitlab.common-lisp.net/frideau/scribble

    Scribble depends on Meta by Jochen Schmidt, version 1.0.0 or later, that implements the famous META parsing technique as documented by Henry Baker.

    Mind that this package emphatically does not implement any of Skribe's semantics. -It only implements the reader. -In particular, it doesn't include an implementation of Skribe's semantics for keyword arguments, and it doesn't include any infrastructure to output HTML, LaTeX, info, Text, etc., from Scribe documents. -Instead, Scribble will be a nice front-end for your usual CL Web infrastructure or Lisp Markup Languages, if only customized with the proper setf. -The html generation backends from the following packages are already supported in version 1.18: -lml2, htmlgen from allegroserve, and also araneida (with a patch); -should work but untested: cl-who, htout, yaclml.

    However, for HTML-producing semantics, see Exscribe, -that uses Scribble as its default syntax reader.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/secure-random.html b/clones/lisp/www.cliki.net/secure-random.html deleted file mode 100644 index 9bed6ddc..00000000 --- a/clones/lisp/www.cliki.net/secure-random.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: secure-random - - - - - - - -
    secure-random
    secure-random provides a cryptographically secure pseudo-random number generator for Common Lisp.

    License: MIT-LICENSE

    The project is hosted on githup: -https://github.com/avodonosov/secure-random/.


    -Cryptography
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/selenium-lisp-connector.html b/clones/lisp/www.cliki.net/selenium-lisp-connector.html deleted file mode 100644 index 00c7a552..00000000 --- a/clones/lisp/www.cliki.net/selenium-lisp-connector.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: selenium-lisp-connector - - - - - - - -
    selenium-lisp-connector
    selenium-lisp-connector is a Lisp client for Selenium Remote Control, a test tool that allows you to write automated web application UI tests in any programming language against any HTTP website using any mainstream JavaScript-enabled browser.

    Homepage: https://github.com/asdr/selenium-lisp-connector

    License: ???


    -test framework web api
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/semantic web.html b/clones/lisp/www.cliki.net/semantic web.html deleted file mode 100644 index 91675e3e..00000000 --- a/clones/lisp/www.cliki.net/semantic web.html +++ /dev/null @@ -1,108 +0,0 @@ - - - - - CLiki: Semantic Web - - - - - - - -
    Semantic Web
    The Semantic Web provides a common framework that allows data to be shared and reused across application, enterprise, and community boundaries. It is a collaborative effort led by W3C with participation from a large number of researchers and industrial partners. It is based on the Resource Description Framework (RDF). W3C Semantic Web Activity

    See Also: RDF, Knowledge Representation Systems

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/sequence-search-replace.html b/clones/lisp/www.cliki.net/sequence-search-replace.html deleted file mode 100644 index 4e3ee9aa..00000000 --- a/clones/lisp/www.cliki.net/sequence-search-replace.html +++ /dev/null @@ -1,58 +0,0 @@ - - - - - CLiki: sequence-search-replace - - - - - - - -
    sequence-search-replace
    A library for sequence search and replace so it's useful on Text.

    Can be obtained here

    Still in an early stage, with only a few functions implemented.

    Exported functions:

    -make-string-replacer
    -make-sequence-prefix-searcher
    -multiple-string-replace
    -get-all-sequences
    -make-trie-from-substitutions
    -make-trie-from-sequences
    -

    Some internal details:

    Uses `tries' to hash the given substitutions. Operates on streams using methods that operate on a class called backtracking-buffer the source for which is currently included along with the rest (though it is completely separable).

    Author: Matthew Danish

    License: BSD-style

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/serapeum.html b/clones/lisp/www.cliki.net/serapeum.html deleted file mode 100644 index 9c90ae76..00000000 --- a/clones/lisp/www.cliki.net/serapeum.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Serapeum - - - - - - - -
    Serapeum
    Serapeum is a utility library, which can be used as a supplement to Alexandria.

    There is a function reference.

    Utilities

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/serialization.html b/clones/lisp/www.cliki.net/serialization.html deleted file mode 100644 index 44bc9b4e..00000000 --- a/clones/lisp/www.cliki.net/serialization.html +++ /dev/null @@ -1,113 +0,0 @@ - - - - - CLiki: serialization - - - - - - - -
    serialization
    Libraries to translate data structures to/from a format which can be stored/retrieved. See also ObjectStore and database. -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/series.html b/clones/lisp/www.cliki.net/series.html deleted file mode 100644 index 27492af5..00000000 --- a/clones/lisp/www.cliki.net/series.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - CLiki: Series - - - - - - - -
    Series
    A library providing data structure that combines aspects of sequences, (lazy) streams and loops, using a technique known as “fusion” or “deforestation”. Unlike sequences, in most cases operations on series may be composed functionally but execute iteratively without generating intermediate values. So series offer both the expressiveness of functional programming and the efficiency of iterative programming.

    Series is in Quicklisp:

    - (ql:quickload :series)
    - (in-package :series)
    -

    The library was originally developed by Richard C. Waters, and a description of it appeared in 1990 as Appendix A of the second edition of the book Common Lisp - The Language by Guy L. Steele. More docs and examples can be found in AIM 1082 and AIM 1083 from MIT.

    The project (SourceForge) is now maintained by Fernando D. Mato Mira. It has a git repo at SourceForge and an unofficial GitHub mirror.

    Series is available for SBCL, CMUCL, CLISP and some commercial Common Lisp implementations. It is distributed under the terms of the MIT license.

    Documentation

    There are more user doc and links on the github mirror's wiki.

    Many examples in the iteration page of the CL Cookbook.

    Related projects

    See taps, a library that offers conveniences to work with Series (take, tail, any, contains?, drop, filter, …)

    Articles

    See http://malisper.me/2016/04/13/loops-in-lisp-part-4-series/.


    -data structure, language extension
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/session-token.html b/clones/lisp/www.cliki.net/session-token.html deleted file mode 100644 index 00c9c700..00000000 --- a/clones/lisp/www.cliki.net/session-token.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: session-token - - - - - - - -
    session-token
    session-token is a simple session token generator based on Session::Token.

    The Github page has use documentation attached. You may also get mileage out of the original Session::Token github.


    -cryptography
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/sha3.html b/clones/lisp/www.cliki.net/sha3.html deleted file mode 100644 index 2ec63be5..00000000 --- a/clones/lisp/www.cliki.net/sha3.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: sha3 - - - - - - - -
    sha3
    This library is an implementation of the Secure Hash Algorithm 3 (SHA-3), also known as Keccak. The implementation is constrained to messages with an integral number of octets, i.e. sub-byte length messages are not supported.

    The code should be portable across nearly all ANSI compliant CL implementations with specialized versions tuned for implementations that offer unboxed 64bit arithmetic, unboxed 32bit arithmetic and for implementations with efficient fixnum arithmetic (requiring fixnums that can represent (unsigned-byte 16)). Especially the 64 and 32bit implementations have been mostly optimized for SBCL and CMUCL.

    Repository: https://github.com/pmai/sha3

    License: MIT/X11


    -cryptography
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/shallow-copy-array.html b/clones/lisp/www.cliki.net/shallow-copy-array.html deleted file mode 100644 index abe6a738..00000000 --- a/clones/lisp/www.cliki.net/shallow-copy-array.html +++ /dev/null @@ -1,108 +0,0 @@ - - - - - CLiki: shallow-copy-array - - - - - - - -
    shallow-copy-array
    SHALLOW-COPY-ARRAY is a member of the Common Lisp Utilities -family of programs.

    (defun shallow-copy-array (array &key (undisplace-array nil)) - "Shallow copies the contents of any array into another array with -equivalent properties. If array is displaced, then this function -will normally create another displaced array with similar properties, -unless UNDISPLACE-ARRAY is non-NIL, in which case the contents of the -array will be copied into a completely new, not displaced, array." - (check-type array array) - (multiple-value-bind (displaced-to displaced-index-offset) - (array-displacement array) - (let ((dimensions (array-dimensions array)) - (element-type (array-element-type array)) - (adjustable (adjustable-array-p array)) - (fill-pointer (when (array-has-fill-pointer-p array) - (fill-pointer array)))) - (when undisplace-array - (setf displaced-to nil)) - (let ((new-array - (apply #'make-array - (list* dimensions - :element-type element-type - :adjustable adjustable - :fill-pointer fill-pointer - :displaced-to displaced-to - (if displaced-to - (list :displaced-index-offset - displaced-index-offset) - nil))))) - (unless displaced-to - (dotimes (i (array-total-size array)) - (setf (row-major-aref new-array i) - (row-major-aref array i)))) - new-array))))


    This is quite similar to a copy-array I wrote recently. I find mine a bit easier to read, but on the other hand I am new at lisp; Do you see any problems with the following?

    (defun copy-array (array &key (undisplace nil)) - "Performs a shallow copy of array. If array is displaced, -the copy is also, unless undisplace is non-nil." - (declare (type array array)) - (let ((copy - (apply #'make-array - (list* (array-dimensions array) - :element-type (array-element-type array) - :adjustable (adjustable-array-p array) - :fill-pointer (when (array-has-fill-pointer-p array) - (fill-pointer array)) - (multiple-value-bind (displacement offset) - (array-displacement array) - (when (and displacement (not undisplace)) - (list :displaced-to displacement - :displaced-index-offset offset))))))) - (unless (array-displacement copy) - (dotimes (n (array-total-size copy)) - (setf (row-major-aref copy n) (row-major-aref array n)))) - copy))

    Looks almost exactly the same, except that I explicitly bound all the values in a let first.


    Two belated points (Nikodemus Siivola): -

      -
    1. Why the SHALLOW-prefix? COPY-SEQ, COPY-LIST, COPY-STRUCTURE are all shallow as well. COPY-ARRAY would imo be clear enough and less ugly as well. -
    2. -
    3. There's a portable trick to do this without iteration. If don't know it and you like puzzles, try to figure it out from the Array chapter in CLHS, and read how once you fail. -
    4. -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/shared-preferences.html b/clones/lisp/www.cliki.net/shared-preferences.html deleted file mode 100644 index 1a2257b6..00000000 --- a/clones/lisp/www.cliki.net/shared-preferences.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: shared-preferences - - - - - - - -
    shared-preferences
    shared-preferences notably allows flexible specification of package-local preferences.

    See the project's home for all details.


    -Unlicense, Public Domain
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/sharplispers.html b/clones/lisp/www.cliki.net/sharplispers.html deleted file mode 100644 index 37695d97..00000000 --- a/clones/lisp/www.cliki.net/sharplispers.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: sharplispers - - - - - - - -
    sharplispers
    A group of Common Lisp hackers who occasionally maintain otherwise abandoned or quasi-abandoned Common Lisp software packages.

    See https://github.com/sharplispers.


    -Community
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/shelisp.html b/clones/lisp/www.cliki.net/shelisp.html deleted file mode 100644 index eb041323..00000000 --- a/clones/lisp/www.cliki.net/shelisp.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: shelisp - - - - - - - -
    shelisp
    Shelisp provides mechanisms for composing and running Unix shell (particularly bash) commands and constructs from Common Lisp. Character macros such as '!', '!!' and '[' are provided, that execute shell commands or scripts. Lisp expressions inside shell commands can be embedded with ?s-expr. Wrappers for some commands are also included.

    License: LLGPL since 2011-12-05.

    Homepage: http://dan.corlan.net/shelisp

    Mirror: https://github.com/vindarel/shelisp

    Fork (with new name): clesh


    -system programming
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/shell.html b/clones/lisp/www.cliki.net/shell.html deleted file mode 100644 index a496305c..00000000 --- a/clones/lisp/www.cliki.net/shell.html +++ /dev/null @@ -1,64 +0,0 @@ - - - - - CLiki: shell - - - - - - - -
    shell
      -
    • -clesh - - Clesh is a library that makes it possible to embed -
    • -
    • -SHCL - - SHCL is -
    • -
    • -shelisp - - Shelisp provides mechanisms for composing and running Unix shell (particularly bash) commands and constructs from Common Lisp -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/shtookovina.html b/clones/lisp/www.cliki.net/shtookovina.html deleted file mode 100644 index ab6b7669..00000000 --- a/clones/lisp/www.cliki.net/shtookovina.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: shtookovina - - - - - - - -
    shtookovina
    Шτookωвiнα is designed to be useful for learners of foreign languages. You can -learn more here.

    It's distributed under GNU GPL3.


    -Relevant topics: application
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/signal processing.html b/clones/lisp/www.cliki.net/signal processing.html deleted file mode 100644 index 9af3d9c8..00000000 --- a/clones/lisp/www.cliki.net/signal processing.html +++ /dev/null @@ -1,72 +0,0 @@ - - - - - CLiki: signal processing - - - - - - - -
    signal processing
      -
    • -cl-collider - - cl-collider is an interface to the SuperCollider audio synthesis server -
    • -
    • -cl-fftw3 - - cl-fftw3 provides a CFFI interface for Common Lisp programs to use the FFTW3 Fourier transform library -
    • -
    • -cl-jointgen - - CL-JOINTGEN is a Common Lisp implementation of the Joint Generation Algorithm for computing the dual of a monotone boolean function -
    • -
    • -Incudine - - Incudine is a music/DSP programming environment for Common Lisp -
    • -
    • -SOUNDLAB - - Lazy signal synthesis based on combinators -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/simple-actors.html b/clones/lisp/www.cliki.net/simple-actors.html deleted file mode 100644 index e56dc871..00000000 --- a/clones/lisp/www.cliki.net/simple-actors.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: simple-actors - - - - - - - -
    simple-actors
    The actor model implemented with closures.

    Depends on: bordeaux-threads

    Repository: https://github.com/j3pic/simple-actors

    License: BSD 2-Clause


    -actors
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/simple-currency.html b/clones/lisp/www.cliki.net/simple-currency.html deleted file mode 100644 index 77aae92e..00000000 --- a/clones/lisp/www.cliki.net/simple-currency.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: simple-currency - - - - - - - -
    simple-currency
    Simple-currency is a small library for converting between currencies using the public foreign exchange information posted daily by the European Central Bank. The library also provides a lookup function for accessing information about currencies (such as country name / alpha. code / numeric code, etc). The library uses Drakma, xmls, cl-store and simple-date.

    Homepage: simple-currency

    License: BSD

    Topics: units

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/simple-date-time.html b/clones/lisp/www.cliki.net/simple-date-time.html deleted file mode 100644 index 9d816130..00000000 --- a/clones/lisp/www.cliki.net/simple-date-time.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: simple-date-time - - - - - - - -
    simple-date-time
    Date and time library for Common Lisp.

    Depends on: cl-ppcre

    Repository: https://github.com/quek/simple-date-time

    License: BSD

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/simple-guess.html b/clones/lisp/www.cliki.net/simple-guess.html deleted file mode 100644 index 427e6710..00000000 --- a/clones/lisp/www.cliki.net/simple-guess.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: simple-guess - - - - - - - -
    simple-guess
    simple-guess defines a simple extensible protocol for computing a guess using advisors.

    See the project's home for all details.


    -Unlicense, Public Domain
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/simple-gui.html b/clones/lisp/www.cliki.net/simple-gui.html deleted file mode 100644 index 6e9c4433..00000000 --- a/clones/lisp/www.cliki.net/simple-gui.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: simple-gui - - - - - - - -
    simple-gui
    simple-gui is a CommonQt wrapper that provides a declarative way for fast creating simple GUI on Common Lisp with the Qt GUI library.

    License: LGPL

    See also: qtools eql

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/simple-http.html b/clones/lisp/www.cliki.net/simple-http.html deleted file mode 100644 index 53b2195e..00000000 --- a/clones/lisp/www.cliki.net/simple-http.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: simple-http - - - - - - - -
    simple-http
    is a simple HTTP client library, see Trivial-HTTP
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/simple-rgb.html b/clones/lisp/www.cliki.net/simple-rgb.html deleted file mode 100644 index 9f6ae467..00000000 --- a/clones/lisp/www.cliki.net/simple-rgb.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: simple-rgb - - - - - - - -
    simple-rgb
    simple-rgb is a library for manipulating RGB and HSV color values. It is intended for working with CSS color schemes - it's not really optimized for intense image processing.

    This project has moved to github: (https://github.com/wmannis/simple-rgb)

    Version 0.02 fixes a silly spelling error in the library. I evidently thought colors could be polite, and misspelled "complement" as "compliment."


    -graphics library
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/simple-routes.html b/clones/lisp/www.cliki.net/simple-routes.html deleted file mode 100644 index 5e2e5127..00000000 --- a/clones/lisp/www.cliki.net/simple-routes.html +++ /dev/null @@ -1,61 +0,0 @@ - - - - - CLiki: simple-routes - - - - - - - -
    simple-routes
    Simple-routes adds quick and easy, centralized http routing to Hunchentoot.

    https://github.com/naryl/trivial-routes

    Sample syntax

    (setf simple-routes:*routeslist* - (compile-routes - ;;html content uris - (:GET "" 'home-handler) - (:GET "/people" 'people-handler) - (:GET "/people/:first/:last" 'get-person-handler) - (:PUT "/people/:first/:last/:description" 'put-person-handler)))

    The above code-block registers the listed uris to handlers with the below function signatures.

    (defun home-handler () ()) -(defun people-handler () ()) -(defun get-person-handler (first last) ()) -(defun put-person-handler (first last description) ())

    Demo

    Simple-routes includes a small demo program which you can use to boostrap your web app -- it shows how to start hunchentoot, define handlers, register urls, and generate html.


    -URI
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/simple-stream.html b/clones/lisp/www.cliki.net/simple-stream.html deleted file mode 100644 index 04da0bee..00000000 --- a/clones/lisp/www.cliki.net/simple-stream.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: simple-stream - - - - - - - -
    simple-stream
    Simple-streams are Franz's proposal for a Gray-streams replacement. The specification is available at - -http://www.franz.com/support/documentation/current/doc/streams.htm.

    A CMUCL implementation of simple-streams by Paul Foley was released in version 19a.

    SBCL has a partial implementation; see the documentation.

    CLISP nor OpenMCL appear to have an implementation.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/simple-tasks.html b/clones/lisp/www.cliki.net/simple-tasks.html deleted file mode 100644 index aa2d332e..00000000 --- a/clones/lisp/www.cliki.net/simple-tasks.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: simple-tasks - - - - - - - -
    simple-tasks
    Simple-tasks is a very easy to use library for scheduling and managing various task items.

    The project can be found on github including a fully documented symbol index and a getting started tutorial.
    -As of 2015, simple-tasks is on Quicklisp.

    Simple-tasks is licensed under the Artistic License 2.0.


    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/simpledb.html b/clones/lisp/www.cliki.net/simpledb.html deleted file mode 100644 index 06c4ec34..00000000 --- a/clones/lisp/www.cliki.net/simpledb.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: simpledb - - - - - - - -
    simpledb
    simpledb is a Common Lisp interface to the Amazon SimpleDB web API.

    Homepage: http://members.optusnet.com.au/apicard/

    License: ???

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/simplified-types.html b/clones/lisp/www.cliki.net/simplified-types.html deleted file mode 100644 index 7f3e29e9..00000000 --- a/clones/lisp/www.cliki.net/simplified-types.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: simplified-types - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/simplot.html b/clones/lisp/www.cliki.net/simplot.html deleted file mode 100644 index aedb0ffe..00000000 --- a/clones/lisp/www.cliki.net/simplot.html +++ /dev/null @@ -1,59 +0,0 @@ - - - - - CLiki: simplot - - - - - - - -
    simplot
    Simplot is a 2-dimensional data plotting application for mathematics and scientific data with a simple interface.

    Simplot will make graphs that look like this:

    December Weather Metrics

    using a command line interface that looks like this:

    (let ((grn '(0 80 40)) - (the-view (mk-view :view-bounds '(0 0 500 60)))) - (plot2 "December Weather Metrics" - *hour-temp* the-view grn - :left "Temperature (degrees F)" grn :bottom "Relative Hours" - *time-dewp* the-view +blu+ :right "Dew Point (degrees F)" +blu+))

    Simplot depends on the CL-GD package.

    Download ASDF package from -http://jandmworks.com/simplot/simplot.tgz

    Documentation and examples can be found at -http://jandmworks.com/simplot/user/simplot.html

    Version 0.1 was released on 2010-01-02

    This is an early release. There are known bugs and a list of features that still haven't been implemented. The user interface is not entirely stable at this point - suggestions, comments and any kind of feedback is welcome.

    jeffrey at jandmworks dot com


    -Related packages: application, plotting, Mathematics
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/single-threaded-ccl.html b/clones/lisp/www.cliki.net/single-threaded-ccl.html deleted file mode 100644 index e9ef1386..00000000 --- a/clones/lisp/www.cliki.net/single-threaded-ccl.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: single-threaded-ccl - - - - - - - -
    single-threaded-ccl
    A simple patch to allow Clozure CL to run in single-threaded mode.

    This is free software, available under the same license as CCL, LLGPL 2.1.

    Repository: https://gitlab.common-lisp.net/qitab/single-threaded-ccl


    -(Note that CCL is Apache 2-licensed now.)
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/site-generator.html b/clones/lisp/www.cliki.net/site-generator.html deleted file mode 100644 index bb9ff2da..00000000 --- a/clones/lisp/www.cliki.net/site-generator.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: site-generator - - - - - - - -
    site-generator
    Is a BSD licensed, command-line static site generator that has support for arbitrary content and multiple languages.

    Homepage: http://alex-charlton.com/projects/site-generator/

    Source: https://github.com/AlexCharlton/site-generator

    License: BSD license


    -web framework
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/skippy.html b/clones/lisp/www.cliki.net/skippy.html deleted file mode 100644 index a68c7787..00000000 --- a/clones/lisp/www.cliki.net/skippy.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Skippy - - - - - - - -
    Skippy
    Skippy reads and writes GIF image files. It is pure Common Lisp. It supports normal GIFs and animated GIFs.

    It is available under a BSD-like license.

    See also

    * Skippy home page

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/skitter.html b/clones/lisp/www.cliki.net/skitter.html deleted file mode 100644 index ebe18899..00000000 --- a/clones/lisp/www.cliki.net/skitter.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: skitter - - - - - - - -
    skitter
    A repl friendly event system for games.

    Homepage: GitHub

    License: BSD-2-Clause

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/slashcachelisp.html b/clones/lisp/www.cliki.net/slashcachelisp.html deleted file mode 100644 index 02dec274..00000000 --- a/clones/lisp/www.cliki.net/slashcachelisp.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: slashcachelisp - - - - - - - -
    slashcachelisp
    slashcache.lisp uses slashdot.lisp to build a cache of slashdot.org headlines.


    -web API
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/slashdotlisp.html b/clones/lisp/www.cliki.net/slashdotlisp.html deleted file mode 100644 index 13ef2cb7..00000000 --- a/clones/lisp/www.cliki.net/slashdotlisp.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: slashdotlisp - - - - - - - -
    slashdotlisp
    slashdot.lisp is a small package of code for reading slashdot headlines. It does this by using CLOCC's Networking and XML packages.


    -web API
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/slime.html b/clones/lisp/www.cliki.net/slime.html deleted file mode 100644 index ac24a608..00000000 --- a/clones/lisp/www.cliki.net/slime.html +++ /dev/null @@ -1,88 +0,0 @@ - - - - - CLiki: SLIME - - - - - - - -
    SLIME
    SLIME is the Superior Lisp Interaction Mode for Emacs. This is an ILISP-like development environment intended for maximum integration with CMUCL (also works with SBCL, OpenMCL and work is ongoing on Lispworks and current version of CLISP and CLISP 2.32 on Linux; there is also support packaged separately for Scheme48, called SLIME48).

    SLIME is now stable and released. Please download the latest version from its home page. Documentation is included there. -NOTE: slime-2.0 is too old for use with current versions of SBCL. Fetch slime from CVS.

    Want to try SLIME? Check out the SLIME-HOWTO or read about the SLIME Features. You can also check out some SLIME Tips.

    Users are invited to post feature suggestions on this page.

      -
    • Ability to pin certain things (arglist info, debugger, repl) into dedicated frames for nice multi-window operation -- Zach -
    • -
    • Make the slime faces inherit from the standard font-lock faces when appropriate (eg making the REPL output face inherit from font-lock-comment-face) -- Brian -
    • -
    • -Note: Although it is possible to connect to a Lisp on a remote machine, we haven't yet figured out what does and doesn't work without a shared filesystem. Maybe this can be made tramp-aware? -- Rahul Jain Clear *use-dedicated-output-stream* before connecting works for me so far. -- ngps -
    • -
    • Autodetection of LINEDIT (or other random REPL wrappers) and calling LINEDIT's UNINSTALL-REPL before running SWANK. I tried to add something in slime-maybe-start-lisp in slime.el to do so, but comint-proc-query was uncooperative and kept hanging. -- James A. Crippen -
    • -
    • Some REPL conveniences, such as ILISP's C-z P (set package).
      -The SLIME equivalent of the latter is SLIME-REPL-SET-PACKAGE, anything else?
    • -
    • Some way to get a REPL in the current debugger frame, for more serious -playing around
      I second the motion. It would be very useful to keep a record - of what was evaluated and what printed, sort of like a - ... read-eval-print loop! It's amazing that this crucial feature of - Lisp was discarded in the SLIME model; its absence really detracts from - usability. - Drew McDermott -- 2005-12-09.
      -I would also very much like this feature! -Lars Rune Nøstdal -
    • -
    • Working symbol-completion when you enter expressions in the mini-buffer
    • -
    • "Getting ILISP working was a nightmare. Getting SLIME working was a breeze, even though I had to check it out of CVS" (Steve Jenson, saladwithsteve.com) -
    • -
    • If your connection to ssh forwarded swank server doesnt work, try to (setf swank::*use-dedicated-output-stream* nil) -
    • -
    • Maybe: Visit a file "through" the lisp process: slime instructs lisp process to open the file and squirt it across connection back to an emacs buffer. When buffer is saved in emacs, squirt back to lisp process. Potentially very nice for long-lived lisp server processes (provided your slimeswank is a secure channel!), and skirts the whole path-translations thing: the only correct path is the path the lisp process uses i.e. you're not doing C-xC-f emacs-file-path, you're doing C-cC-xC-f (or something saner) CL-file-path. (obviously, you'd provide tab completion for CL-file-path, too ;-) ) See the variable `file-name-handler-alist' for how you might want to do this. -
    • -
    • How about unified directory access! I know there are some packages out there, but it would be wonderful to have this come with slime. It would be nice to have it as a part of the development environment. It's hard for me to switch between different implementations of CL otherwise. (for example, (:cd "dir") doesn't work when using SLIME with OpenMCL...) Update: I found directory functionality by typing a comma then entering 'cd' into the minibuffer. SLIME RULES! -
    • -
    • It would be nice if I could have fixed Emacs windows for different SLIME buffers. Like, if I evaluate something and the debugger pops up, I never know where it's going to be (I usually have several Emacs frames and windows open). I would like to say "this will be the REPL window, and I want nothing else there" -- another window for the debugger, another for Lisp code etc. - You can kind of do this with the Emacs Code Browser, if you tell it the repl is a compilation window. It provides a fixed and togglable compilation window at the bottom of the first frame.
    • -

    To add a note about using the standard font-lock faces, the keywords from the appropriate mode should also be used. That is, SLIME should use the lisp-mode-font-lock-keywords-... variables. I have diffrerent ones for Common Lisp, Scheme, and Emacs Lisp, so it would be nice to have this customizable for SLIME. Or better yet, since Emacs's default keywords for Lisp are pretty ELisp-centric maybe SLIME should provide its own set of Common Lisp--centric font-lock keywords, leaving the user to decide whether to copy those for Emacs's Lisp-mode or not. -- James A. Crippen

    Sounds a good idea to me. Can you post the code you use somewhere so we can use it as a basis? -- Luke Gorrie

    Some responses..

    A "Recent Changes" popup: Can you elaborate a bit? The ChangeLog file + the mailing list is supposed to fill this role, but feedback about the effectiveness would be appreciated. -- Luke Gorrie

    It might be nice to just add a link to the latest ChangeLog in CVS, like so -Latest ChangeLog. Stick that on the project home page. -- James A. Crippen Good idea. ChangeLog and mailing lists are now linked.

    Re: "Recent Changes Popup": Especially with the daily ChangeLog diff on the list, this is a solved problem for me at least. I suspect that people following -the CVS, but not the list deserve to lose (like I did...). OTOH: I can imagine having a busy month, then updating SLIME, and not noticing all the new goodies. ;) So in the bells and whistles department, SLIME offering to show it's own ChangeLog since last update would be kind of neat -- but definitely not a priority.

    As far as using slime remotely: if you have a shared filesystem but not with identical mountpoints, the patch included in this mail provides you with a M-x slime-replace-prefix function which causes a few uses of filenames to be translated (but only in the emacs->lisp direction).

    The full cygwin-windows cycle is translated by these hooks, working for any cygwin mountpoint. --ReiniUrban

    There is the beginnings of MP (threading) support in SLIME CVS. See the mailing list for details

    Slime Distributions

    Information, for fetching the source distribution, is available at the Slime homepage.

    For fetching Slime via cvs, information is available, also, at the Slime homepage.

    Debian packages

    Slime has got an -official Debian package.

    It is under the non-free section of Debian mostly because of the license of one -file (xref.lisp). So, should it stay on CLiki.net? -- alceste@NOSPAM.muvara.org

    Mac OS X

    -A fink package for Mac OS X (10.3) is also available in fink's unstable tree.

    Slime is available in MacPorts, current port is based on 20110419 CVS snapshot.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/smackjack.html b/clones/lisp/www.cliki.net/smackjack.html deleted file mode 100644 index 747a2af0..00000000 --- a/clones/lisp/www.cliki.net/smackjack.html +++ /dev/null @@ -1,62 +0,0 @@ - - - - - CLiki: SmackJack - - - - - - - -
    SmackJack
    Smackjack is a small AJAX web framework written in Common Lisp. Basically Smackjack allows browser code call lisp functions via ajax and get a return value. Currently runs under Hunchentoot web server but there are plans to allow other web servers. It was a fork of HT-SIMPLE-AJAX and -inspires to be a replacement to the unmaintained and out of date -HT-AJAX.

    Differently than those two libraries, this one depends on PARENSCRIPT to generate client-side javascript and allows greater flexibility in -generated javascript. Current version is compatible with HT-SIMPLE-AJAX but it lacks some features of HT-AJAX . The following features are addition to those available in HT-SIMPLE-AJAX:

      -
    • AJAX via Post as well as Get
    • -
    • response can be text, xml or json.
    • -
    • optional javascript namespaces to encapsulate generated javascript -functions.
    • - -
    • The arguments of the functions can be treated by cl-json before - calling the function.
    • -

    The code also contains a "pusher" subclass. This allows a lisp function call indirectly a javascript function defined in your lisp code by parenscript but runs in the browser. Basically the opposite of SmackJack. This is achieved by adding a simple polling mechanism. Future development may include long polling.

    Source Code: https://github.com/aarvid/SmackJack.

    Documentation: http://htmlpreview.github.io/?https://github.com/aarvid/SmackJack/blob/master/docs/smackjack.html.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/sml.html b/clones/lisp/www.cliki.net/sml.html deleted file mode 100644 index bd19ef44..00000000 --- a/clones/lisp/www.cliki.net/sml.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: sml - - - - - - - -
    sml
    S-expression-based markup language. It looks like this (from web4r):

    [a :href (concat "/upload/" it) - [img :src (thumbnail-uri it :type "upload") :alt (slot-id slot) /]]

    Repository: https://github.com/tomoyuki28jp/sml

    License: BSD


    -s-exp syntax HTML template
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/smta.html b/clones/lisp/www.cliki.net/smta.html deleted file mode 100644 index bf160267..00000000 --- a/clones/lisp/www.cliki.net/smta.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: smta - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/smtp4cl.html b/clones/lisp/www.cliki.net/smtp4cl.html deleted file mode 100644 index 358d863e..00000000 --- a/clones/lisp/www.cliki.net/smtp4cl.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: smtp4cl - - - - - - - -
    smtp4cl
    SMTP4CL is a SMTP client library to send messages to an MTA (Mail Transport Agent). It requires mime4cl and net4cl.

    Homepage: http://wcp.sdf-eu.org/software/#smtp4cl

    Download: http://wcp.sdf-eu.org/software/smtp4cl-20150207T212034.tbz

    License: GPL2


    -Topics: email
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/snakes.html b/clones/lisp/www.cliki.net/snakes.html deleted file mode 100644 index b31546f7..00000000 --- a/clones/lisp/www.cliki.net/snakes.html +++ /dev/null @@ -1,98 +0,0 @@ - - - - - CLiki: snakes - - - - - - - -
    snakes
    Python style generators for Common Lisp. Includes a port of itertools.

    Examples: -

    (defgenerator some-numbers () - (loop for i from 1 upto 3 do (yield i)) - (print 'some-message) - (loop for i from 8 upto 9 do (yield i))) -;; => -SOME-NUMBERS - -(do-generator (item (some-numbers)) - (when (< 3 item) - (return item))) -;; => -SOME-MESSAGE -8 -

    Pipe-able generator: -

    (defgenerator add2 (some-gen) - (do-generator (x some-gen) - (yield (+ 2 x)))) -;; => -ADD2 - -(generator->list (add2 (some-numbers))) -;; => -SOME-MESSAGE -(3 4 5 10 11) -

    Yield-all: -

    (defgenerator flatten (list) - (when list - (cond - ((atom list) - (yield list)) - (t - (yield-all (flatten (car list))) - (yield-all (flatten (cdr list))))))) -;; => -FLATTEN - -(mapc-generator #'print (flatten '((a (b c) d) (e) f (g h)))) -;; => -A -B -C -D -E -F -G -H -

    Homepage: GitHub

    License: Apache 2.0

    See Also: cl-itertools, pygen

    Topics: language extension

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/snmp.html b/clones/lisp/www.cliki.net/snmp.html deleted file mode 100644 index bf7dfe16..00000000 --- a/clones/lisp/www.cliki.net/snmp.html +++ /dev/null @@ -1,60 +0,0 @@ - - - - - CLiki: SNMP - - - - - - - -
    SNMP
    Simple Network Management Protocol

      -
    • -cl-net-snmp - - cl-net-snmp is an SNMP library for Common Lisp -
    • -
    • -Lisp-SNMP - - Lisp-SNMP is a library for remote system and network administration that uses the Simple Network Management Protocol (SNMP) -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/snow.html b/clones/lisp/www.cliki.net/snow.html deleted file mode 100644 index d91f094f..00000000 --- a/clones/lisp/www.cliki.net/snow.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: snow - - - - - - - -
    snow
    Snow is a GUI description language for Java and Common Lisp, currently supporting the Swing UI library.

    Like XUL and similar, it makes it possible to write GUI code in a declarative fashion.

    With Snow, the structure of the code reflects the tree of widgets that make up the GUI. Layout is specified with a CSS-like embedded language. Data binding cleanly separates GUI code from application code and automatically propagates changes in both directions.

    Snow is implemented on top of ABCL (ArmedBear Common Lisp) and third-party libraries, most notably JGoodies Binding and Cells (for connecting the GUI and the application, following the model-view-controller paradigm) and MiGLayout (declarative, CSS-like component layout).

    At the time of this writing, Snow supports only the standard Swing GUI library, but it should in principle be extensible to other libraries, like SWT.

    GNU GPL License

    Project Page

    GUI Java ABCL

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/soundex.html b/clones/lisp/www.cliki.net/soundex.html deleted file mode 100644 index c79ebaef..00000000 --- a/clones/lisp/www.cliki.net/soundex.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: Soundex - - - - - - - -
    Soundex
    The Soundex algorithm indexes words by their sound when pronounced in English, for example to account for differences in spelling.

    This public domain Common Lisp implementation of Soundex (soundex-1.0.tgz) was originally in the JWZ archive of the CMU AI repository.

    Levenshtein also measures the distances between words, although it is not based on sound.


    -Natural Language Processing text
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/soundlab.html b/clones/lisp/www.cliki.net/soundlab.html deleted file mode 100644 index 6a6ee4c3..00000000 --- a/clones/lisp/www.cliki.net/soundlab.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: SOUNDLAB - - - - - - - -
    SOUNDLAB
    Lazy signal synthesis based on combinators. Soundlab provides a language embedded in Common Lisp to synthesize and modulate signals from scratch.

    Written by Max Rottenkolber.


    -audio signal processing
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/spack.html b/clones/lisp/www.cliki.net/spack.html deleted file mode 100644 index b5084ff5..00000000 --- a/clones/lisp/www.cliki.net/spack.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: spack - - - - - - - -
    spack
    Structured data serialization and deserialization in Common Lisp.

    Depends on: ieee-floats, trivial-utf-8, cl-intbytes, ironclad, cl-leb128

    Repository: https://github.com/mahirvaylooj/spack


    -MIT-LICENSE
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/sparklines.html b/clones/lisp/www.cliki.net/sparklines.html deleted file mode 100644 index 081f8710..00000000 --- a/clones/lisp/www.cliki.net/sparklines.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: sparklines - - - - - - - -
    sparklines
    Sparklines is a plotting library to make word-sized data lines as described in Edward Tufte’s Beautiful Evidence.

    The examples below do not appear to be working (2011-12-13), see here for another one, and the accompanying source code.

    -glucose 120

    More examples are available.

    There is no publicly-available distribution yet, but I will make a common-lisp.net project soon. In the meantime, please contact greg@technomadic.org for more information.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/sparse-streams.html b/clones/lisp/www.cliki.net/sparse-streams.html deleted file mode 100644 index 8569058d..00000000 --- a/clones/lisp/www.cliki.net/sparse-streams.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: sparse-streams - - - - - - - -
    sparse-streams
    Gray Streams for subsets of underlying streams.

    Depends on: trivial-gray-streams

    Repository: https://github.com/nklein/sparse-streams

    License: Unlicense


    -stream
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/spartns.html b/clones/lisp/www.cliki.net/spartns.html deleted file mode 100644 index 835b2092..00000000 --- a/clones/lisp/www.cliki.net/spartns.html +++ /dev/null @@ -1,60 +0,0 @@ - - - - - CLiki: spartns - - - - - - - -
    spartns
    Spartns is a SPARse TeNSor representation library. If you don't know what a tensor is, think of it as a matrix with any number of dimensions, not just two.

    Website: https://gitlab.com/jpellegrini/spartns/

    Features:

      -
    • No external dependencies (no BLAS or any other C/Fortran library needed). Just plain Common Lisp;
    • -
    • Represents mappings from one dimension onto another using any scheme you want (there are two built-in schemes, hash and compressed-vector, but you can roll your own and plug it);
    • -
    • Flexible: works with any data type;
    • -
    • Heavily optimized: traversing the tensor can be extremely fast (in one specific situation, it was 10 times faster than a naive implementation in C++);
    • -
    • Somewhat portable: works with SBCL, ABCL, Clozure Common Lisp, CMUCL, Clisp, ECL, GCL, XCL, LispWorks, and Allegro Common Lisp. Probably works also with other Lisps also (not fully tested);
    • -
    • ASDF installable;
    • -
    • Easy to use, with introductory documentation (not only on-line);
    • -
    • Comes with description of the internals of the library.
    • -

    Topic: linear algebra

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/spath.html b/clones/lisp/www.cliki.net/spath.html deleted file mode 100644 index a1cbfc2b..00000000 --- a/clones/lisp/www.cliki.net/spath.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: spath - - - - - - - -
    spath
    SPath is a library for running search queries against s-expressions, intended to match parts of them that the user needs. It is inspired by s-query, the syntax of LOOP, and loosely by XPath; not that it has the full expressive power of XPath, but some of the stylistic choices and ideas were taken from there. In particular, SPath finds all instances of a match in the same sort of way as XPath.

    In other words, it's a DSL for pulling bits out of lists.

    The goal of SPath, like s-query, was to provide a means to easily dig around in XML structures when represented as s-expressions, but unlike s-query I tried to do it in a fashion agnostic to the XML generation system in question. I also consider it of general utility, because I get sick of writing nests of list operations.

    It was created by Robin Lee Powell, and is in the public domain.

    SPath requires Heresy.

    Documentation, such as it is, can be found at the SPath readme. The SPath test suite should also effectively document everything SPath can do, albeit not in a very readable fashion.


    -Topics: pattern matching
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/spatial-trees.html b/clones/lisp/www.cliki.net/spatial-trees.html deleted file mode 100644 index 07cfb3a0..00000000 --- a/clones/lisp/www.cliki.net/spatial-trees.html +++ /dev/null @@ -1,58 +0,0 @@ - - - - - CLiki: spatial-trees - - - - - - - -
    spatial-trees
    spatial-trees is a set of dynamic index data structures for spatially-extended data. The flavors provided are, as of the 0.1 release (on 2004-12-03): -
      -
    • R-trees, as in R-TREES: A DYNAMIC INDEX STRUCTURE FOR SPATIAL SEARCHING, Antonin Guttman, Proc. ACM SIGMOD Int. Conf. on Management of Data, 1984.
    • -
    • Greene-trees, as in An Implementation and Performance Analysis of Spatial Data Access Methods, Diane Greene, Proc. 5th IEEE Int. Conf. on Data Engineering, 1989.
    • -
    • R*-trees, as in The R*-tree: An Efficient and Robust Access Method for Points and Rectangles, Beckmann, Kriegel, Schneider and Seeger, Proc. ACM Int. Conf. on Management of Data, 1990
    • -
    • X-trees, as in The X-tree: An Index Structure for High-Dimensional Data, Berchtold, Keim and Kriegel, Proc. 22th Int. Conf. on Very Large Databases, 1996
    • -

    Future work planned includes performance enhancements, incorporation of more index structures, and some work on supporting more optimal indexing when the entire set of data is known at index creation time; for more details, see the TODO file in the binary distribution.

    The code is licensed BSD-style, and is intended to be similar in spirit to Nathan Froyd's TREES Library.


    -You can get this via Quicklisp.

    As per #lisp discussion, the new official source for this is the github repository, which is a conversion of the darcs repository.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/speaker - Speech synthesis library.html b/clones/lisp/www.cliki.net/speaker - Speech synthesis library.html deleted file mode 100644 index 5377dabd..00000000 --- a/clones/lisp/www.cliki.net/speaker - Speech synthesis library.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - CLiki: speaker - Speech synthesis library - - - - - - - -
    speaker - Speech synthesis library
    Multiplatform Speech synthesis library wrapper for Common Lisp

    Speaker speech synthesis library is a cffi interface to an adapter library which interfaces to a speech library of the platform. It enables text-to-speech and -recognition (recognition only on Mac OSX). Dependency is only cffi. The MacOSX version uses Cocoa NSSpeechSynthesizer, Windows uses Speech API, Linux uses QtTextToSpeech. For the exaxmples you need "bordeaux-threads" and "trivial-main-thread". Tested on sbcl, ecl and ccl on Linux, Mac OSX and Windows. Repository can be found here.

    First open your IDE XCode/Visual Studio/QtCreator project "libspeak" and compile the libspeak.dylib/.so/.dll and copy the lib to /usr/local/lib. Windows users copy to Windows/System32. Then cd into the speaker/src directory and load your favouorite lisp and type:.

    (asdf:load-system :speaker-examples)

    -(main)

    -If you just use the library then just type

    (asdf:load-system :speaker)
    -(init-speaker)
    -(speak "Test")

    Or add it to your .asd-file.

    License is based on GNU LESSER GENERAL PUBLIC LICENSE.

    audio library

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/spinneret.html b/clones/lisp/www.cliki.net/spinneret.html deleted file mode 100644 index a778ba83..00000000 --- a/clones/lisp/www.cliki.net/spinneret.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: spinneret - - - - - - - -
    spinneret
    Common Lisp HTML5 generator

    GitHub

    HTML generator

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/split-sequence.html b/clones/lisp/www.cliki.net/split-sequence.html deleted file mode 100644 index a11bb1f9..00000000 --- a/clones/lisp/www.cliki.net/split-sequence.html +++ /dev/null @@ -1,84 +0,0 @@ - - - - - CLiki: SPLIT-SEQUENCE - - - - - - - -
    SPLIT-SEQUENCE
    SPLIT-SEQUENCE (formerly known as PARTITION) is a member of the Common Lisp Utilities family of programs, designed by community consensus.

    See also cl-ppcre:split.

    Function SPLIT-SEQUENCE, SPLIT-SEQUENCE-IF, SPLIT-SEQUENCE-IF-NOT

    Syntax:

    split-sequence delimiter sequence &key count remove-empty-subseqs from-end start end test test-not key => list, index

    split-sequence-if predicate sequence &key count remove-empty-subseqs from-end start end key => list, index

    split-sequence-if-not predicate sequence &key count remove-empty-subseqs from-end start end key => list, index

    Arguments and Values:

    -
    delimiter
    -
    an object.
    -
    predicate
    -
    a designator for a function of one argument that returns a generalized boolean.
    -
    sequence
    -
    a proper sequence.
    -
    count
    -
    an integer or nil. The default is nil.
    -
    remove-empty-subseqs
    -
    a generalized boolean. The default is false.
    -
    from-end
    -
    a generalized boolean. The default is false.
    -
    start, end
    -
    -bounding index designators of sequence. The defaults for start and end are 0 and nil, respectively.
    -
    test
    -
    a designator for a function of two arguments that returns a generalized boolean.
    -
    test-not
    -
    a designator for a function of two arguments that returns a generalized boolean.
    -
    key
    -
    a designator for a function of one argument, or nil.
    -
    list
    -
    a proper sequence.
    -
    index
    -
    an integer greater than or equal to zero, and less than or equal to the length of the sequence.
    -

    Description:

    Splits sequence into a list of subsequences delimited by objects satisfying the test.

    List is a list of sequences of the same kind as sequence that has elements consisting of subsequences of sequence that were delimited in the argument by elements satisfying the test. Index is an index into sequence indicating the unprocessed region, suitable as an argument to subseq to continue processing in the same manner if desired.

    The count argument, if supplied, limits the number of subsequences in the first return value; if more than count delimited subsequences exist in sequence, the count leftmost delimited subsequences will be in order in the first return value, and the second return value will be the index into sequence at which processing stopped.

    If from-end is non-null, sequence is conceptually processed from right to left, accumulating the subsequences in reverse order; from-end only makes a difference in the case of a non-null count argument. In the presence of from-end, the count rightmost delimited subsequences will be in the order that they are in sequence in the first return value, and the sec­ond is the index indicating the end of the unprocessed region.

    The start and end keyword arguments permit a certain subsequence of the sequence to be processed without the need for a copying stage; their use is conceptually equivalent to partitioning the subsequence delimited by start and end, only without the need for copying.

    If remove-empty-subseqs is null (the default), then empty subsequences will be included in the result.

    In all cases, the subsequences in the first return value will be in the order that they appeared in sequence.

    It should be noted that in Common Lisp, strings are sequences and therefore split-sequence can also be used to split strings, and splitting strings is one of the most common use of split-sequence. Notably, newbies often ask about split-string or some other wait to split strings. Split-sequence is the answer to the Common Lisp split string quest.

    Examples:

    - (split-sequence:SPLIT-SEQUENCE #\Space "A stitch in time saves nine.")
    -=>  ("A" "stitch" "in" "time" "saves" "nine.")
    -    28
    - (split-sequence:SPLIT-SEQUENCE #\, "foo,bar ,baz, foobar , barbaz,")
    -=>  ("foo" "bar " "baz" " foobar " " barbaz" "")
    -    30
    -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ssqlfs.html b/clones/lisp/www.cliki.net/ssqlfs.html deleted file mode 100644 index 89275519..00000000 --- a/clones/lisp/www.cliki.net/ssqlfs.html +++ /dev/null @@ -1,57 +0,0 @@ - - - - - CLiki: ssqlfs - - - - - - - -
    ssqlfs
    ssqlfs is an application which generates a SQL database which corresponds -to a defined file/directory structure. Along with support for one-to-many tables, ssqlfs -includes support for representing many-to-many tables.

    ssqlfs is written in common lisp. -Ideally, the filesystem would be interconvertible with an SQL database but at this point the -functions for generating a file/directory structure from the SQL database are in a relatively -'alpha' state and remain to be thoroughly tested.

    ssqlfs has been developed using SBCL. It depends on several lisp packages including clsql, cl-ppcre, and cl-fad. The program is released under the LLGPL.


    -obsolete
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/sst.html b/clones/lisp/www.cliki.net/sst.html deleted file mode 100644 index 7426d927..00000000 --- a/clones/lisp/www.cliki.net/sst.html +++ /dev/null @@ -1,61 +0,0 @@ - - - - - CLiki: sst - - - - - - - -
    sst
    SST (SQL Schema Transformer) is a Common Lisp program that transforms an s-expression based database schema format medium into appropriate SQL commands for specified RDBMS. SST is capable of

      -
    • Dividing produced queries into logically separate (schemas, tables, primary keys, foreign keys, indexes) files.
    • -
    • Customized (and extendable) identifier formatters. (You can adopt a naming scheme you prefer to name tables, indexes, etc.)
    • -
    • FOREIGN KEY data type mismatch detection.
    • -
    • Invalid FOREIGN KEY reference detection.
    • -
    • Missing index detection for ON DELETE/UPDATE CASCADE references.
    • -
    • FOREIGN KEY reference auto-completion. (You don't need to supply column of the referenced table. SST infers it for you.)
    • -
    -Project is released under BSD license and -currently maintained by Volkan YAZICI.

    See README file further details.


    -s-exp syntax
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/st-json.html b/clones/lisp/www.cliki.net/st-json.html deleted file mode 100644 index 83716b36..00000000 --- a/clones/lisp/www.cliki.net/st-json.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: st-json - - - - - - - -
    st-json
    ST-JSON is a JSON encoding and decoding library.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/standards.html b/clones/lisp/www.cliki.net/standards.html deleted file mode 100644 index 3e7b9b93..00000000 --- a/clones/lisp/www.cliki.net/standards.html +++ /dev/null @@ -1,116 +0,0 @@ - - - - - CLiki: Standards - - - - - - - -
    Standards
    The wonderful thing about standards is that there are so many to choose from.-- Grace Hopper

    I thought that it was Andrew S. Tannenbaum who said this.--Roland Kaufmann

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/stassats-inotify.html b/clones/lisp/www.cliki.net/stassats-inotify.html deleted file mode 100644 index 079ae492..00000000 --- a/clones/lisp/www.cliki.net/stassats-inotify.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: stassats-inotify - - - - - - - -
    stassats-inotify
    stassats-inotify is an interface to the Linux inotify facility for file change notifications.

    Homepage: https://github.com/stassats/inotify

    License: public domain


    -Topics: system programming
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/stassats-mpd.html b/clones/lisp/www.cliki.net/stassats-mpd.html deleted file mode 100644 index d4e240db..00000000 --- a/clones/lisp/www.cliki.net/stassats-mpd.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: stassats-mpd - - - - - - - -
    stassats-mpd
    stassats-mpd is an interface to the Music Player Daemon

    Homepage: https://github.com/stassats/mpd

    License: Public domain

    See also: CL-MPD


    -Topics: audio
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/stassats-ogg.html b/clones/lisp/www.cliki.net/stassats-ogg.html deleted file mode 100644 index 68ae34b0..00000000 --- a/clones/lisp/www.cliki.net/stassats-ogg.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: stassats-ogg - - - - - - - -
    stassats-ogg
    stassats-ogg is an Ogg Vorbis container (metadata) reader/writer library.

    Homepage: https://github.com/stassats/ogg

    License: public domain


    -Topics: audio file format
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/stassats-storage.html b/clones/lisp/www.cliki.net/stassats-storage.html deleted file mode 100644 index b1b210c0..00000000 --- a/clones/lisp/www.cliki.net/stassats-storage.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: stassats-storage - - - - - - - -
    stassats-storage
    stassats-storage is a CLOS ObjectStore.

    Homepage: https://github.com/stassats/storage

    License: public domain

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/stassats-subtitles.html b/clones/lisp/www.cliki.net/stassats-subtitles.html deleted file mode 100644 index cc8cd0dc..00000000 --- a/clones/lisp/www.cliki.net/stassats-subtitles.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: stassats-subtitles - - - - - - - -
    stassats-subtitles
    stassats-subtitles is a movie subtitle editing library.

    Homepage: https://github.com/stassats/subtitles

    License: public domain


    -Topics: file format
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/static-vectors.html b/clones/lisp/www.cliki.net/static-vectors.html deleted file mode 100644 index 88d1457b..00000000 --- a/clones/lisp/www.cliki.net/static-vectors.html +++ /dev/null @@ -1,60 +0,0 @@ - - - - - CLiki: static-vectors - - - - - - - -
    static-vectors
    Allocate SIMPLE-ARRAYs in static memory.

    Depends on: alexandria, cffi

    Repository: https://github.com/sionescu/static-vectors

    License: MIT

    A few use notes

    CAVEAT: On some implementations, the GC takes care of deallocating the -arrays, while on others they need to be deallocated explicitly; -therefore, in order to make sure that deallocation works on all -implementations, you must use FREE-STATIC-VECTOR -and make sure that all references to the array are destroyed.

    Furthermore, you can only allocate simple-arrays - not arrays of -element-type T and not multidimensional arrays. For use in the latter case, -you can displace a multidimensional array to a simple-array of element-type.

    This library is especially useful in cases when you need to share an -array with a C/C++/Fortran library, as long as the allocation is done -on the Lisp side: e.g. as buffer for an I/O stream, et cætera...


    -system programming
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/static/css/colorize.css b/clones/lisp/www.cliki.net/static/css/colorize.css deleted file mode 100644 index 6258afa9..00000000 --- a/clones/lisp/www.cliki.net/static/css/colorize.css +++ /dev/null @@ -1,29 +0,0 @@ -.symbol { color : #770055; background-color : transparent; border: 0px; margin: 0px;} -a.symbol:link { color : #229955; background-color : transparent; text-decoration: none; border: 0px; margin: 0px; } -a.symbol:active { color : #229955; background-color : transparent; text-decoration: none; border: 0px; margin: 0px; } -a.symbol:visited { color : #229955; background-color : transparent; text-decoration: none; border: 0px; margin: 0px; } -a.symbol:hover { color : #229955; background-color : transparent; text-decoration: none; border: 0px; margin: 0px; } -.special { color : #FF5000; background-color : inherit; } -.keyword { color : #770000; background-color : inherit; } -.comment { color : #007777; background-color : inherit; } -.string { color : #777777; background-color : inherit; } -.character { color : #0055AA; background-color : inherit; } -.syntaxerror { color : #FF0000; background-color : inherit; } -span.paren1:hover { color : inherit; background-color : #BAFFFF; } -span.paren2:hover { color : inherit; background-color : #FFCACA; } -span.paren3:hover { color : inherit; background-color : #FFFFBA; } -span.paren4:hover { color : inherit; background-color : #CACAFF; } -span.paren5:hover { color : inherit; background-color : #CAFFCA; } -span.paren6:hover { color : inherit; background-color : #FFBAFF; } - -pre, .code, span.nonparen { - background-color: #f7fbfd; -} - -pre, .code { - border-top: 1px solid #AC9; border-bottom: 1px solid #AC9; - margin: 0.2em; padding: 0.5em; - font-family: "Courier New", monospace; font-size: 90%; - overflow: auto; - white-space: pre; -} diff --git a/clones/lisp/www.cliki.net/static/css/style.css b/clones/lisp/www.cliki.net/static/css/style.css deleted file mode 100644 index 0674887a..00000000 --- a/clones/lisp/www.cliki.net/static/css/style.css +++ /dev/null @@ -1,371 +0,0 @@ -* {margin:0;padding:0;outline:0;font-family:Arial,Helvetica,sans-serif;} - -#pageheader { - background: url(../img/headerbg.png) top left repeat-x; - height: 109px; - position: absolute; - top: 0; - width: 100%; -} - -#header { - height: 109px; - margin-left: 85px; -} - -#logo { - display: block; - width: 150px; - height: 65px; - margin: 22px 0 0 0; - text-indent: -9999px; - background: url(../img/logo.png) top left no-repeat; - float: left; - color: white; - font-size: 60px; - text-decoration: none; -} -#logo span { color: #ffd700; font-size: 30px;vertical-align: top;} - -#slogan { - margin: 33px 0 0 10px; - float: left; - color: white; - font-size: 24px; -} - -#login { - margin-top: 32px; - margin-right: 20px; - float: right; -} - -.login_input { - border:none; - background:white; - color:black; - width:103px; - height:23px; - line-height:23px; - float:left; -} - -#login input[type=text] {margin-right:2px;} -#login input[type=password] {} -#login input.blur {color:#999;} - -#login_submit { - font-size:11px; - border:none; - background:#256aa3; - height: 23px; - line-height:23px; - color:white; - width:65px; - cursor:pointer; -} - -#login input[type=submit]:hover { background:#175487; } - -#login { - font-size:11px; -} - -#login a { - color: white; -} - -#reset_pw { - display:inline; - font-size:11px; - background:#256aa3; - color:white; - cursor:pointer; - width:103px; - line-height: 15px; - margin-top:2px; - margin-left:-1px; - border:0; - padding:0; -} - -#register { - display:inline-block; - width:103px; - background:#256aa3; - text-align:center; - line-height:15px; -} - -#register a { - text-decoration:none; - padding-left: 30px; - padding-right: 30px; -} - -#register:hover { - background:#175487; -} - -#logout { - height: 23px; - line-height:23px; -} - -#logout a { - text-decoration:none; -} - -#logout span { - float:left; -} - -#logout_button { - width: 65px; - background:#256aa3; - float:right; - text-align:center; - margin-left:15px; -} - -#logout_button:hover { - background:#175487; -} - -#header-buttons { - position: absolute; - top: 109px; -} - -.buttonbar { - height: 36px; - background: #256aa3; - width: 100%; -} - -.buttonbar ul { - list-style: none; list-style-position: outside; - margin-left: 73px; -} - -.buttonbar ul li { - float: left; - line-height: 36px; - height: 36px; -} - -.buttonbar ul li a { - color: white; - text-decoration: none; - font-size: 16px; - padding: 0 12px; - display: inline-block; - height: 36px; -} - -.buttonbar ul li:hover { - background: #175487; -} - -#search { - float: right; - margin-top: 7px; - margin-right: 20px; -} - -#search input[type=text] {border:none;background:white;color:black;width:208px;height: 23px;line-height:23px;float:left;} -#search input[type=submit] {border:none;background:#175487;width: 65px; height: 23px;line-height:23px;color:white;cursor:pointer;} -#search input[type=submit]:hover { background: #256aa3 ; } - -#paginator { - color: #333; - background: #eee; - margin-top:20px; -} - -#paginator span { - display:inline-block; - font-style:oblique; - margin-right:12px; -} - -#content { - padding-top:15px; - background: url(../img/contentbg.png) top left repeat-x transparent; - font-size: 15px; - line-height: 22px; - position: absolute; - top: 145px; - width: 100%; -} - -#content-area { - padding-left:85px; - padding-right:85px; -} - -#content-area #article-title { - padding-bottom: 20px; - font-size: 30px; - font-weight: bold; - color: rgb(153, 153, 153); -} - -#content-area h1 { - padding: 30px 0 20px 0; - font-size: 30px; - font-weight: bold; - color: #256aa3; -} - -#content-area h2 { - padding: 20px 0 10px 0; - font-size: 26px; - font-weight: normal; - font-style: oblique; - color: #256aa3; -} - -#content-area ul, #content-area ol { - padding-bottom: 1em; -} - -#content-area ul li { - list-style-type: square; -} - -#content-area li, #content-area dd { - margin-left: 40px; -} - -#content-area .code { - background: #F7FBFD; -} - -#content-area p { - padding-top: 15px; -} - -.internal { text-decoration: none; color: #0645ad; } -#content-area a.internal { text-decoration: none; color: #0645ad; } -#content-area a { color: #0000ee; } -#content-area a:visited { color:#1c0080; } -#content-area a.new { color: #BA0000; text-decoration: none; } -#content-area a.category { color: rgb(0, 119, 187); text-decoration: none; } -#content-area a.hyperspec { color: #4040f2; font-family: Courier, monospace;} -#content-area a.download { color: #00E; font-weight: bold; } - -#content-area input[type=text], textarea { border:1px solid #a4a4a4; } -#content-area textarea { width:100%; } - -#article table { - background: #F7FBFD; - border: 1px solid #AACC99; -} - -#article th { - background:#cfe7fb; -} - -#article td { - background: #ecf4f8; -} - -#categories { - margin-top: 20px; - margin-bottom:-40px; -} - -#footer { - margin-top: 40px; -} - -pre, pre *, code, .code, .code * { font-family: monospace; } - -tt { - font-family: Courier, monospace; -} - -#pagehistory { - background:none; - border:0; -} - -#pagehistory td { - background:none; - padding-right: 0.5em; -} - -#pagehistory tr { line-height: 19pt; } - -#pagehistory a { text-decoration:none; } - -table.diff { border: none; border-spacing: 3px; table-layout: fixed; width:100%; } -table.diff a { text-decoration: none; } -table.diff col.diff-content { width: 48%; } -td.diff-marker {font-size: smaller; text-align: right;} -td.diff-line-number { font-weight: bold; } -td.diff-context { font-size: smaller;} -td.diff-deleteline { font-size: smaller;} -td.diff-addline { font-size: smaller;} - -.regin { - border:1px solid #a4a4a4; - margin-bottom:6px; -} - -.prefs dt { - display:inline-block; - clear:both; - float:left; -} - -#content-area .prefs dd { - margin-left:10em; -} - -.prefs input { - vertical-align:bottom; -} - -.error-info { - color:red; -} - -.del { - border:0; - margin:0; - background:none; - font-size:16px; - color:white; - padding: 0 12px; - height: 35px; -} - -.del:hover { - cursor:pointer; -} - -.undo { - border:0; - background:none; - color:#0645AD; - font-size:15px; -} - -.undo:hover { - cursor:pointer; -} - -table.diff .undo { - font-weight:bold; -} - -.centered { - text-align:center; - font-weight:bold; -} - -.hidden { - display:none; -} \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/static/img/contentbg.png b/clones/lisp/www.cliki.net/static/img/contentbg.png deleted file mode 100644 index c93eace964e8679c3d183428e710b98d82c272f5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 302 zcmeAS@N?(olHy`uVBq!ia0vp^Vn7_r!3HE3YEPR2q*&4&eH|GXHuiJ>Nn{1`*^<27 zT^Rm@;DWu&Cj&(|3p^r=85p>QL70(Y)*K0-AbW|YuPgg)W+^T{le*69T|lALo-U3d z8TZ~^GvqqtAkg~o=1tQ{hukhQ-+2CS`3JFUNed-%t{t;I#BKBAJA?dTdtr~x(?z@o zvjg|VvWQz-xE8EXiwoZ_vgxU7Q6BTZ9ZM^gUk^>`nD-z4F+PcXZmAUVyExNl`O>EhWkZ{BECjXZ2ko7RE<2oOw*~RredLGZZB@FjI kOn$d_GLr-xRA~QTPczjG2uQhl5$J3NPgg&ebxsLQ01Pm0{Qv*} diff --git a/clones/lisp/www.cliki.net/static/img/headerbg.png b/clones/lisp/www.cliki.net/static/img/headerbg.png deleted file mode 100644 index 2f7729adec27963fe5bcefd865e57586ab5e1d48..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 256 zcmeAS@N?(olHy`uVBq!ia0vp^Aa*VX6Oa^Nn9c#DSkfJR9T^xl_H+M9WCilslDyqr z82*Fcg1yTp14TFsJR*x37`TN&n2}-D90{Nxdx@v7EBkF`DNaq3Wn8zn0flNkT^vI^ zj=v3w=4)W!xb&=aSM>2$)5@9>x+lJVsLw3BVrO3Uobc2Is~Rj)ovT!r=m*R`=rX78 zTS)YeCoe_R-)v#c+Spi0J@34K1cnw42A(2fD{`K>K4q@bP0l+XkK2PR)w diff --git a/clones/lisp/www.cliki.net/static/img/logo.png b/clones/lisp/www.cliki.net/static/img/logo.png deleted file mode 100644 index cb317cb95223cb38349a497e8e5a47d67500cac6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6870 zcmV;{8Y$(8P)0q1 zK8|=>-{eDmk`#dwV@c6g@|(7THQs)CvSh#qiAV zCOiUx1d{B%XXbbRn3eb28yxU;R8v2kdj&^VmfEu6k)!+caN4fBLJFR~9ZVS%-Z6JnGI}hS&FAmy{1> z8(5`7`}4dB!!RvaglWM+8I|3A^bEG{tH&0j9`Dv1?X*#b7UuEL!ae|ix`y+pYiOo) z!0t)v&Y&nAu#f-s#>bJbpYL$*#~U8O>wB*w03dQ$e0cvI?5j@4uEfJ{{txoXdB3{@ zs(-!l@j?%{@${!X^YO&{-$H{2Yz{@XZA=>Gy1?2EPmK=(OR!y<}3x0MC?WyMwbUo%hwrE0cl> z0KPrrIjr9K1qdl)?|o7F`WT)?Cn_-zIgb)xybQ@etO4cO>6#y(L z{R{qm`%S#JAxIAq-vkijtK^+^f=QXTl+aMwcXUt~Qfu8zH+6HoHJ-)$8hfm|}ZTqot*HIjoeHUIas%Y7avBPlN zoN?%vmt18no<16jr;o<#RR?(S^wEh8Xjw2LQAjBvr3Bm&CpZu8~p!-KE^BW?|SOc z$+HGC2LTQOWDrp9%4Orw$wuSQ$;OA?s;Uh>@xpt!eeU>W-~aMl^ver$3b6KMnkK@L zFmz1=34(-3xc|%5)%5fKtiqT<`8;h*5xz951mi~z>{8=y+;tQich_O#?mFx|R8Nh~ zPR9u$plO;Twb}tY9j!k&1B*-6CB1j}>;P=98}g8@M zy1LyU5+M>~2|s9n(@Yegsec`v$zcp{9x% zo5>l;At6Ob2pN)6LI@c%Cf&{fz_6LYwryCpZM2#e{^^;u#Xq_K+S=Raj`sm92HPA2 zv*B7ei2o)*0yYUqDPcXJ~?=@0YFfY2uUd`rBWf~jx6bd%JUjxz+wgiVB3bxwqrAyrt#Px-zR|h_POJ_ zEykr30CWf;pezfvWf_)bRsP?1K1mC##^x~Is;UK%sFG5Iq*N8swWYj4;#?9!$}ZS3 z1QG%-e0&o2TnE+ks+iADWxhjO@q=jC>K<1fa>Tq zIW~ZFJUrWW%9th|f8hffQPh`bj2q^2WV#n6HVCuBTT0;o*tTKW7OD@Pc0^_hsyTQP zMARUq2x*#Dq3b%7(i|hb-8UuoN>h^%1SJJn*TAqrgr$~cEp%bypGyA)qu3AV3NU%eF$EQ=pWBQd$?KVRj{!Qy(qnuvp46nAs4* zF*TH?LAmwpG~AG%qw!Dfo|%%_TUE7q`Mnwt2}3GbscBkeKo3CEbq7=#dPp&l5ka`u zsdG_U@#Z#u^o|*6rIsJtnc{}7@L4xOWJnzP9&ezX#Y2m)OcpQUm8&d{< z;@Dr&K3KV933=_<)d*b|e2R`jX7F}yU(eFQedwb%gNU$l$6_>_x#SJDP6MP*-aRv= z_t)4Q#=krpDkh@M!ch~IdLRH@4?uPiRP6yEi2wp#{GgWZo=HjvY{;={j^>&kCp# zz$GL!O+)2dA18gLE#}2>|II);`W*6}!;uYT^k?IGY&|~FUsT^TVOb`a8QqOXZ96d$ z?;V;}3h%Lt^_<9}yEX#srSzy}+Gj~*l`8gW?>6VFUJ*DT~+Ey%x zRw}6~bWMY<>CmzWs(7iQ0Q`CDAu7M|DjqfK+m25x-cmQg$Wx8H=F1NxJYUx|2$fsz z!211VRZWq+G9tp^GXt>s$av)I=gYr6Evwt#$IJ#Z>M}R8@O|rx#z=Q5Cwp znb8CFAS1iV5FjBTCBSLs#%<;xyFuiRyeXr4-(0+|wqn+=0RX@F@LoJ$b^S|`aQIG} zEjOGXA(g7qlv*m4G8|zc0WgSCn>e1g==FtYrv}qD$SWImx^W#5Qc6K3i3;~*9Oca| z2Rc!Q8Cvcakzy{nQqXn%g7Cb#_#Lj8^}hiCKY9NV{KqFZ6A=s{1vI50pa-gQa&n4u zb92f9IXOlk5QqhWrF67XCf;x?@?J8eKMyHLzew++okt*q2uUdor6gpW3hZeTf>6D` z{v`l+_GE;)rz6;jL1E$Fd2rR4?`VTt*TrMk^Y`ZbHumRhMsCEa?Xw&JDD{#QqEcyE zNYgaLPam}x7U}rKn+mb7x^c?Lw2jf&97fHd`YLjOmDSLK-_AIGwsq<5qi670p`LEL zFOA<2v#C6qH)<2+jr@q2IjEGX2m}J5Kp=qj!0H4#J|ⅈwy&ul2!yjI^H0pJMD5I zCmIA1wi+ifc344zahhEVD81``Q9uX;2?+Y_=H)m2VeM^Kewg&$j~4tMn~sdXGlIgU z-t=2KkW&V2r2xW^f;?Ypu;$=NXDN&~n=fRK8|}%A`1f}nL&?zouq_Ka51w+3R9t|r zzgWjfxO&8{r1!56Zoys0{=}>H z+)B>M3Cddg2m(+%q@S;HO)U}6aCg=q5p^1w?#WBI0aMM{C}3!=T9#d?Q#PXT-Muoz zRWR=AT)P|}j*2($ed@b^zAt59^S@7j6@zk)vKN5OMm-6x@$MH`AMHF+6jm^pa(?0`kzU2|VbmH5~-zl9fN=Pb=$2shN=w?mEY zENaVkOiR-=1Ofr%myXA}0sl=k3 zqwGx|Wn9npyoVI@@deQ%^-XYgs0hSgxF}W@#rS*PX`+XkZ7VC;l+J~+vXXhc{_5_S zEzYu|Fc*e?wEm&AD$z7eXM+kO(|RTXYj8nsMq>3s1ob{ol&_snd4G8SQ!Bdi-hMeP zp44(29ZkarM`zRKqvKPm#0Rc=kxkP~suELetR3F}R7V>t6JT9z`|7hs4^REKlp5nV zUs{3jgAQ^MKu*77?CMU-U2)lA+&}%DwS5E4nZC~UiJ#^821|Ih_kS5 zJNEY*$GpuYh5I@!_r2?1#)9Ilv3k;Xo_n8v{=ghR9wF}k`RYZvIXR)cK7A0-b!SU^ zFQ>JSFX43G{lG8&RGgEOWAw?(b5_ZA^Sg@+41Rd(vzUC@$G*$dog0K7tgpbhqJy}7 z+-ejT7{1GHJvIT~dHYEcLLeHA;+`vC;PUCOq%F6%VGPbk^HE%Aq?N2OZ#0sJUvGLa zvz^cszqjgQ&TU*Y7b}YaY5>(It^$L>wzKWccK24I-413!PI$+1@1Kk0q58x`I2*{l zvKDNcJ9y6|2vPu+ZGi+qNP$(mmK0ALT2pJ=Hn?4xczz@Zf^6(PJq7?`b+v2@YuuKzdvll|CWR{f)LQ)6=PLdCpCIJisV3^LXaWFHa5C%b2 zuuRl2g2>HpVLDst-03)7)7<6G2$`lCvRz=gF{l_n0z1!v9LZ?eAP}Tf6+&<@v7Tgr z0n4`S~+5|!##GSO zu`f{?dVJ~h*lzS^-l{?EvBq9$(#25m{*Gh53XC6Fgwmk}Y<&vUVSbKQK56v8&y3uh zGO+4)_*-X>#by0+*>Y{Ii$(X$8|#g9 zeC>uSU|Cjdg!e{iHEDF>HoTVBRMXeUsrC}gJ?7g(;eNtts~k?D*$M14KI&IA~A{8o4zRlSV9Oqzix-Gg4a(Tjme`2 zvT0p-sg<9jm3z_(aE_LH<%6Bn(%K5ABkW!Usv9Pc=pe0*oN9s@jV`k+d!YxY-V}^Z zaOs2)`1rtSTEG3UKM&^1bC9Fxg4+Q1%qv|HFRfO*xeejg@bX9`ve0yQne>*?-F}e7 zfK}h*G+FM+3X2`R9A)h23ciKHz&Y+ydVf9DJ~P19Lb=$-e{gV&_d1NgR? zV`6pKeWU@aHtc|DnakL=gWhw_;P&&*Oep)`bL))DS0vle;tUKgOCk3d|DL);{J+UL z^$)F4#uG38)mKx`ziK3w-9DYIsIyqDC+k~0xF0{hv@C)D)2sdp%d$YA1}SBwa+ihp zes3n2LiWGs-fPEp%F>-8HewR1_u#5ybkp0u{=u%}w0dK$uQp$Dbr6rxm<9p$3tR!NL z;H)gvm4=Gv-=m#}Px*S;EoEa+`SA68`JjBxmRh`hX0QXOnpz_G){3<-qoy-Dl&py5 znRkzN^YiY>K7*<=#tvJ{SyU4@OdiSiUYq_@Gm1M94nDu>Q=97L)+t;th-SbK~R~NBGftmhHx_lr%egAC!+KpFs0M%E2^#%?cI}Mv{ zNFl26hjVF397#me zDI-ywBm+)UO9cP;%Qvun-*MQs4Jk!KKo6AVzIN%E2QZ}Y`*`2eyWYkvgug9^5W*k4;obdO_mlt7hL0-z` z(YueF#y6i?iv!0SoRbfPKtR_Q<>UlHx*l*3Fc3-Xv;JH%q(2510pNO z#^(LSn|9S1PuxF`XN()35wppc7h&?{nOE|eH@4!}uWf>9I)PXr1$0e+D4+*Inx;Fs z=DiR@JNo)f6SD%O_T)FGShq($#T~obi)N{mpSqF|kN|XD2N4j~}!4qdTR^+;HjrTCUH0t{4N7^B$ohbntSLqm2KNszx=^ptX@_+ypZl&Fo_pU3wAs1bM(|Xyj{H?e^~oB z96EW{HJH7;qpCsIw57VPhjd+Y4lnQ~JUaP~+M{OxH_w3Wx_0ayW8vjKXq)~?yR$Fh zG+4l2x`DQ;CGt+iv#~k6ETC&uj?KlTetZiD=YBG#U*?&FD(g zw5Hp(g#}Z_V8*y%m@ujcGslnc<^AkDRF93j>acOw5!4(w>G%~Kx6x8cC?#LgHEpS; zX|Y82e$pvRNDKi#BWhB9SY)HD~Grn&qtA0M3lPW65_ zE1Yx996!9R1>LqeTHl1jrw!9cb!l&~R>;lMATQAAYT2g$59`{IH0}gy QZ~y=R07*qoM6N<$f`Oer6#xJL diff --git a/clones/lisp/www.cliki.net/statistics.html b/clones/lisp/www.cliki.net/statistics.html deleted file mode 100644 index f4d0a16b..00000000 --- a/clones/lisp/www.cliki.net/statistics.html +++ /dev/null @@ -1,107 +0,0 @@ - - - - - CLiki: Statistics - - - - - - - -
    Statistics
    Statistics libraries/packages. See also mathematics. -
  • -Lisp-Stat - Lisp-Stat is an environment for statistical computing, similar in spirit to R and XLisp-Stat.
  • -
      -
    • -cl-ana - - cl-ana aims to provide the basic tools necessary to analyze large/medium-large datasets -
    • -
    • -cl-mathstats - - CL-MathStats is a set of miscellaneous Common Lisp mathematics and statistics utilities -
    • -
    • -cl-randist - - This package is a manual translation from C to common lisp of some random number generation functions of GSL library -
    • -
    • -cl-random - - [unmaintained, maintainers welcome] A library for uni- and multivariate probability distributions and statistics functions -
    • -
    • -CLLIB - - CLLIB is a varied collection of Common lisp tools and routines in CLOCC -
    • -
    • -common-lisp-stat - - Common Lisp Statistics -- based on LispStat but updated for Common Lisp and incorporating lessons from R -
    • -
    • -Mersenne Twister - - The Mersenne Twister is a pseudorandom number generation algorithm created by Makoto Matsumoto -
    • -
    • -py-random - - A translation of the random module in the Python standard library -
    • -
    • -RCL - - RCL is an FFI to communicate with the R statistics environment -
    • -
    • -rclg - - An R (statistics programming language) FFI for Common Lisp -
    • -
    • -sapaclisp - - sapaclisp is a collection of Common Lisp functions for spectral analysis -
    • -
    • -SimpSamp - - SimpSamp is a statistics library for simple random sampling without replacement -
    • -
    • -Stats - - Stats by Larry Hunter is a statistics library -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/stella.html b/clones/lisp/www.cliki.net/stella.html deleted file mode 100644 index 03d81f67..00000000 --- a/clones/lisp/www.cliki.net/stella.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: stella - - - - - - - -
    stella
    Stella is a functional programming language generating Common Lisp, Java or C++ code.

    The name STELLA comes from “Strongly Typed, Lisp-like LAnguage”.

    See Also: PowerLoom

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/stl-io.html b/clones/lisp/www.cliki.net/stl-io.html deleted file mode 100644 index ee9a20e3..00000000 --- a/clones/lisp/www.cliki.net/stl-io.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: stl-io - - - - - - - -
    stl-io
    The stl-io library deals with reading and writing binary STL files.

    Depends on: LISP-BINARY

    Repository: https://github.com/thomashoullier/stl-io

    License: MIT


    -CAD binary format
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/stl.html b/clones/lisp/www.cliki.net/stl.html deleted file mode 100644 index 45d707bc..00000000 --- a/clones/lisp/www.cliki.net/stl.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: stl - - - - - - - -
    stl
    Read binary triangle data from STL files.

    Depends on: ieee-floats, 3d-vectors

    Repository: https://github.com/jl2/stl

    License: ISC


    -CAD binary format
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/stmx.html b/clones/lisp/www.cliki.net/stmx.html deleted file mode 100644 index d07a418b..00000000 --- a/clones/lisp/www.cliki.net/stmx.html +++ /dev/null @@ -1,97 +0,0 @@ - - - - - CLiki: stmx - - - - - - - -
    stmx
    STMX is an actively maintained, high-performance concurrency library providing Transactional Memory for Common Lisp.

    Home page and downloads: http://github.com/cosmos72/stmx

    Main features

    -
      -
    • Extremely intuitive to use and to write correct, thread-safe concurrent code -
    • -
    • Brings database-style transactions to Common Lisp by introducing transactional memory -
    • -
    • High performance implementation, benchmarked to exceed 7 millions transactions per CPU core per second on commodity PC hardware -
    • -
    • Support for hardware memory transactions (requires 64-bit SBCL and CPUs with Intel TSX instructions - currently Core i5 4570, Core i7 4670, Core i7 4770 and some others). They increase STMX performance up to almost 40 millions transactions per CPU core per second -
    • -
    • Removes the need for traditional locks, mutexes and conditions - writing correct concurrent code with them is well known to be hard -
    • -
    • Transactional code is intrinsically deadlock-free: if two transactions conflict one of them will be re-executed -
    • -
    • Automatic commit and rollback: if a transaction completes normally it will be committed, if it signals an error it will be rolled back -
    • -
    • Transactions are composable: they can be executed in a larger transaction, either in sequence (all-or-nothing) or as alternatives (try them until one succeeds) -
    • -
    • Offers freedom of choice between blocking and non-blocking transactional functions: given either behaviour, it is trivial to transform it into the other. -
    • -
    • Features transactional versions of popular data structures: hash tables, red-black trees, stack, fifo -
    • -
    • Includes transactional data structure for multicast publish/subscribe -
    • -
    • Creating new transactional data structures is easy -
    • -
    • Extensive test suite -
    • -
    • Tested on SBCL, ABCL, CCL, CMUCL and ECL. -
    • -
    • Very simple to install with Quicklisp -
    • -
    -A quick-start guide and installation instructions are provided in README.md file

    License: LLGPL

    What STMX is NOT

    -In order not to confuse programmers - less experienced ones in particular - and to avoid rising unrealistic hopes, the author himself stated the following about STMX: -
      -
    • it is NOT a quick hack to automagically transform existing, slow, single-threaded programs into fast, concurrent ones. No matter how much transactions can help, writing concurrent code still requires careful design and implementation - and testing. And refactoring takes time too. -
    • -
    • it is NOT for optimization-focused programmers trying to squeeze the last cycle from their Common Lisp programs. STMX records an in-memory transaction log containing all reads and writes from/to transactional memory, then later (during commit) validates the transaction log against the latest data present in transactional memory and finally copies the transaction log onto the transactional memory while holding locks. STMX is quite optimized, but this machinery comes at an obvious performance cost with respect to hand-made, highly optimized locking code (but a good reality check is to ask yourself how many people have the skill and patience to write such code without bugs). -
    • -
    • it is NOT supposed to be used for all data structures in a Common Lisp program. STMX is intended only for the data accessed concurrently by multiple threads while being modified by at least one thread. And even in that case, transactional memory is not always needed: it depends on the kinds of modifications. -
    • -
    • it is NOT a serialization or persistence framework. Rather, messing with metaclasses and playing (allowed) tricks with slots contents as STMX does, quite likely does not mix well with serialization or persistence libraries such as CL-STORE, because they typically need full control on the slots of the objects to be serialized and de-serialized. -
    • -
    • it is NOT a million dollar library from some deep-pocket company. At the moment, it is the work of a single person. -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/str.html b/clones/lisp/www.cliki.net/str.html deleted file mode 100644 index dd5e2807..00000000 --- a/clones/lisp/www.cliki.net/str.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: str - - - - - - - -
    str
    str is a modern and consistent string manipulation library (split, join, concat, replace, blank-p,…) to install with (ql:quickload :str). -

    It aims to put together existing CL built-ins or popular libraries into a simpler, more discoverable, more consistent, more terse and focused on string manipulation, library.

    cl-str on github

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/stream.html b/clones/lisp/www.cliki.net/stream.html deleted file mode 100644 index f695678a..00000000 --- a/clones/lisp/www.cliki.net/stream.html +++ /dev/null @@ -1,150 +0,0 @@ - - - - - CLiki: stream - - - - - - - -
    stream
    Common Lisp provides streams, which can be used with an input or output function to identify an appropriate source or sink of characters or bytes for that operation. -A number of extensions to this mechanism have been implemented: -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/string-case.html b/clones/lisp/www.cliki.net/string-case.html deleted file mode 100644 index eefda36e..00000000 --- a/clones/lisp/www.cliki.net/string-case.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: string-case - - - - - - - -
    string-case
    A macro that generates specialised decision trees to dispatch on string equality.

    Repository: https://github.com/pkhuong/string-case

    License: BSD 3-Clause


    -Utilities
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/string.html b/clones/lisp/www.cliki.net/string.html deleted file mode 100644 index 94cf93a4..00000000 --- a/clones/lisp/www.cliki.net/string.html +++ /dev/null @@ -1,145 +0,0 @@ - - - - - CLiki: string - - - - - - - -
    string
    Functions and libraries for string manipulation. -
      -
    • -B-Tries - - An implementation of the data structure described in the paper "B-tries for disk-based string management" (PDF) -
    • -
    • -bobbin - - Bobbin is a simple word-wrapping library for strings in Common Lisp -
    • -
    • -boxen - - Boxy string syntax for Common Lisp -
    • -
    • -charseq - - This package provides charseq structure which represents an efficient character sequence -
    • -
    • -cl-change-case - - cl-change-case is a library to convert strings between camelCase, param-case, snake_case and more -
    • -
    • -cl-cidr-notation - - cl-cidr-notation is a library for converting IP addresses and CIDR blocks from integer to string representations and vice versa -
    • -
    • -cl-date-time-parser - - Parse date-time-string, and return (as multiple values) universal-time and fraction -
    • -
    • -cl-interpol - - CL-INTERPOL modifies the reader so that you can have interpolation of strings similar to Perl or Unix Shell scripts -
    • -
    • -cl-string-complete - - A small library for string completion by Robert Smith -
    • -
    • -cl-string-match - - Provides substring (subsequence) search and text processing algorithms implementations including regular expression, prefix/suffix tree data structures, etc -
    • -
    • -cl-strings - - cl-strings is a portable, dependency-free set of utilities to manipulate strings in Common Lisp (split, join, replace, insert, clean, change case,…) -
    • -
    • -collapse-string - - A function to remove whitespace from a string, with the option of collapsing each "run" to a single character, while optionally ignoring whitespace on the left, right, or both ends of the string -
    • -
    • -diff-match-patch - - This is a Common Lisp port of Neil Fraser's Diff, Match and Patch -
    • -
    • -fuzzy-match - - fuzzy-match is a library to fuzzy search an input string against a set of candidates -
    • -
    • -Levenshtein - - The Levenshtein Distance algorithm finds the minimum number of operations needed to transform one string into the other, where an operation is an insertion, deletion, or substitution of a single character -
    • -
    • -lispbuilder-clawk - - Stub added for asdf-install see Lispbuilder site for more details -
    • -
    • -lispbuilder-lexer - - Stub added for asdf-install see Lispbuilder site for more details -
    • -
    • -lispbuilder-regex - - Stub added for asdf-install see Lispbuilder site for more details -
    • -
    • -meta-sexp - - meta-sexp is a META parser generator using LL(1) grammars with s-expressions -
    • -
    • -mk-string-metrics - - This library implements efficient algorithms that calculate various string metrics in Common Lisp: -
    • -
    • -parse-float - - A function to parse floating-point values from a string in Common Lisp -
    • -
    • -str - - str is a modern and consistent string manipulation library (split, join, concat, replace, blank-p,…) to install with (ql:quickload :str) -
    • -
    • -string-case - - A macro that generates specialised decision trees to dispatch on string equality -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/stumpwm.html b/clones/lisp/www.cliki.net/stumpwm.html deleted file mode 100644 index 9a87977c..00000000 --- a/clones/lisp/www.cliki.net/stumpwm.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: stumpwm - - - - - - - -
    stumpwm
    StumpWM is a tiling, keyboard driven X11 window manager application written entirely in Common Lisp.

    StumpWM attempts to be customizable yet visually minimal. There are -no window decorations, no icons, and no buttons. It does have various -hooks to attach your personal customizations, and variables to -tweak.

    The homepage is located at https://stumpwm.github.io/.

    Wiki has been moved to github.

    StumpWM's focus is on doing for windows what Emacs does for files and buffers: smooth customizable control. I find overlapping windows introduces needless clutter, which is why StumpWM tiles windows. Rather than flipping through a clutter of windows, StumpWM presents windows in a numbered list. Much more civilized. And finally, like Emacs, everything is done with keystrokes (yes Emacs does allow you to use the pointer, and perhaps if there is a need StumpWM will too) which allows for seamless task switching between file editing and window navigating.

    Male has put together a video featuring StumpWM's new features: https://archive.org/details/TheStumpWMExperience

    The StumpWM usage notes of Jean-Philippe Paradis are available.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/supportcentre.html b/clones/lisp/www.cliki.net/supportcentre.html deleted file mode 100644 index 9b5dcc3a..00000000 --- a/clones/lisp/www.cliki.net/supportcentre.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: supportcentre - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/sw-http.html b/clones/lisp/www.cliki.net/sw-http.html deleted file mode 100644 index d293f714..00000000 --- a/clones/lisp/www.cliki.net/sw-http.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: sw-http - - - - - - - -
    sw-http
    sw-http is an HTTP Server tailored for AJAX/Comet.

    Homepage: https://github.com/cpc26/SW-HTTP

    License: AGPLv3

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/swank-client.html b/clones/lisp/www.cliki.net/swank-client.html deleted file mode 100644 index fe74e2f5..00000000 --- a/clones/lisp/www.cliki.net/swank-client.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: swank-client - - - - - - - -
    swank-client
    Common Lisp implementation of a Slime / Swank client.

    Depends on: bordeaux-threads, com.google.base, swank, usocket

    Repository: https://github.com/brown/swank-client

    License: GPL


    -debugging
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/swank-daemon.html b/clones/lisp/www.cliki.net/swank-daemon.html deleted file mode 100644 index b9131e5a..00000000 --- a/clones/lisp/www.cliki.net/swank-daemon.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: swank-daemon - - - - - - - -
    swank-daemon
    swank-daemon is a set of unix bash scripts to daemonize swank (of SLIME project) using GNU screen at system startup.

    Via GNU screen, you'll be able to attach to (or detach from) current running screen session easily. Furthermore, you can also connect to the running lisp instance using your best editor's (emacs?) SLIME interface.

    Note that, to be able to do (asdf:oos 'asdf:load-op :swank), you'll need to create a symlink for swank.asd file (which comes with SLIME tarball by default) in your ASDF system definitions folder.

    As an example, ALIW project uses swank-daemon to daemonize its web server during system start up and shutdown.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/swank.html b/clones/lisp/www.cliki.net/swank.html deleted file mode 100644 index 26ba1768..00000000 --- a/clones/lisp/www.cliki.net/swank.html +++ /dev/null @@ -1,74 +0,0 @@ - - - - - CLiki: Swank - - - - - - - -
    Swank
    Swank is distributed as part of SLIME.

    It implements a wire protocol to access host lisp functionalities in a semi-portable way (it provides a portability layer for many useful bits missing in ANSI standard). Main library client is SLIME – an emacs mode for interacting with Common Lisp. Other library clients and forks include:

    Clients in Common Lisp: -

    Forks: -


    -wire format
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/swap-bytes.html b/clones/lisp/www.cliki.net/swap-bytes.html deleted file mode 100644 index de5cde79..00000000 --- a/clones/lisp/www.cliki.net/swap-bytes.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: swap-bytes - - - - - - - -
    swap-bytes
    swap-bytes is a library for efficient endianness conversion in SBCL and CCL.

    Homepage: https://github.com/sionescu/swap-bytes

    License: MIT

    Library Consolidation: you may want to use instead nibbles which is actively maintained.


    -Topics: binary format machine code
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/swclos.html b/clones/lisp/www.cliki.net/swclos.html deleted file mode 100644 index 69e4846e..00000000 --- a/clones/lisp/www.cliki.net/swclos.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: swclos - - - - - - - -
    swclos
    SWCLOS is a Semantic Web processor that is built on top of the Common Lisp Object System (CLOS)

    SWCLOS2* is hosted under the Knowledge-as-Media Research Group, at The National Institute of Informatics and RACE, The University of Tokyo

    SWCLOS has been discussed in a number of whitepapers, including: SWCLOS: A Semantic Web Processor on Common Lisp Object System and OWL Full Metamodeling with SWCLOS

    Platform Support

    SWCLOS2* depends on certain features available in ACL

    Portable SWCLOS supports LispWorks, Allegro CL ANSI mode, and some other modern CL platforms. It's available at https://github.com/binghe/SWCLOS


    -Categories: Semantic Web, RDF, OWL
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/swig.html b/clones/lisp/www.cliki.net/swig.html deleted file mode 100644 index 5de89490..00000000 --- a/clones/lisp/www.cliki.net/swig.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: SWIG - - - - - - - -
    SWIG
    SWIG is a (non-CL) tool that can generate FFI binding code from C/C++ header file declarations.

    SWIG can generate bindings for CFFI, UFFI, CLISP and ACL: http://www.swig.org/Doc2.0/Lisp.html

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/sxql.html b/clones/lisp/www.cliki.net/sxql.html deleted file mode 100644 index 483b1631..00000000 --- a/clones/lisp/www.cliki.net/sxql.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: SxQL - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/symbol-namespaces.html b/clones/lisp/www.cliki.net/symbol-namespaces.html deleted file mode 100644 index 3c283632..00000000 --- a/clones/lisp/www.cliki.net/symbol-namespaces.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: symbol-namespaces - - - - - - - -
    symbol-namespaces
    symbol-namespaces defines a new kind of package that's named by a symbol rather than a string. It maps from existing symbols to their respective "implicitly managed" counterparts. The motivating use-case is to conceptually allow multiple definitions of the same kind on a single symbol, without conflicts.

    See the project's home for all details.


    -metaprogramming, data structure, Unlicense, Public Domain
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/syntax-case.html b/clones/lisp/www.cliki.net/syntax-case.html deleted file mode 100644 index 5ea70aaf..00000000 --- a/clones/lisp/www.cliki.net/syntax-case.html +++ /dev/null @@ -1,63 +0,0 @@ - - - - - CLiki: syntax-case - - - - - - - -
    syntax-case
    SYNTAX-CASE is a system for macros proposed by R. Kent Dybvig in 1992 for Scheme (see "Syntactic Abstraction in Scheme", IUCS TR #355, link below), which generalises Common LISP's DEFMACRO and Scheme's SYNTAX-RULES (a hygienic macro facility defined in the R5RS Scheme standard), and which cannot be defined in terms of either.

    It is controversial whether or not Common LISP would benefit from the addition of SYNTAX-CASE, and no implementations of SYNTAX-CASE for Common LISP are known of.

    External links: -

      -
    1. -IUCS-TR-355 [ps.gz]. Syntactic Abstraction in Scheme. Hieb, Dybvig and Bruggeman, Indiana University, 1992. -
    2. -
    3. -IUCS-TR-356 [ps.gz]. Writing Hygienic Macros in Scheme with Syntax-Case. Dybvig, Indiana University, 1992. -
    4. -
    5. -FOLDOC on SYNTAX-CASE -
    6. -


    -language extension
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/system programming.html b/clones/lisp/www.cliki.net/system programming.html deleted file mode 100644 index 77380a7b..00000000 --- a/clones/lisp/www.cliki.net/system programming.html +++ /dev/null @@ -1,374 +0,0 @@ - - - - - CLiki: system programming - - - - - - - -
    system programming
    Libraries having to do with system programming - memory management, timers, system calls, etc. Anything to do with implementation or OS specifics also belongs here.

      -
    • -ACL-COMPAT - - ACL-COMPAT is a free set of compatibility layers for parts of Franz's ACL system programming API for several Common Lisp implementations -
    • -
    • -Bordeaux-Threads - - Bordeaux-Threads lets you write multi-threaded applications in a portable way -
    • -
    • -bt-semaphore - - simple semaphores for bordeaux-threads -
    • -
    • -cl-async - - Cl-async is a asynchronous I/O library wrapping the libuv C library -
    • -
    • -cl-daemonize - - cl-daemonize is a tool to daemonize a Lisp process without the need for screen/detachtty -
    • -
    • -cl-environment - - CL-ENVIRONMENT is a small library that tries to canonicalize access to some of the internals of different CL implementations -
    • -
    • -cl-event - - cl-event is a Lisp libevent wrapper -
    • -
    • -cl-fad - - CL-FAD is a portable pathname library based on code from Peter Seibel's book Practical Common Lisp, providing a way to work with files and directories -
    • -
    • -cl-fuse - - CL-FUSE provides Common Lisp bindings for FUSE (file system in user space) -
    • -
    • -cl-inotify - - cl-inotify is an interface to the Linux inotify facility for file change notifications -
    • -
    • -cl-libserialport - - cl-libserialport is a Common Lisp CFFI interface to the sigrok libserialport library, a cross-platform, minimal, C library for interfacing with serial ports -
    • -
    • -cl-libusb - - cl-libusb provides an interface to libusb, a library that provides access to USB devices across many different operating systems -
    • -
    • -CL-PACKAGE-LOCKS - - A unified way of dealing with package locks on those implementations that support them (or that's the eventual goal anyways) -
    • -
    • -cl-syslog - - Common Lisp interface to local and remote Syslog facilities -
    • -
    • -cl-win32ole - - Common Lisp OLE like Ruby's win32ole -
    • -
    • -closer-weak - - closer-weak provides CLisp-style weak objects support for CMUCL and SBCL -
    • -
    • -CLTIO - - CLTIO is a UFFI binding to the Unix termio library for raw serial/terminal I/O -
    • -
    • -clufs - - Common Lisp User Space File System -
    • -
    • -COM.INFORMATIMAGO.SUSV3 - - SUSV3 is an interface to the Single Unix Specification version 3 API -
    • -
    • -conium - - Conium is a portability library for debugger- and compiler-related -
    • -
    • -Creating Executables - - Most Common Lisp implementations support creating native-format executable files -
    • -
    • -cserial-port - - cserial-port is a Common Lisp library for interacting with serial ports -
    • -
    • -Cyclosis - - Cyclosis is a combined implementation of the functionality of the Common Lisp stream dictionary and that of the Gray streams proposal -
    • -
    • -do-backup - - do-backup is a tool for performing backups on some regular basis on unix systems -
    • -
    • -executor - - executor is a portability layer for external executable invocation -
    • -
    • -exit-hooks - - exit-hooks is a portable layer for calling given function when Lisp exit -
    • -
    • -external-program - - external-program provides a largely-portable wrapper for running programs external to the Lisp process -
    • -
    • -garbage-pools - - GARBAGE-POOLS is a Common Lisp re-implementation of the APR Pools for resource management -
    • -
    • -green-threads - - GREEN-THREADS is a portable library implementing green threads (lightweight, cooperatively multitasked, user threads) in Common Lisp -
    • -
    • -IOlib - - I/O(mainly networking) library containing: a BSD sockets library, a DNS resolver and an I/O multiplexer that supports select(2), epoll(4) and kqueue(2) -
    • -
    • -lh-usb - - lh-usb is a set of bindings for the Linux usbfs interface for writing usb device drivers from user-space Lisp code -
    • -
    • -Lisp as a shell - - See CLISP-Shell locally or the -
    • -
    • -nibbles - - Nibbles is a library for accessing octet-addressed blocks of data -
    • -
    • -Osicat - - Operating system interface library mainly for Unix -
    • -
    • -reserve-channel - - Simple routing daemons that checks reachability of packets to external host and switch routing to backup channels if needed -
    • -
    • -RESOURCE-UTILIZATION - - RESOURCE-UTILIZATION gathers and displays resource utilization statistics from Linux's /proc interface -
    • -
    • -s-sysdeps - - S-SYSDEPS is an abstraction layer over platform dependent functionality -
    • -
    • -sb-cpu-affinity - - sb-cpu-affinity lets you set Linux scheduler CPU affinity masks from SBCL -
    • -
    • -SB-X86-PORTIO - - SB-X86-PORTIO is a module for doing raw port I/O on SBCL/x86/x86-64 -
    • -
    • -shelisp - - Shelisp provides mechanisms for composing and running Unix shell (particularly bash) commands and constructs from Common Lisp -
    • -
    • -SHUT-IT-DOWN - - Exit the Common Lisp implementation -
    • -
    • -stassats-inotify - - stassats-inotify is an interface to the Linux inotify facility for file change notifications -
    • -
    • -static-vectors - - Allocate SIMPLE-ARRAYs in static memory -
    • -
    • -Terminfo - - A Common Lisp interface to the terminfo database by Paul Foley -
    • -
    • -thread-pool - - thread-pool is library that allows asynchronous function execution from a static thread pool -
    • -
    • -tmpdir - - tmpdir is a simple Common Lisp library that provides a simple function and a simple macro to manipulate temporary directories (using cl-fad) -
    • -
    • -trivial-clipboard - - trivial-clipboard provides access to the system clipboard -
    • -
    • -trivial-features - - trivial-features ensures consistent *FEATURES* across multiple Common -
    • -
    • -trivial-file-size - - This library exports a single function, file-size-in-octets -
    • -
    • -trivial-garbage - - trivial-garbage provides a portable API to finalizers, weak hash-tables and weak pointers -
    • -
    • -trivial-gray-streams - - trivial-gray-streams provides an extremely thin compatibility layer for Gray streams -
    • -
    • -trivial-mmap - - Trivial-MMAP is a Common Lisp library that aims to provide an easy-to-use API for working with memory-mapped files -
    • -
    • -trivial-raw-io - - trivial-raw-io provides access to raw serial/terminal I/O (termios) under Unix -
    • -
    • -unix-options - - unix-options is a library for processing Unix-style command-line arguments -
    • -
    • -unix-opts - - This is a minimalistic parser of command line options -
    • -
    • -ZACL - - ZACL is an ACL-like layer for running AllegroServe on non-Allegro Lisps -
    • -

    Tools for working with filesystem interfaces: (main topic: filesystem) -

      -
    • -cl-fswatch - - Wrapper for fswatch, a cross-platform file change monitor -
    • -
    • -cl-fuse - - CL-FUSE provides Common Lisp bindings for FUSE (file system in user space) -
    • -
    • -clufs - - Common Lisp User Space File System -
    • -
    • -query-fs - - Query-FS is a FUSE-based filesystem that presents database queries as filesystem trees -
    • -

    Tools for dealing with assembler/machine code: (main topic: machine code) -

      -
    • -Apple II archaeology - - Apple II archaeology is a collection of Lisp code useful for Apple II retrocomputing -
    • -
    • -armish - - Armish is an arm assembler -
    • -
    • -Assem - - Assem is an ISA-level code layer for Common Lisp -
    • -
    • -BITMOP - - BITMOP is a DSL for definition and manipulation of register sets, registers, bitfields and bitfield values, all of which are first-class objects -
    • -
    • -cl-comfy-arm - - cl-comfy-arm is an implementation by JosephOswald of Henry Baker's COMFY assembler for the ARM architecture -
    • -
    • -cl-elf - - cl-elf is a library for reading and writing the ELF executable file format -
    • -
    • -CL-IO-ELF - - CL-IO-ELF is a parser for ELF executable file format -
    • -
    • -cl-larval - - S-Exp syntax to write assembler for AVR microcontrollers -
    • -
    • -COMFY-6502 - - COMFY-6502 is a port by JosephOswald of Henry Baker's COMFY-6502 compiler to Common Lisp -
    • -
    • -LLVM - - LLVM stands for Low Level Virtual Machine -
    • -
    • -swap-bytes - - swap-bytes is a library for efficient endianness conversion in SBCL and CCL -
    • -
    • -SYMTABLE - - SYMTABLE is a simplistic symbol-table abstraction -
    • -

    Tools for working with embedded systems (Arduino, etc.): (main topic: embedded) -

      -
    • -Apple II archaeology - - Apple II archaeology is a collection of Lisp code useful for Apple II retrocomputing -
    • -
    • -Arduino Lisp - - Arduino Lisp is a compiler from a subset of Common Lisp to the subset of C++ used by the Arduino C++ compiler -
    • -
    • -arduino-experiments - - arduino-experiments is a library for interfacing to the Arduino embedded computer via serial I/O from Lisp -
    • -
    • -cl-larval - - S-Exp syntax to write assembler for AVR microcontrollers -
    • -
    • -cluck - - Cluck is a Common Lisp library written by Kevin Rosenberg for assisting in configuring timers on microcontroller chips -
    • -
    • -common-db - - common-db is a programmable debugging substrate, mostly geared to driving target devices by establishing control via on-chip debugging machinery through a JTAG (IEEE 1149.1) external port -
    • -
    • -uLisp - - uLisp is an embedded Lisp for microcontrollers, supporting Arduino, Adafruit M0/M4, Micro:bit, ESP8266/32, and RISC-V boards -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/system-menu.html b/clones/lisp/www.cliki.net/system-menu.html deleted file mode 100644 index a4b60d00..00000000 --- a/clones/lisp/www.cliki.net/system-menu.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: system-menu - - - - - - - -
    system-menu
    system-menu is an in-development application based on cl-menusystem that is designed to provide a simple, abstract interface to operating on system definitions such as by asdf and mk-defsystem.

    Status: system-menu.lisp is currently SBCL-specific and only supports ASDF-based systems.

    Author: Brian T. Rice

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/taglib.html b/clones/lisp/www.cliki.net/taglib.html deleted file mode 100644 index fecca2ba..00000000 --- a/clones/lisp/www.cliki.net/taglib.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: taglib - - - - - - - -
    taglib
    A pure Lisp implementation for reading audio tags and audio information.

    Currently reads MP3/MP4/FLAC audio files.

    Depends on: optima, flexi-streams, bordeaux-threads

    Repository: https://github.com/mv2devnul/taglib

    License: Unlicense


    -file format
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/tail recursion.html b/clones/lisp/www.cliki.net/tail recursion.html deleted file mode 100644 index 78f13031..00000000 --- a/clones/lisp/www.cliki.net/tail recursion.html +++ /dev/null @@ -1,81 +0,0 @@ - - - - - CLiki: Tail Recursion - - - - - - - -
    Tail Recursion
    "Proper" Tail Recursion as found in Scheme is a feature that some miss in CL. It means carefully written recursive function calls can execute in constant space.

    Most high-performance CL compilers can already do significant tail call elimination (see their respective manuals). In a thread -on c.l.l., a vague idea of pseudostandardising across implementations was raised. -To do this, some stuff would need to be defined.

    What would constitute a "tail context" in CL?

    It's all very well saying do tail "elimination where possible", but you'd -need a list of where, like in Scheme R5RS section 3.5, which defines where -tail contexts are in terms of a subset of rules of the scheme grammar. The -Scheme ones are pretty common-sense I guess, but in CL may not be just -"intuitively obvious" to everyone. Or maybe they would. The -CMUCL manual section 5.5 about tail recursion in CMUCL talks about "tail -recursive positions" - but AFAICS it does not exhaustively define what all -the "tail recursive positions" / "tail contexts" might be in CL.

    The CMUCL user manual explains in what situations tail-call elimination has -to be suppressed for other features' sake, at least in CMUCL. Various -dynamic binding issues mainly. These caveats are almost certainly not -"intuitively obvious" to someone freshly arriving in CL from Scheme.

    The major concern would be that an implementation with a feature of -:tail-whatever and providing a known declaration of (optimise -(tail-whatever 3)) to turn it on, would at minimum comply with a -particular list of valid tail contexts, provided the programmer bore in -mind the list of known caveats.

    So you could just #- and bomb out if you knew you were writing code that -pretty much depended on it - if a fellow with your source wanted to just -risk it on a non-compliant implementation, they'd have to make a conscious -decision to overrule your #-


    -So, we need:

    -A specification of tail contexts for all forms in CL

    TODO :-)

    A list of caveats

    See e.g. CMUCL User Manual, 5.5

    -A *features* entry

    :x-tail-rec or whatever.

    -A definition of a new declaration

    e.g. from Joe Marshall in c.l.l. thread.

    (declaim (optimize (dynamic-space 3))) - = Tail call elimination where possible

    (declaim (optimize (dynamic-space 2))) - = Tail call elimination (when possible) for self-calls and locally - defined (i.e. FLET or LABELS) functions only, no elimination on - non-self calls.

    (declaim (optimize (dynamic-space 1))) - = Tail call elimination (when possible) for self-calls only.

    (declaim (optimize (dynamic-space 0))) - = No tail call elimination anywhere.


    -programming tips
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/tar-file.html b/clones/lisp/www.cliki.net/tar-file.html deleted file mode 100644 index fbb78abc..00000000 --- a/clones/lisp/www.cliki.net/tar-file.html +++ /dev/null @@ -1,61 +0,0 @@ - - - - - CLiki: tar-file - - - - - - - -
    tar-file
    This project is a fork of Nathan Froyd's archive library. Much -code remains, but the non-portable bits have been stripped, better support for -multiple archive types (and autodetection) has been added, better blocking -support added (tar readers/writers are supposed to read/write in multiples of -512 bytes), cpio support removed, and a test suite added, along with other -miscellaneous fixes and improvements.

    One major user visible difference between this library and the original archive -is that there is no need to discard entries when you are finished with them and -support has been added for seeking within a stream (using FILE-POSITION under -the hood). This means you can do something like iterate over all entries in one -go and then get a stream containing the contents of an arbitrary entry.

    Depends on: alexandria, babel, trivial-gray-streams

    Repository: https://gitlab.common-lisp.net/cl-tar/cl-tar-file

    License: BSD 3-Clause


    -file format
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/teepeedee2.html b/clones/lisp/www.cliki.net/teepeedee2.html deleted file mode 100644 index 674eb8e8..00000000 --- a/clones/lisp/www.cliki.net/teepeedee2.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: teepeedee2 - - - - - - - -
    teepeedee2
    teepeedee2 is a fast HTTP server and web framework.

    It is competitive in performance or faster than most C webservers, while being written entirely in Common Lisp.

    It includes a simple blog application with instant comments (itself a fairly unique feature) and ATOM feeds, and an unfinished card game.


    -Web LLGPL networking
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/telnetlib.html b/clones/lisp/www.cliki.net/telnetlib.html deleted file mode 100644 index 9250c7d3..00000000 --- a/clones/lisp/www.cliki.net/telnetlib.html +++ /dev/null @@ -1,235 +0,0 @@ - - - - - CLiki: telnetlib - - - - - - - -
    telnetlib
    telnetlib is a networking library for doing Telnet. It is ported from Python's telnetlib library and quite useful for writing automatical scripts.

    -;; -*- MODE: LISP -*-
    -;;
    -;; Brian Jiang (brianjcj AT gmail.com)
    -;; 2007-11
    -;;
    -;; TelnetLib
    -;; =========
    -;; In our ordinary work, we often write some automatically scripts
    -;; which login in the server to run some commands and performce some
    -;; actions based on the result of the commands. In this case, a telnet
    -;; client library will be very helpful. Such a library is very handy
    -;; in Perl, Python and Ruby. But I googled it a lot and failed to find
    -;; one in Common Lisp. So I decided to port the Telnetlib from Python
    -;; to Common Lisp. Why port from Python? Because I am more familiar
    -;; with Python and have use its TelnetLib before :-) 
    -;;
    -;; The functionality of this library is almost the same as Python's
    -;; one.  But the interface is a little different.
    -
    -
    -;; Supported Lisp implementations
    -;; ==============================
    -;; - SBCL
    -;; - LispWorks
    -;; - Allegro CL
    -;; - CLISP
    -;;
    -;; TelnetLib also supports other Lisp implementations (require USOCKET
    -;; and FLEXI-STREAMS) . But I have never done any testing for them.
    -
    -;; Testing:
    -;; --------
    -;; TelnetLib has been tested in following environment:
    -;;   - sbcl-1.0.11-x86-linux
    -;;   - LispWorks in Windows XP
    -;;   - Allegro CL in Windows XP
    -;;   - CLISP 2.43 in Linux
    -;;   - CLISP 2.41 in Windows XP
    -;;
    -;; But it failed in sbcl-1.0.9 in Windows XP. Error occurs
    -;; when writing the socket stream.
    -
    -
    -;; Library Dependency
    -;; ==================
    -;; For SBCL, LispWorks, Allegro CL and CLISP, it only depends on
    -;; CL-PPCRE.
    -;; For other Lisp implementations, USOCKET and FLEXI-STREAMS (to
    -;; set the external-format) are also required.
    -
    -;; Known Problem
    -;; =============
    -;; Don't work well when telent localhost. It seems it is due to the process/thread
    -;; schedule mechanism. Will try to fix it in the future.
    -
    -;; How to use it
    -;; =============
    -
    -;; Export functions/macros:
    -;; ------------------------
    -(defun open-telnet-session (host &optional port)...)
    -(defun close-telnet-session (tn)....)
    -(defmacro with-telnet-session ((tn host &optional port) &body body)....)
    -(defun set-telnet-session-option (tn
    -                                  &key (remove-return-char nil r-r-c-p)
    -                                  (debug-on nil debug-on-p)
    -                                  (char-callback nil char-callback-p)
    -                                  (option-callback nil option-callback-p)
    -                                  (sb-option-callback nil sb-option-callback-p))...)
    -(defun peek-available-data (tn &optional block-read)....)
    -(defun read-available-data (tn &optional block-read)....
    -(defun read-until (tn str &key (timeout 600) case-insensitive-mode)....)
    -(defun read-until-2 (tn strings &key (timeout 600) case-insensitive-mode)....)
    -(defun read-until-2-ind (tn strings &key (timeout 600) case-insensitive-mode)....)
    -(defun expect (tn regexp &optional (timeout 600))....)
    -(defun format-tn (tn control-string &rest format-arguments)....)
    -(defun write-ln (tn str)....)
    -(defun write-ln-crlr (tn str)....)
    -
    -
    -;; Example:
    -;; --------
    -(defun example-1 ()
    -  (with-telnet-session (tn "202.38.33.94")
    -
    -    (set-telnet-session-option tn :remove-return-char t)
    -    
    -    (read-until tn "ogin:")
    -    (write-ln tn "brianjcj")
    -
    -    (read-until tn "assword:")
    -    (write-ln tn "abcdefg12")
    -    (read-until tn ">")
    -
    -    (format-tn tn "~A~%" "pwd") ;; stupid demo :-)
    -    (read-until tn ">")
    -
    -    (write-ln tn "cmd1")
    -    (read-until-2 tn (list "Done." "Error" "Pending.")
    -                  :case-insensitive-mode t)
    -    (read-until tn ">")
    -
    -    
    -    (write-ln tn "cmd2")
    -    (expect tn
    -            (cl-ppcre:create-scanner
    -             "OK\|NO"
    -             :case-insensitive-mode t))
    -    (read-until tn ">")
    -
    -    
    -    (write-ln tn "cmd3")
    -    (expect tn "Done\|Try later.")
    -    (read-until tn ">")
    -
    -    (write-ln tn-vmap "unload testci")
    -    (case (read-until-2-ind tn (list "Please confirm (" "has not been loaded yet"))
    -      ((0)
    -       (read-until tn *prompt*)
    -       (sleep *rest-time*)
    -       (write-ln tn "Y")
    -       (read-until tn *prompt*))
    -      ((1)
    -       (read-until tn-vmap *prompt*)))
    -    
    -    (write-ln tn "exit")
    -    
    -    (loop until (eof tn) do
    -         (read-available-data tn t))
    -
    -    ))
    -
    -(defun example-2 ()
    -
    -  (with-telnet-session (tn "202.38.33.94")
    -
    -    (set-telnet-session-option tn :char-callback nil)
    -
    -    
    -    (princ (read-until tn "ogin:"))
    -    (write-ln tn "brianjcj")
    -
    -    (princ (read-until tn "PassWord:"
    -                       :case-insensitive-mode t))
    -    (write-ln tn "zaq12WSX")
    -    (princ (read-until tn ">"))
    -
    -    
    -    (write-ln tn "ls")
    -    (princ (read-until tn ">"))
    -
    -    (write-ln tn "cmd1")
    -    (princ (expect tn "Done\|Error"))
    -    (princ (read-until tn ">"))
    -
    -    (write-ln tn "cmd2")
    -    (princ (read-until-2
    -            tn
    -            (list "OK." "Try again" "Later.")
    -            :timeout 10))
    -    (princ (read-until tn ">"))
    -
    -
    -    (write-ln tn "cmd3")
    -    (princ (read-until-2
    -            tn (list "Right" "Wrong")
    -            :timeout 10 :case-insensitive-mode t))
    -    (princ (read-until tn ">"))
    -
    -    (write-ln tn "cmd4")
    -    (princ (expect
    -            tn
    -            (cl-ppcre:create-scanner
    -             "Right\|Wrong"
    -             :case-insensitive-mode t)))
    -    (princ (read-until tn ">"))
    -    
    -    (write-ln tn "exit")
    -    
    -    (loop until (eof tn) do
    -         (princ (read-available-data tn t)))
    -
    -    ))
    -

    License: LGPL

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/templating library.html b/clones/lisp/www.cliki.net/templating library.html deleted file mode 100644 index c545cc4a..00000000 --- a/clones/lisp/www.cliki.net/templating library.html +++ /dev/null @@ -1,145 +0,0 @@ - - - - - CLiki: templating library - - - - - - - -
    templating library
    Templating libraries: (main topic: templating library)

    HTML templating: (main topic: HTML Template)

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/terse-ppcre.html b/clones/lisp/www.cliki.net/terse-ppcre.html deleted file mode 100644 index 980fe6ba..00000000 --- a/clones/lisp/www.cliki.net/terse-ppcre.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: terse-ppcre - - - - - - - -
    terse-ppcre
    TERSE-PPCRE aims to make manipulating CL-PPCRE regular expression parse trees easier and more succinct.

    Repository: https://github.com/LispLima/terse-ppcre

    License: MIT

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/test framework.html b/clones/lisp/www.cliki.net/test framework.html deleted file mode 100644 index 544a3a78..00000000 --- a/clones/lisp/www.cliki.net/test framework.html +++ /dev/null @@ -1,201 +0,0 @@ - - - - - CLiki: Test Framework - - - - - - - -
    Test Framework
    Testing tools, libraries, and frameworks.

    Somebody once said that Lispniks have been the first agile developers, doing the stuff people now all go mad about decades ago without thinking twice. So maybe it isn't very surprising that there are quite a lot of tools that help with test driven development. There is a very comprehensive comparison of test frameworks available as of 2021-10-02.

    Recommended test frameworks: -

    Also active in 2020-2022 are:

      -
    • parachute
    • -
    • -Fiasco, a fork of Stefil (by Sly's author)
    • -
    • -rove, beta-quality warning in readme
    • -
    • -try, a comprehensive framework where tests are functions (also in the spirit of Stefil)
    • -

    Known Common Lisp Test Frameworks on CLiki include:

    Obsolete libraries:

    testbild is not a test framework but a library designed to be used by -the former that harmonizes test output styles and grants the powers of TAP.

    cl-travis lets you run your tests on Travis CI.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/testbild.html b/clones/lisp/www.cliki.net/testbild.html deleted file mode 100644 index e152afc2..00000000 --- a/clones/lisp/www.cliki.net/testbild.html +++ /dev/null @@ -1,61 +0,0 @@ - - - - - CLiki: testbild - - - - - - - -
    testbild
    testbild is a library for outputting Test Anything Protocol (TAP) and xUnit formats.

    If you are using a Test Framework, maybe it already offers support for -testbild. If not, go and push its authors to check it out or maybe even provide -them with patches that integrate the framework with testbild yourself!

    While there are many nice testing framework for Common Lisp and writing your own -test code is especially easy with the most powerful language on earth, most if -not all of said frameworks use an inferior report style usually found in and -associated with the xUnit family of unit testing frameworks, even though there -is a formally specified, clearly superior alternative available: TAP, Test -Anything Protocol.

    In lack of TAP support Testbild, which is the German word for (TV) test -pattern but also interpretable as (overall) "test appearance", was written to -help both test and test framework authors exploit the features of TAP without -losing support for different reporting styles.

    Please see the provided README for more information on how to use testbild.

    Author: Alexander Kahl

    The link to the git repository is available from Github.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/tester.html b/clones/lisp/www.cliki.net/tester.html deleted file mode 100644 index 1d1aabc2..00000000 --- a/clones/lisp/www.cliki.net/tester.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: tester - - - - - - - -
    tester
    tester is the test framework harness that Franz uses for Allegro CL. It is licensed under the LLGPL.

    The original Franz code which uses AllegroCL-specific functions can be downloaded from https://github.com/franzinc/tester.

    ptester is a portable version of the package.

    Another portable version is available in -the lite version of ACL-Compat.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/texatl.html b/clones/lisp/www.cliki.net/texatl.html deleted file mode 100644 index 5ef6e7ed..00000000 --- a/clones/lisp/www.cliki.net/texatl.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: texatl - - - - - - - -
    texatl
    texatl is a tiny system for creating font and sprite atlases. This is particularly useful for games.

    License: BSD 2-clause.

    Available via github.


    -game, image file
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/texp.html b/clones/lisp/www.cliki.net/texp.html deleted file mode 100644 index ccbede28..00000000 --- a/clones/lisp/www.cliki.net/texp.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: TEXP - - - - - - - -
    TEXP
    texp is a thin domain specific language to generate TeX code from within Common Lisp.

    Written by Max Rottenkolber.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/text formatting.html b/clones/lisp/www.cliki.net/text formatting.html deleted file mode 100644 index 87537a74..00000000 --- a/clones/lisp/www.cliki.net/text formatting.html +++ /dev/null @@ -1,98 +0,0 @@ - - - - - CLiki: Text Formatting - - - - - - - -
    Text Formatting
    CLiki pages consist of a whitelisted subset of HTML markup with a small set of special markup rules for CLiki-specific features.

    Two consecutive newlines in the body of an article are treated as the start of a new paragraph, and a <p> element is inserted in their place.

    The current list of allowed HTML elements and attributes can be viewed in the CLiki source code: https://gitlab.common-lisp.net/vsedach/cliki2/blob/master/src/markup.lisp

    Special CLiki Markup

      -
    • Internal links: _(Foo) renders as Foo. Cliki page titles aren't case-sensitive, but Cliki will remember the way the title was written when you first created the page, and formats it that way forevermore. So, please make some effort to use capitals where appropriate.

    • -
    • Topic markers: *(Foo) declares this page to be relevant to topic Foo. The page will then show up in any topic lists (see below) for Foo. Topic markers are the main tool to organize CLiki, and are critical to making your article easy to find. Usually there will be a topic page called Foo that contains a list of all the pages in topic Foo.

    • -
    • -CLHS references: _H(FOO), where FOO is a standard CL symbol, will expand into a link to the appropriate Hyperspec page. Thanks to Eric Marsden for the code that does this. For example _H(destructuring-bind) becomes a link to destructuring-bind.

    • -
    • Topic lists: /(SLIME) renders a list of all pages with the topic marker *(SLIME) as: -
        -
      • -ABCL - - Armed Bear Common Lisp (aka ABCL) is a -
      • -
      • -cl-syntax - - CL-SYNTAX provides Reader Syntax Conventions for Common Lisp and SLIME -
      • -
      • -Editing Lisp Code with Emacs - - Keyboard tips -
      • -
      • -Mark Davidson - - I have been working with these infernal machines for over 22 years, and have dabbled with Lisp over time.. -
      • -
      • -reattatchabe slime - - Here is a little makedef file to start/stop a lisp application and allow the developer to attach to the running process with attachtty or slime -
      • -
      • -SLIME Features - - This is an evolving description of the features available in SLIME -
      • -
      • -SLIME-HOWTO - - This is a collection of information about using SLIME - a proto-manual -
      • -
      • -Swank - - Swank is distributed as part of SLIME -
      • -
      -
    • -

    <pre> and <code> tags

    HTML <pre> and <code> tags are treated specially. All text occuring in these elements is treated literally, including any other HTML markup. So:

    <a href="foo.com">links</a> cannot be inserted in <pre> tags, for example

    <code> tags can be used to colorize code (via the colorize library) by providing the lang attribute, like so:

    <code lang="common-lisp"> ...code... </code>

    Some example code looks like:

    (defun foo (x y) - (expt x (mod x y))) -

    The currently supported language types are: lisp, scheme, elisp, common-lisp, basic-c, c, c++, java

    Escaping

    To escape the special CLiki markup, e.g., on this page when describing how to use the search tag, e.g.

    -  /(SLIME)
    -

    where we don't actually want the search results to be displayed, you must insert some text between the special markup character and the open paren. HTML comments work well. For example, the following:

    -  /<!-- -->(SLIME)
    -

    will be rendered as

    /(SLIME)

    Characters like ampersands and pointy brackets that have special meaning in HTML can be encoded using regular HTML escape codes: < is &lt; and & is &amp;. HTML pound-escaping is also supported: &#37; renders as %.

    Article conventions

    When linking to libraries and software packages, please specify the license under which the software is distributed using SPDX license identifiers.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/text-query.html b/clones/lisp/www.cliki.net/text-query.html deleted file mode 100644 index bc4338dd..00000000 --- a/clones/lisp/www.cliki.net/text-query.html +++ /dev/null @@ -1,69 +0,0 @@ - - - - - CLiki: text-query - - - - - - - -
    text-query
    The text-query package is a generalized form of Common Lisp's builtin Y-OR-N-P and YES-OR-NO-P, adding more -generality and the ability to time out with a default value. It is asdf-installable and should work on any modern Lisp. It was written by Mark Kantrowitz and can be freely used, modified, and distributed.

    -

    Author's Description

    -The text-query package generalizes the capabilities of the Lisp functions -Y-OR-N-P and YES-OR-NO-P, and is similar in many ways to the Symbolics -FQUERY function. There are several major differences, one of which is text-query's -ability to timeout with a default value. In addition to redefining Y-OR-N-P -and YES-OR-NO-P in terms of QUERY, this package defines Y-OR-N-P-WAIT and -YES-OR-NO-P-WAIT to illustrate the timeout capability. More complicated -queries are possible using the QUERY function.

    -

    Packager's Notes

    -This is old code, from 1993, but it is good ANSI Common Lisp. It compiles -and runs well under SBCL and should work in any modern Lisp implementation.

    Please see the source code for documentation, since it contains plenty -of comments, docstrings, and examples.

    -Peter Scott, October 2004

    -

    Acknowledgements

    -This code was entirely written by Mark Kantrowitz and made available to us -because of his generosity. Peter Scott, the maintainer of this package, would -not be so presumptious to take credit for anything other than the asdf -packaging.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/text.html b/clones/lisp/www.cliki.net/text.html deleted file mode 100644 index b81ff038..00000000 --- a/clones/lisp/www.cliki.net/text.html +++ /dev/null @@ -1,581 +0,0 @@ - - - - - CLiki: Text - - - - - - - -
    Text
    Text processing software - string splitters, parsers, and so on

    Regular expression libraries: (main topic: regular expression) -

      -
    • -cl-irregsexp - - A fast regular expression library with a lispy alternative to traditional syntax for text matching -
    • -
    • -cl-ppcre - - A portable, Perl-compatible regular expression library by Edi Weitz -
    • -
    • -cl-string-match - - Provides substring (subsequence) search and text processing algorithms implementations including regular expression, prefix/suffix tree data structures, etc -
    • -
    • -lol-re - - Tiny wrapper around CL-PPCRE, inspired by #~M and #~S read-macro from Let Over Lambda, making use of regular expressions more perly -
    • -
    • -pregexp - - Portable Regular Expressions for Scheme and Common Lisp -
    • -
    • -re - - The re package is a small, portable, lightweight, and quick, regular expression library for Common Lisp -
    • -
    • -recursive-regex - - A library to extend CL-PPCRE to make regular expression named capture groups dispatch to custom matcher functions and named-expression patterns -
    • -
    • -Regex - - Regex is a full-featured regular expression compiler and matching engine written by Michael Parker -
    • -
    • -regex (library by asciian) - - A relatively incomplete (as of Jan 2018) relatively concise backtracking POSIX compatible regular expression library -
    • -
    • -terse-ppcre - - TERSE-PPCRE aims to make manipulating CL-PPCRE regular expression parse trees easier and more succinct -
    • -
    • -The Regex Coach - - A graphical Common Lisp application which can be used to experiment with (Perl-compatible) regular expressions interactively -
    • -

    Parser generators: (main topic: parser generator) -

    Lexers: (main topic: lexer) -

      -
    • -cl-lex - - cl-lex is a set of Common Lisp macros for generating lexical analyzers automatically -
    • -
    • -DEFLEXER - - The LEXER package implements a lexical-analyzer-generator called DEFLEXER, which is built on top of both REGEX and CLAWK -
    • -
    • -dso-lex - - Allows lexers to be defined using regular expressions a la cl-ppcre -
    • -
    • -graylex - - graylex offers a means to do string operations on input streams without slurping all input at once by using Common Lisp Gray Streams, fixed-sized and flexible buffers -
    • -
    • -token-stream - - Lexer class for cl-stream -
    • -
    • -Zebu - - A Tool for Specifying Reversible LALR(1) Parsers -
    • -

    String processing: (main topic: string) -

      -
    • -B-Tries - - An implementation of the data structure described in the paper "B-tries for disk-based string management" (PDF) -
    • -
    • -bobbin - - Bobbin is a simple word-wrapping library for strings in Common Lisp -
    • -
    • -boxen - - Boxy string syntax for Common Lisp -
    • -
    • -charseq - - This package provides charseq structure which represents an efficient character sequence -
    • -
    • -cl-change-case - - cl-change-case is a library to convert strings between camelCase, param-case, snake_case and more -
    • -
    • -cl-cidr-notation - - cl-cidr-notation is a library for converting IP addresses and CIDR blocks from integer to string representations and vice versa -
    • -
    • -cl-date-time-parser - - Parse date-time-string, and return (as multiple values) universal-time and fraction -
    • -
    • -cl-interpol - - CL-INTERPOL modifies the reader so that you can have interpolation of strings similar to Perl or Unix Shell scripts -
    • -
    • -cl-string-complete - - A small library for string completion by Robert Smith -
    • -
    • -cl-string-match - - Provides substring (subsequence) search and text processing algorithms implementations including regular expression, prefix/suffix tree data structures, etc -
    • -
    • -cl-strings - - cl-strings is a portable, dependency-free set of utilities to manipulate strings in Common Lisp (split, join, replace, insert, clean, change case,…) -
    • -
    • -collapse-string - - A function to remove whitespace from a string, with the option of collapsing each "run" to a single character, while optionally ignoring whitespace on the left, right, or both ends of the string -
    • -
    • -diff-match-patch - - This is a Common Lisp port of Neil Fraser's Diff, Match and Patch -
    • -
    • -fuzzy-match - - fuzzy-match is a library to fuzzy search an input string against a set of candidates -
    • -
    • -Levenshtein - - The Levenshtein Distance algorithm finds the minimum number of operations needed to transform one string into the other, where an operation is an insertion, deletion, or substitution of a single character -
    • -
    • -lispbuilder-clawk - - Stub added for asdf-install see Lispbuilder site for more details -
    • -
    • -lispbuilder-lexer - - Stub added for asdf-install see Lispbuilder site for more details -
    • -
    • -lispbuilder-regex - - Stub added for asdf-install see Lispbuilder site for more details -
    • -
    • -meta-sexp - - meta-sexp is a META parser generator using LL(1) grammars with s-expressions -
    • -
    • -mk-string-metrics - - This library implements efficient algorithms that calculate various string metrics in Common Lisp: -
    • -
    • -parse-float - - A function to parse floating-point values from a string in Common Lisp -
    • -
    • -str - - str is a modern and consistent string manipulation library (split, join, concat, replace, blank-p,…) to install with (ql:quickload :str) -
    • -
    • -string-case - - A macro that generates specialised decision trees to dispatch on string equality -
    • -

    Text: (main topic: text) -

    Streams: (main topic: stream) can be useful for, but are not limited to text processing. -

    Misc: -

    See also the pages for Regular Expression, XML libraries, HTML Parsers, Lisp Markup Languages, document formats, Unicode support, Unicode and Lisp

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/the-cost-of-nothing.html b/clones/lisp/www.cliki.net/the-cost-of-nothing.html deleted file mode 100644 index 4753d13b..00000000 --- a/clones/lisp/www.cliki.net/the-cost-of-nothing.html +++ /dev/null @@ -1,67 +0,0 @@ - - - - - CLiki: the-cost-of-nothing - - - - - - - -
    the-cost-of-nothing
    A set of naïve, yet enlightening benchmarks for Common Lisp.

    Repository: https://github.com/marcoheisig/the-cost-of-nothing

    Example output

    What Lisp system is this?
    -SBCL 1.3.4, running on a X86-64 Intel(R) Core(TM) i7-5500U CPU @ 2.40GHz.

    What is the cost of allocating objects?
    -4.65 nanoseconds for allocating conses.
    -6.74 nanoseconds, plus 0.21 nanoseconds per byte for allocating arrays.
    -6.97 nanoseconds, plus 2.23 nanoseconds per slot for allocating structs.
    -17.05 nanoseconds, plus 1.73 nanoseconds per slot for instantiating classes.

    What is the cost of garbage collection?
    -3.12 milliseconds for a normal GC, 33.50 milliseconds for a full GC.

    What is the cost of a function call?
    -2.38 nanoseconds plus 0.57 nanoseconds per argument for calling a DEFUN.
    -5.13 nanoseconds plus 880.00 microseconds per argument for calling a DEFMETHOD.

    What is the cost of FINDing things?
    -6.97 nanoseconds per character of a string.
    -8.49 nanoseconds per item in a list.
    -10.63 nanoseconds per element of of a vector.

    What is the cost of a hash table lookup?
    -27.66 nanoseconds for an EQ hash table.
    -39.10 nanoseconds for an EQL hash table.
    -38.15 nanoseconds plus 0.28 nanoseconds per cons for an EQUAL hash table.
    -50.54 nanoseconds plus 0.85 nanoseconds per cons for an EQUALP hash table.

    How many floating-point operations can this system do per second?
    -5.37 gigaFLOPS in single precision and 5.37 gigaFLOPS in double precision.

    Benchmark

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/the.html b/clones/lisp/www.cliki.net/the.html deleted file mode 100644 index e54597f9..00000000 --- a/clones/lisp/www.cliki.net/the.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: the - - - - - - - -
    the
    The THE package provides the THE* macro that takes name of some type and a form and wraps that form recursively into (THE ...). It is intended to help writing optimzed numeric calculations. THE is maintained by Aleksandr Skobelev.


    -convenience library
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/thnappy.html b/clones/lisp/www.cliki.net/thnappy.html deleted file mode 100644 index 604abe68..00000000 --- a/clones/lisp/www.cliki.net/thnappy.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: thnappy - - - - - - - -
    thnappy
    thnappy is a set of CFFI bindings to Google's snappy compression library.

    Home page: http://flambard.github.io/thnappy/

    License: BSD

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/thodg.html b/clones/lisp/www.cliki.net/thodg.html deleted file mode 100644 index c83a4574..00000000 --- a/clones/lisp/www.cliki.net/thodg.html +++ /dev/null @@ -1,119 +0,0 @@ - - - - - CLiki: thodg - - - - - - - -
    thodg
    thodg is a nickname for Thomas de Grivel who is a person

    Maintainer for the following Common Lisp open-source projects : -

    Please contact me to contribute to these projects. -I am also currently looking for a job. -Contact : thoxdg@gmail.com .

    If one of the packages above was useful to you, please feel free to donate.

    BTC 1ERnTsC8n2mKEB3AWBXV22tiaqzb8S4H3a

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/thread-pool.html b/clones/lisp/www.cliki.net/thread-pool.html deleted file mode 100644 index edb5f5a8..00000000 --- a/clones/lisp/www.cliki.net/thread-pool.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: thread-pool - - - - - - - -
    thread-pool
    thread-pool is library that allows asynchronous function execution from a static thread pool.

    The usage of this library allows programmers to control the number of threads used in a process and avoid the thread creation overhead when new asynchronous computation are needed.

    Therefore thread-pool may increase overall performance in a multi-thread program.

    -Licence: BSD

    Dependencies: Bordeaux-Threads, arnesi

    Home page: https://github.com/kiuma/thread-pool.


    -Topics: system programming thread concurrency
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/thread.html b/clones/lisp/www.cliki.net/thread.html deleted file mode 100644 index e06c1667..00000000 --- a/clones/lisp/www.cliki.net/thread.html +++ /dev/null @@ -1,153 +0,0 @@ - - - - - CLiki: thread - - - - - - - -
    thread
    Threads are a kind of concurrency.

    -Also, McCLIM provides a thread compatibility layer in the CLIM-SYS package.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/threading-queue.html b/clones/lisp/www.cliki.net/threading-queue.html deleted file mode 100644 index 9a8df775..00000000 --- a/clones/lisp/www.cliki.net/threading-queue.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: threading-queue - - - - - - - -
    threading-queue
    threading-queue is a CL macro to distribute work on several threads, feeding the data via thread-safe-queues over several steps.

    See github for the source.

    The idea is related to Perl6 feed operators, see eg. this Perl6 Advent Post.


    -thread concurrency -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/tiff4cl.html b/clones/lisp/www.cliki.net/tiff4cl.html deleted file mode 100644 index a44b2f9c..00000000 --- a/clones/lisp/www.cliki.net/tiff4cl.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: tiff4cl - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/time management.html b/clones/lisp/www.cliki.net/time management.html deleted file mode 100644 index 1cc973b8..00000000 --- a/clones/lisp/www.cliki.net/time management.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: time management - - - - - - - -
    time management
    time management software - the one that helps you to organize your time. TODO lists, ticket-systems, etc.

    • -flexoplan - - Simple planner, TODO list and would-be ticket-system, written in CL -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/time.html b/clones/lisp/www.cliki.net/time.html deleted file mode 100644 index 4c4fb46c..00000000 --- a/clones/lisp/www.cliki.net/time.html +++ /dev/null @@ -1,128 +0,0 @@ - - - - - CLiki: time - - - - - - - -
    time
    Lisp libraries for working with times, dates, formatting, calendars, ...

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/timer.html b/clones/lisp/www.cliki.net/timer.html deleted file mode 100644 index 24e13e0e..00000000 --- a/clones/lisp/www.cliki.net/timer.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: TIMER - - - - - - - -
    TIMER
    An event scheduling library for SBCL by Zach Beane. It implements an interface similar to LispWorks' timer and scheduling functions.

    Documentation is here. There is also a ChangeLog.


    -obsolete
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/tinaa.html b/clones/lisp/www.cliki.net/tinaa.html deleted file mode 100644 index 6e038092..00000000 --- a/clones/lisp/www.cliki.net/tinaa.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: tinaa - - - - - - - -
    tinaa
    Tinaa is Not An Acronym. Tinaa is a Common Lisp documentation tool. Tinaa's home page is at http://common-lisp.net/project/tinaa and is probably much more up to date.

    Tinaa is one of Gary King's Common Lisp packages. Blame him!

    Using Tinaa in brief: -(document-system system-kind system-name destination-root)

    The system-kind can be 'package or 'asdf-system and the name is the name of the system.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/tinywm-lisp.html b/clones/lisp/www.cliki.net/tinywm-lisp.html deleted file mode 100644 index dcce3fbf..00000000 --- a/clones/lisp/www.cliki.net/tinywm-lisp.html +++ /dev/null @@ -1,126 +0,0 @@ - - - - - CLiki: tinywm-lisp - - - - - - - -
    tinywm-lisp
    tinywm-lisp is a Common Lisp port of the TinyWM X11 window manager.

    (shadow 'char-width) -(use-package :xlib) -(defparameter *mods* '(:mod-1)) -(defparameter *move* 1) -(defparameter *resize* 3) -(defparameter *lower* 4) -(defparameter *raise* 5) -(defparameter *display* nil) ; set this to an integer to do testing with xnest - -(defun open-default-display (&optional display-name) - "Open a connection to DISPLAY-NAME if supplied, or to the appropriate -default display as given by GET-DEFAULT-DISPLAY otherwise. - -OPEN-DISPLAY-NAME always attempts to do display authorization. The -hostname is resolved to an address, then authorization data for the -(protocol, host-address, displaynumber) triple is looked up in the -file given by AUTHORITY_PATHNAME (typically $HOME/.Xauthority). If -the protocol is :local, or if the hostname resolves to the local host, -authority data for the local machine's actual hostname - as returned by -gethostname(3) - is used instead." - (destructuring-bind (host display screen protocol) - (get-default-display display-name) - (declare (ignore screen)) - (open-display host :display display :protocol protocol))) - -(defun main () - (let* ((display (if *display* - (open-display "" :display *display*) - (open-default-display))) - (screen (first (display-roots display))) - (root (screen-root screen))) - - (dolist (button (list *move* *resize* *lower* *raise*)) - (grab-button root button '(:button-press) :modifiers *mods*)) - - (unwind-protect - (let (last-button last-x last-y) - (do () (nil) ; infinite loop - (event-case (display :discard-p t) - ;; for key-press and key-release, code is the keycode - ;; for button-press and button-release, code is the button number - (:button-press (code child event-window) - (cond ((= code *raise*) - (circulate-window-up root)) - ((= code *lower*) - (circulate-window-down root)) - ((or (= code *move*) - (= code *resize*)) - (when child ; do nothing if we're not over a window - (setf last-button code) - (grab-pointer child '(:pointer-motion :button-release)) - (let ((lst (multiple-value-list (query-pointer root)))) - (setf last-x (sixth lst) - last-y (seventh lst))))))) - (:motion-notify - (event-window root-x root-y) - ;; while(XCheckTypedEvent(display, MotionNotify, &ev)); - (let ((delta-x (- root-x last-x)) - (delta-y (- root-y last-y))) - (cond ((= last-button *move*) - ;; (incf (drawable-x event-window) delta-x) - ;; (incf (drawable-y event-window) delta-y) - (setf (drawable-x event-window) root-x - (drawable-y event-window) root-y)) - ((= last-button *resize*) - ;; (incf (drawable-width event-window) delta-x) - ;; (incf (drawable-height event-window) delta-y) - (setf (drawable-width event-window) - (max 1 (- root-x (drawable-x event-window))) - (drawable-height event-window) - (max 1 (- root-y (drawable-y event-window)))))))) - (:button-release () - (ungrab-pointer display))))) - (dolist (button (list *move* *resize* *lower* *raise*)) - (ungrab-button root button :modifiers *mods*)) - (close-display display))))
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/tmpdir.html b/clones/lisp/www.cliki.net/tmpdir.html deleted file mode 100644 index 5a29e381..00000000 --- a/clones/lisp/www.cliki.net/tmpdir.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: tmpdir - - - - - - - -
    tmpdir
    tmpdir is a simple Common Lisp library that provides a simple function and a simple macro to manipulate temporary directories (using cl-fad).

    Repository: https://github.com/moderninterpreters/tmpdir

    License: MIT


    -trivial system programming
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/tmux.html b/clones/lisp/www.cliki.net/tmux.html deleted file mode 100644 index 0a4b4186..00000000 --- a/clones/lisp/www.cliki.net/tmux.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: tmux - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/token-stream.html b/clones/lisp/www.cliki.net/token-stream.html deleted file mode 100644 index 2f063e82..00000000 --- a/clones/lisp/www.cliki.net/token-stream.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - CLiki: token-stream - - - - - - - -
    token-stream
    Lexer class for cl-stream.

    The LEXER class is to be sub-classed to produce a lexer for a specific grammar.

    Methods for matching input are provided that should suit most uses but can be extended at will.

    Packages using token-stream : -

    Repository: https://github.com/cl-stream/token-stream

    Maintainers: thodg.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/toot.html b/clones/lisp/www.cliki.net/toot.html deleted file mode 100644 index 0767f35a..00000000 --- a/clones/lisp/www.cliki.net/toot.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: toot - - - - - - - -
    toot
    Toot is a stripped down and, hopefully, simplified version of Edi Weitz 's Hunchentoot HTTP server. It does not aim to be backwards compatible with anything and large swaths of Hunchentoot functionality have been cut -out. Some of them may be put back someday. Use at your own risk. If it -breaks you get to keep both pieces, etc. etc.

    It can be found at https://github.com/gigamonkey/toot

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/topic markers.html b/clones/lisp/www.cliki.net/topic markers.html deleted file mode 100644 index bc7a8534..00000000 --- a/clones/lisp/www.cliki.net/topic markers.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: topic markers - - - - - - - -
    topic markers
    A Topic Marker(s) declares a CLiki page to be relevant to a given topic.

    Syntax/Usage

    *(Foo)

    (a) This page will be linked in the footer of any page called Foo.
    -(b) It will be listed on pages which include a topic search for Foo.


    See also: Text Formatting Uncategorized

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/track-best.html b/clones/lisp/www.cliki.net/track-best.html deleted file mode 100644 index 9d2d6eef..00000000 --- a/clones/lisp/www.cliki.net/track-best.html +++ /dev/null @@ -1,57 +0,0 @@ - - - - - CLiki: track-best - - - - - - - -
    track-best
    There are several libraries that support collecting things generated in loops (e.g. COLLECTING, collections). Rather than collecting all of the items, this library provides a way to collect just the "best" items.

    To find the three closest vertexes to a given target point, you might do this: -

    -(defun find-three-closest (target vertex-list distance-fn)
    -  (with-track-best (:keep 3 :order-by-fn #'<)
    -    (dolist (v vertex-list)
    -      (track v (funcall distance-fn v target))))))
    -

    The library home page is here: http://www.nklein.com/software/track-best-library/. This library is by Patrick Stein

    Topics: accumulators

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/translate.html b/clones/lisp/www.cliki.net/translate.html deleted file mode 100644 index 66debd2b..00000000 --- a/clones/lisp/www.cliki.net/translate.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: translate - - - - - - - -
    translate
    translate is an abstraction layer for internationalization. It is available at https://gitlab.common-lisp.net/dkochmanski/translate, and it has no dependencies (portable Common Lisp).

    License: LLGPL

    Author: Daniel Kochmański <daniel <AT> turtleware <DOT> eu>

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/trees.html b/clones/lisp/www.cliki.net/trees.html deleted file mode 100644 index 91ccedc5..00000000 --- a/clones/lisp/www.cliki.net/trees.html +++ /dev/null @@ -1,57 +0,0 @@ - - - - - CLiki: TREES - - - - - - - -
    TREES
    TREES provides several binary tree data structures exposed through a uniform CLOS interface. The flavors provided are:

      -
    • "Standard" binary trees
    • -
    • AVL trees
    • -
    • Red-black trees
    • -
    • AA trees (simpler variant of red-black trees)
    • -
    -Repository: https://github.com/froydnj/trees

    License: BSD

    Author: Nathan Froyd

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/trivia.html b/clones/lisp/www.cliki.net/trivia.html deleted file mode 100644 index ddb1e5b5..00000000 --- a/clones/lisp/www.cliki.net/trivia.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Trivia - - - - - - - -
    Trivia
    Trivial pattern matching compiler.

    Trivia is a pattern matching compiler that is compatible with optima. It shares the same testing code with Optima and acts as a drop-in replacement.

    Trivia aims to supersede Optima. Patterns compiled with Trivia run faster than Optima.

    Homepage: GitHub

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/trivial-backtrace.html b/clones/lisp/www.cliki.net/trivial-backtrace.html deleted file mode 100644 index 3fb83c95..00000000 --- a/clones/lisp/www.cliki.net/trivial-backtrace.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: trivial-backtrace - - - - - - - -
    trivial-backtrace
    Trivial backtrace is a simple platform independent interface for generating a backtrace. Much of the code is borrowed from the innards of Hunchentoot.

    More details can be found on its home page at Common-Lisp.net.

    Similar functionality is available also in swank and asdf3.

    Repository is available at: https://github.com/gwkkwg/trivial-backtrace


    -trivial debugging
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/trivial-benchmark.html b/clones/lisp/www.cliki.net/trivial-benchmark.html deleted file mode 100644 index 677d89d1..00000000 --- a/clones/lisp/www.cliki.net/trivial-benchmark.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: trivial-benchmark - - - - - - - -
    trivial-benchmark
    Trivial-Benchmark is an easy to use benchmarking system.

    Depends on: Alexandria

    Repository: https://github.com/Shinmera/trivial-benchmark/

    License: zlib


    -trivial benchmark
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/trivial-bit-streams.html b/clones/lisp/www.cliki.net/trivial-bit-streams.html deleted file mode 100644 index a004c575..00000000 --- a/clones/lisp/www.cliki.net/trivial-bit-streams.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: trivial-bit-streams - - - - - - - -
    trivial-bit-streams
    Trivial-bit-streams implements flexible buffered bit streams.

    Input into INPUT-BIT-STREAM's buffer and output from OUTPUT-BIT-STREAM's one -is managed through callbacks, so you can easily wrap bit streams around any -desirable data type.

    The library's single dependency is trivial-gray-streams library.

    Sources are available on github.


    -Topics: trivial, binary format
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/trivial-clipboard.html b/clones/lisp/www.cliki.net/trivial-clipboard.html deleted file mode 100644 index 6cdf23b9..00000000 --- a/clones/lisp/www.cliki.net/trivial-clipboard.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: trivial-clipboard - - - - - - - -
    trivial-clipboard
    trivial-clipboard provides access to the system clipboard.

    Depends on: uiop and—if using WindowsCFFI

    Repository: https://github.com/snmsts/trivial-clipboard

    License: MIT


    -system programming
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/trivial-cltl2.html b/clones/lisp/www.cliki.net/trivial-cltl2.html deleted file mode 100644 index 2b0fcda2..00000000 --- a/clones/lisp/www.cliki.net/trivial-cltl2.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: trivial-cltl2 - - - - - - - -
    trivial-cltl2
    Compatibility package exporting CLtL2 functionality

    Repository: https://github.com/Zulu-Inuoe/trivial-cltl2

    Author: Tomohiro Matsuyama

    License: LLGPL


    -trivial, compatibility layers
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/trivial-do.html b/clones/lisp/www.cliki.net/trivial-do.html deleted file mode 100644 index 11edf2f3..00000000 --- a/clones/lisp/www.cliki.net/trivial-do.html +++ /dev/null @@ -1,58 +0,0 @@ - - - - - CLiki: trivial-do - - - - - - - -
    trivial-do
    Additional dolist style macros for Common Lisp. Currently provides doalist, dohash, dolist*, doplist, doseq and doseq*.

    doalist

    Iterates over the key value pairs of an alist.

    (doalist (key value alist &optional return-form) - (format t "key: ~A, value: ~A~%" key value))

    dohash

    Iterates over the key value pairs of a hash table.

    (dohash (key value hash-table &optional return-form) - (format t "key: ~A, value: ~A~%" key value))

    dolist*

    Iterates over a list with a position variable tracking the current index.

    (dolist* (position value list &optional return-form) - (format t "position: ~A, value: ~A~%" position value))

    doplist

    Iterates over the key value pairs of an plist.

    (doplist (key value plist &optional return-form) - (format t "key: ~A, value: ~A~%" key value))

    doseq

    Iterates over the values of a sequence.

    (doseq (value sequence &optional return-form) - (format t "value: ~A~%" position value))

    doseq*

    Iterates over a sequence with a position variable tracking the current index.

    (doseq* (position value sequence &optional return-form) - (format t "position: ~A, value: ~A~%" position value))

    Obtaining

    Repository: https://github.com/yitzchak/trivial-do/

    Author: Tarn W. Burton


    -trivial, MIT-LICENSE
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/trivial-download.html b/clones/lisp/www.cliki.net/trivial-download.html deleted file mode 100644 index 33656203..00000000 --- a/clones/lisp/www.cliki.net/trivial-download.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: trivial-download - - - - - - - -
    trivial-download
    trivial-download allows you to download files from the Internet from Common Lisp. It even provides a progress bar.

    Depends on: drakma

    Repository: https://github.com/eudoxia0/trivial-download

    License: MIT


    -trivial HTTP client
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/trivial-dump-core.html b/clones/lisp/www.cliki.net/trivial-dump-core.html deleted file mode 100644 index c4a71079..00000000 --- a/clones/lisp/www.cliki.net/trivial-dump-core.html +++ /dev/null @@ -1,123 +0,0 @@ - - - - - CLiki: trivial-dump-core - - - - - - - -
    trivial-dump-core
    trivial-dump-core is a small portability wrapper for dumping core and creating executables for CCL, CLISP, and SBCL.

    License: MIT-License

    Source repository: https://github.com/rolando2424/trivial-dump-core

    For more information read the README.org file.

    Installation

    trivial-dump-core is available via Quicklisp: (ql:quickload "trivial-dump-core")

    dump-image

    In this example, we'll create a CCL image that has a user defined function evaluated.

    -rolando@rolando-desktop:~$ ccl
    -Welcome to Clozure Common Lisp Version 1.7-r14925M  (LinuxX8632)!
    -? (ql:quickload 'trivial-dump-core)
    -To load "trivial-dump-core":
    -  Load 1 ASDF system:
    -    trivial-dump-core
    -; Loading "trivial-dump-core"
    -[package trivial-dump-core]
    -(TRIVIAL-DUMP-CORE)
    -? (defun hello-world ()
    -    (format t "Hello, World!"))
    -HELLO-WORLD
    -? (trivial-dump-core:dump-image "my-core.ccl")
    -To run the image, use the following command in the terminal:
    -ccl -I my-core.ccl
    -rolando@rolando-desktop:~$
    -

    Now you have a my-core.ccl file in your folder. Notice that trivial-dump-core gave you the command you need to use to start CCL with this code.

    If we do that, we'll get a CCL prompt where you still have access to the hello-world function.

    -rolando@rolando-desktop:~$ ccl -I my-core.ccl 
    -Welcome to Clozure Common Lisp Version 1.7-r14925M  (LinuxX8632)!
    -? (hello-world)
    -Hello, World!
    -NIL
    -? 
    -

    save-executable

    In this example we'll create a SBCL executable that can be delivered and ran on a computer without SBCL installed.

    -rolando@rolando-desktop:~$ sbcl
    -This is SBCL 1.0.55, an implementation of ANSI Common Lisp.
    -More information about SBCL is available at <http://www.sbcl.org/>.
    -
    -* (ql:quickload 'trivial-dump-core)
    -To load "trivial-dump-core":
    -  Load 1 ASDF system:
    -    trivial-dump-core
    -; Loading "trivial-dump-core"
    -[package trivial-dump-core]
    -(TRIVIAL-DUMP-CORE)
    -* (defun hello-world ()
    -    (format t "Hello, World!~%"))
    -
    -HELLO-WORLD
    -* (trivial-dump-core:save-executable "sbcl-hello-world" #'hello-world)
    -[undoing binding stack and other enclosing state... done]
    -[saving current Lisp image into sbcl-hello-world:
    -writing 3512 bytes from the read-only space at 0x01000000
    -writing 2224 bytes from the static space at 0x01100000
    -writing 32231424 bytes from the dynamic space at 0x09000000
    -done]
    -rolando@rolando-desktop:~$
    -

    Now we have an executable file on the folder called "sbcl-hello-world". If you run it, the following happens:

    -rolando@rolando-desktop:~$ ./sbcl-hello-world 
    -Hello, World!
    -rolando@rolando-desktop:~$
    -

    SBCL and Slime -

    When running SBCL connected to Slime, you can't dump an image or save a executable due to the fact that SBCL is running several threads.

    The obvious solution is not to start Slime when you want to make an executable in SBCL. If you don't like obvious solutions, read on:

    To dump the current sbcl image, you need to go to the *inferior-lisp* buffer (in Emacs) and type the following:

    -(trivial-dump-core::sbcl-dump-image-slime "sbcl-slime")
    -

    The same happens when using the save-executable function.

    -   CL-USER> (trivial-dump-core:save-executable "sbcl-exec-slime" #'(lambda () (format t "Hello, World!")))
    -   Cannot run save an sbcl image from inside Slime.
    -   
    -   Please go to the *inferior-lisp* buffer in emacs and run the following code:
    -   
    -   (trivial-dump-core::sbcl-save-slime-and-die "sbcl-exec-slime" #'(LAMBDA ()
    -                                                                     (FORMAT
    -                                                                      T
    -                                                                      "Hello, World!")))
    -   NIL
    -   CL-USER>
    -

    Once again, just go to the *inferior-lisp* buffer and type:

    -(trivial-dump-core::sbcl-save-slime-and-die "sbcl-exec-slime" #'(LAMBDA ()
    -                                                                  (FORMAT
    -                                                                   T
    -                                                                   "Hello, World!")))
    -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/trivial-email-utf-8.html b/clones/lisp/www.cliki.net/trivial-email-utf-8.html deleted file mode 100644 index 3f75f789..00000000 --- a/clones/lisp/www.cliki.net/trivial-email-utf-8.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: trivial-email-utf-8 - - - - - - - -
    trivial-email-utf-8
    trivial-email-utf-8 is like CL-SMTP's send-mail, but qprints any Unicode characters in the message title or content and includes the appropriate headers if necessary. It also provides a function INVITE-USER, which is like SEND-EMAIL* except it sends the appropriate headers for sending an email on behalf of another user's email address.

    Depends on: cl-qprint, cl-ppcre, trivial-utf-8, cl-smtp

    Source repository: https://gitlab.common-lisp.net/bpm/trivial-email-utf-8

    License: BSD

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/trivial-extract.html b/clones/lisp/www.cliki.net/trivial-extract.html deleted file mode 100644 index 25e24252..00000000 --- a/clones/lisp/www.cliki.net/trivial-extract.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: trivial-extract - - - - - - - -
    trivial-extract
    Extract .tar/.tar.gz/.zip files.

    Depends on: archive, zip, deflate, which, cl-fad, uiop, alexandria

    Repository: https://github.com/eudoxia0/trivial-extract

    License: MIT


    -trivial
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/trivial-features.html b/clones/lisp/www.cliki.net/trivial-features.html deleted file mode 100644 index ee9724bf..00000000 --- a/clones/lisp/www.cliki.net/trivial-features.html +++ /dev/null @@ -1,65 +0,0 @@ - - - - - CLiki: trivial-features - - - - - - - -
    trivial-features
    trivial-features ensures consistent *FEATURES* across multiple Common -Lisp implementations.

    For example, on MacOS X platforms, while most Lisps push :DARWIN to -*FEATURES*, CLISP and Allegro push :MACOS and :MACOSX instead, -respectively. Some Lisps might not push any feature suggesting MacOS -X at all. trivial-features will make sure all Lisps will have :DARWIN -in the *FEATURES* list when running on MacOS X. This way, you can -write

    #+darwin foo #-darwin bar

    instead of

    #+(or darwin macos macosx) foo -#-(or darwin macos macosx) bar

    The included SPEC -document describes the set of symbols that should or should not be present in CL:*FEATURES* -on certain circumstances. This specification is implemented by the TRIVIAL-FEATURES system -which supports a handful of Lisps.

    The test suite is, in effect, an implementation using CFFI that is -checked against the various implementations in src/tf-*.lisp.

    License: MIT

    Source repository: https://github.com/trivial-features/trivial-features
    -Release tarballs: https://common-lisp.net/~loliveira/tarballs/trivial-features/
    -NetBSD package: https://pkgsrc.se/wip/cl-trivial-features


    -trivial system programming
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/trivial-feed.html b/clones/lisp/www.cliki.net/trivial-feed.html deleted file mode 100644 index c92f92b3..00000000 --- a/clones/lisp/www.cliki.net/trivial-feed.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: trivial-feed - - - - - - - -
    trivial-feed
    Parse syndication feeds such as RSS and ATOM to a canonical form.

    Depends on: xmls, cl-date-time-parser, flexi-streams, cl-ppcre

    Repository: https://github.com/eugeneia/trivial-feed

    License: AGPL


    -trivial standards
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/trivial-file-size.html b/clones/lisp/www.cliki.net/trivial-file-size.html deleted file mode 100644 index 1f5f5d5a..00000000 --- a/clones/lisp/www.cliki.net/trivial-file-size.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: trivial-file-size - - - - - - - -
    trivial-file-size
    This library exports a single function, file-size-in-octets. It returns the size of a file in bytes, using system calls when possible.

    Repository: https://github.com/ruricolist/trivial-file-size

    License: MIT


    -trivial system programming
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/trivial-garbage.html b/clones/lisp/www.cliki.net/trivial-garbage.html deleted file mode 100644 index 11afcfec..00000000 --- a/clones/lisp/www.cliki.net/trivial-garbage.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: trivial-garbage - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/trivial-gray-streams.html b/clones/lisp/www.cliki.net/trivial-gray-streams.html deleted file mode 100644 index 519a4d65..00000000 --- a/clones/lisp/www.cliki.net/trivial-gray-streams.html +++ /dev/null @@ -1,70 +0,0 @@ - - - - - CLiki: trivial-gray-streams - - - - - - - -
    trivial-gray-streams
    trivial-gray-streams provides an extremely thin compatibility layer for Gray streams.

    Author

    Copyright (c) 2005 David Lichteblau

    Homepage

    trivial-gray-streams homepage

    Mailing List

    Send bug reports to trivial-gray-streams devel.

    Download

    The library is available via Quicklisp. -A snapshot tarball is available from github tarball.

    Source Code

    The Git repository is at github source code.

    Documentation

    An online documentation is available at trivial-gray-streams API documentation.

    Dependencies

    trivial-gray-streams does not depend on other libraries.

    How to use it

      -
    1. - Use the package trivial-gray-streams instead of whatever implementation specific package you would have - to use otherwise to get gray stream symbols. -
    2. -
    3. - For stream-read-sequence and stream-write-sequence, notice that we use two required arguments - and allow additional keyword arguments. - So the lambda list when defining a method on either function should look like this: - - (stream sequence start end &key) - -
    4. -
    5. - In order for (2) to work on all Lisps, make sure to subclass all your stream classes from trivial-gray-stream-mixin - if you intend to define methods on those two generic functions. -
    6. -


    -Topics: trivial stream system programming
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/trivial-http.html b/clones/lisp/www.cliki.net/trivial-http.html deleted file mode 100644 index 9c81505f..00000000 --- a/clones/lisp/www.cliki.net/trivial-http.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: trivial-http - - - - - - - -
    trivial-http
    trivial-http is a simple HTTP client library.

    If you just need simple HTTP operations (no chunking, no flexi-streams, etc,) then trivial-http may be what you're looking for.

    Homepage: https://common-lisp.net/project/trivial-http/


    -trivial, MIT-LICENSE
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/trivial-https.html b/clones/lisp/www.cliki.net/trivial-https.html deleted file mode 100644 index 6ce1d0de..00000000 --- a/clones/lisp/www.cliki.net/trivial-https.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: trivial-https - - - - - - - -
    trivial-https
    trivial-https was a fork of Brian Mastenbrook's trivial-http adding support for HTTPS using CL+SSL.

    trivial-https will not be updated anymore. Please use Drakma instead, it has HTTPS support based on CL+SSL, too.


    -obsolete
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/trivial-irc.html b/clones/lisp/www.cliki.net/trivial-irc.html deleted file mode 100644 index f8dd2fa7..00000000 --- a/clones/lisp/www.cliki.net/trivial-irc.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: trivial-irc - - - - - - - -
    trivial-irc
    trivial-irc is a small IRC library that provides only very basic facilities for communicating with IRC servers, and has no facilities for extensions like DCC, CTCP etc. Look at cl-irc for that.

    Depends on: cl-ppcre, split-sequence, usocket

    Repository: https://github.com/tstenhaug/trivial-irc


    -MIT-LICENSE, trivial
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/trivial-jumptables.html b/clones/lisp/www.cliki.net/trivial-jumptables.html deleted file mode 100644 index 864f0ebe..00000000 --- a/clones/lisp/www.cliki.net/trivial-jumptables.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: trivial-jumptables - - - - - - - -
    trivial-jumptables
    trivial-jumptables provides efficient O(1) jump tables on supported Common Lisp implementations and falls back to O(log(n)) on others.

    Important optimizations are performed even on unsupported implementations, notably "vectorization" which allows O(1) dispatch if all cases are constant.

    See the project's home for all details.


    -Unlicense, Public Domain
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/trivial-ldap.html b/clones/lisp/www.cliki.net/trivial-ldap.html deleted file mode 100644 index 20015b2f..00000000 --- a/clones/lisp/www.cliki.net/trivial-ldap.html +++ /dev/null @@ -1,82 +0,0 @@ - - - - - CLiki: trivial-ldap - - - - - - - -
    trivial-ldap
    TRIVIAL-LDAP is a one-file, pure-Lisp client library for parts of RFC 4510 - Lightweight Directory Access Protocol (v3), LDAP.

    TRIVIAL-LDAP has been updated to use usocket (instead of trivial-socket) and now provides facilities for SSL LDAP connections. -The following omissions exist:

      -
    • UTF-8 is not implemented -
    • -
    • the SASL authentication method is not implemented -
    • -
    • controls are not implemented -
    • -
    • extended DN searches are not implemented -
    • -
    • referrals are not followed (searches returning referrals will - simply no-op following the referrals). -
    • -
    • extended request/response is not implemented, - beyond handling a notice of disconnection. -
    • -

    In 2011, Raymond Wiker took over maintenance of trivial-ldap. Since then, the following changes have been made:

      -
    • Added utf-8 support. -
    • -
    • Added rudimentary handling of binary attributes. -
    • -
    • Rewrote the parser, using cl-yacc. -
    • -
    • As a side effect of the parser rewrite, it is now possible to also specify ldap filters in a list form. -
    • -
    • Added mechanism for result paging; this makes it possible to handle very large result sets. -
    • -
    • SASL/GSS has been added (courtesy of Elias Mårtenson).
    • -

    That said, search, add, delete, modify, moddn, compare, and bind operations are supported. - -Full details and documentation are available at https://github.com/rwiker/trivial-ldap/

    trivial-ldap is originally by kevin montuori. The current maintainer is Raymond Wiker.


    -Networking
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/trivial-macroexpand-all.html b/clones/lisp/www.cliki.net/trivial-macroexpand-all.html deleted file mode 100644 index 82396ee7..00000000 --- a/clones/lisp/www.cliki.net/trivial-macroexpand-all.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: trivial-macroexpand-all - - - - - - - -
    trivial-macroexpand-all
    Provides a macroexpand-all function that calls the implementation-specific equivalent.

    Repository: https://github.com/cbaggers/trivial-macroexpand-all

    License: Unlicense


    -trivial, compatibility layers
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/trivial-main-thread.html b/clones/lisp/www.cliki.net/trivial-main-thread.html deleted file mode 100644 index efd066fa..00000000 --- a/clones/lisp/www.cliki.net/trivial-main-thread.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: trivial-main-thread - - - - - - - -
    trivial-main-thread
    Sometimes it is absolutely necessary to run certain tasks in the main thread of the implementation. This is particularly the case with GUI applications on OS X, where only thread 0 is allowed to issue drawing calls. This library aims to help with that.

    The project can be found on github including a fully documented symbol index and a getting started tutorial.
    -As of 2015, trivial-main-thread is on Quicklisp.

    Trivial-main-thread is licensed under the Artistic License 2.0.


    -Also see: simple-tasks


    -trivial
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/trivial-mmap.html b/clones/lisp/www.cliki.net/trivial-mmap.html deleted file mode 100644 index 9e243b14..00000000 --- a/clones/lisp/www.cliki.net/trivial-mmap.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: trivial-mmap - - - - - - - -
    trivial-mmap
    Trivial-MMAP is a Common Lisp library that aims to provide an easy-to-use API for working with memory-mapped files.

    Depends on: alexandria, osicat

    Repository: https://github.com/zodmaner/trivial-mmap

    License: Unlicense


    -trivial, system programming
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/trivial-monitored-thread.html b/clones/lisp/www.cliki.net/trivial-monitored-thread.html deleted file mode 100644 index 07bbd545..00000000 --- a/clones/lisp/www.cliki.net/trivial-monitored-thread.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: trivial-monitored-thread - - - - - - - -
    trivial-monitored-thread
    Trivial Monitored Thread offers a very simple (aka trivial) way of spawning threads and being informed when one any of them crash and die.


    -MIT-LICENSE, monitoring
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/trivial-package-local-nicknames.html b/clones/lisp/www.cliki.net/trivial-package-local-nicknames.html deleted file mode 100644 index f0abe8f1..00000000 --- a/clones/lisp/www.cliki.net/trivial-package-local-nicknames.html +++ /dev/null @@ -1,62 +0,0 @@ - - - - - CLiki: trivial-package-local-nicknames - - - - - - - -
    trivial-package-local-nicknames
    This was done so there is a portability library for the PLN API not included in DEFPACKAGE.

    Repository: https://github.com/phoe/trivial-package-local-nicknames

    License: Public Domain

    Supported implementations

    -
    -trivial
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/trivial-package-locks.html b/clones/lisp/www.cliki.net/trivial-package-locks.html deleted file mode 100644 index b7f8f88f..00000000 --- a/clones/lisp/www.cliki.net/trivial-package-locks.html +++ /dev/null @@ -1,58 +0,0 @@ - - - - - CLiki: trivial-package-locks - - - - - - - -
    trivial-package-locks
    A standard interface to the various package lock implementations.

    Currently supported implementations are ACL, CLISP, CMUCL, ECL and SBCL. On all other implementations the following functions are exported but will evaluate to a NOOP where appropriate.

    Package Locks Interface

    Implementations that support this interface will have the keyword :package-locks present in *features*.

    (package-locked-p &optional (package *package*)) => lock-state -(setf (package-locked-p &optional (package *package*)) new-lock-state)

    Accesses the lock state of a package. t indicates that the package is locked and nil indicates that it is not locked.

    (without-package-locks &body body) =>; results

    Disables the checking of package locks during the evaluation of body. For implementations that do not have the ability to disable all package locks via a dynamic variable (list-all-packages) will be used to unlock each package before the evaluation of body and then relock each package that was locked after the evaluation of body.

    (with-unlocked-packages (&rest packages) &body body) => results

    Unlocks and relocks each of the named packages around the evaluation of body.

    (with-locked-packages (&rest packages) &body body) => results

    Locks and then unlocks each of the named packages around the evaluation of body.

    Implementation Packages Interface

    Implementations that support this interface will have the keyword :implementation-packages present in *features*. Currently ACL and SBCL are the only implementations that support this interface.

    (package-implementation-packages (&optional (package *package*)) => packages -(setf (package-implementation-packages &optional (package *package*)) packages)

    Accesses the list of packages that are considered implementation packages of package.

    (package-implements-package-p (implementation-package - &optional (package *package*)) => state -(setf (package-implements-package-p implementation-package - &optional (package *package*)) - new-state)

    Access the implementation state of an individual package.


    Repository: https://github.com/yitzchak/trivial-package-locks/

    Author: Tarn W. Burton


    -trivial, MIT-LICENSE
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/trivial-raw-io.html b/clones/lisp/www.cliki.net/trivial-raw-io.html deleted file mode 100644 index f5b6a0f8..00000000 --- a/clones/lisp/www.cliki.net/trivial-raw-io.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: trivial-raw-io - - - - - - - -
    trivial-raw-io
    trivial-raw-io provides access to raw serial/terminal I/O (termios) under Unix.

    Homepage: https://github.com/kingcons/trivial-raw-io

    License: BSD 2-Clause


    -Topics: system programming
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/trivial-shell.html b/clones/lisp/www.cliki.net/trivial-shell.html deleted file mode 100644 index 56419cfb..00000000 --- a/clones/lisp/www.cliki.net/trivial-shell.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: trivial-shell - - - - - - - -
    trivial-shell
    Trivial shell is a simple platform independent interface to the underlying Operating System. It forks and builds on the code in Kevin Rosenberg's handy KMRCL tools. More details can be found on its home page at Common-Lisp.net. Presently, the package is quite rudimentary (even for something trivial!) but we all live in hope.

    NB: These days you might prefer inferior-shell for its wider support and richer interface.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/trivial-sockets.html b/clones/lisp/www.cliki.net/trivial-sockets.html deleted file mode 100644 index a8b593fa..00000000 --- a/clones/lisp/www.cliki.net/trivial-sockets.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: trivial-sockets - - - - - - - -
    trivial-sockets
    trivial-sockets is a trivial networking library for undemanding Internet applications (for example "scripting" and interactive use).

    Since version 0.2 it has had support for ABCL (client only), Allegro CL, CLISP, CMUCL, Xanalys Lispworks, OpenMCL and SBCL.

    License: MIT-LICENSE

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/trivial-template.html b/clones/lisp/www.cliki.net/trivial-template.html deleted file mode 100644 index fe7855ed..00000000 --- a/clones/lisp/www.cliki.net/trivial-template.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: trivial-template - - - - - - - -
    trivial-template
    Trivial Template is a really really trivial public domain templating hack.

    No asdf-install link, but you can download it here: http://random-state.net/files/trivial-template.lisp -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/trivial-timeout.html b/clones/lisp/www.cliki.net/trivial-timeout.html deleted file mode 100644 index 0cbecc4c..00000000 --- a/clones/lisp/www.cliki.net/trivial-timeout.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: trivial-timeout - - - - - - - -
    trivial-timeout
    OS- and implementation-independent access to timeouts.

    Repository: https://github.com/gwkkwg/trivial-timeout

    License: MIT

    Download: trivial-timeout.tar.gz

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/trivial-timers.html b/clones/lisp/www.cliki.net/trivial-timers.html deleted file mode 100644 index ca7de08e..00000000 --- a/clones/lisp/www.cliki.net/trivial-timers.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: trivial-timers - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/trivial-types.html b/clones/lisp/www.cliki.net/trivial-types.html deleted file mode 100644 index e5d66ec6..00000000 --- a/clones/lisp/www.cliki.net/trivial-types.html +++ /dev/null @@ -1,62 +0,0 @@ - - - - - CLiki: trivial-types - - - - - - - -
    trivial-types
    TRIVIAL-TYPES provides missing but important type definitions such as PROPER-LIST, ASSOCIATION-LIST, PROPERTY-LIST and TUPLE.

    By using these types, you can keep type declarations more accurate. For example, you may write a class definition like:

    (defclass person () - ((name :type string)) - ((age :type fixnum)) - ((friends :type list)))

    However, it is not obvious for anyone except you that FRIENDS slot has only a list of person. If you want declare FRIENDS slot more accurately, PROPER-LIST is the best for that:

    (defclass person () - ((name :type string)) - ((age :type fixnum)) - ((friends :type (proper-list person))))

    In addition, TRIVIAL-TYPES also provides standard designators defined -in ANSI standard such as PACKAGE-DESIGNATOR. They are useful when you -write a function that takes a package-oid argument like:

    (defun list-external-symbols (package) - (declare (package-designator package)) - (loop for symbol being the external-symbol of package - collect symbol))

    Repository: https://github.com/digikar99/trivial-types

    License: LLGPL

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/trivial-update.html b/clones/lisp/www.cliki.net/trivial-update.html deleted file mode 100644 index 63735344..00000000 --- a/clones/lisp/www.cliki.net/trivial-update.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: trivial-update - - - - - - - -
    trivial-update
    This is a little library that gives its user tools to easily change place with any supplied function. This library is most useful in cases when you have to deal with places that have complex structure.

    GitHub repository: https://github.com/cbaggers/trivial-update

    You can install it via Quicklisp:

    (ql:quickload "trivial-update")

    trivial-update is written and maintained by Mark Karpov.

    It's distributed under MIT-license.


    -Relevant topics: trivial, convenience library
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/trivial-utf-8.html b/clones/lisp/www.cliki.net/trivial-utf-8.html deleted file mode 100644 index e145ac1a..00000000 --- a/clones/lisp/www.cliki.net/trivial-utf-8.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: trivial-utf-8 - - - - - - - -
    trivial-utf-8
    Trivial UTF-8 provides more efficient ways of reading and writing UTF-8 for implementations that already support Unicode.

    trivial-utf-8 can be downloaded from Quicklisp. It's released under the zlib license.


    -trivial character encoding
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/trivial.html b/clones/lisp/www.cliki.net/trivial.html deleted file mode 100644 index a8562bc8..00000000 --- a/clones/lisp/www.cliki.net/trivial.html +++ /dev/null @@ -1,180 +0,0 @@ - - - - - CLiki: trivial - - - - - - - -
    trivial
    Trivial software is software which serves a purpose with the minimum amount of complexity, possibly at the expense of robustness. For example, where acl-compat emulates Allegro's streams on several Lisp implementations, trivial-sockets merely wraps the host lisp's socket interface.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/try.html b/clones/lisp/www.cliki.net/try.html deleted file mode 100644 index a4e2fabe..00000000 --- a/clones/lisp/www.cliki.net/try.html +++ /dev/null @@ -1,82 +0,0 @@ - - - - - CLiki: try - - - - - - - -
    try
    Try is a library for unit testing with equal support for interactive and non-interactive workflows. Tests are functions, and almost everything else is a condition, whose types feature prominently in parameterization. Try is what we get if we make tests functions and build a test framework on top of the condition system like Stefil did but also address the issue of rerunning and replaying, make the IS check more capable, use the types of the condition hierarchy to parameterize what to debug, print, rerun, and document the whole thing.

    The IS macro is a replacement for assert, that can capture values of subforms to provide context to failures: -

    -(is (= (1+ 5) 0)) - -debugger invoked on a TRY:UNEXPECTED-RESULT-FAILURE: - UNEXPECTED-FAILURE in check: - (IS (= #1=(1+ 5) 0)) - where - #1# = 6 -
    -Note the #N# syntax due to *PRINT-CIRCLE*.

    This is how to define an run tests: -

    -(deftest should-work () - (is t)) - -;;; non-interactive -(try 'should-work) -.. SHOULD-WORK ; TRIAL-START -.. ⋅ (IS T) ; EXPECTED-RESULT-SUCCESS -.. ⋅ SHOULD-WORK ⋅1 ; EXPECTED-VERDICT-SUCCESS -.. -==> #<TRIAL (SHOULD-WORK) EXPECTED-SUCCESS 0.000s ⋅1> -;;; interactive equivalent -(should-work) -

    Test suites are simply test functions that call other test functions.

    TRIAL objects record results and are funcallable. Calling TRY or funcalling the trial reruns tests with unexpected results: -

    -;;; non-interacive -(try !) -;;; interactive equivalent -(funcall *) -

    Try is not small, but it has a regular design and very few core concepts.

    HTML documentation: https://melisgl.github.io/mgl-pax-world/try-manual.html

    Repository: https://github.com/melisgl/try

    Author: Gabor Melis


    -Test Framework, MIT-LICENSE
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/turtl.html b/clones/lisp/www.cliki.net/turtl.html deleted file mode 100644 index ca3e3e30..00000000 --- a/clones/lisp/www.cliki.net/turtl.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: turtl - - - - - - - -
    turtl
    Turtl lets you take notes, bookmark websites, and store documents for sensitive projects. From sharing passwords with your coworkers to tracking research on an article you're writing, Turtl keeps it all safe from everyone but you and those you share with. Its (deprecated) API is written in Common Lisp: https://github.com/turtl/api (licensed with AGPL).


    -obsolete
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/twinql.html b/clones/lisp/www.cliki.net/twinql.html deleted file mode 100644 index 05600c64..00000000 --- a/clones/lisp/www.cliki.net/twinql.html +++ /dev/null @@ -1,58 +0,0 @@ - - - - - CLiki: twinql - - - - - - - -
    twinql
    twinql is a parser and query engine for the SPARQL RDF query language, built on the Wilbur Semantic Web toolkit for Common Lisp. It is capable of the following: -
      -
    • Running SPARQL queries against a Wilbur database
    • -
    • Parsing of the SPARQL SQL-like syntax into an intermediate s-expression format
    • -
    • Resolution of query patterns into results tables, which are accessible as lists of hashes for programmatic manipulation
    • -
    • Output of result lists in human-readable format and in the SPARQL XML query result format
    • -
    • Evaluation of SELECT, ASK, CONSTRUCT, and DESCRIBE queries (the latter returning unions of CBDs).
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/type-r.html b/clones/lisp/www.cliki.net/type-r.html deleted file mode 100644 index e9cf0ac8..00000000 --- a/clones/lisp/www.cliki.net/type-r.html +++ /dev/null @@ -1,68 +0,0 @@ - - - - - CLiki: type-r - - - - - - - -
    type-r
    The complete collection of accessor functions and patterns to access the elements in a compound type specifier.

    Usage examples:

    Access the size portion of a string type: -

    (string-type-size '(string 50)) -;; => 50 -(string-type-size '(string)) -;; => '* -(string-type-size 'string) -;; => '* -

    Match uniformly with trivia by the same author: -

    (match '(string 50) - ((string-type size) size)) -;; => 50 -(ematch '(simple-array * 3) - ((array-subtype _ rank) rank)) -;; => 3 -(ematch '(base-string 5) - ((base-string-type _ type) type)) -;; => 'base-char -

    Homepage: GitHub

    License: LLGPL

    See Also: simplified-types

    Topics: convenience library, pattern matching

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/uLisp.html b/clones/lisp/www.cliki.net/uLisp.html deleted file mode 100644 index 57e106d1..00000000 --- a/clones/lisp/www.cliki.net/uLisp.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: uLisp - - - - - - - -
    uLisp
    uLisp is an embedded Lisp for microcontrollers, supporting Arduino, Adafruit M0/M4, Micro:bit, ESP8266/32, and RISC-V boards.

    Repository: https://github.com/technoblogy/ulisp

    Hardware Example: Tiny Lisp Computer 2

    License: MIT

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ubiquitous.html b/clones/lisp/www.cliki.net/ubiquitous.html deleted file mode 100644 index 6fd2b307..00000000 --- a/clones/lisp/www.cliki.net/ubiquitous.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: ubiquitous - - - - - - - -
    ubiquitous
    Ubiquitous is a very easy-to-use library for persistent configuration storage. It automatically takes care of finding a suitable place to save your data, and provides simple functions to access and modify the data within.

    The project can be found on github including a fully documented symbol index and a getting started tutorial.
    -As of 2015, ubiquitous is on Quicklisp.

    Ubiquitous is licensed under the Artistic License 2.0.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ucw.html b/clones/lisp/www.cliki.net/ucw.html deleted file mode 100644 index c7351e4e..00000000 --- a/clones/lisp/www.cliki.net/ucw.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - CLiki: ucw - - - - - - - -
    ucw
    UnCommon Web is a web framework.

    License: https://github.com/juan-reynoso/ucw-core/blob/master/LICENCE

    Homepage: http://common-lisp.net/project/ucw

    The official repository is a Darcs one. Here's a github clone.

    UCW Documentation

    UCW documentation is available in the source repo.

    The documentation page on the UCW website has some background material.

    [2020-28-01] UCW demo with Bootstrap 4: https://www.huuii.com/people/juan/5403 It was announced by his maintainer on Twitter.
    -[2009-09-19] Blog post on preparing for UCW development
    -[2007-11-24] Blog post on trying out UCW

    WUI

    There's a similar and more recent effort called WUI: dwim.hu.

    [2019-06-19] "Obsolete! Was split into presentation and web-server."

    UCW Tricks

    UCW Tricks and Cookbook

    Evaluation, 20100901

    A very brief assessment of all web frameworks listed in cliki was carried out in September 2010. This assessment comprised: check websites, download source if available, attempt to compile, review documentation.

    The review found that UncommonWeb was well established. However, much of the documentation was stated to be out of date, which is off-putting but at least implies an evolving system. Some copyright dates as recent as 2009 indicate that it is still being developed.

    There were no obvious links to example live applications built with this kit.

    Where to find something new with UCW

    -If anyone is interested there is but one page about UCW which currently seems to be "supported"—head over to: -Currently running UCW stuff
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/uffi.html b/clones/lisp/www.cliki.net/uffi.html deleted file mode 100644 index 37a077b3..00000000 --- a/clones/lisp/www.cliki.net/uffi.html +++ /dev/null @@ -1,67 +0,0 @@ - - - - - CLiki: uffi - - - - - - - -
    uffi
    CFFI is recommended as the replacement for UFFI.

    UFFI is the Common Lisp "Universal Foreign Function Interface" (FFI) package.

    The primary testing and development systems are:

      -
    • Allegro CL (ACL) v6.2 (Linux and Windows)
    • -
    • -Lispworks v4.2 (Linux and Windows)
    • -
    • -CMUCL v18e(Linux)
    • -
    • -SBCL 0.8.0 (Linux)
    • -
    • SCL 1.1 (Linux)
    • -
    • -OpenMCL 0.13
    • -
    • -MCL 4.3 (MacOS)
    • -

    Implementations including a foreign function interface compatible to UFFI are:

    CLISP support is still not yet within the UFFI distribution, but an independent file is available from Sourceforge's Patches section. It's good enough to run CLSQL with PostgreSQL and most of CL-SDL.

    Maybe better way to use uffi with CLisp is to use CFFI and its cffi-uffi-compat system. I tested it with CLSQL and it works fine. -- Marko Kocic

    UFFI is included in the Debian distributions of sarge and sid and Gentoo.

    There is experimental UFFI support in SWIG.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ugly-tiny-infix-macro.html b/clones/lisp/www.cliki.net/ugly-tiny-infix-macro.html deleted file mode 100644 index 55fb5fcf..00000000 --- a/clones/lisp/www.cliki.net/ugly-tiny-infix-macro.html +++ /dev/null @@ -1,57 +0,0 @@ - - - - - CLiki: ugly-tiny-infix-macro - - - - - - - -
    ugly-tiny-infix-macro
    This is a powerful lisp macro for the purpose of writing your expressions in infix notation while not losing out on lisp's power.

    Examples

    At its simplest,

    ($ 1 + 2) ; gets converted to (+ 1 2), where name of the macro is $ - ($ t and nil) ; gets converted to (and t nil) - ($ 3 > 5) ; gets converted to (> 3 5) - ($ 1 + 2 + 3) ; gets converted to (+ (+ 1 2) 3) - ($ 1 + 2 * 3) ; gets converted to (+ 1 (* 2 3)) - ($ 1 < 2 and 2 < 3) ; gets converted to (AND (< 1 2) (< 2 3))

    Anything within parentheses at position of an operand is treated like a lisp form.

    ($ 2 + (max 9 10 11)) ; gets converted to (+ 2 (max 9 10 11)). It could have been any function / lisp form. - ($ 6 / ($ 1 + 2)) ; gets converted to (/ 6 ($ 1 + 2)), and then subsequently to (/6 (+ 1 2))

    You can find more information on the README on github. It's also available on quicklisp.

    Project Homepage: https://github.com/peey/ugly-tiny-infix-macro

    License: Apache 2

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/uiop.html b/clones/lisp/www.cliki.net/uiop.html deleted file mode 100644 index 4b82f99f..00000000 --- a/clones/lisp/www.cliki.net/uiop.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: uiop - - - - - - - -
    uiop
    UIOP, the Utilities for Implementation- and OS- Portability, is a portability layer and basic utility library that comes as part of ASDF 3.

    UIOP is a generalization and robustification of portability features previously found in ASDF 2, xcvb, trivial-backtrace, cl-launch, cl-fad, and more.

    Notable exported symbols (functions, variables, macros) include: -subpathname, run-program, getenv, getenv-pathname, call-function, parse-native-namestring, getcwd, chdir, register-image-restore-hook, *command-line-arguments*, *uninteresting-conditions*, define-package, with-temporary-file, with-output, if-let, uiop-debug.

    See the README file for a guide.

    Browse the source for more functions with appropriate docstrings or comments.

    How to run shell commands

    See run-program (synchronous) and launch-program (asynchronous)

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/ulimyhmpqs.html b/clones/lisp/www.cliki.net/ulimyhmpqs.html deleted file mode 100644 index 7f76028e..00000000 --- a/clones/lisp/www.cliki.net/ulimyhmpqs.html +++ /dev/null @@ -1,88 +0,0 @@ - - - - - CLiki: ulimyhmpqs - - - - - - - -
    ulimyhmpqs
    ulimyhmpqs is an implementation of the Hypercube Multiple Polynomial Quadratic Sieve (HMPQS), an algorithm for the factorisation of large (up to about 110 digits, where the Number Field Sieve (NFS) algorithms become more efficient) integers. It was written by Uli Meyer and has been tested on the following implementations so far: -
      -
    • Macintosh Common Lisp Version 4.3.5 (OS9.2)
    • -
    • CMUCL 19c (MacOS 10.4)
    • -
    • clisp 2.41 (Windows XP)
    • -
    • LispWorks (Windows XP)
    • -
    -From the description of the algorithm: -The intention of the author was not to present a record-breaking implementation of this well-known algorithm, but

      -
    • to understand himself what science of the last decades has in stock, to reverse the very simple and fundamental operation of multiplying two integers, in spite of having only basic knowledge in number theory
    • -
    • to have a ready-to-go, easy-to-use and still powerful LISP module for factoring large numbers.
    • -

    The run time needed to factor a hard (i.e. two large prime factor) integer n can be read off the following plot. To use it, download the source code (a single Lisp file), compile and load it. -To factor the seventh Fermat number F7 = 2128+1, evaluate -

    (setf *default-float-format* 'double-float) ; clisp produces floating overflows - ; for (> n 1e40) without this. - -(load "ulimyhmpqs"); assumes that (compile-file "ulimyhmpqs.lisp") has - ; been done once. -(factors (+ (expt 2 128) 1) - :report t) ; enables the report shown below -
    -which produces the following report and the two factors -(59649589127497217 5704689200685129054721). -
    ------------------ 340282366920938463463374607431768211457 ----------------
    -log10(N) (M  24235) (h(x*)) (a_ideal) (a_primes) (  4950/619  squares) thr
    - 38.53      4.38     23.50    15.03   1.83  3.45   3.84   6.90  d +0.0  16
    -fctrbase (B   1156) {-1 2 11 13 17 19 ; 31 37 59 61 67 71 89 97 ... 20731}
    -cub a-error #h(x)  equ/min new/min  #equ  #due done%    est/min      0.009
    -1   .25329%    64  4702.04 4702.04   229     1  19.8      0.254      0.057
    -2   .74957%   128  4848.89 4996.56   471     6  40.7      0.243      0.106
    -3   .47386%   192   4989.7 5269.02   729    13  63.1      0.236      0.155
    -4   .88492%   256  4696.65 4028.18   987    22  85.4      0.261      0.219
    -5   0.9952%   286  4209.07 2035.99  1083    23  93.7      0.302      0.266
    -#h(x)*2M/equation  non/triv   #slp   452  due% saved%
    -1.386d+7  1.28d+4   1 + 5    0.69% 65536   2.1   6.3                 16.0s
    ---------------- (59649589127497217 5704689200685129054721) ---------------
    -

    I hope those of you who like Mathematics will enjoy this program. A detailed description of the algorithm is available both in english and (slightly older) german.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/umlisp.html b/clones/lisp/www.cliki.net/umlisp.html deleted file mode 100644 index 3facac66..00000000 --- a/clones/lisp/www.cliki.net/umlisp.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: umlisp - - - - - - - -
    umlisp
    umlisp is an CLOS object-oriented interface to the Unified Medical Language System. It uses a SQL database to index and access the 15 gigabytes of text UMLS data. UMLisp is written by Kevin Rosenberg.

    Depends on: clsql, kmrcl, hyperobject

    Repository: http://git.kpe.io/?p=umlisp.git;a=summary

    License: GPL

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/umpa-lumpa.html b/clones/lisp/www.cliki.net/umpa-lumpa.html deleted file mode 100644 index 45c2aa05..00000000 --- a/clones/lisp/www.cliki.net/umpa-lumpa.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: umpa-lumpa - - - - - - - -
    umpa-lumpa
    Umpa-Lumpa is a set of utilities used by armish and liards.

    Licence: LLGPL

    Dependencies: arnesi

    Download: darcs get http://common-lisp.net/project/liards/darcs/umpa-lumpa

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/unicly.html b/clones/lisp/www.cliki.net/unicly.html deleted file mode 100644 index 9cc8f375..00000000 --- a/clones/lisp/www.cliki.net/unicly.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: unicly - - - - - - - -
    unicly
    Unicly is a Common Lisp library for generation of UUIDs (Universally Unique -Identifiers) as described by RFC 4122.

    Unicly is derived from UUID.

    Homepage: https://github.com/mon-key/unicly

    License: ???


    -Topics: networking
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/unicode support.html b/clones/lisp/www.cliki.net/unicode support.html deleted file mode 100644 index 5c547e70..00000000 --- a/clones/lisp/www.cliki.net/unicode support.html +++ /dev/null @@ -1,110 +0,0 @@ - - - - - CLiki: Unicode Support - - - - - - - -
    Unicode Support
    All contemporary Lisp implementations have reasonable Unicode support. In particular, all implementations are able to faithfully execute the following UTF-8 encoded piece of code:

    -(defmacro λ (&rest symbols-and-expr)
    -  `(lambda ,(butlast symbols-and-expr)
    -     ,@(last symbols-and-expr)))
    -
    -(mapcar (λ x (* x x)) '(1 2 3 4))
    -
    -;; other tremendously useful characters:
    -'|αβγδεζηθικλμνξοπρστυϕχψω|
    -'|ΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤΥϕΧΨΩ|
    -'|ℝℕℤℚ∥√∡∞∝ℵ∅∫|
    -'|¬∀∃∨∧⊥∈⊂∪∩⇐⇔⇒↦|
    -

    This means you can finally use fancy Greek and Logical symbols in your Lisp programs without sacrificing portability! However you should check with your coworkers first. Not everyone is comfortable producing such symbols on a computer (a terrible regression with respect to handwritten text). Practical mechanisms to enter Unicode symbols an a computer are:

      -
    • An extended keyboard layout like Neo.
    • -
    • Configure your editor to fold certain strings to Unicode symbols (e.g. abbrev-mode in Emacs).
    • -
    • Look up the character in a table, e.g. with C-x 8 RET in Emacs, or by copying it from Wikipedia. (This methods are quite annoying and should only be used in exceptional circumstances)
    • -

    Implementation Details

    While the core functionality is the same across all Lisp implementations --- Unicode characters are a subtype of CHARACTER --- no two implementations are alike when it comes to the details.


    ABCL

    -


    ACL

    -


    CCL

    -


    CMUCL

    -


    ECL

    -


    LispWorks

    -


    SBCL

    -
      -
    • First version with Unicode support: 0.8.17
    • -
    • Build-time option :SB-UNICODE (enabled by default) for building the system with support for the entire 21-bit character space defined by the Unicode consortium.
    • -
    • Has a build-time option (controlled by the :SB-UNICODE keyword feature, enabled by default) for building the system with support for the entire 21-bit character space defined by the Unicode consortium.
    • -
    • Details are explained on the sbcl-internals cliki, or this presentation from Christophe Rhodes, which he presented at the European Common Lisp Meeting, April 2005 -
    • -
    • Official Documentation -
    • -


    CLISP

    -
      -
    • First version with Unicode support: 2.31
    • -
    • Ability to pass multibyte encodings via FFI since version 2.35
    • -


    -programming tips
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/unification.html b/clones/lisp/www.cliki.net/unification.html deleted file mode 100644 index 88db0b2d..00000000 --- a/clones/lisp/www.cliki.net/unification.html +++ /dev/null @@ -1,60 +0,0 @@ - - - - - CLiki: unification - - - - - - - -
    unification
    Libraries adding unification operations to Common Lisp

      -
    • -cl-unification - - Provides unification (as used in Prolog) over fairly arbitrary Common Lisp objects -
    • -
    • -Prolog Technology Theorem Prover - - The Prolog Technology Theorem Prover (PTTP) is an implementation (in Common Lisp) of the model elimination theorem-proving procedure that extends Prolog to the full first-order predicate calculus -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/unistd-stream.html b/clones/lisp/www.cliki.net/unistd-stream.html deleted file mode 100644 index 23426288..00000000 --- a/clones/lisp/www.cliki.net/unistd-stream.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: unistd-stream - - - - - - - -
    unistd-stream
    A cl-stream stream using cffi-posix unistd semantics.

    https://github.com/cl-stream/unistd-stream

    Maintainers: thodg.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/unit-conversion.html b/clones/lisp/www.cliki.net/unit-conversion.html deleted file mode 100644 index 3029b2ef..00000000 --- a/clones/lisp/www.cliki.net/unit-conversion.html +++ /dev/null @@ -1,73 +0,0 @@ - - - - - CLiki: unit-conversion - - - - - - - -
    unit-conversion
    units is an extensive measuring unit (time/weight/distance/etc and many other physical units) conversion library.

    Homepage: http://www.cs.utexas.edu/users/novak/units.html

    Author: Gordon S. Novak Jr.

    License: GPL

    From the comments in the code:

    -; Examples of unit conversion:  (glconvertunit from to)
    -; (glconvertunit 'mile 'foot)
    -; (glconvertunit 'kilogram 'lb)
    -; (glconvertunit '(/ (* atto parsec) (* micro fortnight)) '(/ inch second))
    -; (glconvertunit '(* acre foot) 'teaspoon)
    -; (glconvertunit '(/ (* 2000 kilo calorie) day) 'watt)    ; average human power
    -; (glconvertunit '(* 100 kgf 4 m) '(* kilo calorie)) ; calories to climb stairs
    -; the following require (setq *glunitenable* t)
    -; (glconvertunit 'kilogram 'lbf)          ; mass to weight
    -; (glconvertunit 'gram 'kilowatt-hour)    ; mass to energy
    -
    -; Examples of unit simplification:
    -; (glsimplifyunit '(/ meter foot))
    -; (glsimplifyunit '(/ joule watt))
    -; (glsimplifyunit '(/ joule horsepower))
    -; (glsimplifyunit '(/ (* kilogram meter) (* second second)))
    -; (glsimplifyunit 'atm)
    -; (glsimplifyunit 'atm 'english)
    -; (glsimplifyunit '(/ (* amp second) volt))
    -; (glsimplifyunit '(/ (* newton meter) (* ampere second)))
    -; (glsimplifyunit '(/ (* volt volt) (* lbf (/ (* atto parsec) hour))))
    -

    Read more at http://www.cs.utexas.edu/users/novak/units.html

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/unit-formula.html b/clones/lisp/www.cliki.net/unit-formula.html deleted file mode 100644 index fe8e2f7f..00000000 --- a/clones/lisp/www.cliki.net/unit-formula.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: unit-formula - - - - - - - -
    unit-formula
    unit-formula is a library for units conversions and defining formulas with automated unit consistency checking and conversions.

    Homepage: https://github.com/Ramarren/unit-formula

    License: GPL

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/unit-test.html b/clones/lisp/www.cliki.net/unit-test.html deleted file mode 100644 index 7b3c59ea..00000000 --- a/clones/lisp/www.cliki.net/unit-test.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: unit-test - - - - - - - -
    unit-test
    unit-test is a Test Framework by Alain Picard.

    Repository: https://github.com/hanshuebner/unit-test

    "This code may be used for any purpose but without warranty or liability of any kind."

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/units.html b/clones/lisp/www.cliki.net/units.html deleted file mode 100644 index 4d81f437..00000000 --- a/clones/lisp/www.cliki.net/units.html +++ /dev/null @@ -1,204 +0,0 @@ - - - - - CLiki: Units - - - - - - - -
    Units
    Things dealing with time, date, weight, currency, etc. and validation.

      -
    • -Acclimation - - This project is meant to provide tools for internationalizing Common -
    • -
    • -Antik - - A library for computational mathematics, science, and engineering -
    • -
    • -Chemboy - - Chemboy is an application to do basic chemistry calculations -
    • -
    • -cl-ana - - cl-ana aims to provide the basic tools necessary to analyze large/medium-large datasets -
    • -
    • -cl-iso3166 - - cl-iso3166 is a country units library providing data from ISO 3166 : Codes for the representation of names of countries and their subdivisions -
    • -
    • -cl-iso4217 - - cl-iso4217 is a currency units library providing data from ISO 4217 : Codes for the representation of currencies and funds -
    • -
    • -cl-weather-util - - Weather utilities for Common Lisp -
    • -
    • -CLLIB - - CLLIB is a varied collection of Common lisp tools and routines in CLOCC -
    • -
    • -currensea - - currensea is a currency conversion library based on AllegroServe -
    • -
    • -iso-2533 - - Library providing data from ISO 2533:1975 International Standard Atmosphere -
    • -
    • -Measures - - The Measures Package provides dimensioned numbers (i.e -
    • -
    • -physical-quantities - - A library for processing physical quantities: values, units, (and uncertainty) -
    • -
    • -simple-currency - - Simple-currency is a small library for converting between currencies using the public foreign exchange information posted daily by the European Central Bank -
    • -
    • -unit-conversion - - units is an extensive measuring unit (time/weight/distance/etc and many other physical units) conversion library -
    • -
    • -unit-formula - - unit-formula is a library for units conversions and defining formulas with automated unit consistency checking and conversions -
    • -

    Times and dates: (main topic: time) -

    Validation: (main topic: validation) -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/unix-options.html b/clones/lisp/www.cliki.net/unix-options.html deleted file mode 100644 index 5058cd8a..00000000 --- a/clones/lisp/www.cliki.net/unix-options.html +++ /dev/null @@ -1,69 +0,0 @@ - - - - - CLiki: unix-options - - - - - - - -
    unix-options
    unix-options is a library for processing Unix-style command-line arguments. Can act as a simple Getopt for Lisp or can automatically bind values passed in from the CLI. Ordinary usage is as simple as specifying which variables you need to be set from the command-line.

    For example:

    (asdf:oos 'asdf:load-op 'unix-options) -(use-package 'unix-options) - -(with-cli-options () (alpha beta delta &parameters file) - (print alpha) - (print beta) - (print delta) - (print file) - (print free)) - -(quit)

    $ sample-script.lisp -affile.txt --beta -- file2.txt
    --> T
    --> T
    --> NIL
    --> "file.txt"
    --> ("file2.txt")
    -$

    The repository is on github: -http://github.com/astine/unix-options


    -system programming command-line options parser
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/unix-opts.html b/clones/lisp/www.cliki.net/unix-opts.html deleted file mode 100644 index 9283248e..00000000 --- a/clones/lisp/www.cliki.net/unix-opts.html +++ /dev/null @@ -1,110 +0,0 @@ - - - - - CLiki: unix-opts - - - - - - - -
    unix-opts
    This is a minimalistic parser of command line options. Main advantage of -this library is ability to concisely define command line options once -and then use this definition for parsing and extraction of command line -arguments, as well as printing description of command line options (you -get --help for free). This way you don't need to repeat yourself. Also, -unix-opts doesn't depend on anything and allows to precisely control -behavior of the parser via Common Lisp restarts.

    GitHub repository: https://github.com/libre-man/unix-opts

    You can install it via Quicklisp:

    (ql:quickload "unix-opts") -

    Here is an example how to define some command line options with -unix-opts:

    (opts:define-opts - (:name :output - :description "redirect output to file FILE" - :short #\o - :long "output" - :arg-parser #'identity - :meta-var "FILE") - (:name :level - :description "the program will run on LEVEL level" - :short #\l - :long "level" - :arg-parser #'parse-integer - :meta-var "LEVEL") - (:name :verbose - :description "verbose output" - :short #\v - :long "verbose") - (:name :help - :description "print this help text" - :short #\h - :long "help"))

    See it in action (full - source code of the example):

    $ sh example.sh --help
    -example - program to demonstrate unix-opts library
    -
    -Available options:
    -  -h, --help                 print this help text
    -  -v, --verbose              verbose output
    -  -l, --level LEVEL          the program will run on LEVEL level
    -  -o, --output FILE          redirect output to file FILE
    -so that's how it works...
    -
    -free args:
    -$ sh example.sh -v file1.txt file2.txt
    -OK, running in verbose mode...
    -free args: file1.txt, file2.txt
    -$ sh example.sh --level 10 --output foo.txt bar.txt
    -I see you've supplied level option, you want 10 level!
    -I see you want to output the stuff to "foo.txt"!
    -free args: bar.txt
    -$ sh example.sh --level kitty foo.txt
    -fatal: cannot parse "kitty" as argument of "--level"
    -free args:
    -$ sh example.sh --hoola-boola noola.txt
    -warning: "--hoola-boola" option is unknown!
    -free args: noola.txt
    -$ sh example.sh -vgl=10
    -warning: "-g" option is unknown!
    -OK, running in verbose mode...
    -I see you've supplied level option, you want 10 level!
    -free args:
    -

    unix-opts was written by Mark Karpov and is maintained by libre-man.

    It's distributed under MIT-license.


    Relevant topics: library, console, system programming -command-line options parser

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/unix.html b/clones/lisp/www.cliki.net/unix.html deleted file mode 100644 index 7c1ecf00..00000000 --- a/clones/lisp/www.cliki.net/unix.html +++ /dev/null @@ -1,168 +0,0 @@ - - - - - CLiki: Unix - - - - - - - -
    Unix
    Pages on CLiki that may help with closer integration of CL and Unix :

    You can make your .lisp files directly executable on Unix with CLISP, ECL, GCL, or SBCL. See the Unix shell scripting page for more information. See also wrapper script instructions in case you are using CMUCL.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/uri-template.html b/clones/lisp/www.cliki.net/uri-template.html deleted file mode 100644 index 9a67ed88..00000000 --- a/clones/lisp/www.cliki.net/uri-template.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - CLiki: uri-template - - - - - - - -
    uri-template
    uri-template is an implementation of the URI Template proposed standard draft version 01 as a -reader macro, used for both creating and parsing URIs.

    Although uri-template does not implement the operators introduced in the 02 and later drafts of the URI Template standard, it does allow arbitrary Lisp expressions in template placeholders, which gives simpler and more powerful templates.

    Examples use:

    Template interpolation:

    (let ((foo 1)) - https://www.example.com/widget/{foo}/parts)

    => "https://www.example.com/widget/1/parts"

    Template destructuring:

    (uri-template-bind (#Uhttps://www.example.com/{part}/{number}) - "https://www.example.com/widget/1" - (list part (parse-integer number) %uri-host))

    => ("widget" 1 "www.example.com")

    License: LGPL-3.0-or-later

    Homepage: https://common-lisp.net/project/uri-template/

    Source repository: https://gitlab.common-lisp.net/uri-template/uri-template.git

    Mailing list: uri-template-devel@common-lisp.net

    Author: Vladimir Sedach

    Related projects: puri (URI parsing and representation) cl-uri-templates (fork of uri-template supporting operators)

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/url-rewrite.html b/clones/lisp/www.cliki.net/url-rewrite.html deleted file mode 100644 index f8d0943c..00000000 --- a/clones/lisp/www.cliki.net/url-rewrite.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: url-rewrite - - - - - - - -
    url-rewrite
    URL-REWRITE programmatically rewrites (X)HTML documents such that certain attributes values are replaced by others. It was originally written to rewrite URLs for cookie-less session handling.

    This one's by Edi Weitz and can be found at http://weitz.de/url-rewrite/.


    -HTML parser
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/userial.html b/clones/lisp/www.cliki.net/userial.html deleted file mode 100644 index 3e7ef29a..00000000 --- a/clones/lisp/www.cliki.net/userial.html +++ /dev/null @@ -1,85 +0,0 @@ - - - - - CLiki: userial - - - - - - - -
    userial
    A Common Lisp library for serializing to binary buffers. This library is the serialization layer for the forthcoming unet library.

    Homepage: http://nklein.com/software/unet/userial/

    This library is by Patrick Stein.

    Here is a simple example of serializing into a buffer: -

    -(make-enum-serializer :opcode (:login :run :jump :logout))
    -(make-bitfield-serializer :login-flags (:hidden :stay-logged-in))
    -
    -(serialize* :opcode :login
    -            :uint32 sequence-number
    -            :login-flags (:hidden)
    -            :string login-name
    -            :string password)
    -

    Here are several easy ways to unserialize the contents: -

    -(let (opcode sequence-number flags login-name password)
    -  (unserialize* :opcode opcode
    -                :uint32 sequence-number
    -                :login-flags flags
    -                :string login-name
    -                :string password)
    -  ...)
    -  
    -(unserialize-let* (:opcode opcode
    -                   :uint32 sequence-number
    -                   :login-flags flags
    -                   :string login-name
    -                   :string password)
    -  ...)
    -
    -(let ((parts (unserialize-list* '(:opcode 
    -                                  :uint32
    -                                  :login-flags
    -                                  :string
    -                                  :string))))
    -  ...)
    -

    For more examples, see the web page or the included test cases.


    -wire format serialization
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/usocket-udp.html b/clones/lisp/www.cliki.net/usocket-udp.html deleted file mode 100644 index 95c386b8..00000000 --- a/clones/lisp/www.cliki.net/usocket-udp.html +++ /dev/null @@ -1,79 +0,0 @@ - - - - - CLiki: Usocket-UDP - - - - - - - -
    Usocket-UDP
    UDP networking patch for USOCKET.

    NOTE: USOCKET 0.5.0 has merged almost all code in USOCKET-UDP except the "Reliable UDP" part.

    Start from release 1.3 (2008-7-23), we support portable UDP server.

    Current supported platforms

      -
    • -LispWorks (depends on LispWorks-UDP by the same author) -
    • -
    • -CMUCL -
    • -
    • -SBCL -
    • -
    • -Clozure CL (aka OpenMCL) -
    • -
    • Allegro CL (start from usocket-udp 1.1) -
    • -
    • Scieneer CL (start from usocket-udp 2.3, need a udp-patch from SCL maintainer) -
    • -
    -

    Release

    Last release of USOCKET-UDP is 2.6 (usocket-udp_2.6.tar.gz) on Sep 24, 2010.

    API

    -socket-connect/udp (host port &key stream element-type local-address local-port)
    -
    -socket-send ((socket datagram-usocket) buffer length &key address port)
    -
    -socket-receive ((socket datagram-usocket) buffer length &key)
    -
    -socket-server (host port function &optional arguments
    -                          &key (element-type '(unsigned-byte 8))
    -                                    (timeout 1) (max-buffer-size 65536))
    -

    Contact Chun Tian (binghe) if you need any help on this package.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/usocket.html b/clones/lisp/www.cliki.net/usocket.html deleted file mode 100644 index 08e4a57e..00000000 --- a/clones/lisp/www.cliki.net/usocket.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: usocket - - - - - - - -
    usocket
    USOCKET is a networking portability layer for BSD-style sockets.

    Homepage: http://common-lisp.net/project/usocket

    License: MIT

    USOCKET currently supports 10 CL implementations: ABCL, ACL, ECL, CLISP, CMUCL, LispWorks, MCL, CCL, SBCL, and SCL.

    See also: IOlib, another view point for portable networking library in Common Lisp.


    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/utilities.html b/clones/lisp/www.cliki.net/utilities.html deleted file mode 100644 index 928a02f3..00000000 --- a/clones/lisp/www.cliki.net/utilities.html +++ /dev/null @@ -1,236 +0,0 @@ - - - - - CLiki: Utilities - - - - - - - -
    Utilities
    Everyone write their own! See also convenience library.

    No, seriously, don't write your own. The above list is comical. Nobody needs another "utility library" dependency.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/utm.html b/clones/lisp/www.cliki.net/utm.html deleted file mode 100644 index b27fc2c4..00000000 --- a/clones/lisp/www.cliki.net/utm.html +++ /dev/null @@ -1,83 +0,0 @@ - - - - - CLiki: utm - - - - - - - -
    utm
    utm is a geospatial library for converting latitude and longitude into UTM coordinates and vice-versa.

    License: ISC

    Usage example:

    -* (ql:quickload 'utm) -To load "utm": - Load 1 ASDF system: - utm -; Loading "utm" -(UTM) - -* (utm:lat-lon-to-utm 39.264657358 -105.396267073) -465814.36361674307d0 -4346221.50650324d0 -13 - -* (utm:utm-to-lat-lon 465814.36361674307d0 4346221.50650324d0 13) -39.264654456410966d0 --105.39627074290249d0 - -* (utm:lat-lon-to-utm 39.264657358 -105.396267073 :ellipsoid "WGS72") -465814.3743203891d0 -4346220.137838842d0 -13 - -* (utm:utm-to-lat-lon 465814.3743203891d0 4346220.137838842d0 13 :ellipsoid "WGS72") -39.26465442463012d0 --105.39627074272353d0 - -* (utm:ellipsoid-names) -("NAD83" "WGS84" "GRS80" "WGS72" "Australian1965" "Krasovsky1940" - "International1924" "Hayford1909" "Clake1880" "Clarke1866" "Airy1830" - "Bessel1841" "Everest1830") - -* -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/uuid.html b/clones/lisp/www.cliki.net/uuid.html deleted file mode 100644 index 01995f5d..00000000 --- a/clones/lisp/www.cliki.net/uuid.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: uuid - - - - - - - -
    uuid
    A library for generation of universally unique identifiers (UUIDs) as described by RFC 4122. UUID provides methods for the generation of uuids version 1 (time based), 3 (name based with MD5 hashing), 5 (name based with SHA1 hashing) and 4 (random uuids).

    Project page at https://github.com/dardoria/uuid

    License: LLGPL


    -Networking
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/validation.html b/clones/lisp/www.cliki.net/validation.html deleted file mode 100644 index 14ff736a..00000000 --- a/clones/lisp/www.cliki.net/validation.html +++ /dev/null @@ -1,64 +0,0 @@ - - - - - CLiki: validation - - - - - - - -
    validation
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/vana-inflector.html b/clones/lisp/www.cliki.net/vana-inflector.html deleted file mode 100644 index 99befd7d..00000000 --- a/clones/lisp/www.cliki.net/vana-inflector.html +++ /dev/null @@ -1,72 +0,0 @@ - - - - - CLiki: vana-inflector - - - - - - - -
    vana-inflector
    A common lisp library to easily pluralize and singularize English words.

    Usage

    Example Usage:

    > (use-package :vana-inflector) -> (let ((dollars 1.7) - (users 34) - (purchases 1)) - (format nil "The site has ~D ~A, with a total of ~D ~A and $~D ~A" - users (pluralize users "user") - purchases (pluralize purchases "purchase") - dollars (pluralize dollars "dollar"))) -"The site has 34 users, with a total of 1 purchase and $1.7 dollars"

    Basic Usage, plural-of and singular-of:

    > (plural-of "octopus") -"octopuses" -> (plural-of "datum") -"data" -> (singular-of "children") -"child" -> (singular-of "cats") -"cat" -> (singular-of "data") -"datum"

    Basic Usage, pluralize:

    > (pluralize 2 "virus") -"viri" -> (pluralize 1 "virus") -"virus"

    vana-inflector CL source code.


    -Topics: Text
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/vas-string-metrics.html b/clones/lisp/www.cliki.net/vas-string-metrics.html deleted file mode 100644 index 675c7ba9..00000000 --- a/clones/lisp/www.cliki.net/vas-string-metrics.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: vas-string-metrics - - - - - - - -
    vas-string-metrics
    vas-string-metrics provides the Jaro, Jaro-Winkler, Soerensen-Dice, Levenshtein, and normalized Levenshtein string distance/similarity metrics algorithms for text analysis.

    Homepage: https://github.com/vsedach/vas-string-metrics

    License: LLGPL

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/vcr.html b/clones/lisp/www.cliki.net/vcr.html deleted file mode 100644 index 50c62d99..00000000 --- a/clones/lisp/www.cliki.net/vcr.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: vcr - - - - - - - -
    vcr
    vcr is made to store (cache) and replay results of http calls for easier testing of external services.

    Example:

    (with-vcr "my-super-awesome-tape-name" - (drakma:http-request "http://example.com"))


    -MIT-LICENSE
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/vcs-tree.html b/clones/lisp/www.cliki.net/vcs-tree.html deleted file mode 100644 index 46c2c672..00000000 --- a/clones/lisp/www.cliki.net/vcs-tree.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: vcs-tree - - - - - - - -
    vcs-tree
    vcs-tree is a shell utility that walks through a directory tree and performs actions on Version Control System managed directories. Currently, Subversion and CVS are supported. vcs-tree uses the getopt library to process the command-line arguments.

    As packaged, vcs-tree uses sbcl's sb-executable module to create a binary executable file for unix systems.

    Repository: http://git.kpe.io/?p=vcs-tree.git;a=summary

    Download (zip/tar): http://files.kpe.io/vcs-tree/

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/vecto.html b/clones/lisp/www.cliki.net/vecto.html deleted file mode 100644 index 60d4bd72..00000000 --- a/clones/lisp/www.cliki.net/vecto.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: Vecto - - - - - - - -
    Vecto
    Vecto is a graphics library that uses cl-vectors and Salza to draw vector graphics to PNG files.

    It is available under a BSD-like license.

    Full documentation is available on the Vecto web site.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/version control.html b/clones/lisp/www.cliki.net/version control.html deleted file mode 100644 index 5b909333..00000000 --- a/clones/lisp/www.cliki.net/version control.html +++ /dev/null @@ -1,80 +0,0 @@ - - - - - CLiki: version control - - - - - - - -
    version control
    Anything related to version/source control (CVS, SVN, git, etc.)

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/versioned-objects.html b/clones/lisp/www.cliki.net/versioned-objects.html deleted file mode 100644 index b5bb6965..00000000 --- a/clones/lisp/www.cliki.net/versioned-objects.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: versioned-objects - - - - - - - -
    versioned-objects
    For any Common Lisp mutable object, allows to store versioning tree of all of the edits connecting its various versions.

    Objects are created normally and converted to versioned objects using the function version.

    Homepage: GitHub

    License: BSD

    See Also: modf

    Topics: data structure

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/vgplot.html b/clones/lisp/www.cliki.net/vgplot.html deleted file mode 100644 index cbd22dc4..00000000 --- a/clones/lisp/www.cliki.net/vgplot.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: vgplot - - - - - - - -
    vgplot
    vgplot is an interface to the gnuplot plotting library with the intention to resemble to some of the plot commands of octave or matlab.

    (asdf:load-system :vgplot)
    or -
    (ql:quickload :vgplot)

    (vgplot:plot '(1 2 3) '(0 -2 17))

    For examples run the demo function:

    (vgplot:demo)

    and see API documentation: https://quickref.common-lisp.net/vgplot.html

    License: GPL Copyright (C) 2013 - 2015 Volker Sarodnick

    Source: https://github.com/volkers/vgplot/

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/vial.html b/clones/lisp/www.cliki.net/vial.html deleted file mode 100644 index 6c811252..00000000 --- a/clones/lisp/www.cliki.net/vial.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: vial - - - - - - - -
    vial
    Vim-like editor written in Common Lisp.

    Depends on: cffi, cl-fad, cl-ppcre, trees, usocket

    Repository: https://gitlab.common-lisp.net/vial/vial

    License: zlib


    -console
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/videoVertov.html b/clones/lisp/www.cliki.net/videoVertov.html deleted file mode 100644 index 4de7bb32..00000000 --- a/clones/lisp/www.cliki.net/videoVertov.html +++ /dev/null @@ -1,63 +0,0 @@ - - - - - CLiki: videoVertov - - - - - - - -
    videoVertov

    projects of Kevin Griffin

    Reading Graham's Book- ANSI Common LISP - learning about elisp & emacs.

    -I hope to be a Person, someday . - -Currently listening to Gesualdo, an early Italian composer who, according to Harold Helton at Whatcom Community College, was one of Europe's first cocaine addicts, an asassin, and a teacher of asassins. - The music is, IMHO, hauntingly beautiful. Somehow, that fact is almost a byproduct of the other facts. Don't ask me how that works, I don't know. -


    - Started working with nxml mode. - I'd like to do some documentation of V. L. Simpson's Screenplay mode. I should have some more time in a couple of weeks(today: 27 Oct. 2003) -
    - Update: Thu Jan 12 08:24:24 PST 2006 - I might acutally be a Person. I post a few notes at http://casa.cavewallarts.com/lisp/. -I can be reached by email (My-first-name) @ cavewallarts.com .

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/vim.html b/clones/lisp/www.cliki.net/vim.html deleted file mode 100644 index 10c19fea..00000000 --- a/clones/lisp/www.cliki.net/vim.html +++ /dev/null @@ -1,75 +0,0 @@ - - - - - CLiki: vim - - - - - - - -
    vim
    The Vi family of editors (with vim probably being the most frequently used implementation) is almost universally "the other editor" to Emacs. In the Lisp community, however, its use seems rather suppressed due to Emacs's tight connection with Lisp.

    Still, there are some vim lispers out there. This page should point them to some ways to make life easier.

    Currently the best solution is Slimv by Tamas Kovacs, which attempts to do for Vim what SLIME does for Emacs, including a built in REPL, hyperspec lookup and completion, paredit mode, etc. It is implemented as a filetype plugin and relatively easy to get started with.

    Out of the box, [D and [d should work (find definition/jump to definition), as well as [I and [i, but only in the open bufffers.

    Some suggestions to vim settings (partly based on articles below). Stuff them to ~/.vim/ftplugin/lisp.vim, and be sure to have :filetype plugin on. -

    -setlocal lisp autoindent showmatch cpoptions-=mp
    -
    -" Possible folding method
    -setlocal foldmethod=marker foldmarker=(,) foldminlines=1
    -
    -" This allows gf and :find to work. Fix path to your needs
    -setlocal suffixesadd=.lisp,cl path=/usr/src/lisp/**
    -
    -" This allows [d [i [D [I work across files if you have asdf buffer present.
    -" If I used load, it would be there too.
    -setlocal include=(:file\
    -
    -Exuberant Ctags (comes with Vim) works quite well with Lisp.

    Deprecated Tools

    Limp by Mikael Jansson used to be the plugin of choice, but is no longer maintained. It uses scripting and GNU screen to integrate a Lisp session and vim/gvim, and is still useful if Slimv doesn't work for you and you can look past a few quirks.

    Another recent and noble attempt at getting Vim to talk to slime was -slim-vim, - which used a vim compiled with ECL to talk to SWANK, just like SLIME. It has now been abandoned.

    Previous efforts also include Using vi with Lisp text and VILisp.vim utility. There is also fvl.vim.

    Other things to describe/do: -

      -
    • Fix system to recognize asdf files as lisp file (either change filetype.vim, or add autocommands to your vimrc file) -
    • -
    • How make CLHS into file to be used as jump tags (attempt at hypertags.py in the Limp repos). -
    • -
    -
    -Categories: development
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/vindarel.html b/clones/lisp/www.cliki.net/vindarel.html deleted file mode 100644 index 36131992..00000000 --- a/clones/lisp/www.cliki.net/vindarel.html +++ /dev/null @@ -1,57 +0,0 @@ - - - - - CLiki: vindarel - - - - - - - -
    vindarel
    I am a full-stack developer, a Pythonista turned Lisper, currently self-employed and I use CL apps in production. Scripts that run hunder the hood (connect to FTP servers, download and parse XML, provide a database) as well as web apps. Learning CL was not a smooth sailing, so I decided to make it easier for my future self. I contributed and continue to contribute tutorials on the Common Lisp Cookbook, I furnish the awesome-cl list, I write on my blog (https://lisp-journey.gitlab.io/) and, last but not least, I created and still work on a Common Lisp course in video which is to me, so far, the easiest and fastest way to learn Common Lisp today. You can view the full table of content there as well as on its GitHub repository. The course is on the Udemy platform, so under a paywall (the introductory videos of each chapter are in the open). Thank you for your support!

    You can see my projects on GitHub and Gitlab.

    I have a handful of videos on Youtube:

      -
    • How to create a new Common Lisp project, featuring my project skeleton: create an .asd file, a project structure with tests, the recipe to run the project from sources or to build a binary, an optional Roswell setup, and more.
    • -
    • How to call a REST API in Common Lisp, in that case the GitHub API: HTTP requests with Dexador, parsing JSON, etc.
    • -
    • -
        Interactively fixing unit tests, to showcase the interactive debugger and the ability to resume computations (or at least, intent. That was my first video made in a hurry some time ago).
      -
    • -

    Current goals: write about and work on web development in Common Lisp.

    Mastodon and Twitter: @vindarel.

    person

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/visualization.html b/clones/lisp/www.cliki.net/visualization.html deleted file mode 100644 index 26b5bc7b..00000000 --- a/clones/lisp/www.cliki.net/visualization.html +++ /dev/null @@ -1,68 +0,0 @@ - - - - - CLiki: visualization - - - - - - - -
    visualization
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/vom.html b/clones/lisp/www.cliki.net/vom.html deleted file mode 100644 index 8659c27c..00000000 --- a/clones/lisp/www.cliki.net/vom.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: vom - - - - - - - -
    vom
    A tiny logging library for Common Lisp.

    Vom is a logging library for lisp. It's goal is to be useful and small. It does not provide a lot of features as other loggers do, but has a small codebase that's easy to understand and use.

    https://github.com/orthecreedence/vom

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/vp-trees.html b/clones/lisp/www.cliki.net/vp-trees.html deleted file mode 100644 index 6bcb2ec6..00000000 --- a/clones/lisp/www.cliki.net/vp-trees.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: vp-trees - - - - - - - -
    vp-trees
    vp-trees is an implementation of the vantage point tree data structure in Common Lisp. It allows to perform fast (O(log N) in the best case) fixed-radius near neighbors searches in some set of a metric space.


    -BSD license
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/vseloved-date-utils.html b/clones/lisp/www.cliki.net/vseloved-date-utils.html deleted file mode 100644 index 8e330dd9..00000000 --- a/clones/lisp/www.cliki.net/vseloved-date-utils.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: vseloved-date-utils - - - - - - - -
    vseloved-date-utils
    date-utils is a library for handling dates in a PLIST format, like (:year 2009 :day 1 :month 3). Includes support for English, German and Russian names. Also provides a couple of utility time functions.

    Homepage: https://github.com/vseloved/date-utils

    License: MIT

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/wcp-termcap.html b/clones/lisp/www.cliki.net/wcp-termcap.html deleted file mode 100644 index 4e44e999..00000000 --- a/clones/lisp/www.cliki.net/wcp-termcap.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: wcp-termcap - - - - - - - -
    wcp-termcap
    wcp-termcap is a library to parse Unix termcap (terminal capability) files.

    Homepage: http://wcp.sdf-eu.org/software/

    Source code: http://wcp.sdf-eu.org/software/termcap.lisp

    License: GPL


    -Topics: console
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/web API.html b/clones/lisp/www.cliki.net/web API.html deleted file mode 100644 index c859c40c..00000000 --- a/clones/lisp/www.cliki.net/web API.html +++ /dev/null @@ -1,260 +0,0 @@ - - - - - CLiki: web API - - - - - - - -
    web API
    Common Lisp wrapper for web API

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/web api.html b/clones/lisp/www.cliki.net/web api.html deleted file mode 100644 index c859c40c..00000000 --- a/clones/lisp/www.cliki.net/web api.html +++ /dev/null @@ -1,260 +0,0 @@ - - - - - CLiki: web API - - - - - - - -
    web API
    Common Lisp wrapper for web API

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/web framework.html b/clones/lisp/www.cliki.net/web framework.html deleted file mode 100644 index 295904b6..00000000 --- a/clones/lisp/www.cliki.net/web framework.html +++ /dev/null @@ -1,188 +0,0 @@ - - - - - CLiki: web framework - - - - - - - -
    web framework
    Web frameworks purport to make it easier to develop web applications.

    User beware: these claims are not always substantiated, and some of the frameworks in this list are poorly maintained and/or documented.

    Since Lisp makes it trivial to do so, you can just grab an HTTP server, HTML generator or HTML template library, a database (see the list of Current recommended libraries) and just write your web application already.

    See webframeworkmatrix for a tabular comparison of the various currently available frameworks.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/web.html b/clones/lisp/www.cliki.net/web.html deleted file mode 100644 index 91e453db..00000000 --- a/clones/lisp/www.cliki.net/web.html +++ /dev/null @@ -1,1085 +0,0 @@ - - - - - CLiki: Web - - - - - - - -
    Web
    Web clients, servers, application servers, browsers, etc.

    HTTP servers: (main topic: HTTP server) -

    WebSocket servers: (main topic: WebSocket server) -

    CGI, Apache modules, Java Servlets: (main topic: CGI) -

      -
    • -cl-modlisp - - cl-modlisp is a Web library that implements a Common Lisp interface to Marc Battyani's mod_lisp apache module -
    • -
    • -cl-mongrel2 - - cl-mongrel2 is an interface to the mongrel2 web-server -
    • -
    • -FastCGI - - How to use FastCGI from Common Lisp -
    • -
    • -Le Sursis - - Le Sursis is a Web tool for writing CGI scripts -
    • -
    • -lisp-cgi-utils - - lisp-cgi-utils is a Lisp project for developing web applications using the CGI interface -
    • -
    • -m2cl - - An implementation of the mongrel2 API -
    • -
    • -mod_ecl - - mod_ecl is an apache module to use lisp in the way php is used for website scripting -
    • -
    • -mod_lisp - - mod_lisp is an Apache module to write dynamic web servers and applications -
    • -

    Web development frameworks: (main topic: web framework) see also webframeworkmatrix -

    blogs, wikis, CMS: (main topics: CMS wiki) -

      -
    • -cl-eshop - - cl-eshop is an e-shop/ecommerce site written in Common Lisp -
    • -
    • -CLEWS - - Common Lisp Educational Web Server (CLEWS) is a platform for developing educational web applications, providing systems for peer-review assessments, discussion assessments, adaptive tutorials and course management -
    • -
    • -FastIndex - - FastIndex is a Web server which manages a small online library -
    • -
    -
      -
    • -ALIW - - A Lisp in Wonderland (ALIW) is a wiki software written in Common Lisp, to ease the collaboration on editable web pages -
    • -
    • -CLiki - - CLiki is the Common Lisp wiki, a community resource about various topics pertaining to the Common Lisp programming language, as well as a directory of Free Software Common Lisp libraries, implementations, and applications -
    • -
    • -XL-Wiki - - XL-Wiki is a fork of CL-Wiki that aims to allow applications to modify and extend its functionality in interesting ways -
    • -

    Blog software: (main topic: blog software) -

    Outputting HTML: -

    Parsing HTML: (main topic: HTML parser) -

    See also HTML for other misc HTML tools (character encoding/decoding etc.)

    JavaScript: (main topic: JavaScript) -

    JSON: (main topic: JSON) -

      -
    • -cl-grip - - cl-grip is a high-level logging system for Common Lisp, focusing on a clear user interface, support for flexible structured logging, and easy extensibility for different backends to support direct logging to various inputs -
    • -
    • -cl-json - - cl-json is a JSON parser and generator -
    • -
    • -CLJWT - - A library for issuing and validating JSON Web Tokens -
    • -
    • -HT-AJAX - - HT-AJAX is a small AJAX web framework for Hunchentoot web server that allows transparent calls from Javascript in web pages to the server side Lisp code -
    • -
    • -Jonathan - - Jonathan is a fast JSON encoder/decoder -
    • -
    • -json-streams - - json-streams is a Common Lisp library for reading and writing JSON text -
    • -
    • -json-template - - An implementation of JSON Template in Common Lisp -
    • -
    • -jsown - - A fast JSON parser and generator -
    • -
    • -monkeylib-json - - monkeylib-json is a library for reading and writing JSON -
    • -
    • -st-json - - ST-JSON is a JSON encoding and decoding library -
    • -
    • -YASON - - YASON is a Common Lisp library for encoding and decoding data in the JSON interchange format -
    • -

    Stylesheet utilities: (main topic: CSS) -

      -
    • -cl-css - - cl-css is a minimalist CSS generator for Common Lisp -
    • -
    • -css-lite - - css-lite is a library for generating CSS from an s-exp syntax -
    • -
    • -LASS - - Writing CSS files comes with a lot of repetition and is generally much too verbose -
    • -
    • -rock - - Rock is an asset manager for Common Lisp -
    • -
    • -simple-rgb - - simple-rgb is a library for manipulating RGB and HSV color values -
    • -

    HTTP clients: (main topic: HTTP client) -

    Dealing with URIs: (main topic: URI) -

    Web service API interfaces: (main topic: web API) -

    RSS feeds: (main topic: RSS) -

      -
    • -cl-rss - - This package provides a Common Lisp library for fetching and parsing Remote Site Summary data via HTTP -
    • -
    • -cl-rss-gen - - cl-rss-gen is a tiny Common Lisp library that generates RSS (RDF Site Summary) -
    • -
    • -RSSParser - - A Web-to-RSS parser in Common Lisp -
    • -
    • -trivial-feed - - Parse syndication feeds such as RSS and ATOM to a canonical form -
    • -
    • -xml-emitter - - Often, programs have to generate XML output -
    • -

    Semantic Web: (main topic: Semantic Web) -

    WebDAV: -

    Testing: -

    Debugging: -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/web4r.html b/clones/lisp/www.cliki.net/web4r.html deleted file mode 100644 index 9e7d0fb8..00000000 --- a/clones/lisp/www.cliki.net/web4r.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: web4r - - - - - - - -
    web4r
    A continuations-based web framework aimed to enable users to develop web applications with the shortest amount of code.

    Repository: https://github.com/tomoyuki28jp/web4r

    License: BSD

    Status: not actively developed

    Evaluation, 20100901

    A very brief assessment of all web frameworks listed in cliki was carried out in September 2010. This assessment comprised: check websites, download source if available, attempt to compile, review documentation.

    The review found that web4r had good documentation, examples that work; it was judged to be worth evaluating further.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/webactions.html b/clones/lisp/www.cliki.net/webactions.html deleted file mode 100644 index 0fe2b79f..00000000 --- a/clones/lisp/www.cliki.net/webactions.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - CLiki: webactions - - - - - - - -
    webactions
    webactions is an open source package from Franz. -It's part of their AllegroServe package, you can get it from -the Debian servers with

    -apt-get install cl-webactions
    -

    I don't know how you get it in other distributions.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/webframeworkmatrix.html b/clones/lisp/www.cliki.net/webframeworkmatrix.html deleted file mode 100644 index 3c45b9a7..00000000 --- a/clones/lisp/www.cliki.net/webframeworkmatrix.html +++ /dev/null @@ -1,203 +0,0 @@ - - - - - CLiki: webframeworkmatrix - - - - - - - -
    webframeworkmatrix
    The purpose of this page is to build list of the existing web frameworks for the production and deployment of Lisp web applications.

    Specialized libraries or website dedicated APIs should be listed in Web and not here. Frameworks considered deprecated (without any support or updates for a while and consequently out of date) should not be referred to here (or in a separate table).

    PS : Data on this page may not be up to date, please refer to the date of the last edition especially regarding the "Last update" of each framework.

    - - - - - - - - - - - - - - - - - - - - - - - - - - -

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -
    NameDocumentationAuthorLast updateMaturityHTMLXMLCSSXHTMLAJAXRSSPDFCookiesSSLOpenIDSessions vs ContinuationsDatabase abstractionGUI or conception toolsREPL* -Dependencies* -Compatible implementations* -LicensePricePerformances benchmarksWebsites using it
    -dwim.hu (once called cl-dwim)Not much. The authors believe that libraries meant for programmers should be implemented in a such a clear fashion that only a bird's view documentation is needed and a large body of unit tests and examples. -Attila Lendvai Levente Mészáros -2010 NovemberRuns openly available (but login protected) applications on the net developed for two ministries of the Hungarian government. About 5000 users, 500 concurrent users at peak time.yesyes?yesyesyes, through cl-pdfyesonce IOlib gets the extensionsupports sessions, continuations are optionalpluggable, hu.dwim.perec is integratedsupports a component based UI model that gets rendered into XHTML+JavaScript with AJAX support50+ libraries; install script is providedTested only on SBCL. Should be 99% CL standard compliant, but requires full CLOS MOP support.BSDfreeIn the ballpark of 3000 req/sec of a dynamically generated html page rendering back a properly (un)escaped request parameter. On a 2GHz dual core laptop, running both the tester and the framework, loading the codebase in production mode with debugging level set to warnings and above. As of this writing the codebase is limited to a one worker thread per request operation, which limits the number of live concurrent (slow) connections to the number of threads (about 50-100). -
    -(def special-variable *performance-application* (make-instance 'standard-application :path-prefix "/performance/"))

    (def entry-point (*performance-application* :path "") - (with-request-parameters (name) - (make-functional-html-response () - (emit-html-document () - ❬h3 ,(or name "The name query parameter is not specified!")❭))))

    $ siege --time=10s --concurrent=10 --benchmark http://localhost.localdomain:8080/performance/?name=foo_b%C3%A1r -** SIEGE 2.69 -** Preparing 10 concurrent users for battle. -The server is now under siege... -Lifting the server siege... done. -Transactions: 27214 hits -Availability: 100.00 % -Elapsed time: 9.22 secs -Data transferred: 8.46 MB -Response time: 0.00 secs -Transaction rate: 2951.63 trans/sec -Throughput: 0.92 MB/sec -Concurrency: 9.94 -Successful transactions: 27214 -Failed transactions: 0 -Longest transaction: 0.30 -Shortest transaction: 0.00 -

    -
    -dwim.hu and other commercial projects
    lisp-cgi-utils
    UCW
    Hunchentoot
    CL-Weblocks
    KPAX
    cl-terrace
    AllegroServe
    SymbolicWebVery littleLars Rune NøstdalAutumn 2008BetaYes, and "Comet"NoNoYesNoSessions; history is done using a client side URL hashNoNo, but 100% transparent templating is possible via the ID attribute; use any WYSIWYG editorYes (server side; in Slime via the Comet channel)ClojureAGPL with a GPL linking exceptionFree
    Core ServerAlmost Complete (http://labs.core.gen.tr)Evrim Ulu evrim@core.gen.tr, Aycan Irican aycan@core.gen.trFall 2008StableYesYesYesYesYesYesNoYesvia Apache/LighttpNoYes/Arnesi CPSYes/Prevalence,defclass+ preserving relationsSBCL OnlyGPLv3
    ...

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/weblocks-stores.html b/clones/lisp/www.cliki.net/weblocks-stores.html deleted file mode 100644 index 97502e74..00000000 --- a/clones/lisp/www.cliki.net/weblocks-stores.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: weblocks-stores - - - - - - - -
    weblocks-stores
    weblocks-stores: Single api for few stores (cl-prevalence, CLSQL, Elephant, postmodern, custom memory store).

    Weblocks Stores is a library separated from Weblocks framework. -It provides single api for different stores. -See some Weblocks example web apps to see how it works.


    -database ObjectStore
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/websocket-driver.html b/clones/lisp/www.cliki.net/websocket-driver.html deleted file mode 100644 index 22606a1f..00000000 --- a/clones/lisp/www.cliki.net/websocket-driver.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: websocket-driver - - - - - - - -
    websocket-driver
    websocket-driver is a WebSocket server/client implementation for Common Lisp.

    Its server-side is base on Clack, client-side is base on cl-async

    Categories: Web, WebSocket server

    Author: fukamachi

    Source repository: https://github.com/fukamachi/websocket-driver

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/weirdo.html b/clones/lisp/www.cliki.net/weirdo.html deleted file mode 100644 index 4252dcce..00000000 --- a/clones/lisp/www.cliki.net/weirdo.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: weirdo - - - - - - - -
    weirdo
    Dan: please remove this page and all references to it.

    Uh, why? Rahul links to it, appropriately enough =P --mrd -

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/which.html b/clones/lisp/www.cliki.net/which.html deleted file mode 100644 index b41bfc75..00000000 --- a/clones/lisp/www.cliki.net/which.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: which - - - - - - - -
    which
    The which UNIX command in Common Lisp.

    Depends on: path-parse, cl-fad, uiop

    Repository: https://github.com/eudoxia0/which

    License: MIT

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/wiki.html b/clones/lisp/www.cliki.net/wiki.html deleted file mode 100644 index bd1d05f2..00000000 --- a/clones/lisp/www.cliki.net/wiki.html +++ /dev/null @@ -1,65 +0,0 @@ - - - - - CLiki: Wiki - - - - - - - -
    Wiki
    "Wiki" is a class of collaborative hypertext authoring systems. Inspired by Ward Cunningham's WikiWikiWeb, many wiki sites and software systems now exist in a variety of languages.

    There are several wiki systems that have been built in Common Lisp: -

      -
    • -ALIW - - A Lisp in Wonderland (ALIW) is a wiki software written in Common Lisp, to ease the collaboration on editable web pages -
    • -
    • -CLiki - - CLiki is the Common Lisp wiki, a community resource about various topics pertaining to the Common Lisp programming language, as well as a directory of Free Software Common Lisp libraries, implementations, and applications -
    • -
    • -XL-Wiki - - XL-Wiki is a fork of CL-Wiki that aims to allow applications to modify and extend its functionality in interesting ways -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/win32.html b/clones/lisp/www.cliki.net/win32.html deleted file mode 100644 index c9169bfd..00000000 --- a/clones/lisp/www.cliki.net/win32.html +++ /dev/null @@ -1,53 +0,0 @@ - - - - - CLiki: Win32 - - - - - - - -
    Win32
    win32 is a library containing a set of CFFI bindings and constant definitions for interacting with the Win32 API. This means it's a practically non-existent layer on top of the API, and has little to no utility other than exposing the raw interface.

    Doors is a lisper's gateway to Windows. It aims to cover only essential -features of that operating system, such as basic WinAPI, COM and OLE.

    cl-win32ole is a Windows OLE Library like Ruby's win32ole. -cl-win32ole works with SBCL and CLISP and possibly any lisp supported by cffi and trivial-garbage.

    Graphic-Forms is a user interface library implemented in Common Lisp focusing on the Windows(R) platform. Graphic-Forms is licensed under the terms of the BSD License.

    Corman Lisp is a Common Lisp implementation written for Windows and having good integration with WinAPI and COM.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/window manager.html b/clones/lisp/www.cliki.net/window manager.html deleted file mode 100644 index 4086b322..00000000 --- a/clones/lisp/www.cliki.net/window manager.html +++ /dev/null @@ -1,72 +0,0 @@ - - - - - CLiki: Window Manager - - - - - - - -
    Window Manager
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/windows.html b/clones/lisp/www.cliki.net/windows.html deleted file mode 100644 index 0f7e8cf3..00000000 --- a/clones/lisp/www.cliki.net/windows.html +++ /dev/null @@ -1,128 +0,0 @@ - - - - - CLiki: Windows - - - - - - - -
    Windows
    CLiki pages about Common Lisp software on Microsoft Windows:

      -
    • -abcl-jazz - - Code examples on to call the Java Swing API under ABCL to program GUIs -
    • -
    • -Allegro NFS Server - - Allegro NFS Server for Microsoft Windows, written in Common Lisp -
    • -
    • -Cerberus - - This is an implementation of the Kerberos v5 authentication protocol in Common Lisp -
    • -
    • -cl-sap - - SimpleAudioPlayer is a simple audio player library for windows which utilizes DirectShow -
    • -
    • -cl-win32ole - - Common Lisp OLE like Ruby's win32ole -
    • -
    • -Corman Common Lisp - - Corman Lisp is a Common Lisp development environment for Microsoft Windows operating systems running on Intel platforms -
    • -
    • -doors - - Doors is an attempt to bring essential features of MS Windows (such as basic Windows API, COM and OLE) into Common Lisp -
    • -
    • -FTW - - FTW is a Common Lisp Win32 GUI library -
    • -
    • -Graphic-Forms - - Graphic Forms is a Windows GUI library using the Win32 API -
    • -
    • -lisp-xl - - Common Lisp Microsoft XLSX (Microsoft Excel) loader for arbitrarily-sized / big-size files -
    • -
    • -LispIDE - - LispIDE is a basic graphical shell for several Lisp implementations available for Windows -
    • -
    • -Lispix - - Lispix is a public domain image analysis application for Windows, written and maintained by David Bright at NIST -
    • -
    • -lispx-proxy - - lispx-proxy (Lisp Execution Proxy) is a Lisp application launcher for Windows (A *nix port with limited functionality is also available) -
    • -
    • -plain-odbc - - Plain-odbc is a simple, yet powerful Common Lisp ODBC interface -
    • -
    • -PowerShell - - An experiment in sending tasks to PowerShell from CL -
    • -
    • -trivial-clipboard - - trivial-clipboard provides access to the system clipboard -
    • -
    • -USN Journal - - The USN Journal keeps track of changes made to files and directories on an NTFS volume -
    • -
    • -Win32 - - win32 is a library containing a set of CFFI bindings and constant definitions for interacting with the Win32 API -
    • -
    • -winhttp - - CFFI bindings to WinHTTP -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/winhttp.html b/clones/lisp/www.cliki.net/winhttp.html deleted file mode 100644 index 1caeabd5..00000000 --- a/clones/lisp/www.cliki.net/winhttp.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: winhttp - - - - - - - -
    winhttp
    CFFI bindings to WinHTTP. Provides a native HTTP client for Common Lisp under Windows.

    Repository: https://github.com/fjames86/winhttp

    License: MIT


    -FFI
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/wire format.html b/clones/lisp/www.cliki.net/wire format.html deleted file mode 100644 index c433ff5d..00000000 --- a/clones/lisp/www.cliki.net/wire format.html +++ /dev/null @@ -1,84 +0,0 @@ - - - - - CLiki: wire format - - - - - - - -
    wire format
    See also networking and data formats.

      -
    • -ASN.1 - - Abstract Syntax Notation #1, the Common Lisp implementation and language mapping -
    • -
    • -cl-marshal - - Simple and fast marshalling of all kinds of Lisp data structures -
    • -
    • -cl-protobufs - - CL-PROTOBUFS is a library to use Google Protocol Buffers in Common Lisp, originally written by Scott McKay at ITA by Google -
    • -
    • -cl-stomp - - cl-stomp is an implementation of STOMP (Streaming Text Orientated Messaging Protocol) -
    • -
    • -de.setf.thrift - - de.setf.thrift is a binding for the Apache Thrift framework for scalable cross-language services development -
    • -
    • -S-PROTOBUF - - S-PROTOBUF is a library to encode data in the Google Protocol Buffers wire format -
    • -
    • -Swank - - Swank is distributed as part of SLIME -
    • -
    • -userial - - A Common Lisp library for serializing to binary buffers -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/with-output-to-stream.html b/clones/lisp/www.cliki.net/with-output-to-stream.html deleted file mode 100644 index cf676a1c..00000000 --- a/clones/lisp/www.cliki.net/with-output-to-stream.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: with-output-to-stream - - - - - - - -
    with-output-to-stream
    with-output-to-stream provides a simple way of directing output to a stream according to the concise and intuitive semantics of format's stream argument.

    See the project's home for all details.


    -Unlicense, Public Domain
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/with-shadowed-bindings.html b/clones/lisp/www.cliki.net/with-shadowed-bindings.html deleted file mode 100644 index d675e45a..00000000 --- a/clones/lisp/www.cliki.net/with-shadowed-bindings.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: with-shadowed-bindings - - - - - - - -
    with-shadowed-bindings
    with-shadowed-bindings establishes a new lexical context within which specified bindings are explicitly shadowed, making it clear that they are not referenced within, thereby reducing cognitive load.

    See the project's home for all details.


    -Unlicense, Public Domain
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/with-unique-names.html b/clones/lisp/www.cliki.net/with-unique-names.html deleted file mode 100644 index 41c7804d..00000000 --- a/clones/lisp/www.cliki.net/with-unique-names.html +++ /dev/null @@ -1,90 +0,0 @@ - - - - - CLiki: with-unique-names - - - - - - - -
    with-unique-names
    Macro WITH-UNIQUE-NAMES

    Syntax:

    with-unique-names ({var | (var - prefix)}*) declaration* - form* => result*

    Arguments and Values:

    var---a symbol; not - evaluated.

    prefix---a string designator; not - evaluated. The default is var.

    declaration---a declare expression; not evaluated.

    form---a form.

    results---the values - returned by the forms.

    Description:

    Executes a series of forms with each - var bound to a fresh, - uninterned symbol. The - uninterned symbol is created as if by - a call to gensym with the - string denoted by prefix---or, if - prefix is not supplied, the string - denoted by var---as argument.

    The variable bindings created are - lexical unless special - declarations are specified.

    The forms are evaluated in order, and - the values of all but the last are discarded (that - is, the body is an implicit progn).

    Examples:

    -    (with-unique-names (sym1) sym1)  =>  #:SYM13142
    -    (with-unique-names ((sym1 "SYM1-")) sym1)  => #:SYM1-3143
    -    (find-symbol "SYM1-3143")  =>  NIL, NIL
    -    (with-unique-names ((sym #\Q)) sym) => #:Q3144
    -    (with-unique-names ((sym1 :sym1-)) sym1) => #:SYM1-3145
    -    (with-unique-names (sym1) (symbol-package sym1))  =>  NIL
    -    (with-unique-names (sym8) (eq sym8 sym8))  =>  T
    -    (with-unique-names (sym9) (set sym9 42) (symbol-value sym9))  =>  42
    -

    Side Effects:

    Might increment *gensym-counter* once for each - var.

    Affected by: - *gensym-counter*

    Exceptional Situations: - None.

    See Also:

    gensym, let, - rebinding

    Status:

    Discussed on comp.lang.lisp in the thread starting with - cy3eln0foea.fsf@ljosa.com. Suggested for inclusion in - Common Lisp Utilities.

    Reference Implementation:

    (defmacro with-unique-names ((&rest bindings) &body body) - `(let ,(mapcar #'(lambda (binding) - (destructuring-bind (var prefix) - (if (consp binding) binding (list binding binding)) - `(,var (gensym ,(string prefix))))) - bindings) - ,@body))

    Discussion:

    Why was the name changed from the much more common WITH-GENSYMS? --DRC

    The name WITH-UNIQUE-NAMES says what the macro is supposed to do, the name WITH-GENSYMS says how the macro is implemented which is irrelevant. (Besides, you don't have to do it with gensyms.)

    Muddled thinking. You can't get away from GENSYMs without breaking the macro's contract. A no-no for library code. Therefore WITH-GENSYMS was a spot-on description of what the macro does and will remain so. All you managed to do was burn a more generic name forever while at the same time naming this macro with a less descriptive name.

    You could do it with MAKE-SYMBOL along with some scheme for generating unique suffixes (imagine a call to uuidgen on Unix-y systems). So no, you don't need GENSYM. (No. What part of as if by call to gensym is that hard to understand?)


    -macro example
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/workout-timer.html b/clones/lisp/www.cliki.net/workout-timer.html deleted file mode 100644 index 45592e75..00000000 --- a/clones/lisp/www.cliki.net/workout-timer.html +++ /dev/null @@ -1,55 +0,0 @@ - - - - - CLiki: workout-timer - - - - - - - -
    workout-timer
    A trivial workout-timer, emitting clock clicks and gong sounds.

    workout-timer uses mixalot to emit clock clicks and gong sounds. It is programmed for a 7-minute workout, but you can easily modify the source file timer.lisp to adapt the timer to your needs.

    It was originally written by Fare Rideau using free sound samples from freesound.org.

    Browse the source code, or get it with: -

    -git clone https://gitlab.common-lisp.net/frideau/workout-timer.git
    -


    -audio
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/wrapping-standard.html b/clones/lisp/www.cliki.net/wrapping-standard.html deleted file mode 100644 index 45890838..00000000 --- a/clones/lisp/www.cliki.net/wrapping-standard.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: wrapping-standard - - - - - - - -
    wrapping-standard
    Like the standard method combination but :wrapping methods get called in :most-specific-last order (and outside :around methods): wrapping-standard.lisp.


    -MIT-LICENSE, CLOS
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/wu-decimal.html b/clones/lisp/www.cliki.net/wu-decimal.html deleted file mode 100644 index c47fc564..00000000 --- a/clones/lisp/www.cliki.net/wu-decimal.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: wu-decimal - - - - - - - -
    wu-decimal
    Wu-Decimal is a decimal number package developed by Wukix. It is available under a BSD license.

    Website: http://wukix.com/lisp-decimals.

    Download: http://wukix.com/lisp-decimals#download

    Category: mathematics

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/wxCL.html b/clones/lisp/www.cliki.net/wxCL.html deleted file mode 100644 index 534f2c17..00000000 --- a/clones/lisp/www.cliki.net/wxCL.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: wxCL - - - - - - - -
    wxCL
    wxCL is a set of CFFI bindings for the wxWidgets GUI library.

    The wxGlade GUI builder can generate Common Lisp code for wxCL.

    Homepage: http://sourceforge.net/projects/wxcl/

    Git clone: https://github.com/lisp-mirror/wxcl

    License: wxWidgets license

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/x-html-template.html b/clones/lisp/www.cliki.net/x-html-template.html deleted file mode 100644 index a0bd69fd..00000000 --- a/clones/lisp/www.cliki.net/x-html-template.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: x-html-template - - - - - - - -
    x-html-template
    x-html-template is a HTML template library, forked from Edi Weitz's HTML-TEMPLATE and mostly compatible with it. It adds support for computed expressions.

    Homepage: https://github.com/davazp/x-html-template

    In this sense, it is similar to YHTML-Template, but the expressions do not support full Lisp expressions, as it is intended to be used for non-programmers.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/x11.html b/clones/lisp/www.cliki.net/x11.html deleted file mode 100644 index 7766c183..00000000 --- a/clones/lisp/www.cliki.net/x11.html +++ /dev/null @@ -1,112 +0,0 @@ - - - - - CLiki: X11 - - - - - - - -
    X11
    X11 stands for 'X Window System, Version 11'. The X Window System was developed at MIT and first released in 1985. Since then the X Window System has become and industry-standard program available for nearly every Unix-like (and some non-Unix-like) operating system supporting graphical bitmapped displays.

    X11's fundamental concept is that of the server and client. The server is the program which manages the graphics display, and clients are programs which connect to the server and (usually) request graphics to be displayed. X11 uses a protocol, the X Protocol that allows communication between the server and clients to be encapsulated in nearly any type of network protocol that provides a reliable two-way byte stream (eg TCP, Chaosnet, DECnet, Unix sockets). As such X is network-transparent, and clients can execute on host computers separate from the computer which hosts the server.

    The X Protocol is language-independent. The primary implementation is in a weird object-oriented-ish form of ANSI C, but the X Protocol can be implemented in nearly any programming language. As such, Common Lisp has its own implementation of the X Protocol, called CLX.

    MIT has long since let go of X, and it is now officially maintained and standardized by X.Org (formerly by the MIT X Consortium, then by The Open Group). Many different implementations of X exist, each typically supported by a particular Unix vendor. However the original source code for X was and continues to be freely available.

    Topic: X11

      -
    • -CLIO - - Common Lisp Interactive Objects (CLIO) is a set of CLOS classes that represent the standard components of an object-oriented user interface --- such as text, menus, buttons, scroller, and dialogs -
    • -
    • -CLX - - CLX provides an implementation of the X Window System protocol to Lisp graphics library[ies] and applications -
    • -
    • -CLXS - - CLXS is an early-stage implementation of an X11 server (the part that does the drawing and keyboard/mouse handling) in Common Lisp -
    • -
    • -cxml-rng - - Relax NG for Closure XML -
    • -
    • -deflate - - Deflate by Pierre Mai is a Common Lisp implementation of Deflate (RFC 1951) decompression, with optional support for ZLIB-style (RFC 1950) and gzip-style (RFC 1952) wrappers of deflate streams -
    • -
    • -eclipse - - Eclipse is an X11 window manager written entirely in Common Lisp -
    • -
    • -image - - Image is an image-drawing library with a few drawing primitives (circles, ellipses, lines, rectangles, text) -
    • -
    • -incf-cl - - (INCF CL) is a collection of utilities -
    • -
    • -plexippus-xpath - - Project name: -
    • -
    • -sha3 - - This library is an implementation of the Secure Hash Algorithm 3 (SHA-3), also known as Keccak -
    • -
    • -stumpwm - - StumpWM is a tiling, keyboard driven X11 window manager application written entirely in Common Lisp -
    • -
    • -tinywm-lisp - - tinywm-lisp is a Common Lisp port of the TinyWM X11 window manager -
    • -
    • -XIT - - A graphics toolkit from the University of Stuttgart which provides an object-based interface to the X11 window system, based on CLX and CLUE -
    • -
    • -xuriella - - Xuriella XSLT is an implementation of XSLT 1.0, written entirely in Common Lisp -
    • -
    • -zen - - zen is a hackable X server written in Common Lisp -
    • -
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/xarray.html b/clones/lisp/www.cliki.net/xarray.html deleted file mode 100644 index ad915f18..00000000 --- a/clones/lisp/www.cliki.net/xarray.html +++ /dev/null @@ -1,70 +0,0 @@ - - - - - CLiki: xarray - - - - - - - -
    xarray
    This package implements a generalized interface for array-like -objects. The idea is that we should be able to index an object as -
    (xref object 1 2 3) -
    -to retrieve or set an element. This would be easy to do it aref was a -generic function, but it is not. I describe a simple interface with a -few generic functions (xdims queries dimensions, xtype element type, -etc), any objects that has these methods is called "xrefable".

    The nice part is that views on an array can also be xrefable. For an -two-dimensional array *a*, -

    (slice *a* :all 4) -
    -selects the 4th column of an array.¹ This view is also xrefable, so -you can use

    (setf (xref (slice *a* :all 4) 2) 9) -
    -to set element 2 to 9. Changes will be made in the original array -*a*, since this is a view. But for functions that just expect an -array, they can use the interface (xref, xdims, etc) and not care -where it is coming from.

    ¹ The slice interface is similar to author's affi package, but now -arbitrary index vectors are allowed.

    Homepage: https://github.com/blindglobe/xarray

    License: MIT

    See Also: cl-slice


    -Topics: language extension
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/xcvb.html b/clones/lisp/www.cliki.net/xcvb.html deleted file mode 100644 index d5748e0a..00000000 --- a/clones/lisp/www.cliki.net/xcvb.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: XCVB - - - - - - - -
    XCVB
    XCVB, an eXtensible Component Verifier and Builder for Lisp is an attempt to replace asdf.

    Objectives: have a scalable system to build large software in Lisp, featuring deterministic separate compilation and enforced locally-declared dependencies.

    XCVB itself is its own executable program to drive CL development from the shell command-line. However, it is distributed with a module /xcvb/master (aka :xcvb-master if loaded by asdf) that provides the functionality of compiling a system from Lisp and loading the result into the current image.

    More details can be found on the XCVB page on common-lisp.net.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/xelf.html b/clones/lisp/www.cliki.net/xelf.html deleted file mode 100644 index b02e0065..00000000 --- a/clones/lisp/www.cliki.net/xelf.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: xelf - - - - - - - -
    xelf
    Xelf is a simple 2-D game engine for Common Lisp.

    Author: David O'Toole

    License: LGPL


    -graphics library
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/xgboost.html b/clones/lisp/www.cliki.net/xgboost.html deleted file mode 100644 index 48339be0..00000000 --- a/clones/lisp/www.cliki.net/xgboost.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: xgboost - - - - - - - - -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/xhtmlgen.html b/clones/lisp/www.cliki.net/xhtmlgen.html deleted file mode 100644 index af4b2bfc..00000000 --- a/clones/lisp/www.cliki.net/xhtmlgen.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: xhtmlgen - - - - - - - -
    xhtmlgen
    xhtmlgen is an XHTML generator. It is derived from Franz Inc.'s net.htmlgen

    Homepage: https://github.com/hanshuebner/xhtmlgen

    License: LLGPL

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/xindy.html b/clones/lisp/www.cliki.net/xindy.html deleted file mode 100644 index 7da4ab31..00000000 --- a/clones/lisp/www.cliki.net/xindy.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: xindy - - - - - - - -
    xindy
    xindy is an index processor that can be used to generate book-like indexes for arbitrary document preparation systems. This includes systems such as TeX and LaTeX, the roff-family, SGML/XML-based systems (e.g., HTML) that process some kind of text and generate indexing information. The kernel system is not fixed to any specific system, but can be configured to work together with such systems.

    xindy consists of (1) a run time engine, made up of a Common Lisp system with xindy-specific plugins, (2) Common Lisp code that makes up the xindy kernel, and (3) xindy modules.

    To create the xindy run time engine, one needs to integrate the plugins into a Common Lisp system. We did this for CLISP, the result is in the binary distributions or in the platform-specific archives of older releases.

    Then, the xindy kernel source code is compiled, and a final executable is created. In the case of CLISP, the executable consists of two files, a virtual machine and a memory image.

    Homepage: http://xindy.sf.net/

    License: GPL

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/xlunit.html b/clones/lisp/www.cliki.net/xlunit.html deleted file mode 100644 index 124dd66c..00000000 --- a/clones/lisp/www.cliki.net/xlunit.html +++ /dev/null @@ -1,58 +0,0 @@ - - - - - CLiki: xlunit - - - - - - - -
    xlunit
    XLUnit is a Test Framework based on XPTest and JUnit. XLUnit strives to have a good balance between low programmer overhead and good support for fixture setup and teardown. XLUnit has greatly decreased programmer overhead compared to XPTest while adding more functionality from JUnit.

    A short example of its usage:

    (defclass my-test (test-case) - ()) - -(def-test-method some-test ((test my-test)) - (assert-equal (whatever) (whatever-else)) - (assert-false (this-is-impossible))) - -(textui-test-run (get-suite my-test))

    The generic functions set-up and tear-down can be used to (de)initialize test case objects.

    Repository: http://git.kpe.io/?p=xlunit.git;a=summary

    License: BSD

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/xml-emitter.html b/clones/lisp/www.cliki.net/xml-emitter.html deleted file mode 100644 index 61b2d1cb..00000000 --- a/clones/lisp/www.cliki.net/xml-emitter.html +++ /dev/null @@ -1,100 +0,0 @@ - - - - - CLiki: xml-emitter - - - - - - - -
    xml-emitter
    Often, programs have to generate XML output. This is fairly easy, but -not quite trivial. You need to do escaping, and indentation can be a -little tricky to keep track of. One approach you could use is to get -an XML parser/unparser like XMLS, build your XML data structure in -memory, then dump the whole thing. This is fairly easy, but not as -easy as it could be, and it requires holding the whole structure in -memory.

    So, I wrote xml-emitter. xml-emitter simply emits XML, with some -complexity for handling indentation. It can be used to produce all -sorts of useful XML output; it has an RSS 2.0 emitter built in, so you can make RSS feeds trivially.

    There is no real home page, but you can download it from the -asdf-packaging project. Or from the download link on this page.

    If you have comments, questions, or bug reports, email them to Peter Scott .

    Update (August 2015):

      -
    • Now there is an official repository: xml-emitter maintained by Vito Van, feel free to submit issues and pull requests.
    • -

    -

    Usage

    The WITH-XML-OUTPUT macro wraps all XML output to a stream.

    The WITH-TAG macro places the XML produced by its body inside a -tag. Its output cannot be on just one line, since it puts starting and -closing tags on their own lines.

    The WITH-SIMPLE-TAG macro is like WITH-TAG, but starting and closing -tags don't get their own lines.

    XML-OUT prints its argument to the XML output stream, escaped.

    XML-AS-IS prints its argument to the XML output stream, unescaped.

    SIMPLE-TAG prints a simple <tag>value</tag> tag. It's a shortened -version of a typical use of WITH-SIMPLE-TAG and XML-OUT.

    EMIT-SIMPLE-TAGS takes a plist of tag names and tag values. For every -tag with a non-NIL value, it prints the tag with SIMPLE-TAG. Tag names -given as keyword symbols (like :this) are downcased.

    Example:

    -(with-xml-output (*standard-output*)
    -  (with-tag ("person" '(("age" "19")))
    -    (with-simple-tag ("firstName")
    -      (xml-out "Peter"))
    -    (simple-tag "lastName" "Scott")
    -    (emit-simple-tags :age 17
    -		      :school "Iowa State Univeristy"
    -		      "mixedCaseTag" "Check out the mixed case!"
    -		      "notShown" nil)))
    -

    The RSS 2.0 emitter

    The WITH-RSS2 macro wraps up all output of RSS.

    RSS-CHANNEL-HEADER outputs the RSS channel information.

    RSS-ITEM outputs information about one RSS item.

    Example:

    -(with-rss2 (*standard-output*)
    -  (rss-channel-header "Peter's Blog" "http://peter.blogspot.com/"
    -		      :description "A place where I sometimes post stuff"
    -		      :image "myhead.jpg"
    -		      :image-title "My glorious visage")
    -  (rss-item "Breaking news!"
    -	    :link "http://google.com/"
    -	    :description "The biggest problem with the DO-ODD macro above is that it puts BODY
    -into LOOP. Code from the user of the macro should never be run in the
    -environment established by the LOOP macro. LOOP does a number of
    -things behind your back, and it's hard to disable them. For example,
    -what happens here?"
    -	    :author "Peter Scott"
    -	    :category "Lisp"
    -	    :pubDate "Sun, 29 Sep 2002 19:59:01 GMT")
    -  (rss-item "RSS emitter created"
    -	    :description "An RSS emitter has been released! Hahahahaha!"
    -	    :author "Peter Scott"
    -	    :link "http://gmail.google.com/"))
    -

    There is also a complete example of how you might use the RSS emitter -in mailbox.lisp in the source distribution.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/xml-mop.html b/clones/lisp/www.cliki.net/xml-mop.html deleted file mode 100644 index c3b5e4ca..00000000 --- a/clones/lisp/www.cliki.net/xml-mop.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: xml-mop - - - - - - - -
    xml-mop
    Allows representing parts of XML documents as CLOS objects.

    Depends on: s-xml, closer-mop

    Repository: https://github.com/gonzojive/xml-mop


    -MOP, MIT-LICENSE
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/xml-psychiatrist.html b/clones/lisp/www.cliki.net/xml-psychiatrist.html deleted file mode 100644 index 22846f0d..00000000 --- a/clones/lisp/www.cliki.net/xml-psychiatrist.html +++ /dev/null @@ -1,54 +0,0 @@ - - - - - CLiki: xml-psychiatrist - - - - - - - -
    xml-psychiatrist
    xml-psychiatrist is an XML sanity checking/validation library written entirely in Common Lisp. It is still in version 0.4, so use it at your own risk. That said, it's a good XML validator.

    Documentation

    -There is a detailed manual at the project's web site.

    Detailed description

    -Despite the ambivalent feelings of some people, XML is taking over the world. More and more, programs have to take XML files as input. However, this presents us with a problem: error checking. How can we be sure that the information in the XML document isn't junk? We could include a lot of error checking in our XML processing code, but that complicates things considerably and is prone to bugs. Ideally, we would like to separate out the sanity checking machinery. How should we do that?

    We could use a Document Type Definition, or DTD. Unfortunately, DTDs have a verbose, clunky syntax, and they can't say anything about the information in the document. They can specify the structure, but they can't see past it. Also, DTDs don't support namespaces.

    We could use an XML Schema. They support some content type checking, but they, too, have problems. They are written in XML, which is both a blessing and a curse. It's a blessing because XML is easy to parse; it's a curse because the format is so verbose that your fingers will ache with pain and you will get carpal tunnel syndrome if you type too much of it. Also, it lacks some more powerful and dangerous features, such as full use of Common Lisp in the validation process. Schemas and DTDs both share the disadvantage that they aren't part of Lisp, and are not designed to be used from Lisp processes.

    I wanted to do some sanity checking on XML documents from a Common Lisp program I'm writing. I didn't want to use DTDs or Schemas for the reasons above. I wanted to be able to write the specifications for XML structures in a lispy syntax. I wanted enough power to grow. So, I wrote xml-psychiatrist.

    License

    -xml-psychiatrist is released by Peter Scott under the LLGPL. Share and enjoy!
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/xml-rpc.html b/clones/lisp/www.cliki.net/xml-rpc.html deleted file mode 100644 index 2569cea3..00000000 --- a/clones/lisp/www.cliki.net/xml-rpc.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: XML-RPC - - - - - - - -
    XML-RPC
    XML-RPC is a remote procedure call system using HTTP requests carrying XML data in distributed systems. There are two free implementations of XML-RPC in Common Lisp.

    Chris Double wrote a client library that is now a part of Corman Lisp, but a version adapted by Eric Marsden for CMUCL and CLISP is available from http://emarsden.chez.com/downloads/.

    A second implementation for a variety of Common Lisp implementations is S-XML-RPC.

    A third implementation tested with SBCL but should work with others supported by its dependencies is rpc4cl.

    There is some documentation, pertaining to other-language software and XML-RPC—possibly, would be helpful, for an introduction about XML-RPC—for example: XML-RPC HOWTO.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/xml.html b/clones/lisp/www.cliki.net/xml.html deleted file mode 100644 index 2b2f9615..00000000 --- a/clones/lisp/www.cliki.net/xml.html +++ /dev/null @@ -1,221 +0,0 @@ - - - - - CLiki: XML - - - - - - - -
    XML
    The eXtensible Markup Language

    Misc

      -
    • -CLOCC comes with an XML parser in CLOCC/CLLIB/xml.lisp
    • -
    • The Wilbur RDF toolkit (Sourceforge page) in Common Lisp is available -... though it's worth noting that Wilbur is an RDF toolkit, not an XML toolkit—it just happens that it can read RDF/XML, an XML serialisation of RDF.
    • -

    See also

    Other Lisp Markup Languages

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/xmls-tools.html b/clones/lisp/www.cliki.net/xmls-tools.html deleted file mode 100644 index a698d6a5..00000000 --- a/clones/lisp/www.cliki.net/xmls-tools.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: XMLS-Tools - - - - - - - -
    XMLS-Tools
    xmls-tools is a library to supplement use of xmls. It includes support for parsing with side effects, searching and validating XML. It includes an example side effect parser in the form of a XHTML to text converter.

    xmls-tools was written by Robert Marlow.

    Download xmls-tools from http://www.bobturf.org/software/xmls-tools/

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/xmls-valid.html b/clones/lisp/www.cliki.net/xmls-valid.html deleted file mode 100644 index 5d800f8a..00000000 --- a/clones/lisp/www.cliki.net/xmls-valid.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: xmls-valid - - - - - - - -
    xmls-valid
    xmls-valid was a Library for validating XML parsed by xmls against XML DTD style rulesets.

    It has been obsoleted by XMLS-Tools.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/xmls.html b/clones/lisp/www.cliki.net/xmls.html deleted file mode 100644 index 30a52cec..00000000 --- a/clones/lisp/www.cliki.net/xmls.html +++ /dev/null @@ -1,60 +0,0 @@ - - - - - CLiki: xmls - - - - - - - -
    xmls
    Xmls is a small, simple, non-validating XML parser for Common Lisp. It's designed to be a self-contained, easily embedded parser that recognizes a useful subset of the XML spec. It provides a simple mapping from xml to lisp s-expressions and back.

    Features from the readme: -

      -
    • Free (BSD license).
    • -
    • Small and easily embedded. The entire parser is contained in one file and it's currently less than 1000 lines of code. Xmls is written in pure lisp and requires no external parsing tools or foreign libraries.
    • -
    • -Threadsafe.
    • -
    • Understands enough of the xml spec to parse many common documents, including those occurring in common internet protocols like xml-rpc, webdav, and BEEP.
    • -
    • Serializes s-expr list structures back to xml as well as parsing xml.
    • -
    • Parses and understands xml namespaces.
    • -

    More information is available on the xmls homepage.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/xmlutils.html b/clones/lisp/www.cliki.net/xmlutils.html deleted file mode 100644 index 3e6301d8..00000000 --- a/clones/lisp/www.cliki.net/xmlutils.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: xmlutils - - - - - - - -
    xmlutils
    The xmlutils project is no longer hosted at Franz because it has been superseded by the newer sax parser.

    Was an open source XML and HTML Parser for ACL by Franz Inc.

    The following forks are active:

    pxmlutils is a portable version of xmlutils.

    CL-HTML-Parse is a portable version of HTML parser from xmlutils.

    phtml is another portable version of HTML parser from xmlutils.


    -obsolete
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/xujizhe.html b/clones/lisp/www.cliki.net/xujizhe.html deleted file mode 100644 index 2ba3f955..00000000 --- a/clones/lisp/www.cliki.net/xujizhe.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: xujizhe - - - - - - - -
    xujizhe
    Welcome to my cliki page.

    person

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/xuriella.html b/clones/lisp/www.cliki.net/xuriella.html deleted file mode 100644 index 1bba28c2..00000000 --- a/clones/lisp/www.cliki.net/xuriella.html +++ /dev/null @@ -1,68 +0,0 @@ - - - - - CLiki: xuriella - - - - - - - -
    xuriella
    Xuriella XSLT is an implementation of XSLT 1.0, written entirely in Common Lisp.

    Author: - David Lichteblau, Ivan Shvedunov

    License: - X11-style

    Homepage: - https://common-lisp.net/project/xuriella/

    Download (tarball): Yes, see below

    Download (git clone): git://repo.or.cz/xuriella.git -(gitweb)

    This project is asdf-installable (release tarball) and available in clbuild (git version).

    Feature overview

      -
    • Passes the XSLT 1.0 test suite -
    • -
    • XSLT extension elements implementable in Common Lisp -
    • -
    -

    Documentation

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/yaclml.html b/clones/lisp/www.cliki.net/yaclml.html deleted file mode 100644 index ab4817cd..00000000 --- a/clones/lisp/www.cliki.net/yaclml.html +++ /dev/null @@ -1,102 +0,0 @@ - - - - - CLiki: yaclml - - - - - - - -
    yaclml
    yaclml (Yet Another Common Lisp Markup Language) is an HTML generator and HTML template library. yaclml is used as the html templating backend for the ucw web framework.

    License: ?

    Homepage: http://common-lisp.net/project/bese/yaclml.html

    According to the yaclml website, it appears darcs is the preferred method to get current versions:

    -darcs get http://common-lisp.net/project/bese/repos/yaclml/
    -

    Getting the output

    - When you use the inline-html of yaclml, the rendered HTML gets printed, not returned. If you need to have it in a string, use the following: -
    -(yaclml:with-yaclml-output-to-string
    -  (<:html (<:head (<:title "Hello, world"))
    -          (<:body (<:h1 "Hello, world")
    -                  (<:p "Hello, world!!!!!!")))
    -
    -and you'll get a string.

    Using yaclml by itself

    - If you want, you can use yaclml by itself (not with ucw, maybe with another framework, like araneida) but it seems nobody is doing that so the library is not very friendly by itself: it is not really robust (in the sense that it is very easy to generate an error by providing not-so-carefully contructed input) and there's no documentation whatsoever. That last item I'll try to fix here. - Including yaclml as one of the dependecies of your package or by loading it (with (asdf:oos 'asdf:load-op :yaclml)) you can start using the yaclml-in-lisp markup, something like: -
    -(<:html (<:head (<:title "Hello, world"))
    -	(<:body (<:h1 "Hello, world")
    -		(<:p "Hello, world!!!!!!")))
    -
    -That wasn't so hard, was it ? - But one of the jewels of yaclml is tal. To be able to load TAL templates you need to perform the following steps. Create a generator: -
    -(defparameter *gen* 
    -  (make-instance 'yaclml:file-system-generator
    -		 :cachep nil
    -		 :root-directories (list "/path/to/my/templates/")))
    -
    -root-directories is where you will have the templates. I believe a relative path should work. For the whole run of the program one generator might be enough. - When you are about to generate a page, you need to generate an environment which will have the key-value pairs that can be used inside the template: -
    -(defparameter *env* (yaclml:make-standard-environment))
    -
    -That builds an empty environment. The mappings should be passed as the first parameter to make-standard-environment and according to yaclml documentation: "Each binding set can be an alist, an object, a hash table, or any object for which the a method on LOOKUP-TAL-VARIABLE has been -defined." - Then, we have to pick up the template itself: -
    -(defparameter *tem* (yaclml:load-tal *gen* "hello.html"))
    -
    -*tem* is a closure, that is, a function, that when run will return the result of "rendering" that template. It takes two parameters, a generator and an environment. If you evaluate *tem* you may get something like: -
    -# < CLOSURE (LAMBDA
    -              (IT.BESE.YACLML::ENVIRONMENT
    -               IT.BESE.YACLML::GENERATOR)) {BEB9355} >
    -

    One usefull function is yaclml:template-truename which returns the name of the template being picked up (or nil if none is found). When you have various root-directories it can help you find out which template is being chosen. For example: -

    -(yaclml:template-truename *gen* "hello.html")
    -
    -would return -
    -/path/to/my/templates/hello.html
    -

    Now we would call *tem* like this: -

    (funcall *tem* *env* *gen*)
    -and we would get out the page.


    yaclml generator tutorial: http://www.3ofcoins.net/2009/02/07/yaclml-in-pictures-part-i-html-generation/

    yaclml templating tutorial: http://www.3ofcoins.net/2010/01/21/yaclml-in-pictures-part-ii-templating/

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/yason.html b/clones/lisp/www.cliki.net/yason.html deleted file mode 100644 index 4949d5f8..00000000 --- a/clones/lisp/www.cliki.net/yason.html +++ /dev/null @@ -1,116 +0,0 @@ - - - - - CLiki: YASON - - - - - - - -
    YASON
    YASON is a Common Lisp library for encoding and decoding data in the JSON interchange format. JSON is used in AJAX applications as a lightweight alternative to XML. YASON has the sole purpose of encoding and decoding data and does not impose any object model on the Common Lisp application that uses it.

    Documentation

    - The current documentation lives at Github.

    Mapping between JSON and CL datatypes

    By default, YASON performs the following mappings between JSON and CL datatypes:

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    JSON
    datatype
    CL
    datatype
    Notes
    objecthash-table
    :test #'equal
    - Keys are strings by default, - see *parse-object-key-fn* -
    arraylist - Can be changed to read to vectors, - see *parse-json-arrays-as-vectors* -
    stringstring - JSON escape characters are recognized upon reading. - Upon writing, known escape characters are used, but - non-ASCII Unicode characters are written as is. -
    numbernumber - Parsed with READ, printed with PRINC. This is not a - faithful implementation of the specification. -
    truetCan be changed to read as TRUE, see *parse-json-booleans-as-symbols*
    falsenilCan be changed to read as FALSE, see *parse-json-booleans-as-symbols*
    nullnil

    Parsing JSON data

    JSON data is always completely parsed into an equivalent in-memory representation. Upon reading, some translations are performed by default to make it easier for the Common Lisp program to work with the data; see mapping for details. If desired, the parser can be configured to preserve the full semantics of the JSON data read.

    Encoding JSON data

    - YASON provides for two distinct modes to encode JSON data: - Applications can either create an in memory representation of the - data to be serialized, then have YASON convert it to JSON in one - go, or they can use a set of macros to serialze the JSON data - element-by-element, thereby having fine grained control over the - layout of the generated data.
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/yid.html b/clones/lisp/www.cliki.net/yid.html deleted file mode 100644 index 02e99e15..00000000 --- a/clones/lisp/www.cliki.net/yid.html +++ /dev/null @@ -1,58 +0,0 @@ - - - - - CLiki: yid - - - - - - - -
    yid
    yid (Yacc Is Dead) is a parser generator based on Brzozowski's derivative from regular expressions to context-free grammars.

    Homepage: https://github.com/sellout/YACC-is-dead

    License: ???

    More information:

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/yotta-zoomer.html b/clones/lisp/www.cliki.net/yotta-zoomer.html deleted file mode 100644 index 6d00b148..00000000 --- a/clones/lisp/www.cliki.net/yotta-zoomer.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: yotta-zoomer - - - - - - - -
    yotta-zoomer
    Deep Fractal Zoomer application. Think of it as a torture test for CMUCL's quad float support.

    Homepage: http://repo.or.cz/w/yotta-zoomer.git

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/zen.html b/clones/lisp/www.cliki.net/zen.html deleted file mode 100644 index c3c50dfc..00000000 --- a/clones/lisp/www.cliki.net/zen.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: zen - - - - - - - -
    zen
    zen is a hackable X server written in Common Lisp.

    Repository: https://github.com/BillTheBest/zen

    License: GPL3


    -Topics: networking, application, x11
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/zip.html b/clones/lisp/www.cliki.net/zip.html deleted file mode 100644 index a8e78ad6..00000000 --- a/clones/lisp/www.cliki.net/zip.html +++ /dev/null @@ -1,52 +0,0 @@ - - - - - CLiki: ZIP - - - - - - - -
    ZIP
    ZIP is a Common Lisp compression library that reads and writes Zip files, using Salza2 for compression.

    Documentation: http://common-lisp.net/project/zip/

    Depends on: salza2, trivial-gray-streams, babel, cl-fad

    Repository: https://github.com/bluelisp/zip

    License: Lisp-LGPL (and some parts BSD-style, see LICENSE for details)


    -file format
    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/zlib.html b/clones/lisp/www.cliki.net/zlib.html deleted file mode 100644 index 31ebd1ac..00000000 --- a/clones/lisp/www.cliki.net/zlib.html +++ /dev/null @@ -1,75 +0,0 @@ - - - - - CLiki: zlib - - - - - - - -
    zlib
    ZLIB is a compression format described by RFC1950. It is also the name of the de-facto canonical C-language implementation of the format (zlib.net).

    There are several native Common Lisp implementations, as well as FFI bindings:

    To make it more annoying, there are at least two Common Lisp libraries also named "zlib":

    In addition, CLisp has a module also called "zlib". It is part of the default "full" module linking set.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/zpb-ttf.html b/clones/lisp/www.cliki.net/zpb-ttf.html deleted file mode 100644 index 7d7e4f9b..00000000 --- a/clones/lisp/www.cliki.net/zpb-ttf.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: ZPB-TTF - - - - - - - -
    ZPB-TTF
    ZPB-TTF is a graphics library for parsing TrueType font files and obtaining font and glyph information. It is available under a BSD license.

    For full documentation, see the web page.

    - -
    -
    - - -
    - - \ No newline at end of file diff --git a/clones/lisp/www.cliki.net/zpng.html b/clones/lisp/www.cliki.net/zpng.html deleted file mode 100644 index c2f6a7c9..00000000 --- a/clones/lisp/www.cliki.net/zpng.html +++ /dev/null @@ -1,51 +0,0 @@ - - - - - CLiki: ZPNG - - - - - - - -
    ZPNG
    ZPNG is a graphics library for creating PNG file format files.

    It is available under a BSD-style license. Full documentation is on the ZPNG home page.

    - -
    -
    - - -
    - - \ No newline at end of file