The repl-utilities Reference Manual

Table of Contents

Next: , Previous: , Up: (dir)   [Contents][Index]

The repl-utilities Reference Manual

This is the repl-utilities Reference Manual, generated automatically by Declt version 2.4 "Will Decker" on Wed Jun 20 12:30:55 2018 GMT+0.


Next: , Previous: , Up: Top   [Contents][Index]

1 Introduction

REPL-UTILITIES

A set of utilities which ease life at the repl.

REPL-UTILITIES is tested on SBCL, CCL and CLISP, and further porting should be easy.

The Big Ideas

REPL-UTILITIES includes three sorts of features: introspective procedures, miscellaneous utility functions, and, pulling them together, methods to conveniently keep these symbols and optionally additional symbols available in whichever package you switch to.

For best effect load this package and use-package it from your lisp's init file.

If you wish to in-package another package at the repl in the course of developing it, you can retain access to these REPL-UTILITIES by using DEV to load and swap to the new package. DEV will import the REPL-UTILITIES symbols into the new package, if they won't cause name conflicts.

DEV also maps funcall over *DEV-HOOKS* after changing the package. *DEV-HOOKS* is an empty list. I personally add hooks which import (via REPL-UTILITIES:SHADOWED-IMPORT) several functions from other packages which I always want available at the REPL, and to change the *DEFAULT-PATHNAME-DEFAULTS* and emacs default-directory to match the source location of the package just loaded.

My favorite operator in here is DEFLEX, taken from Rob Warnock and aliased to LEX. It defines a global lexical variable -- this lets you use temporary test variables without earmuffs safely:

