[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [O] Bug: Problems with ob-scheme in geiser-eval--retort-output [9.2.
From: |
Vladimir Nikishkin |
Subject: |
Re: [O] Bug: Problems with ob-scheme in geiser-eval--retort-output [9.2.6 (9.2.6-4-ge30905-elpa @ /home/lockywolf/.emacs.d/elpa/org-20191021/)] |
Date: |
Tue, 22 Oct 2019 09:35:56 +0800 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.1.2 |
On 21/10/2019 23:24, Vladimir Nikishkin wrote:
> Well, checking for "output" doesn't seem to be useful any way, since
> "output" is never 'nil.
>
> Regarding the fact that the error should be reported to the geiser
> mailing list, that's entirely true. The problem is that the person who
> would be responsible for this error would be me. :) At least for the
> chibi-scheme part.
>
> I don't think that having a few extra checks on the org/geiser interface
> is bad, especially there is also comint coming into play. I can imagine
> valid reasons when "output" is not a valid serialized scheme expression.
>
> On 21/10/2019 22:46, Neil Jerram wrote:
>> On Mon, 21 Oct 2019 at 15:16, Vladimir Nikishkin <address@hidden
>> <mailto:address@hidden>> wrote:
>>
>> Yeah. The "output" is not the result of geiser's elisp functions, as far
>> as I understand, it comes from comint, which reads it from a scheme
>> interpreter, and is expected to be formatted specifically to be fed into
>> geiser-eval--retort-output by the geiser scheme functions (running
>> inside a scheme interpreter).
>>
>> So "output" is never 'nil, because comint, when scheme produces some
>> rubbish, just makes it an empty string, which is not 'nil.
>>
>> Then, "output" is expected to be "retorted" back from a serialized
>> scheme expression into an elisp expression by
>> geiser-eval--retort-output. And this actually may and produce a 'nil,
>> but there is no check for it.
>>
>> So, again, both of the geiser steps (namely, (a) serializing a sexp in
>> scheme, and (b) de-serializing it in geiser-eval--retort-output) may
>> fail.
>>
>>
>> I agree that it's fragile for geiser/scheme to output a sexp that it
>> hopes geiser/elisp will be able to read back. (I'm guilty of doing that
>> in the past too!)
>>
>> Do you have a specific example of that? It feels like the right thing
>> to do would be to report that to the Geiser list, as this could and
>> should be fixed entirely within the Geiser code.
>>
>>
>>
>> Yes, I have seen this going on, actually quite a lot, because both
>> geiser and different scheme interpreters are in constant development and
>> get broken every other day.
>>
>>
>> I use Org with Guile 2.2.3 (via Geiser), and it seems a pretty stable
>> setup to me.
>>
>> Best wishes,
>> Neil
>>
A particularl example could be, perhaps, when an interpreter crashes and
produces something like "Segmentation fault", which is not a valid
geiser-sexp.
pEpkey.asc
Description: application/pgp-keys