[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Guile REPL Server
From: |
David Kastrup |
Subject: |
Re: Guile REPL Server |
Date: |
Thu, 19 May 2022 13:28:48 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux) |
Jonas Hahnfeld via LilyPond user discussion <lilypond-user@gnu.org>
writes:
> On Tue, 2022-05-17 at 23:28 +0200, David Kastrup wrote:
>> Jonas Hahnfeld via LilyPond user discussion <lilypond-user@gnu.org>
>> writes:
>>
>> > On Tue, 2022-05-17 at 09:57 +0200, Jean Abou Samra wrote:
>> > > Le 17/05/2022 à 00:29, Hendursaga a écrit :
>> > > > I'm trying to start a REPL server[1] inside LilyPond's Guile
>> > > interpreter, but I can't get it to even load readline support.
>> > >
>> > > Readline support is an optional feature in Guile. It looks like
>> > > out new infrastructure for building binaries compiles Guile without
>> > > it. We may or may not want to do it (Readline is an extra dependency);
>> > > CCing Jonas on this matter.
>> >
>> > Right, this is intentional. I don't find it convincing that the
>> > official binaries should be bigger for everybody to enable an optional
>> > feature (readline support) in a dependency (Guile) that only a very
>> > tiny fraction might ever try to use...
>>
>> Personally, I'd rather have it. The tiny fraction that will want
>> readline support will want it for running scheme-sandbox or other forms
>> of REPL. It greatly increases the friendliness of playing around with
>> Scheme stuff in the manner the manual suggests, and the people playing
>> around with Scheme stuff are the most likely candidates for becoming
>> future contributors.
>
> As I just replied in my other message, the REPL itself works fine.
"[readline] greatly increases the friendliness of playing around with
Scheme stuff in the manner the manual suggests, ..."
>
>> We don't make the "Extending LilyPond" guide optional for a reason, and
>> it starts off right away with
>>
>> 1.1.1 Scheme sandbox
>> --------------------
>>
>> The LilyPond installation includes the Guile implementation of Scheme.
>> On most systems you can experiment in a Scheme sandbox by opening a
>> terminal window and typing ‘guile’. On some systems, notably Windows,
>> you may need to set the environment variable ‘GUILE_LOAD_PATH’ to the
>> directory ‘../usr/share/guile/1.8’ in the LilyPond installation. For
>> the full path to this directory see *note (lilypond-learning)Other
>> sources of information::. Alternatively, Windows users may simply
>> choose ‘Run’ from the Start menu and enter ‘guile’.
>
> This paragraph is outdated and I'm working towards not shipping the
> separate guile executable with the official binaries.
Probably by recoding lilypond-invoke-editor in a different language?
> I'll update the documentation afterwards to mention that it can be
> installed on many Linux systems, but is / will not be included in the
> binaries.
Does this have to do with byte-compilation?
>
>> However, a hands-on Scheme sandbox with all of LilyPond loaded is
>> available with this command line:
>> lilypond scheme-sandbox
>>
>> Once the sandbox is running, you will receive a guile prompt:
>>
>> guile>
>>
>> You can enter Scheme expressions at this prompt to experiment with
>> Scheme.
>
> Up to here, this works fine (even if the prompt looks a bit different
> now).
>
>> If you want to be able to use the GNU readline library for
>> nicer editing of the Scheme command line, check the file
>> ‘ly/scheme-sandbox.ly’ for more information. If you already have
>> enabled the readline library for your interactive Guile sessions outside
>> of LilyPond, this should work in the sandbox as well.
>
> What does "nicer editing" mean here? If that is an optional feature to
> an already optional REPL, I'm even more inclined to not include it.
More or less "any editing at all" apart from backspacing over text
before pressing RET.
--
David Kastrup
- Guile REPL Server, Hendursaga, 2022/05/16
- Re: Guile REPL Server, Jean Abou Samra, 2022/05/17
- Re: Guile REPL Server, Jonas Hahnfeld, 2022/05/17
- Re: Guile REPL Server, David Kastrup, 2022/05/17
- Re: Guile REPL Server, Hendursaga, 2022/05/17
- Re: Guile REPL Server, Jonas Hahnfeld, 2022/05/19
- Re: Guile REPL Server, Jean Abou Samra, 2022/05/19
- Re: Guile REPL Server, Jonas Hahnfeld, 2022/05/19
- Re: Guile REPL Server, David Kastrup, 2022/05/19
- Re: Guile REPL Server, Omid Mo'menzadeh, 2022/05/19
- Re: Guile REPL Server,
David Kastrup <=
- Re: Guile REPL Server, Jonas Hahnfeld, 2022/05/19
Re: Guile REPL Server, Jonas Hahnfeld, 2022/05/19