(defvar *x* (list 1 2 3))
(mapcar #'print *x*) ; painful

(lex x (list 1 2 3))
(mapcar #'print x) ; better

Following the lead of CL:IN-PACKAGE, the package changing, loading, and renaming operators (BRING, DEV, and NIC) expand into an EVAL-WHEN so that they can take effect before later forms are read.

The symbol and package introspection operators have been defined as macros to allow their arguments to be unquoted symbols. For convenience they automatically unquote quoted arguments.

Features

The following is lightly edited output of

(repl-utilities:summary repl-utilities)

Introspective Procedures

README:             Print the documentation on the exported symbols of a package.
SUMMARY:            Print the exported symbols along with the first line of their docstrings.
PACKAGE-APROPOS:    Print all package names and nicknames which contain the given string.
DOC:                Print any documentation for the symbol.
DEPENDENCY-LOCATIONS:    Print the pathname of the system and of the systems needed to load it.
EXFNS:              Print the external fboundp symbols of a package.
EXVS:               Print the external globally special symbols of a package.
EXCS:               Print the external symbols for which find-class is truthy.
EXTS:               Print the external symbols which are type specifiers.
EXS:                Print the external symbols of package.
NIC:                Add an additional nickname to package.
ARGLIST:            Return the arglist for the given function name.
DE:                 Shortening of describe. A Rob Warnock function.

Miscellaneous Utilities

TRACE-PACKAGE:      Trace all of the symbols in *package*.
DEFLEX:             Define a top level (global) lexical VAR with initial value VAL,
LEX:                Shortening of deflex: define a global lexical variable.
PRINT-HASH:         Print the hash table as: Key, Value~%
MAC:                Bind *gensym-counter* to 0, Macroexpand-1 the form, pprint result.
DBGV:               Print WHERE, execute FORMS, and print each form and its result to the STREAM.
RIG:                Execute body with profiling and timing.
REPEATABLY:         Use the same random state seed for every execution.

Pulling It Together

DEV:                Load package and IN-PACKAGE it. SHADOWED-IMPORT REPL-UTILITIES exported symbols.
*DEV-HOOKS*:        List of functions to be funcalled after a package is loaded with DEV.
BRING:              Load package and import its exported symbols.
*BRING-HOOKS*:      List of functions to be funcalled after a package is loaded with BRING.
SHADOWED-IMPORT:    Import each symbol into PACKAGE, unless a symbol of the same name is present.

To view full docstrings and argument lists type:

(repl-utilities:readme repl-utilities)

in your repl, or view the api reference on quickdocs.

Examples of *dev-hooks*

One of my primary motivations for introducting *dev-hooks* was to automate importing symbols that I always want available at the repl. For example, if you want to keep my much-todo library at hand, you can (from a context where it is already loaded) do the following:

(defun todo-imports ()
  (repl-utilities:shadowed-import
    (loop for s being the external-symbols of :much-todo
          collect s)))

(pushnew 'todo-imports *dev-hooks*)

The use of 'todo-imports instead of #'todo-imports is significant for appropriate behavior when todo-imports is redefined.

This illustrates a reason I prefer importing to binding personal functions to keywords even though importing leaves the possibility of symbol conflicts: it encourages me to write code in a form that is suitable for sharing as an ASDF system.

One hook I am quite fond of tries to sync the *default-pathname-defaults* and emacs default-directory with the package I am switching into.

(defun d-p-d-package (&optional (package *package*))
  "If the package's name is a homonym for an asdf system, change the *d-p-d* to its
  location on disk and, if (setq slime-enable-evaluate-in-emacs t)
  in emacs, set the slime repl's pathname default as well."
  ;; slime-enable-evaluate-in-emacs warns that it can be a security risk
  (let ((pathloc (ignore-errors (funcall (find-symbol "COMPONENT-PATHNAME" "ASDF")
                                          (funcall (find-symbol "FIND-SYSTEM" "ASDF")
                                                   (intern (package-name package)
                                                           :keyword))))))
    (cond (pathloc
           (setq *default-pathname-defaults* pathloc)
           (when (find-package "SWANK")
             (funcall (find-symbol "EVAL-IN-EMACS" "SWANK")
                      `(with-current-buffer (slime-output-buffer)
                         (setq default-directory
                               ,(namestring *default-pathname-defaults*)))
                      :nowait)))
          (t (format t "~& Couldn't find a source location for ~A~%"
                     package)))))

(pushnew 'd-p-d-package *dev-hooks*)

Installation

The most straightforward way to use REPL-UTILITIES, assuming you are using quicklisp, is to place the following in your lisp's init file after the quicklisp loading forms.

(funcall (find-symbol (symbol-name '#:quickload) (symbol-name '#:ql))
         '#:repl-utilities)
(use-package  '#:repl-utilities)

Or, in a running image, you can simply QL:QUICKLOAD it.

To load REPL-UTILITIES in an image without ASDF (an atypical use case), you can load it with the following:

(load "/path/to/repl-utilities/load")
(use-package  '#:repl-utilities)

The REPL-UTILITIES features relating to systems wrap ASDF and QUICKLISP functionality. When ASDF is unavailable they print a message indicating the limitation.


Next: , Previous: , Up: Top   [Contents][Index]

2 Systems

The main system appears first, followed by any subsystem dependency.


Previous: , Up: Systems   [Contents][Index]

2.1 repl-utilities

Author

Matt Niemeir <matt.niemeir@gmail.com>

License

BSD 2-clause

Description

Ease common tasks at the REPL.

Source

repl-utilities.asd (file)

Components

Next: , Previous: , Up: Top   [Contents][Index]

3 Files

Files are sorted by type and then listed depth-first from the systems components trees.


Previous: , Up: Files   [Contents][Index]

3.1 Lisp


Next: , Previous: , Up: Lisp files   [Contents][Index]

3.1.1 repl-utilities.asd

Location

repl-utilities.asd

Systems

repl-utilities (system)


Next: , Previous: , Up: Lisp files   [Contents][Index]

3.1.2 repl-utilities/package.lisp

Parent

repl-utilities (system)

Location

package.lisp

Packages

repl-utilities


Next: , Previous: , Up: Lisp files   [Contents][Index]

3.1.3 repl-utilities/utils.lisp

Dependency

package.lisp (file)

Parent

repl-utilities (system)

Location

utils.lisp

Exported Definitions
Internal Definitions

Previous: , Up: Lisp files   [Contents][Index]

3.1.4 repl-utilities/repl-utilities.lisp

Dependency

utils.lisp (file)

Parent

repl-utilities (system)

Location

repl-utilities.lisp

Exported Definitions
Internal Definitions

Next: , Previous: , Up: Top   [Contents][Index]

4 Packages

Packages are listed by definition order.


Previous: , Up: Packages   [Contents][Index]

4.1 repl-utilities

Source

package.lisp (file)

Use List

common-lisp

Exported Definitions
Internal Definitions

Next: , Previous: , Up: Top   [Contents][Index]

5 Definitions

Definitions are sorted by export status, category, package, and then by lexicographic order.


Next: , Previous: , Up: Definitions   [Contents][Index]

5.1 Exported definitions


Next: , Previous: , Up: Exported definitions   [Contents][Index]

5.1.1 Special variables

Special Variable: *bring-hooks*

List of functions to be funcalled after a package is loaded with BRING.

The functions are called with the package imported by bring as their only argument.

Package

repl-utilities

Source

repl-utilities.lisp (file)

Special Variable: *dev-hooks*

List of functions to be funcalled after a package is loaded with DEV.

During execution of these functions *PACKAGE* is already set to the package being loaded, and the repl-utilities symbols which will be imported already are. The functions are called with no arguments.

Package

repl-utilities

Source

repl-utilities.lisp (file)


Next: , Previous: , Up: Exported definitions   [Contents][Index]

5.1.2 Macros

Macro: bring PACKAGE &optional SHADOWING-IMPORT-P

Attempt to ql:quickload or asdf:load-system a system with the same name as package. Regardless of whether the load was successful import the package’s exported symbols into the current package. If shadowing-import is nil, only the symbols which won’t cause a symbol conflict are imported.

After importing the package funcall each element of *bring-hooks* with the designated package as its argument.

Expands to an EVAL-WHEN :compile-toplevel :load-toplevel :execute

Package

repl-utilities

Source

repl-utilities.lisp (file)

Macro: dbgv (&optional WHERE STREAM) &body FORMS

Print WHERE, execute FORMS, and print each form and its result to the STREAM.

Package

repl-utilities

Source

repl-utilities.lisp (file)

Macro: deflex VAR VAL &optional DOC

Define a top level (global) lexical VAR with initial value VAL, which is assigned unconditionally as with DEFPARAMETER. If a DOC string is provided, it is attached to both the name |VAR| and the name *STORAGE-FOR-DEFLEX-VAR-|VAR|* as a documentation string of kind ’VARIABLE. The new VAR will have lexical scope and thus may be shadowed by LET bindings without affecting its dynamic (global) value.

Package

repl-utilities

Source

repl-utilities.lisp (file)

Macro: dev PACKAGE

Attempt to ql:quickload or asfd:load-system a system with the same name as package, then swap to the package regardless of whether the load was successful. Import repl-utilities exported symbols that don’t cause symbol conflicts into the newly swapped to package.
Mnemonic for develop.

After swapping to the package map funcall over *dev-hooks*.

Expands to an EVAL-WHEN :compile-toplevel :load-toplevel :execute

Package

repl-utilities

Source

repl-utilities.lisp (file)

Macro: doc SYMBOL &rest IGNORED-ARGUMENTS

Print any documentation for the symbol.
Includes variable, function, type, compiler macro, method combination, and setf documentation.

Package

repl-utilities

Source

repl-utilities.lisp (file)

Macro: excs &optional PACKAGE-NAME

Print the external symbols for which find-class is truthy.

Package

repl-utilities

Source

repl-utilities.lisp (file)

Macro: exfns &optional PACKAGE-NAME

Print the external fboundp symbols of a package.

Package

repl-utilities

Source

repl-utilities.lisp (file)

Macro: exs &optional PACKAGE-NAME

Print the external symbols of package.

Package

repl-utilities

Source

repl-utilities.lisp (file)

Macro: exts &optional PACKAGE-NAME

Print the external symbols which are type specifiers.

Package

repl-utilities

Source

repl-utilities.lisp (file)

Macro: exvs &optional PACKAGE-NAME

Print the external globally special symbols of a package.

Package

repl-utilities

Source

repl-utilities.lisp (file)

Macro: lex &rest ARGS

Shortening of deflex: define a global lexical variable.

Package

repl-utilities

Source

repl-utilities.lisp (file)

Macro: mac EXPR

Bind *gensym-counter* to 0, Macroexpand-1 the form, pprint result.

If expression starts with a quotation, unquotes it first.

Package

repl-utilities

Source

repl-utilities.lisp (file)

Macro: nic PACKAGE-NAME NICK-SYMBOL

Add an additional nickname to package.
Expands to an EVAL-WHEN :compile-toplevel :load-toplevel :execute

Package

repl-utilities

Source

repl-utilities.lisp (file)

Macro: package-apropos STRING-DESIGNATOR

Print all package names and nicknames which contain the given string.

Package

repl-utilities

Source

repl-utilities.lisp (file)

Macro: readme &optional PACKAGE

Print the documentation on the exported symbols of a package.

Package

repl-utilities

Source

repl-utilities.lisp (file)

Macro: repeatably &body BODY

Use the same random state seed for every execution.
Random state seed is changed when call-repeatably is reloaded.

Package

repl-utilities

Source

repl-utilities.lisp (file)

Macro: rig &body BODY

Execute body with profiling and timing.
Arrange for profiling information to print before IO or timing data. Profiling is only available in SBCL and with SB-SPROF available. RIG attempts to load SB-SPROF.

Package

repl-utilities

Source

repl-utilities.lisp (file)

Macro: summary &optional PACKAGE

Print the exported symbols along with the first line of their docstrings.

Package

repl-utilities

Source

repl-utilities.lisp (file)

Macro: trace-package &optional PACKAGE INHERITEDP

Trace all of the symbols in *package*.

This won’t attempt to trace any symbols in :cl

Package

repl-utilities

Source

repl-utilities.lisp (file)


Previous: , Up: Exported definitions   [Contents][Index]

5.1.3 Functions

Function: arglist FNAME

Return the arglist for the given function name. Implementations taken from slime.

Package

repl-utilities

Source

utils.lisp (file)

Function: de &rest REST

Shortening of describe. A Rob Warnock function.

Package

repl-utilities

Source

repl-utilities.lisp (file)

Function: dependency-locations SYSTEM-NAME &optional PRINT-SYSTEM-NAMES-P OPERATION

Print the pathname of the system and of the systems needed to load it.

Package

repl-utilities

Source

repl-utilities.lisp (file)

Function: print-hash HASH-TABLE

Print the hash table as: Key, Value~%

Package

repl-utilities

Source

repl-utilities.lisp (file)

Function: shadowed-import SYMBOLS &optional PACKAGE PRINT-WHEN-SHADOWED-P

Import each symbol into PACKAGE, unless a symbol of the same name is present. If print-when-shadowed-p is true, print a message for each not-imported symbol indicating that it was not imported.

Package

repl-utilities

Source

utils.lisp (file)


Previous: , Up: Definitions   [Contents][Index]

5.2 Internal definitions


Next: , Previous: , Up: Internal definitions   [Contents][Index]

5.2.1 Special variables

Special Variable: *documentation-types*

Types that might work with (documentation obj type)

Package

repl-utilities

Source

utils.lisp (file)

Special Variable: *repl-utilities-rt*

A readtable where [ql quickload] reads as
‘(find-symbol ,(symbol-name ’quickload) ,(symbol-name ’ql))

Package

repl-utilities

Source

utils.lisp (file)


Next: , Previous: , Up: Internal definitions   [Contents][Index]

5.2.2 Macros

Macro: define-external-symbol-printers &body NAME-TYPE-DOCS
Package

repl-utilities

Source

repl-utilities.lisp (file)

Macro: first-form &rest FORMS

Return the first form; useful when you want one of multiple possible conditionally read forms.

Package

repl-utilities

Source

utils.lisp (file)

Macro: with-gensyms (&rest NAMES) &body BODY
Package

repl-utilities

Source

utils.lisp (file)


Next: , Previous: , Up: Internal definitions   [Contents][Index]

5.2.3 Functions

Function: bring% PACKAGE-DESIGNATOR SHADOWING-IMPORT-P
Package

repl-utilities

Source

repl-utilities.lisp (file)

Function: call-repeatably THUNK
Package

repl-utilities

Source

repl-utilities.lisp (file)

Function: dev% PACKAGE
Package

repl-utilities

Source

repl-utilities.lisp (file)

Function: doc% SYMBOL
Package

repl-utilities

Source

repl-utilities.lisp (file)

Function: ensure-unquoted FORM

If form is quoted, remove one level of quoting. Otherwise return form. This is a useful for defining convenience for macros which may be passed a quoted or unquoted symbol.

Package

repl-utilities

Source

utils.lisp (file)

Function: first-line STRING
Package

repl-utilities

Source

utils.lisp (file)

Function: load-system-or-print SYSTEM-DESIGNATOR &optional CONTROL-STRING &rest FORMAT-ARGS
Package

repl-utilities

Source

utils.lisp (file)

Function: package-apropos% STRING-DESIGNATOR
Package

repl-utilities

Source

repl-utilities.lisp (file)

Function: print-asdf-description PACKAGE
Package

repl-utilities

Source

utils.lisp (file)

Function: print-symbols PACKAGE-DESIGNATOR TYPE
Package

repl-utilities

Source

repl-utilities.lisp (file)

Function: readme% &optional PACKAGE
Package

repl-utilities

Source

repl-utilities.lisp (file)

Function: require-once STRING
Package

repl-utilities

Source

utils.lisp (file)

Function: run-time-symbol-reader STREAM CHAR
Package

repl-utilities

Source

utils.lisp (file)

Function: specialp X
Package

repl-utilities

Source

utils.lisp (file)

Function: split-by TEST SEQUENCE
Package

repl-utilities

Source

utils.lisp (file)

Function: string-sort LIST
Package

repl-utilities

Source

utils.lisp (file)

Function: summary% &optional PACKAGE-DESIGNATOR
Package

repl-utilities

Source

repl-utilities.lisp (file)

Function: trace-package% &optional PACKAGE INHERITEDP
Package

repl-utilities

Source

repl-utilities.lisp (file)

Function: type-specifier-p SYMBOL
Package

repl-utilities

Source

utils.lisp (file)


Next: , Previous: , Up: Internal definitions   [Contents][Index]

5.2.4 Generic functions

Generic Function: exists-as SYMBOL TYPE
Package

repl-utilities

Source

utils.lisp (file)

Methods
Method: exists-as SYMBOL (TYPE (eql t))
Method: exists-as SYMBOL (TYPE (eql function))
Method: exists-as SYMBOL (TYPE (eql setf))
Method: exists-as SYMBOL (TYPE (eql type))
Method: exists-as SYMBOL (TYPE (eql class))
Method: exists-as SYMBOL (TYPE (eql variable))
Method: exists-as SYMBOL (TYPE (eql compiler-macro))
Method: exists-as SYMBOL (TYPE (eql method-combination))

Previous: , Up: Internal definitions   [Contents][Index]

5.2.5 Conditions

Condition: unsupported ()
Package

repl-utilities

Source

utils.lisp (file)

Direct superclasses

condition (condition)


Previous: , Up: Top   [Contents][Index]

Appendix A Indexes


Next: , Previous: , Up: Indexes   [Contents][Index]

A.1 Concepts

Jump to:   F   L   R  
Index Entry  Section

F
File, Lisp, repl-utilities.asd: The repl-utilities<dot>asd file
File, Lisp, repl-utilities/package.lisp: The repl-utilities/package<dot>lisp file
File, Lisp, repl-utilities/repl-utilities.lisp: The repl-utilities/repl-utilities<dot>lisp file
File, Lisp, repl-utilities/utils.lisp: The repl-utilities/utils<dot>lisp file

L
Lisp File, repl-utilities.asd: The repl-utilities<dot>asd file
Lisp File, repl-utilities/package.lisp: The repl-utilities/package<dot>lisp file
Lisp File, repl-utilities/repl-utilities.lisp: The repl-utilities/repl-utilities<dot>lisp file
Lisp File, repl-utilities/utils.lisp: The repl-utilities/utils<dot>lisp file

R
repl-utilities.asd: The repl-utilities<dot>asd file
repl-utilities/package.lisp: The repl-utilities/package<dot>lisp file
repl-utilities/repl-utilities.lisp: The repl-utilities/repl-utilities<dot>lisp file
repl-utilities/utils.lisp: The repl-utilities/utils<dot>lisp file

Jump to:   F   L   R  

Next: , Previous: , Up: Indexes   [Contents][Index]

A.2 Functions

Jump to:   A   B   C   D   E   F   G   L   M   N   P   R   S   T   W  
Index Entry  Section

A
arglist: Exported functions

B
bring: Exported macros
bring%: Internal functions

C
call-repeatably: Internal functions

D
dbgv: Exported macros
de: Exported functions
define-external-symbol-printers: Internal macros
deflex: Exported macros
dependency-locations: Exported functions
dev: Exported macros
dev%: Internal functions
doc: Exported macros
doc%: Internal functions

E
ensure-unquoted: Internal functions
excs: Exported macros
exfns: Exported macros
exists-as: Internal generic functions
exists-as: Internal generic functions
exists-as: Internal generic functions
exists-as: Internal generic functions
exists-as: Internal generic functions
exists-as: Internal generic functions
exists-as: Internal generic functions
exists-as: Internal generic functions
exists-as: Internal generic functions
exs: Exported macros
exts: Exported macros
exvs: Exported macros

F
first-form: Internal macros
first-line: Internal functions
Function, arglist: Exported functions
Function, bring%: Internal functions
Function, call-repeatably: Internal functions
Function, de: Exported functions
Function, dependency-locations: Exported functions
Function, dev%: Internal functions
Function, doc%: Internal functions
Function, ensure-unquoted: Internal functions
Function, first-line: Internal functions
Function, load-system-or-print: Internal functions
Function, package-apropos%: Internal functions
Function, print-asdf-description: Internal functions
Function, print-hash: Exported functions
Function, print-symbols: Internal functions
Function, readme%: Internal functions
Function, require-once: Internal functions
Function, run-time-symbol-reader: Internal functions
Function, shadowed-import: Exported functions
Function, specialp: Internal functions
Function, split-by: Internal functions
Function, string-sort: Internal functions
Function, summary%: Internal functions
Function, trace-package%: Internal functions
Function, type-specifier-p: Internal functions

G
Generic Function, exists-as: Internal generic functions

L
lex: Exported macros
load-system-or-print: Internal functions

M
mac: Exported macros
Macro, bring: Exported macros
Macro, dbgv: Exported macros
Macro, define-external-symbol-printers: Internal macros
Macro, deflex: Exported macros
Macro, dev: Exported macros
Macro, doc: Exported macros
Macro, excs: Exported macros
Macro, exfns: Exported macros
Macro, exs: Exported macros
Macro, exts: Exported macros
Macro, exvs: Exported macros
Macro, first-form: Internal macros
Macro, lex: Exported macros
Macro, mac: Exported macros
Macro, nic: Exported macros
Macro, package-apropos: Exported macros
Macro, readme: Exported macros
Macro, repeatably: Exported macros
Macro, rig: Exported macros
Macro, summary: Exported macros
Macro, trace-package: Exported macros
Macro, with-gensyms: Internal macros
Method, exists-as: Internal generic functions
Method, exists-as: Internal generic functions
Method, exists-as: Internal generic functions
Method, exists-as: Internal generic functions
Method, exists-as: Internal generic functions
Method, exists-as: Internal generic functions
Method, exists-as: Internal generic functions
Method, exists-as: Internal generic functions

N
nic: Exported macros

P
package-apropos: Exported macros
package-apropos%: Internal functions
print-asdf-description: Internal functions
print-hash: Exported functions
print-symbols: Internal functions

R
readme: Exported macros
readme%: Internal functions
repeatably: Exported macros
require-once: Internal functions
rig: Exported macros
run-time-symbol-reader: Internal functions

S
shadowed-import: Exported functions
specialp: Internal functions
split-by: Internal functions
string-sort: Internal functions
summary: Exported macros
summary%: Internal functions

T
trace-package: Exported macros
trace-package%: Internal functions
type-specifier-p: Internal functions

W
with-gensyms: Internal macros

Jump to:   A   B   C   D   E   F   G   L   M   N   P   R   S   T   W  

Next: , Previous: , Up: Indexes   [Contents][Index]

A.3 Variables

Jump to:   *  
S  
Index Entry  Section

*
*bring-hooks*: Exported special variables
*dev-hooks*: Exported special variables
*documentation-types*: Internal special variables
*repl-utilities-rt*: Internal special variables

S
Special Variable, *bring-hooks*: Exported special variables
Special Variable, *dev-hooks*: Exported special variables
Special Variable, *documentation-types*: Internal special variables
Special Variable, *repl-utilities-rt*: Internal special variables

Jump to:   *  
S  

Previous: , Up: Indexes   [Contents][Index]

A.4 Data types

Jump to:   C   P   R   S   U  
Index Entry  Section

C
Condition, unsupported: Internal conditions

P
Package, repl-utilities: The repl-utilities package

R
repl-utilities: The repl-utilities system
repl-utilities: The repl-utilities package

S
System, repl-utilities: The repl-utilities system

U
unsupported: Internal conditions

Jump to:   C   P   R   S   U