40ants / lisp-project-of-the-day

Here I'll post notes about Quicklisp projects. Also I publish them on Twitter account svetlyak40wt.
http://40ants.com/lisp-project-of-the-day/
BSD 2-Clause "Simplified" License
51 stars 6 forks source link

data-table #7

Open utterances-bot opened 4 years ago

utterances-bot commented 4 years ago

data-table

http://40ants.com/lisp-project-of-the-day/2020/05/0082-data-table.html

alaa-alawi commented 4 years ago

Hi,

Thanks for the continuous stream of CL libraries review.

I think print-object (printed representation) is more suitable than describe-object (object description, or/and internal information). check their definitions in CLHS, Moreover, it will be less typing at the repl, just type dt and ENTER (faster feedback).

something similar about usage of print-object: https://groups.google.com/forum/?hl=en#!original/comp.lang.lisp/H1OYLPO3E7o/ANy2du9l7FoJ

Regards,

svetlyak40wt commented 4 years ago

Usage of print-object can break formatting in tracebacks:

 0: (SB-KERNEL:ASSERT-ERROR (< CL-SLICE-DEV::SLICE CL-SLICE-DEV::AXIS) 2 CL-SLICE-DEV::SLICE 63 CL-SLICE-DEV::AXIS 63)
 1: ((:METHOD CL-SLICE-DEV:CANONICAL-REPRESENTATION (INTEGER INTEGER)) 63 63) [fast-method]
 2: ((:METHOD CL-SLICE-DEV:CANONICAL-REPRESENTATION (T CONS)) 63 (53 . 63)) [fast-method]
 3: (CL-SLICE-DEV:CANONICAL-REPRESENTATIONS (63) ((53 . 63)))
 4: ((:METHOD CL-SLICE:SLICE (ARRAY)) #("2020-03-01" "2020-03-02" "2020-03-03" "2020-03-04" "2020-03-05" "2020-03-06" ...) (53 . 63)) [fast-method]
 5: (SLICE +----------------+--------------+ ..)
      Locals:
        #:.DEFAULTING-TEMP. = -10
        #:.DEFAULTING-TEMP.#1 = NIL
        COLUMNS = NIL
        COLUMNS#1 = NIL
        DATA-FRAME = +------------+--------------+
| Date       | Prof .25     |
+------------+--------------+
| 2020-03-01 |   -1.5830414 |
| 2020-03-02 |   -1.1816742 |
| 2020-03-03 |          0.0 |
| 2020-03-04 |    4.9093776 |
| 2020-03-05 |    3.3525248 |
| 2020-03-06 |     -1.39572 |
alaa-alawi commented 4 years ago

This is normal for any multi-line string.

svetlyak40wt commented 4 years ago

I'm wondering if there is use some pretty-printer feature which will do proper printing for such multiline data?

alaa-alawi commented 4 years ago

Slime has a pretty-printing configuration if you checked swank. but the indentation in the debugger is hardcoded for printing 'Locals:', check the slime.el file.

On Fri, Jun 5, 2020 at 8:48 PM Alexander Artemenko notifications@github.com wrote:

I'm wondering if there is use some pretty-printer feature which will do proper printing for such multiline data?

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/40ants/lisp-project-of-the-day/issues/7#issuecomment-639623932, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAILUPCK56PO56LAN356HTDRVEOUBANCNFSM4NO3NZQA .