Next: Introduction, Previous: (dir), Up: (dir) [Contents][Index]
This is the quicksearch Reference Manual, version 0.1.3, generated automatically by Declt version 3.0 "Montgomery Scott" on Tue Dec 22 14:49:00 2020 GMT+0.
• Introduction | What quicksearch is all about | |
• Systems | The systems documentation | |
• Files | The files documentation | |
• Packages | The packages documentation | |
• Definitions | The symbols documentation | |
• Indexes | Concepts, functions, variables and data types |
Last modified: 2014-04-13 12:00:30 tkych
Version: 0.01.04 (beta)
Quicksearch is a search-engine-interface for Common Lisp.
The goal of Quicksearch is to find the CL library quickly.
For example, if you will find the library about json, just type (qs:? 'json)
at REPL.
The function quicksearch
searches for CL projects in Quicklisp, Cliki,
GitHub and BitBucket, then outputs results in REPL.
The function ?
is abbreviation wrapper for quicksearch
.
(ql:quickload :quicksearch)
git clone https://github.com/tkych/quicksearch.git
(push #p"/path-to-quicksearch/quicksearch/" asdf:*central-registry*)
(ql:quickload :quicksearch)
or (asdf:load-system :quicksearch)
CL-REPL> (qs:? "supercalifragilisticexpialidocious") ;<=> (qs:quicksearch "supercalifragilisticexpialidocious")
NIL
(qs:config :threading? nil)
at REPL, then try it again.CL-REPL> (qs:? "crypt") ;<=> (qs:quicksearch "crypt")
SEARCH-RESULTS: "crypt"
Quicklisp
crypt
Cliki
ARC4
JARW
VLM_on_Linux
GitHub
cl-crypt
cl-crypto
cl-crypto
cryptography
cryptoschool
Cryptopsaras
T
CL-REPL> (qs:? 'Crypt :d) ;<=> (qs:quicksearch 'Crypt :?description t)
SEARCH-RESULTS: "crypt"
=======================
Quicklisp
---------
crypt
http://quickdocs.org/cl-crypt/
Cliki
-----
ARC4
A Common Lisp implementation of ARC4, a Cryptography code, can be found on
the
JARW
Dr John AR Williams' utilities
VLM_on_Linux
Instructions for running the Symbolics VLM virtual machine on Linux
GitHub
------
cl-crypt
Common-Lisp implementation of unix crypt function
cl-crypto
A common lisp package of ciphers, public-key algorithms, etc.
cl-crypto
Pure lisp crypto, written from specs
cryptography
implementations of ciphers for cryptography class
cryptoschool
Lisp files related to the cryptography class being taught by Ben Warner
Cryptopsaras
Reads files generated by Acinonyx.
T
:d
is on, then the description of the project is printed (QuickDocs-url for Quicklisp-search).CL-REPL> (qs:? "crypt" :ug 4) ;<=> (qs:quicksearch "crypt"
; :?url t :?cut-off 4
; :?quicklisp nil :?cliki nil :?bitbucket nil)
SEARCH-RESULTS: "crypt"
=======================
GitHub
------
cl-crypt
https://github.com/renard/cl-crypt
cl-crypto
https://github.com/bgs100/cl-crypto
cl-crypto
https://github.com/billstclair/cl-crypto
cryptography
https://github.com/MorganBauer/cryptography
.......> 2
T
:u
is on, then the project's url is printed.:g
is on, then only github-results are printed
(also :q
- quicklisp, :c
- cliki, :b
- bitbutcket. these options are addable)........>
is number of remains).:ug 4
<=> 4 :gu
<=> :u 4 :g
<=> ...).CL-REPL> (qs:? 'lisp-koans :du 1) ;<=> (qs:quicksearch 'lisp-koans
; :?description t :?url t :?cut-off 1)
SEARCH-RESULTS: "lisp-koans"
============================
GitHub
------
lisp-koans
https://github.com/google/lisp-koans
Common Lisp Koans is a language learning exercise in the same vein as the
ruby koans, python koans and others. It is a port of the prior koans
with some modifications to highlight lisp-specific features. Structured
as ordered groups of broken unit tests, the project guides the learner
progressively through many Common Lisp language features.
.......> 4
T
CL-REPL> (qs:config :maximum-columns-of-description 50)
Current maximum columns of description: 50
T
CL-REPL> (qs:? 'lisp-koans :du 1)
SEARCH-RESULTS: "lisp-koans"
============================
GitHub
------
lisp-koans
https://github.com/google/lisp-koans
Common Lisp Koans is a language learning
exercise in the same vein as the ruby koans,
python koans and others. It is a port of
the prior koans with some modifications to
highlight lisp-specific features.
Structured as ordered groups of broken unit
tests, the project guides the learner
progressively through many Common Lisp
language features.
.......> 4
T
:maximum-columns-of-description
controls in printing description (default is 80).QUICKSEARCH searches for CL projects with search-word in Quicklisp, Cliki, GitHub and BitBucket. search-word must be a string, number or symbol (symbol will be automatically converted into downcase-string).
?cut-off controls only printing results, nothing to do with the max number of fetching repositories. see. function CONFIG documentation
About #\Space in search-word:
In case search-word contains #\Space, Quicklisp-search is OR-search, whereas Cliki-search, GitHub-, BitBucket- is AND-search.
e.g. (quicksearch "foo bar") Quicklisp-search for "foo" OR "bar". Cliki-search, GitHub-, BitBucket- for "foo" AND "bar".
? is abbreviation wrapper for function QUICKSEARCH. search-word must be a string, number or symbol. options must be a non-negative integer (as Cut-Off) and/or some keywords which consists of some Option-Chars.
(? "crypt")
<=>
(quicksearch "crypt" :?description nil :?url nil :?cut-off 50
:?quicklisp t :?cliki t :?github t :?bitbucket t)
(? "crypt" :du 10)
<=>
(quicksearch "crypt" :?description T :?url T :?cut-off 10
:?quicklisp t :?cliki t :?github t :?bitbucket t)
(? "crypt" 20 :g :d)
<=>
(quicksearch "crypt" :?description T :?url nil :?cut-off 20
:?quicklisp nil :?cliki nil :?github T :?bitbucket nil)
Cut-Off:
Option-Chars:
Function CONFIG customizes printing, fetching or caching.
:maximum-columns-of-description The value must be a plus integer bigger than 5. If the length of description-string is bigger than this value, then output of description is inserted newline for easy to see. Default value is 80.
:maximum-number-of-fetching-repositories This value controls the number of fetching repositories. The value must be a plus integer. Increasing this value, the number of fetching repositories increases, but also space & time does. Default value is 50.
:cache-size The value must be a plus integer. This value is the number of stored previous search-results. Increasing this value, the number of caching results increases, but also space does. Default value is 4.
:clear-cache? The value must be a boolean. If value is T, then clear all caches.
:threading? The value must be a boolean (default T). If value is NIL, then QUICKSEARCH becomes not to use threads for searching.
Note: Currently in SBCL (1.1.8), threads are part of the default build on x86[-64] Linux only. Other platforms (x86[-64] Darwin (Mac OS X), x86[-64] FreeBSD, x86 SunOS (Solaris), and PPC Linux) experimentally supports threads and must be explicitly enabled at build-time. For more details, please see SBCL manual.
quicklisp-verbose? The value must be a boolean (default NIL). If value is T, then outputs version of quicklisp and whether library had installed your local.
Example:
CL-REPL> (qs:config :quicklisp-verbose? T)
CL-REPL> (qs:? "json" :q)
SEARCH-RESULTS: "json"
Quicklisp: 2013-04-20 ;<- quicklisp version
!cl-json ;<- if library has installed via quicklisp, print prefix "!".
!cl-json.test
com.gigamonkeys.json ;<- if not, none.
json-template
st-json
T
If you would prefer permanent config, for example, add codes something like the following in the CL init file.
In .sbclrc
for SBCL, ccl-init.lisp
for CCL:
(ql:quickload :quicksearch)
(qs:config :maximum-columns-of-description 50
:maximum-number-of-fetching-repositories 20
:cache-size 2
:threading? nil
:quicklisp-verbose? t)
*user-agent* tells the server who is requested (i.e. User-Agent header value). If you are embedding quicksearch in a larger application, you should change the value of *user-agent* to your application name and URL.
Takaya OCHIAI <#.(reverse "moc.liamg@lper.hcykt")>
MIT License
Copyright (C) 2013 Takaya OCHIAI
Next: Files, Previous: Introduction, Up: Top [Contents][Index]
The main system appears first, followed by any subsystem dependency.
• The quicksearch system |
Takaya OCHIAI <tkych.repl@gmail.com>
MIT License
Quicksearch searches CL library, and outputs results at REPL.
0.1.3
quicksearch.asd (file)
quicksearch.lisp (file)
Files are sorted by type and then listed depth-first from the systems components trees.
• Lisp files |
• The quicksearch.asd file | ||
• The quicksearch/quicksearch.lisp file |
Next: The quicksearch/quicksearch․lisp file, Previous: Lisp files, Up: Lisp files [Contents][Index]
quicksearch.asd
quicksearch (system)
Previous: The quicksearch․asd file, Up: Lisp files [Contents][Index]
quicksearch (system)
quicksearch.lisp
Next: Definitions, Previous: Files, Up: Top [Contents][Index]
Packages are listed by definition order.
• The quicksearch package |
quicksearch.lisp (file)
qs
Definitions are sorted by export status, category, package, and then by lexicographic order.
• Exported definitions | ||
• Internal definitions |
Next: Internal definitions, Previous: Definitions, Up: Definitions [Contents][Index]
• Exported special variables | ||
• Exported functions |
Next: Exported functions, Previous: Exported definitions, Up: Exported definitions [Contents][Index]
This value tells the server who is requested (i.e. User-Agent header value). If you are embedding Quicksearch in a larger application, you should change the value of *USER-AGENT* to your application name and URL.
quicksearch.lisp (file)
Previous: Exported special variables, Up: Exported definitions [Contents][Index]
? is abbreviation wrapper for function QUICKSEARCH.
‘search-word’ must be a string, number or symbol. ‘options’ must be a
non-negative integer (as Cut-Off) and/or some keywords which consists of
some Option-Chars.
Options:
* Cut-Off:
* The max number of printing results (default is 50).
* Option-Chars:
* d, D – output Description
* u, U – output URL
* q, Q – search in Quicklisp
* c, C – search in Cliki
* g, G – search in GitHub
* b, B – search in Bitbucket
Note:
* Option-Char is idempotent (e.g. :dd <=> :d).
* If ‘options’ contains more than 2 Cut-Offs, only last one is applyed.
* The order of Option-Chars is nothing to do with output
(e.g. :du <=> :ud).
* The order of ‘options’ is nothing to do with output
(except for some Cut-Offs).
* If no search-space is specified, all spaces are specified
(e.g. :d <=> :dqcgb).
* If at most one search-space is specified, then others are not
specified.
Examples:
(? "crypt")
<=>
(quicksearch "crypt" :?description nil :?url nil :?cut-off 50
:?quicklisp t :?cliki t :?github t :?bitbucket t)
(? "crypt" :du 10)
<=>
(quicksearch "crypt" :?description T :?url T :?cut-off 10
:?quicklisp t :?cliki t :?github t :?bitbucket t)
(? "crypt" 20 :g :d)
<=>
(quicksearch "crypt" :?description T :?url nil :?cut-off 20
:?quicklisp nil :?cliki nil :?github T :?bitbucket nil)
quicksearch.lisp (file)
Function CONFIG customizes printing, fetching or caching.
If CONFIG is called with no keyword, then it sets default values.
Keywords:
* ‘:maximum-columns-of-description’ (default 80)
The value must be a plus integer bigger than 5.
If the length of description-string is bigger than this value,
then output of description is inserted newline for easy to see.
* ‘:maximum-number-of-fetching-repositories’ (default 50)
This value controls the number of fetching repositories.
The value must be a plus integer.
Increasing this value, the number of fetching repositories increases,
but also space & time does.
* ‘:cache-size’
The value must be a plus integer (default 4).
This value is the number of stored previous search-results.
Increasing this value, the number of caching results increases, but
also space does.
* ‘:clear-cache?’
The value must be a boolean (default NIL).
If value is T, then clear all caches.
* ‘:threading?’
The value must be a boolean (default T).
If value is NIL, then QUICKSEARCH becomes not to use threads for
searching.
Note:
Currently on SBCL (1.1.8), threads are part of the default build on
x86[-64] Linux only. Other platforms (x86[-64] Darwin (Mac OS X),
x86[-64] FreeBSD, x86 SunOS (Solaris), and PPC Linux)
experimentally supports threads and must be explicitly enabled at
build-time. For more details, please see [SBCL manual](http://www.sbcl.org/manual/index.html#Threading).
* ‘:quicklisp-verbose?’
The value must be a boolean (default NIL).
If value is T, then outputs version of quicklisp and whether library
had installed your local.
Example:
CL-REPL> (qs:config :QUICKLISP-VERBOSE? t)
CL-REPL> (qs:? "json" :q)
SEARCH-RESULTS: "json"
Quicklisp: 2013-04-20 ;<- quicklisp version
!cl-json ;<- if library has been installed via quicklisp, print prefix "!".
!cl-json.test
com.gigamonkeys.json ;<- if not, none.
json-template
st-json
T
Note:
* If you would prefer permanent configuration,
for example, add codes something like the following in the CL init
file.
In ‘.sbclrc‘ for SBCL, ‘ccl-init.lisp‘ for CCL:
(ql:quickload :quicksearch)
(qs:config :maximum-columns-of-description 50
:maximum-number-of-fetching-repositories 20
:cache-size 10
:threading? nil
:quicklisp-verbose? t)
quicksearch.lisp (file)
Search for CL projects with ‘search-word’ in Quicklisp, Cliki, GitHub
and BitBucket. ‘search-word’ must be a string, number or symbol (symbol
will be automatically converted into downcase-string).
Keywords:
* If ‘?web’ is NIL, it does not search in Cliki, GitHub and BitBucket.
* If ‘?quicklisp’ is NIL, it does not search in Quicklisp (also
‘?cliki’, ‘?github’, ‘?bitbucket’).
* At least one search-space must be specified.
* If ‘?description’ is T, it displays project’s descriptions (except
for Quicklisp-search).
* If ‘?url’ is T, it display project’s url.
* ‘?cut-off’ is the max number of printing repositories each space.
Note:
* keyword ‘?cut-off’ controls only printing results, nothing to do with
the maximum number of fetching repositories (see. function CONFIG
documentation).
* About #\Space in ‘search-word’:
In case ‘search-word’ contains #\Space, Quicklisp-search is
OR-search, whereas Cliki-search, GitHub-, BitBucket- is AND-search.
e.g. (quicksearch "foo bar")
Quicklisp-search for "foo" OR "bar",
Cliki-search, GitHub-, BitBucket- for "foo" AND "bar".
quicksearch.lisp (file)
Previous: Exported definitions, Up: Definitions [Contents][Index]
• Internal special variables | ||
• Internal functions |
Next: Internal functions, Previous: Internal definitions, Up: Internal definitions [Contents][Index]
quicksearch.lisp (file)
quicksearch.lisp (file)
quicksearch.lisp (file)
quicksearch.lisp (file)
quicksearch.lisp (file)
quicksearch.lisp (file)
quicksearch.lisp (file)
quicksearch.lisp (file)
quicksearch.lisp (file)
quicksearch.lisp (file)
quicksearch.lisp (file)
quicksearch.lisp (file)
quicksearch.lisp (file)
quicksearch.lisp (file)
Previous: Internal special variables, Up: Internal definitions [Contents][Index]
quicksearch.lisp (file)
quicksearch.lisp (file)
quicksearch.lisp (file)
quicksearch.lisp (file)
quicksearch.lisp (file)
quicksearch.lisp (file)
quicksearch.lisp (file)
quicksearch.lisp (file)
quicksearch.lisp (file)
quicksearch.lisp (file)
quicksearch.lisp (file)
quicksearch.lisp (file)
quicksearch.lisp (file)
quicksearch.lisp (file)
quicksearch.lisp (file)
quicksearch.lisp (file)
quicksearch.lisp (file)
quicksearch.lisp (file)
MAP-REDUCE is suitable for only the case that ‘mapper”s cost is much
expensive (e.g. QUICKSEARCH invokes DRAKMA:HTTP-REQUEST as ‘mapper’).
For each element in ‘sequence’ (as an argument), ‘mapper’ is computed it
with each thread, then the results are collected by ‘reducer’.
Examples: (inefficient but intuitive)
(map-reduce #’+
(lambda (x) (expt x 2)) ;<- each thread computes this
’(1 2 3 4))
=> 30
(map-reduce #’append
(lambda (x) (list (expt x 2)))
’(1 2 3 4))
=> (1 4 9 16)
(map-reduce (lambda (x y) (format nil "~A~A" x y))
(lambda (c) (code-char (1- (char-code c))))
"IBM")
=> "HAL"
Note:
* Use only for expensive computation (e.g. fetching a resource on the
web).
* If ‘mapper’ assigns a value for the same global variable, it will
cause interleave.
* Strictly, this MAP-REDUCE is not the MapReduce, but abstract model
is the same if threads are equated with worker nodes.
quicksearch.lisp (file)
quicksearch.lisp (file)
quicksearch.lisp (file)
quicksearch.lisp (file)
quicksearch.lisp (file)
quicksearch.lisp (file)
quicksearch.lisp (file)
quicksearch.lisp (file)
quicksearch.lisp (file)
quicksearch.lisp (file)
quicksearch.lisp (file)
quicksearch.lisp (file)
quicksearch.lisp (file)
quicksearch.lisp (file)
quicksearch.lisp (file)
quicksearch.lisp (file)
Concatenates strings
quicksearch.lisp (file)
quicksearch.lisp (file)
Previous: Definitions, Up: Top [Contents][Index]
• Concept index | ||
• Function index | ||
• Variable index | ||
• Data type index |
Next: Function index, Previous: Indexes, Up: Indexes [Contents][Index]
Jump to: | F L Q |
---|
Jump to: | F L Q |
---|
Next: Variable index, Previous: Concept index, Up: Indexes [Contents][Index]
Jump to: | ?
C E F G I M O P Q R S |
---|
Jump to: | ?
C E F G I M O P Q R S |
---|
Next: Data type index, Previous: Function index, Up: Indexes [Contents][Index]
Jump to: | *
S |
---|
Jump to: | *
S |
---|
Previous: Variable index, Up: Indexes [Contents][Index]
Jump to: | P Q S |
---|
Index Entry | Section | ||
---|---|---|---|
| |||
P | |||
Package, quicksearch : | The quicksearch package | ||
| |||
Q | |||
quicksearch : | The quicksearch system | ||
quicksearch : | The quicksearch package | ||
| |||
S | |||
System, quicksearch : | The quicksearch system | ||
|
Jump to: | P Q S |
---|