[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Elisp printer
From: |
Stefan Monnier |
Subject: |
Re: Elisp printer |
Date: |
Sun, 05 Mar 2017 21:50:18 -0500 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/26.0.50 (gnu/linux) |
> I tried with (symbol-function 'byte-compile-arglist-warn), where I have
> advised that function, and got
> #+begin_src emacs-lisp
> #<advice-wrapper :around #<compiled-function
> (name arglist macrop)
> #<bytecode> > my-byte-compile-arglist-warn--around-ad>
> #+end_src
I see, yes, that's ugly.
>> We could use a syntax more like that of structs, i.e. something of the
>> form #s(...). For those objects which really aren't structs at all, we
>> could use a similar notation with another letter (e.g. #f(...) for
>> function objects such as advice thingies)?
> Is just one letter enough?
Of course: the "#s(..)" is really "#s(<type> ...)" so the above example
could look like
#f(advice-wrapper :around #f(compiled-function (name arglist macrop)
#<bytecode>)
my-byte-compile-arglist-warn--around-ad)
> How would thunks and streams look like with
> this scheme?
You'd get to choose when you implement their corresponding methods but
they could look like
#f(thunk ...)
and
#f(stream ...)
-- Stefan
- Elisp printer (was: bug#25295: Represent eieio objects using object-print in backtraces and edebug), Michael Heerdegen, 2017/03/02
- Re: Elisp printer, Stefan Monnier, 2017/03/02
- Re: Elisp printer, Michael Heerdegen, 2017/03/02
- Re: Elisp printer, Tom Tromey, 2017/03/07
- Re: Elisp printer, Stefan Monnier, 2017/03/07
- Re: Elisp printer, Tom Tromey, 2017/03/08
- Re: Elisp printer, Stefan Monnier, 2017/03/08
- Re: Elisp printer, Lars Brinkhoff, 2017/03/08
- Re: Elisp printer, Stefan Monnier, 2017/03/08
- Re: Elisp printer, Lars Brinkhoff, 2017/03/09
- User-defined record types, Lars Brinkhoff, 2017/03/14
- Re: User-defined record types, Lars Brinkhoff, 2017/03/14
- Message not available
- Message not available
- Re: User-defined record types, Lars Brinkhoff, 2017/03/14