public inbox for guile-emacs@sourceware.org
 help / color / mirror / Atom feed
* scheme-describe
@ 2000-05-15 22:10 Keisuke Nishida
  0 siblings, 0 replies; only message in thread
From: Keisuke Nishida @ 2000-05-15 22:10 UTC (permalink / raw)
  To: guile-emacs; +Cc: guile

Hello,

I'm writing a new describe procedure and Emacs's scheme-describe
command for Guile Emacs.  So far, it works like this:

% guile
guile> (use-modules (oop goops))
guile> (use-modules (utils describe))
guile> (describe 'assq)
`assq' is a primitive procedure.
Defined in `$(LIBGUILE)/alist.c:147'.

(assq key alist)

Fetches the entry in ALIST that is associated with KEY.  To
decide whether the argument KEY matches a particular entry in
ALIST, `assq' compares keys with `eq?', `assv'
uses `eqv?' and `assoc' uses `equal?'.  If KEY
cannot be found in ALIST (according to whichever equality
predicate is in use), then `#f' is returned.  These functions
return the entire alist entry found (i.e. both the key and the value).
guile> (describe 'describe-value)
`describe-value' is a generic function of class <generic>.

Method: (describe-value <method>)
  Describe the value of OBJ, which is an instance of <method>.
Method: (describe-value <generic>)
  (not documented)
Method: (describe-value <object>)
  (not documented)
Method: (describe-value <class>)
  (not documented)
Method: (describe-value <procedure>)
  (not documented)
Method: (describe-value <top>)
  (not documented)

Not documented.
guile> (describe '<generic>)
`<generic>' is a class of <entity-class>.

Class precedence list:

Class: <generic>
  Not documented.
Class: <entity>
  Not documented.
Class: <object>
  Not documented.
Class: <top>
  Not documented.

Direct superclasses:

Class: <entity>
  Not documented.

Direct subclasses:

Class: <generic-with-setter>
  Not documented.

Direct slots:

Slot: methods
Slot: n-specialized
Slot: used-by
Slot: cache-mutex

Direct methods:

Method: (describe-value <generic>)
  (not documented)
Method: (describe-type <generic>)
  (not documented)
Method: (apply-methods <generic> <list> <top>)
  (not documented)
Method: (apply-method <generic> <top> <top> <top>)
  (not documented)
Method: (sort-applicable-methods <generic> <top> <top>)
  (not documented)
Method: (compute-applicable-methods <generic> <top>)
  (not documented)
Method: (apply-generic <generic> <top>)
  (not documented)
Method: (initialize <generic> <top>)
  (not documented)
Method: (no-method <generic> <top>)
  (not documented)
Method: (no-applicable-method <generic> <top>)
  (not documented)
Method: (no-next-method <generic> <top>)
  (not documented)
Method: (write <generic> <top>)
  (not documented)
Method: (add-method! <generic> <method>)
  (not documented)

Not documented.
guile>

These output can be redirected into an Emacs buffer.  More work is
needed to make it very useful.  I'll work on this for more few days
and release Guile Emacs 0.4.

Thanks,
Keisuke Nishida

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2000-05-15 22:10 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2000-05-15 22:10 scheme-describe Keisuke Nishida

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).