1
0
Fork
You've already forked gambit
0

No output buffer. #4

Open
opened 2023年12月12日 20:39:31 +01:00 by adomasda · 1 comment
adomasda commented 2023年12月12日 20:39:31 +01:00 (Migrated from gitlab.com)
Copy link

Using gambit scheme there is no output buffer when evaluating code, like with other schemes

also, lets say i evaluate:

(display "hello")

when evaluated there is no place where it says "the output we got from that evaluation is hello".

i think the problem is in geiser-debug--display-retort function when we assign output to (geiser-eval--retort-output ret) in line 204 in geiser-debug.el. the output get assigned incorrectly.

geiser-debug--display-retort is defined like this:

(defsubst geiser-eval--retort-output (ret)
 (cdr (assq 'output ret)))

when we evaluate (display "hello") in, for example, guile scheme, the ret value in geiser-debug--display-retort is:

((result #<unspecified>) (output . hello))

in gambit, the ret value in geiser-debug--display-retort is:

((result #!void) (output unquote (get-output-string g85)))

in guile case, it gets searches for output symbol, cdr's it and we get "hello", it gambit case the (cdr (assq 'output ret)) logic does not work.

I must apologize, i'm not knowledgeable about gambit so i dont know how to fix that problem.

Using gambit scheme there is no output buffer when evaluating code, like with other schemes also, lets say i evaluate: `(display "hello")` when evaluated there is no place where it says "the output we got from that evaluation is `hello`". i think the problem is in `geiser-debug--display-retort` function when we assign `output` to `(geiser-eval--retort-output ret)` in line 204 in `geiser-debug.el`. the output get assigned incorrectly. `geiser-debug--display-retort` is defined like this: ```lisp (defsubst geiser-eval--retort-output (ret) (cdr (assq 'output ret))) ``` when we evaluate `(display "hello")` in, for example, guile scheme, the `ret` value in `geiser-debug--display-retort` is: ```lisp ((result #<unspecified>) (output . hello)) ``` in gambit, the `ret` value in `geiser-debug--display-retort` is: ```lisp ((result #!void) (output unquote (get-output-string g85))) ``` in guile case, it gets searches for output symbol, cdr's it and we get "hello", it gambit case the `(cdr (assq 'output ret))` logic does not work. I must apologize, i'm not knowledgeable about gambit so i dont know how to fix that problem.
adomasda commented 2023年12月12日 20:41:22 +01:00 (Migrated from gitlab.com)
Copy link

changed the description

changed the description
Sign in to join this conversation.
No Branch/Tag specified
master
0.18.1
0.18
0.17
0.16
0.14
0.13
0.12
0.11.2
0.11.1
0.11
0.10
0.9
0.8.1
0.8
0.7
0.6
0.5
0.4
0.3
0.2.2
0.2.1
0.2
0.1.4
0.1.3
0.1.2
0.1.1
0.1
Milestone
Clear milestone
No items
No milestone
Projects
Clear projects
No items
No project
Assignees
Clear assignees
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
geiser/gambit#4
Reference in a new issue
geiser/gambit
No description provided.
Delete branch "%!s()"

Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?