jorty (deprecated aspect) is a user on octodon.social. You can follow them or interact with them if you have an account anywhere in the fediverse. If you don't, you can sign up here.

@eq is this the image you were talking about

@jordyd thanks, the bash scripts i used to make it aren't

@eq there is no such thing as a beautiful bash script

@eq even Perl is an improvement at that point

@jordyd but only because sed only lets you use 9 replacement expressions

@eq nothing wrong with Perl for sed/awk/bash-like uses

@eq Are you aware of scsh (Scheme shell)?

@jordyd Yeah but I'm lazy. if I wanted to make this properly I wouldn't have done it at all

@eq Well, finding a modern, working scsh implementation is a project in itself anyway

@eq This is entirely unrelated, but I want to see an R7RS implementation that is usable for both embedding (like Lua) and extending (like Python or Guile)

@jordyd I barely ever use r7rs tbh, I mostly just stick with r5rs because it works with everything. also guile is practically made to be embedded as a scripting language? or do you mean, like, on embedded devices

@eq The terminology is ambiguous but I'm using it the way Tcl uses it, which is like this:

embedding is when you compile the library together with custom native code into a single executable with no dependencies

extending is when you provide an extension (whether in the scripting language or a native module) to the already-existing interpreter as a loadable module

@jordyd i am pretty sure guile can do both? idk how static linking works with Guile though

@eq Well, static vs dynamic linking isn't so much the issue. It's more a question of whether you can do things like restrict the symbols exported to scripts and the like

@eq So a program might provide a scripting interface for plugins without allowing plugins to run arbitrary code on the system

@jordyd mmmmmmmm i'm not sure how that works tbh but i'm sure you can do it

@eq If you can I'm not aware, but that doesn't mean it doesn't exist

@jordyd anyway what major benefits does r7rs have over r5rs again :thinkhappy:

@eq Also it standardizes the module system

@eq Good, also very controversial, for a number of reasons I don't remember or care about

@eq Something about how macros are exported and namespacing (all languages with macros have this issue, Rust solves it by not exporting macros by default, and exporting them globally if required)

@eq C solves it by saying "what's a macro" while the C preprocessor giggles in the background

jorty (deprecated aspect) @jordyd

@eq Apparently there is an entire section of the manual I never cared to look at

· Web · 0 · 2

@eq Technically they should be called info pages. Luckily they're available online or I'd never read them

@eq
manpage: See the info pages.
me: It seems my problem is unsolvable and I'll need to use some other software.