IRC channel logs
2022-02-17.log
back to list of logs
<EndOfAnEra>can someone help me get started with guile, there are some things that are unclear; I don't have autocomplete or anything <EndOfAnEra>is there supposed to be a magic declaration at the top that enables autocomplete <EndOfAnEra>I'm in GUIX, is it supposed to be connected to the systems REPL? <EndOfAnEra>is one supposed to add loading paths somewhere, to interact with the broader guix framework? <civodul>EndOfAnEra: hi! on Guix System, there's a default ~/.guile that guides you to get completion and colors with the guile-readline and guile-colorized packages <EndOfAnEra>civodul: thank you I'll check it out, and how to set up ~/.guile on GNU Guix (which is guile-based) <singpolyma>EndOfAnEra: also, if you want to use the guile repl to load guix modules you should use `guix repl` command <EndOfAnEra>civodul: does it then interact with the live system (REPL)? <EndOfAnEra>I'm thinking it's like Emacs ELisp where you interact with the live editor <EndOfAnEra>singpolyma: sure, you can spawn an interactive shell, but when writing scripts, you'd also want to interact with the live system <singpolyma>EndOfAnEra: `guix repl` can take a command line argument to run a script <EndOfAnEra>singpolyma: ok cool. So you load guile framework things through ~/.guile, for autocomplete, and use guix repl to execute it on the live system if I understood correctly, I'll check out setting up ~/.guile <EndOfAnEra>the definitions/declarations on disk and load paths, may not match the live system though <singpolyma>The system is not quite as "live" as emacs, given it's size and structure, but you can definitely do useful things from the repl that will change your system <EndOfAnEra>emacs-guix plugins seem to get information from somewhere of the live system <EndOfAnEra>it looks like a live system in emacs when using this framework <EndOfAnEra>so my workflow confusion is more about how to code it <EndOfAnEra>thanks anyway, I'll try asking in the OS channel or something later when figuring out how to formulate what I mean. Since guix configs are guile scripts so you open an editor and sort of want autocmplete and all from the live system. <lilyp>EndOfAnEra: Geiser has autocompletion support, but it too requires you spawn a Guile REPL <EndOfAnEra>lilyp: the guix daemon is virtually a "live" REPL from what I understand, so one can connect to it using geiser-connect <EndOfAnEra>lilyp: but it's like python, you don't really sit in the python interpreter when coding <EndOfAnEra>you can see installed packages, live services running, various such, it feels like emacs in the interpreter <EndOfAnEra>but you configure it with a guile config file, and that doesn't get autocomplete from anywhere, maybe it's ~/.guile load paths, however those load paths contain static files, and not the "system repl" that has services running <lilyp>All smart autocompletion is really just executing your source code in a REPL behind the curtains <lilyp>but some call it a ~language server~ and act as though it was something else <EndOfAnEra>you know how it is in emacs, if you start an test-elisp.el, you get autocomplete from the "live" emacs <lilyp>yup, and in a scheme buffer, if you M-x geiser and switch back to the buffer, you have autocompletion and eldoc for basic guile stuff <lilyp>emacs-guix uses geiser under the hood, but spawning a "guix repl" instead of your normal guile <EndOfAnEra>yes eldoc-like things, I'm very new to all of this so I'm hoping to learn it quickly with easy access to eldoc etc <EndOfAnEra>lilyp: it's most likely a guix-specific question for how people establish the workflow, thanks anyway <theruran>dsmith: well I was thinking of the semi-literate style where the text-as-comments is alongside the code segments <theruran>do you know how to construct a Skribilo document where the nested code chunks can be extracted and run as a Scheme program? <dsmith>theruran: Nope. That would be a civodul question