***exio4 is now known as y
<ewemoa>i would like to be able to jump to definitions of things such as wrap-program -- creating a tags table via guix's Makefile and using find-tag in emacs yields: "No tags containing wrap-program" -- any clues what i might be doing wrong or other alternatives (apart from grepping)? ***Steap_ is now known as Steap
<davexunit>one of the complaints above has to do with systemd's limited directives in its unit file language <davexunit>dmd, of course, doesn't have such a problem. :) <civodul>indeed, it even allows you to do (system "rm -rf /") ;-) <davexunit>systemd seems to be more about limiting what the user can do. <civodul>unit files are purely declarative, which has pros and cons <civodul>and the cons definitely is that if you cannot express what the language was not designed for, you're screwed <civodul>if would have thought they were sufficiently expressive for the job, from what i saw <alezost>yeah, I always felt inconvenience with systemd units but using dmd for user services is a real power! <civodul>but obviously, the language is getting more and more complex <civodul>the nice thing in GuixSD is that we can add file-system-mounting services, or networking services, without having to develop a systemd-mount-file-system plug-in ;-) <davexunit>paronaeya told me about the configuration management system Ansible awhile ago. they decided to use YAML for *all* configuration, the user doesn't write any code. <davexunit>now they use a templating system to produce these YAML files! <davexunit>experiences like this have taught me to just use a general purpose programming language from get-go. <civodul>the history of the Nix language is interesting too <civodul>now one can write primitives in C++ and have them loaded ;-) <davexunit>seems they can't even escape the natural progression of DSLs. <davexunit>while on the subject, I see DSL used to describe many things that I consider different. for example, I think the Nix language or systemd's unit files are DSLs, but Ruby people talk a lot about (embedded) DSLs in Ruby, but Ruby doesn't allow syntactic abstraction. <davexunit>so I have a hard time considering them EDSLs. <civodul>well, it's implemented very differently from what we call EDSLs in Scheme or Scala or Haskell <civodul>it uses run-time mechanisms, such as catching calls to undefined methods <civodul>but the end result is still an EDSL, IMO <civodul>i did find it "weird" when i was first exposed to it <davexunit>there's this article going around called "why Go is doomed to succeed" <davexunit>and there's a quote in it like "Go doesn't let you abstract yourself in the foot" <civodul>"why assembly is doomed to succeed" ;-) <davexunit>a lot of people have picked up on that quote and liked it <davexunit>basically, Go makes you write simple code that any joe programmer can maintain <civodul>Go doesn't seem to be that successful though, is it? <civodul>Steap: you must be wrong, i know more people hacking in Guile than people hacking in Go ;-) <Steap>civodul: by "famous" I mean "who have heard of it" <civodul>look, to most people on this channel, ".go" is the extension for "Guile objects" <civodul>so, assuming this is a representative sample, ... <ewemoa>has anyone had luck using gnu global with the guix source tree? <ewemoa>davexunit: i haven't had luck jumping to defintions via geiser -- do you do anything special? <davexunit>ewemoa: you have to have the relevant module loaded at the REPL <davexunit>once you've actually loaded that code, you're good to go <ewemoa>davexunit: ah thanks -- will try to make use of that hint :) <civodul>ewemoa: you may also need to set geiser-guile-load-path appropriately <civodul>and then just C-c C-k in a Scheme file <amz3>how do you set geiser-guile-load-path, using a variable? <civodul>amz3: it's an emacs variable, so (setq geiser-guile-load-path (cons ...)) <amz3>it works without settings geiser-guile-load-path I think, if emacs was opened in the correct directory <amz3>right now I try to tame tags to go back where I previously edited code, I use bm but it's not perfect <amz3>e.g. I can't go in another buffer <efraim>when i run guix hash do i need to specify -f base32 <civodul>efraim: 'guix hash' defaults to '-f nix-base32', which is the format we use in sha256 fields <civodul>so you generally don't need to specify -f <efraim>i saw that it defaulted to nix-base32, didn't know if that was a historical artifact <civodul>"historical artifact", well said :-) <civodul>2.5 years ago i implemented base32 as in the RFC, just to realize that Nix uses a home-made base32 <civodul>which is why (guix base32) is highly customizable :-) <civodul>not only that: it's also done in reverse order <civodul>i guess because that's how the code came out on that day ;-) <mark_weaver>they avoided some of the most common letters, like 'e' <mark_weaver>this means that when scanning store items for nix hashes, one is much less likely to find something that looks like a nix hash string but isn't. <davexunit>I wonder if any of the nix academic papers or source code describe this design decision <civodul>mark_weaver: ooh, that could be the reason, indeed! <amz3>how would they know 40 years ago, what were common numbers? <gonz_>Will there be a video from the talk at OpenTechSummit? <gonz_>Would it be interesting to make a PKGBUILD->recipe tool, by the way? <gonz_>Arch linux has a very wide package space. <gonz_>Most likely there's something I'm overlooking, though, because otherwise someone would've just made it already, I figure. <davexunit>gonz_: it would, but I think it would be complicated to implement <davexunit>because the build code in the PKGBUILD files would have to be thrown out <gonz_>I'm looking to jump to Guix on my next setup and there are a few packages I would need to migrate to feel ok with doing so. <gonz_>I need to make a recipe for xmonad, for example, I guess. <davexunit>we've had some progress lately on haskell support <davexunit>but I imagine that one will still have some complicated bits <gonz_>Let's see. These ones aren't exactly terrible to install yourself, but; clojure, erlang, elixir. <davexunit>someone posted the beginnings of a clojure package the other day <gonz_>I feel spoiled by pacman saying this, but I've just become so comfortable with it. httpie, lxrandr <gonz_>There's a bunch, but I also know I'd do fine without having all of it just a command away. <davexunit>you should try your hand at packaging some of these <davexunit>you can do it all from the comfort of arch, too. <gonz_>Yeah, I think I will, actually. <gonz_>Might as well get a head start on it if I actually am switching too. <ewemoa>civodul, mark_weaver, davexunit: fwiw, in eelco's ph.d. thesis, 5.1 has a bit on skipping e, o, t, and u <civodul>ewemoa: indeed, thanks for digging it up