2025/02/03

Newest at the top

2025-02-03 17:01:48 +0100 <dminuoso> Athas: Try haskell.nix
2025-02-03 17:01:45 +0100 <tomsmeding> I see
2025-02-03 17:01:25 +0100 <Athas> Not system libraries, necessarily - other libraries. gplk is one I needed recently.
2025-02-03 17:01:21 +0100 <tomsmeding> the haskell stuff would just come from ghcup
2025-02-03 17:01:05 +0100 <tomsmeding> what system libraries do you need?
2025-02-03 17:00:53 +0100 <Athas> Then I need to learn how to use alpine, and perhaps I need a library that is not in alpine (or not statically linked), etc. It doesn't look like an easy path.
2025-02-03 17:00:43 +0100 <tomsmeding> but I guess my threshold for bwrap is a lot smaller because I already know how it works from the playground :)
2025-02-03 17:00:26 +0100 <tomsmeding> you need alpine I guess, but no need for docker, bwrap works fine enough
2025-02-03 17:00:07 +0100 <Athas> That adds yet another piece of infrastructure (docker, alpine).
2025-02-03 16:59:44 +0100 <tomsmeding> then see maerwald's post that I linked
2025-02-03 16:59:23 +0100 <Athas> tomsmeding: the latter, sorry.
2025-02-03 16:59:07 +0100 <tomsmeding> (and while you _can_ chain ViewPatterns, if you brain allows it, they would chain to the right, because the right-hand side of the ViewPatterns `->` is again a pattern, which could be a ViewPattern if you so desire)
2025-02-03 16:58:33 +0100 <tomsmeding> but I didn't because it looks funny without
2025-02-03 16:58:27 +0100 <tomsmeding> I recommend you put parentheses around the lambda
2025-02-03 16:58:19 +0100 <carbolymer> right
2025-02-03 16:58:18 +0100 <carbolymer> oh wait
2025-02-03 16:58:17 +0100 <tomsmeding> the second is a ViewPattern arrow
2025-02-03 16:58:14 +0100 <tomsmeding> the first arrow is a regular lambda arrow
2025-02-03 16:58:08 +0100 <carbolymer> i.e. -> thing -> other thing
2025-02-03 16:58:06 +0100 <tomsmeding> no this is not a chain
2025-02-03 16:58:02 +0100 <carbolymer> ah I can chain them
2025-02-03 16:57:58 +0100 <tomsmeding> the next step is just doing what you can always do in haskell: if you have `f = ...` then you can replace uses of `f` with `...`
2025-02-03 16:57:39 +0100 <tomsmeding> you're already using viewpatterns
2025-02-03 16:57:36 +0100 <tomsmeding> pattern Foo' s i <- (\(Foo s i) -> (s, i + length s) -> (s, i))
2025-02-03 16:57:31 +0100 <carbolymer> tomsmeding: with viewpatterns?
2025-02-03 16:57:14 +0100 <tomsmeding> haskell is composable
2025-02-03 16:57:12 +0100 <tomsmeding> carbolymer: you can make f an inline lambda function :p
2025-02-03 16:54:21 +0100 <tomsmeding> for the latter: https://hasufell.github.io/posts/2024-04-21-static-linking.html (disclaimer: I haven't tried this, but it seems a lot more convenient than being forced to use nix)
2025-02-03 16:54:00 +0100 <tomsmeding> Athas: statically link ghc, or statically link your own program with ghc?
2025-02-03 16:53:32 +0100 <carbolymer> I understood that you're trying to build your program
2025-02-03 16:53:22 +0100 <carbolymer> ah, link ghc
2025-02-03 16:52:53 +0100 <carbolymer> tbf it's quite easy with haskell.nix
2025-02-03 16:51:49 +0100 <Athas> I am getting quite depressed at how annoying it is becoming to statically link GHC with Nixpkgs. It is teethering on the bring of being so complicated that I cannot justify learning how to do it.
2025-02-03 16:46:26 +0100fp1(~Thunderbi@2001:708:20:1406::10c5) fp
2025-02-03 16:37:21 +0100alfiee(~alfiee@user/alfiee) (Ping timeout: 265 seconds)
2025-02-03 16:33:00 +0100alfiee(~alfiee@user/alfiee) alfiee
2025-02-03 16:29:26 +0100 <ski> mm, but yes, you could either put the context as another parameter of the judgement relation. or push that to the (linear) meta-logic
2025-02-03 16:26:20 +0100eL_Bart0(eL_Bart0@dietunichtguten.org)
2025-02-03 16:23:24 +0100 <ski> tomsmeding : well, you could use Lolli (linear logic programming language), for that resource splitting
2025-02-03 16:23:23 +0100 <ski> kuribas : doing generalization can be a problem
2025-02-03 16:21:20 +0100merijn(~merijn@77.242.116.146) merijn
2025-02-03 16:16:36 +0100merijn(~merijn@77.242.116.146) (Ping timeout: 246 seconds)
2025-02-03 16:08:10 +0100euleritian(~euleritia@dynamic-176-006-146-039.176.6.pool.telefonica.de)
2025-02-03 16:07:33 +0100euleritian(~euleritia@ip4d17fae8.dynamic.kabel-deutschland.de) (Ping timeout: 248 seconds)
2025-02-03 16:05:31 +0100forell(~forell@user/forell) forell
2025-02-03 16:04:06 +0100forell_(~forell@host-178-216-90-220.sta.tvknaszapraca.pl) (Quit: ZNC - https://znc.in)
2025-02-03 15:58:33 +0100 <carbolymer> I mean, is it possible :D
2025-02-03 15:58:23 +0100 <carbolymer> can I simplify this pattern: https://play.haskell.org/saved/nAhyanfL
2025-02-03 15:57:49 +0100lxsameer(~lxsameer@Serene/lxsameer) (Ping timeout: 252 seconds)
2025-02-03 15:50:57 +0100sawilagar(~sawilagar@user/sawilagar) (Quit: Leaving)