2024-09-14 00:03:32 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
2024-09-14 00:06:12 +0200 | peterbecich | (~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 276 seconds) |
2024-09-14 00:08:43 +0200 | rdcdr | (~rdcdr@user/rdcdr) (Quit: ZNC 1.8.2+deb3.1+deb12u1 - https://znc.in) |
2024-09-14 00:09:34 +0200 | rdcdr | (~rdcdr@user/rdcdr) |
2024-09-14 00:14:24 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 00:19:34 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds) |
2024-09-14 00:29:47 +0200 | tabi | (~tabi@static.151.210.203.116.clients.your-server.de) (Quit: Leaving.) |
2024-09-14 00:30:13 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 00:33:13 +0200 | <haskellbridge> | <thirdofmay18081814goya> what's a good intro to algebraic effects? |
2024-09-14 00:35:06 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds) |
2024-09-14 00:44:43 +0200 | __monty__ | (~toonn@user/toonn) (Quit: leaving) |
2024-09-14 00:45:58 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 00:50:23 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 245 seconds) |
2024-09-14 00:55:54 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2024-09-14 00:56:08 +0200 | acidjnk | (~acidjnk@p200300d6e72cfb55f40f4d37683d20bb.dip0.t-ipconnect.de) (Ping timeout: 272 seconds) |
2024-09-14 00:58:52 +0200 | stiell_ | (~stiell@gateway/tor-sasl/stiell) (Remote host closed the connection) |
2024-09-14 01:00:48 +0200 | stiell_ | (~stiell@gateway/tor-sasl/stiell) |
2024-09-14 01:01:31 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 01:01:51 +0200 | <d34df00d> | https://arxiv.org/abs/1807.05923 this one is good I think. |
2024-09-14 01:02:07 +0200 | <haskellbridge> | <thirdofmay18081814goya> d34df00d: ty! |
2024-09-14 01:02:15 +0200 | stiell | (~stiell@gateway/tor-sasl/stiell) |
2024-09-14 01:02:22 +0200 | stiell_ | (~stiell@gateway/tor-sasl/stiell) (Remote host closed the connection) |
2024-09-14 01:02:58 +0200 | <JuanDaugherty> | ur in monad country |
2024-09-14 01:03:42 +0200 | <haskellbridge> | <thirdofmay18081814goya> it's ok i think they're just free monads |
2024-09-14 01:03:57 +0200 | <d34df00d> | Exactly! |
2024-09-14 01:04:03 +0200 | <d34df00d> | (more or less) |
2024-09-14 01:06:13 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
2024-09-14 01:14:07 +0200 | <monochrom> | I second that paper. :) |
2024-09-14 01:15:22 +0200 | <monochrom> | As for freeness, I would say: monad : algebraic effect :: free monad : free algebraic effect |
2024-09-14 01:17:17 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 01:21:22 +0200 | mrmr155334346318 | (~mrmr@user/mrmr) |
2024-09-14 01:22:00 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds) |
2024-09-14 01:33:03 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 01:36:02 +0200 | peterbecich | (~Thunderbi@syn-047-229-123-186.res.spectrum.com) |
2024-09-14 01:37:53 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 245 seconds) |
2024-09-14 01:39:30 +0200 | Tuplanolla | (~Tuplanoll@91-159-69-59.elisa-laajakaista.fi) (Quit: Leaving.) |
2024-09-14 01:40:30 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 01:44:16 +0200 | _________ | (~nobody@user/noodly) (Ping timeout: 272 seconds) |
2024-09-14 01:44:42 +0200 | <haskellbridge> | <magic_rb> Free algebraic effect? Thats a thing? |
2024-09-14 01:45:02 +0200 | _________ | (~nobody@user/noodly) |
2024-09-14 01:45:23 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 245 seconds) |
2024-09-14 01:56:16 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 02:01:02 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 244 seconds) |
2024-09-14 02:01:41 +0200 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) |
2024-09-14 02:09:49 +0200 | pavonia | (~user@user/siracusa) |
2024-09-14 02:12:04 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 02:17:24 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds) |
2024-09-14 02:31:20 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 02:32:15 +0200 | califax | (~califax@user/califx) (Remote host closed the connection) |
2024-09-14 02:32:56 +0200 | byte | (~byte@149.28.222.189) (Remote host closed the connection) |
2024-09-14 02:33:23 +0200 | califax | (~califax@user/califx) |
2024-09-14 02:33:25 +0200 | byte | (~byte@149.28.222.189) |
2024-09-14 02:36:35 +0200 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Remote host closed the connection) |
2024-09-14 02:36:43 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 264 seconds) |
2024-09-14 02:44:03 +0200 | JuanDaugherty | (~juan@user/JuanDaugherty) (Quit: JuanDaugherty) |
2024-09-14 02:44:04 +0200 | <monochrom> | Sure! Iff the algebra of the effect is a free algebra. |
2024-09-14 02:45:06 +0200 | <monochrom> | For example the algebraic effect of putChar and getChar (Plotkin's papers etc call it teletype) is an example. |
2024-09-14 02:45:56 +0200 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection) |
2024-09-14 02:46:13 +0200 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) |
2024-09-14 02:49:32 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 02:54:17 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 265 seconds) |
2024-09-14 03:05:42 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 03:10:43 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 265 seconds) |
2024-09-14 03:13:02 +0200 | dmwit | (~dmwit@pool-173-66-76-243.washdc.fios.verizon.net) |
2024-09-14 03:14:01 +0200 | lol_ | jcarpenter2 |
2024-09-14 03:17:02 +0200 | <dmwit> | I'd like to make a parameterized pattern synonym. Is there a way? I tried `pattern Prefix :: String -> String; pattern Prefix s <- (stripPrefix s -> Just _)`, but GHC says s is not in scope. |
2024-09-14 03:18:44 +0200 | <dmwit> | (not in scope on the left, in particular, sorry) |
2024-09-14 03:20:59 +0200 | <c_wraith> | dmwit: you can't pass a *value* argument to a pattern, but... |
2024-09-14 03:21:22 +0200 | <dmwit> | oh I love that |
2024-09-14 03:21:38 +0200 | <dmwit> | Compile-time constants are good enough, thanks for the hint. ^_^ |
2024-09-14 03:21:55 +0200 | <c_wraith> | I played around with this before. https://paste.tomsmeding.com/8ll7FMC7 |
2024-09-14 03:23:32 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 03:23:35 +0200 | <c_wraith> | You can do something like: case "foo bar" of PB2 @"foo" s -> s == " bar" |
2024-09-14 03:23:43 +0200 | <c_wraith> | (rename as you desire) |
2024-09-14 03:25:22 +0200 | <c_wraith> | Maybe in ghc 9.12, it can be modified to use RequiredTypeArguments so you don't even need the @ |
2024-09-14 03:28:08 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
2024-09-14 03:39:36 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 03:40:11 +0200 | <c_wraith> | (I did just check. While 9.10 has -XRequiredTypeArguments, it can't be used in a pattern's type. Unsure if that's planned to change.) |
2024-09-14 03:46:29 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 265 seconds) |
2024-09-14 03:54:25 +0200 | <haskellbridge> | <thirdofmay18081814goya> hm is there a deeper structure which relates algebraic effects to higher-order effects? |
2024-09-14 03:55:15 +0200 | <haskellbridge> | <thirdofmay18081814goya> i.e. does handling higher-order effects have to be done in an ad-hoc fashion |
2024-09-14 03:58:18 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 04:02:39 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds) |
2024-09-14 04:10:50 +0200 | <Leary> | magic_rb: In `data Free f a = Pure a | Op (f (Free f a))`, the algebraic effect `Op :: forall f a. f (Free f a) -> Free f a` is a constructor parametric in `f`; it can only be a free F-algebra for any given F. You later collapse the free F-algebra by supplying an `F (M A) -> M A` for some monad M and A. For comparison, consider an implementation of algebraic effects using delimited control: you first supply an F-algebra `F (Cont R A) -> Cont R A`, then |
2024-09-14 04:10:51 +0200 | <Leary> | within a delimited scope you gain access to a corresponding (non-free) algebraic effect `opF :: forall b. F (Cont A b) -> Cont A b`. |
2024-09-14 04:13:43 +0200 | ZharMeny | (~ZharMeny@user/ZharMeny) (Quit: ERC 5.5.0.29.1 (IRC client for GNU Emacs 29.4)) |
2024-09-14 04:15:33 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 04:16:50 +0200 | <Leary> | thirdofmay: I don't know about "deeper structure", but 'A Framework for Higher-Order Effects & Handlers' unifies various ad-hoc extensions of base algebraic effects by enriching the free monad in a broad and direct (not so ad-hoc) way. |
2024-09-14 04:18:45 +0200 | <haskellbridge> | <thirdofmay18081814goya> Leary: neat, will take a look, ty! |
2024-09-14 04:20:29 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds) |
2024-09-14 04:33:53 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 04:39:12 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 276 seconds) |
2024-09-14 04:43:29 +0200 | td_ | (~td@i53870934.versanet.de) (Ping timeout: 255 seconds) |
2024-09-14 04:45:16 +0200 | td_ | (~td@i5387091B.versanet.de) |
2024-09-14 04:46:19 +0200 | machinedgod | (~machinedg@d50-99-47-73.abhsia.telus.net) (Ping timeout: 264 seconds) |
2024-09-14 04:51:52 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 04:56:34 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 265 seconds) |
2024-09-14 05:03:45 +0200 | spew | (~spew@201.141.99.170) (Quit: spew) |
2024-09-14 05:07:27 +0200 | Adran | (~adran@botters/adran) |
2024-09-14 05:09:43 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 05:10:54 +0200 | TMA | (tma@twin.jikos.cz) (Ping timeout: 246 seconds) |
2024-09-14 05:12:59 +0200 | TMA | (tma@twin.jikos.cz) |
2024-09-14 05:14:06 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
2024-09-14 05:17:36 +0200 | dmwit | (~dmwit@pool-173-66-76-243.washdc.fios.verizon.net) () |
2024-09-14 05:19:59 +0200 | xff0x | (~xff0x@2405:6580:b080:900:faf:b23:bfac:f0c0) (Ping timeout: 260 seconds) |
2024-09-14 05:21:38 +0200 | xff0x_ | (~xff0x@2405:6580:b080:900:faf:b23:bfac:f0c0) |
2024-09-14 05:27:31 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 05:31:39 +0200 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 260 seconds) |
2024-09-14 05:32:20 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 265 seconds) |
2024-09-14 05:33:29 +0200 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) |
2024-09-14 05:39:57 +0200 | glguy | (glguy@libera/staff/glguy) (Quit: Quit) |
2024-09-14 05:41:18 +0200 | glguy | (glguy@libera/staff/glguy) |
2024-09-14 05:45:41 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 05:47:50 +0200 | <albet70> | there is a list [[], [1,6], [2,7], [3], [], [4]] how to get the longest consecutive nunber [1,2,3]? |
2024-09-14 05:48:17 +0200 | peterbecich | (~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 255 seconds) |
2024-09-14 05:49:58 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 245 seconds) |
2024-09-14 05:50:47 +0200 | <glguy> | albet70: Check out Data.List.sortOn |
2024-09-14 05:55:36 +0200 | Adran | (~adran@botters/adran) (Remote host closed the connection) |
2024-09-14 06:01:44 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 06:06:10 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
2024-09-14 06:09:37 +0200 | youthlic | (~Thunderbi@user/youthlic) |
2024-09-14 06:12:14 +0200 | Adran | (~adran@botters/adran) |
2024-09-14 06:18:55 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 06:23:21 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds) |
2024-09-14 06:35:22 +0200 | gawen | (~gawen@user/gawen) (Quit: cya) |
2024-09-14 06:35:45 +0200 | <haskellbridge> | <thirdofmay18081814goya> what's a semantic interpretation for haskell's free monad? |
2024-09-14 06:35:57 +0200 | <haskellbridge> | <thirdofmay18081814goya> or a mathematical formalization |
2024-09-14 06:36:26 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 06:36:41 +0200 | <EvanR> | free monad and free stuff is from math, haskell's free monad is the bastardization of that xD |
2024-09-14 06:36:45 +0200 | gawen | (~gawen@user/gawen) |
2024-09-14 06:36:56 +0200 | <EvanR> | so it's already formalized |
2024-09-14 06:37:36 +0200 | <haskellbridge> | <thirdofmay18081814goya> well that's the problem i need the formalization of the bastardized version |
2024-09-14 06:37:43 +0200 | <haskellbridge> | <thirdofmay18081814goya> the thing that allows you to make tree-like structures |
2024-09-14 06:38:10 +0200 | <haskellbridge> | <thirdofmay18081814goya> tree-like data structures |
2024-09-14 06:38:47 +0200 | <EvanR> | tree data structures is data Tree a = Leaf a | Branch [Tree a] |
2024-09-14 06:39:39 +0200 | <EvanR> | free monad is the totally uncommitted monad structure |
2024-09-14 06:40:56 +0200 | <EvanR> | like data List a = Nil | Cons a (List a) is the totally uncommitted monoid |
2024-09-14 06:41:31 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 264 seconds) |
2024-09-14 06:41:33 +0200 | peterbecich | (~Thunderbi@syn-047-229-123-186.res.spectrum.com) |
2024-09-14 06:42:18 +0200 | <EvanR> | you may also like "A free monad is a free object relative to a forgetful functor whose domain is a category of monads." |
2024-09-14 06:42:22 +0200 | <haskellbridge> | <thirdofmay18081814goya> EvanR: if we're speaking "Free f a", free monad multiplication is given by "f"? or what is it from the category-theoretical free monad that provides recursion-like properties? |
2024-09-14 06:42:27 +0200 | <EvanR> | https://ncatlab.org/nlab/show/free+monad |
2024-09-14 06:43:08 +0200 | <haskellbridge> | <thirdofmay18081814goya> yeah the issue with the ncatlab article is I don't get how it's used as a basis for recursive data structures, if it really corresponds to the category-theoretical free monad |
2024-09-14 06:43:14 +0200 | <EvanR> | it doesn't add recursion either... |
2024-09-14 06:44:56 +0200 | <EvanR> | the key to free stuff is the free-forgetful adjoint functor pair |
2024-09-14 06:45:30 +0200 | <haskellbridge> | <thirdofmay18081814goya> EvanR: what i'm saying is it doesn't tell us much about why it's useful for defining recursive data structures in haskell |
2024-09-14 06:45:38 +0200 | <EvanR> | that's not what it's for |
2024-09-14 06:45:53 +0200 | <Leary> | thirdofmay: Apart from the fact that `Free f a` ~ `Fix (Const a + f)`, free monads don't really have anything to do with defining recursive data structures. |
2024-09-14 06:46:42 +0200 | <EvanR> | in haskell you use it to define monadic actions against an API defined by a functor |
2024-09-14 06:46:54 +0200 | <Leary> | It sounds like what you actually want to know about is (type level) fixpoint operators. |
2024-09-14 06:46:56 +0200 | <EvanR> | then the actions can be interpreted by a separated runner |
2024-09-14 06:47:08 +0200 | <EvanR> | one or more runners |
2024-09-14 06:49:30 +0200 | <haskellbridge> | <thirdofmay18081814goya> Leary: hm right |
2024-09-14 06:54:03 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 06:58:18 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 245 seconds) |
2024-09-14 07:10:21 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 07:11:59 +0200 | peterbecich | (~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 260 seconds) |
2024-09-14 07:14:44 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
2024-09-14 07:26:05 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 07:29:56 +0200 | Squared | (~Square@user/square) |
2024-09-14 07:30:45 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 265 seconds) |
2024-09-14 07:31:26 +0200 | meygerjos | (~meygerjos@syn-024-090-143-083.res.spectrum.com) |
2024-09-14 07:38:36 +0200 | meygerjos | (~meygerjos@syn-024-090-143-083.res.spectrum.com) (Ping timeout: 276 seconds) |
2024-09-14 07:39:12 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 07:43:51 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds) |
2024-09-14 07:46:09 +0200 | takuan | (~takuan@178-116-218-225.access.telenet.be) |
2024-09-14 07:56:54 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 07:58:39 +0200 | euleritian | (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 260 seconds) |
2024-09-14 07:59:53 +0200 | euleritian | (~euleritia@dynamic-176-006-139-193.176.6.pool.telefonica.de) |
2024-09-14 08:01:56 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 264 seconds) |
2024-09-14 08:11:52 +0200 | weary-traveler | (~user@user/user363627) (Remote host closed the connection) |
2024-09-14 08:12:43 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 08:14:32 +0200 | john | (~john@2406:5a00:241a:5600:64db:a6da:b040:bf3f) (Read error: Connection reset by peer) |
2024-09-14 08:16:06 +0200 | john | (~john@2406:5a00:241a:5600:41c4:1903:9759:a97c) |
2024-09-14 08:17:03 +0200 | meygerjos | (~meygerjos@syn-024-090-143-083.res.spectrum.com) |
2024-09-14 08:17:03 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 245 seconds) |
2024-09-14 08:17:06 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2024-09-14 08:21:13 +0200 | meygerjos | (~meygerjos@syn-024-090-143-083.res.spectrum.com) (Ping timeout: 245 seconds) |
2024-09-14 08:28:54 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 08:33:33 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
2024-09-14 08:36:31 +0200 | califax | (~califax@user/califx) (Remote host closed the connection) |
2024-09-14 08:38:02 +0200 | califax | (~califax@user/califx) |
2024-09-14 08:43:12 +0200 | Guest5 | (~Guest5@2001:871:242:2c0f:3308:6159:967a:a1a) |
2024-09-14 08:44:32 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 08:47:10 +0200 | <albet70> | there are three list, take one element from everyone list, to form a new list, which function is for this? |
2024-09-14 08:47:28 +0200 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection) |
2024-09-14 08:47:32 +0200 | <monochrom> | zip3? |
2024-09-14 08:47:51 +0200 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) |
2024-09-14 08:49:27 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 276 seconds) |
2024-09-14 08:49:35 +0200 | ash3en | (~Thunderbi@2a01:c23:9498:f00:6a45:b60b:690e:f299) |
2024-09-14 08:51:12 +0200 | <albet70> | [1,2] [3] [4,5,6] take one every time from one list, get [1,3,4] [1,3,5] [1,3,6] [2,3,4] [2,3,5] [2,3,6] |
2024-09-14 08:52:38 +0200 | Guest5 | (~Guest5@2001:871:242:2c0f:3308:6159:967a:a1a) (Quit: Client closed) |
2024-09-14 08:53:15 +0200 | <Leary> | > sequenceA [[1, 2], [3], [4,5,6]] |
2024-09-14 08:53:16 +0200 | <lambdabot> | [[1,3,4],[1,3,5],[1,3,6],[2,3,4],[2,3,5],[2,3,6]] |
2024-09-14 08:53:25 +0200 | <albet70> | yes! |
2024-09-14 09:00:00 +0200 | caconym9 | (~caconym@user/caconym) (Quit: bye) |
2024-09-14 09:00:17 +0200 | JamesMowery | (~JamesMowe@ip98-167-207-182.ph.ph.cox.net) (Quit: Goodbye) |
2024-09-14 09:00:33 +0200 | JamesMowery | (~JamesMowe@ip98-167-207-182.ph.ph.cox.net) |
2024-09-14 09:00:36 +0200 | caconym9 | (~caconym@user/caconym) |
2024-09-14 09:01:49 +0200 | JuanDaugherty | (~juan@user/JuanDaugherty) |
2024-09-14 09:02:22 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 09:03:17 +0200 | Pixi__ | (~Pixi@user/pixi) (Quit: Leaving) |
2024-09-14 09:03:44 +0200 | Pixi | (~Pixi@user/pixi) |
2024-09-14 09:06:56 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 265 seconds) |
2024-09-14 09:09:11 +0200 | <haskellbridge> | <thirdofmay18081814goya> Leary: EvanR Leary initial object in category of algebras over a free monad gives categorical semantics for inductive types |
2024-09-14 09:13:24 +0200 | <JuanDaugherty> | i just noticed this channel is a third of its peak size on freenode |
2024-09-14 09:16:12 +0200 | <JuanDaugherty> | guess there was some blow off to whereever the bridge goes |
2024-09-14 09:20:32 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 09:22:02 +0200 | <Leary> | thirdofmay: You might have to flesh that out for us. Or provide a good reference. |
2024-09-14 09:25:34 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds) |
2024-09-14 09:27:31 +0200 | <albet70> | is there function can check if a list is consective numbers like [1,2,3]? |
2024-09-14 09:31:02 +0200 | kuribas | (~user@ptr-17d51encmw6a8jd7fum.18120a2.ip6.access.telenet.be) |
2024-09-14 09:32:16 +0200 | <haskellbridge> | <Jade> isConsecutive [] = True |
2024-09-14 09:32:16 +0200 | <haskellbridge> | isCobsecutive (x : xs) = xs `isPrefixOf` [x + 1 ..] |
2024-09-14 09:35:33 +0200 | kuribas | (~user@ptr-17d51encmw6a8jd7fum.18120a2.ip6.access.telenet.be) (Remote host closed the connection) |
2024-09-14 09:36:43 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 09:36:47 +0200 | <ski> | > (\xs -> and (zipWith (\x y -> x + 1 == y) xs (tail xs))) [0,1,2] |
2024-09-14 09:36:48 +0200 | <lambdabot> | True |
2024-09-14 09:37:37 +0200 | misterfish | (~misterfis@84.53.85.146) |
2024-09-14 09:38:26 +0200 | <Leary> | I also had `all (== 1) . (zipWith subtract <*> tail)`, but Jade's is better. |
2024-09-14 09:38:44 +0200 | <Leary> | Though it gives me evil thoughts. |
2024-09-14 09:39:08 +0200 | <Leary> | :t (`isInfixOf` [minBound .. maxBound]) |
2024-09-14 09:39:09 +0200 | <lambdabot> | (Eq a, Bounded a, Enum a) => [a] -> Bool |
2024-09-14 09:41:29 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2024-09-14 09:43:41 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2024-09-14 09:44:31 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 264 seconds) |
2024-09-14 09:49:17 +0200 | sourcetarius | (~sourcetar@user/sourcetarius) |
2024-09-14 09:50:56 +0200 | <albet70> | is there a function can get the sublist which is max length in a list? like [[1,2,3], [4]] the sublist is [1,2,3] |
2024-09-14 09:51:30 +0200 | <tomsmeding> | :t maximumBy |
2024-09-14 09:51:31 +0200 | <lambdabot> | Foldable t => (a -> a -> Ordering) -> t a -> a |
2024-09-14 09:51:38 +0200 | <tomsmeding> | :t maximumBy (comparing length) |
2024-09-14 09:51:39 +0200 | <lambdabot> | (Foldable t1, Foldable t2) => t1 (t2 a) -> t2 a |
2024-09-14 09:52:46 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 09:55:34 +0200 | acidjnk | (~acidjnk@p200300d6e72cfb993124db42593adef3.dip0.t-ipconnect.de) |
2024-09-14 09:57:39 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds) |
2024-09-14 09:59:34 +0200 | target_i | (~target_i@user/target-i/x-6023099) |
2024-09-14 10:06:39 +0200 | ash3en | (~Thunderbi@2a01:c23:9498:f00:6a45:b60b:690e:f299) (Ping timeout: 246 seconds) |
2024-09-14 10:08:47 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 10:13:55 +0200 | <JuanDaugherty> | :version |
2024-09-14 10:13:57 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 276 seconds) |
2024-09-14 10:14:01 +0200 | <JuanDaugherty> | @version |
2024-09-14 10:14:01 +0200 | <lambdabot> | lambdabot 5.3.0.1 |
2024-09-14 10:14:01 +0200 | <lambdabot> | git clone https://github.com/lambdabot/lambdabot |
2024-09-14 10:22:25 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2024-09-14 10:25:11 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 10:26:51 +0200 | wootehfoot | (~wootehfoo@user/wootehfoot) |
2024-09-14 10:29:48 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
2024-09-14 10:31:21 +0200 | wootehfoot | (~wootehfoo@user/wootehfoot) (Client Quit) |
2024-09-14 10:36:34 +0200 | Tuplanolla | (~Tuplanoll@91-159-69-59.elisa-laajakaista.fi) |
2024-09-14 10:37:47 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 10:43:01 +0200 | wootehfoot | (~wootehfoo@user/wootehfoot) |
2024-09-14 10:45:09 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds) |
2024-09-14 10:47:55 +0200 | mreh | (~matthew@host86-160-168-12.range86-160.btcentralplus.com) |
2024-09-14 10:50:44 +0200 | <probie> | A warning that `maximumBy` calls the supplied functions on each comparison, so may be a poor choice for "expensive" functions like `length` |
2024-09-14 10:56:13 +0200 | tzh | (~tzh@c-76-115-131-146.hsd1.or.comcast.net) (Quit: zzz) |
2024-09-14 10:57:19 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 11:01:41 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
2024-09-14 11:14:45 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 11:19:19 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds) |
2024-09-14 11:19:32 +0200 | <Squared> | I like Miso alot for SPA's, but as for any such there is a bit of overhead with message passing. If you just want a create a super simple database backed website in haskell what could be a good alternative? Ease of use prioritized here. |
2024-09-14 11:22:39 +0200 | <Squared> | .../minimal effort |
2024-09-14 11:25:59 +0200 | lxsameer | (~lxsameer@Serene/lxsameer) |
2024-09-14 11:28:14 +0200 | __monty__ | (~toonn@user/toonn) |
2024-09-14 11:30:52 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 11:35:39 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds) |
2024-09-14 11:45:02 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2024-09-14 11:47:10 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 11:47:54 +0200 | Sgeo | (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
2024-09-14 11:51:59 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds) |
2024-09-14 12:03:37 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 12:08:19 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds) |
2024-09-14 12:12:54 +0200 | lxsameer | (~lxsameer@Serene/lxsameer) (Ping timeout: 276 seconds) |
2024-09-14 12:16:09 +0200 | Squared | (~Square@user/square) (Ping timeout: 276 seconds) |
2024-09-14 12:16:49 +0200 | mreh | (~matthew@host86-160-168-12.range86-160.btcentralplus.com) (Ping timeout: 248 seconds) |
2024-09-14 12:16:50 +0200 | dibblego | (~dibblego@haskell/developer/dibblego) (Ping timeout: 248 seconds) |
2024-09-14 12:18:19 +0200 | dibblego | (~dibblego@116-255-1-119.ip4.superloop.au) |
2024-09-14 12:18:19 +0200 | dibblego | (~dibblego@116-255-1-119.ip4.superloop.au) (Changing host) |
2024-09-14 12:18:19 +0200 | dibblego | (~dibblego@haskell/developer/dibblego) |
2024-09-14 12:21:58 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 12:24:05 +0200 | john | (~john@2406:5a00:241a:5600:41c4:1903:9759:a97c) (Read error: Connection reset by peer) |
2024-09-14 12:25:44 +0200 | john | (~john@2406:5a00:241a:5600:41c4:1903:9759:a97c) |
2024-09-14 12:26:33 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 265 seconds) |
2024-09-14 12:27:21 +0200 | JamesMowery6 | (~JamesMowe@ip98-167-207-182.ph.ph.cox.net) |
2024-09-14 12:29:14 +0200 | JamesMowery | (~JamesMowe@ip98-167-207-182.ph.ph.cox.net) (Ping timeout: 255 seconds) |
2024-09-14 12:29:14 +0200 | JamesMowery6 | JamesMowery |
2024-09-14 12:32:31 +0200 | sourcetarius | (~sourcetar@user/sourcetarius) (Read error: Connection reset by peer) |
2024-09-14 12:33:36 +0200 | sourcetarius | (~sourcetar@user/sourcetarius) |
2024-09-14 12:37:03 +0200 | wootehfoot | (~wootehfoo@user/wootehfoot) (Read error: Connection reset by peer) |
2024-09-14 12:38:03 +0200 | wootehfoot | (~wootehfoo@user/wootehfoot) |
2024-09-14 12:38:21 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 12:42:53 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 245 seconds) |
2024-09-14 12:54:33 +0200 | sourcetarius | (~sourcetar@user/sourcetarius) (Ping timeout: 245 seconds) |
2024-09-14 12:56:23 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 13:00:04 +0200 | caconym9 | (~caconym@user/caconym) (Quit: bye) |
2024-09-14 13:00:57 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds) |
2024-09-14 13:10:45 +0200 | caconym9 | (~caconym@user/caconym) |
2024-09-14 13:13:34 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 13:16:33 +0200 | wootehfoot | (~wootehfoo@user/wootehfoot) (Read error: Connection reset by peer) |
2024-09-14 13:18:16 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 265 seconds) |
2024-09-14 13:21:15 +0200 | euphores | (~SASL_euph@user/euphores) (Remote host closed the connection) |
2024-09-14 13:22:22 +0200 | ddb | (ddb@tilde.club) |
2024-09-14 13:23:17 +0200 | remedan | (~remedan@ip-62-245-108-153.bb.vodafone.cz) (Quit: Bye!) |
2024-09-14 13:27:08 +0200 | remedan | (~remedan@ip-62-245-108-153.bb.vodafone.cz) |
2024-09-14 13:29:59 +0200 | ZharMeny | (~ZharMeny@user/ZharMeny) |
2024-09-14 13:30:55 +0200 | euphores | (~SASL_euph@user/euphores) |
2024-09-14 13:31:04 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 13:35:49 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds) |
2024-09-14 13:46:14 +0200 | wootehfoot | (~wootehfoo@user/wootehfoot) |
2024-09-14 13:47:51 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 13:52:44 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds) |
2024-09-14 13:53:16 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2024-09-14 13:57:29 +0200 | mreh | (~matthew@host86-160-168-12.range86-160.btcentralplus.com) |
2024-09-14 14:03:27 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 14:06:28 +0200 | <haskellbridge> | <thirdofmay18081814goya> Leary: sorry had gone to sleep, https://maciejcs.wordpress.com/2012/04/17/free-monads-and-their-algebras/ |
2024-09-14 14:07:41 +0200 | <haskellbridge> | <thirdofmay18081814goya> initial object in category of algebra over endofunctor is categorical semantics for inductive types: https://ncatlab.org/nlab/show/initial+algebra+of+an+endofunctor#semantics_for_inductive_types |
2024-09-14 14:08:29 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds) |
2024-09-14 14:09:04 +0200 | <Franciman> | what do you demand of an object to make it a semantics of a formal system? |
2024-09-14 14:10:46 +0200 | <haskellbridge> | <thirdofmay18081814goya> Franciman: be able to prove two derivations in the formal system are the same, beyond syntactic identity |
2024-09-14 14:10:53 +0200 | <haskellbridge> | <thirdofmay18081814goya> in a satisfactory way |
2024-09-14 14:11:12 +0200 | <Franciman> | very demure |
2024-09-14 14:11:15 +0200 | <Franciman> | thanks |
2024-09-14 14:11:43 +0200 | ski | . o O ( proofnets ) |
2024-09-14 14:11:57 +0200 | <Franciman> | proofnets are semantics for proofs? |
2024-09-14 14:12:31 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2024-09-14 14:12:45 +0200 | <ski> | proofnets is an attempt to get rid of more of the accidental syntax of proofs/derivations |
2024-09-14 14:13:22 +0200 | <Franciman> | yes |
2024-09-14 14:13:47 +0200 | <Franciman> | so you think semantics is actually a more polished syntax? :P |
2024-09-14 14:13:59 +0200 | <Franciman> | would be nice to have a syntax directly working as semantics |
2024-09-14 14:14:17 +0200 | <Franciman> | according to herr thirdofmay18081814goya |
2024-09-14 14:14:24 +0200 | <Franciman> | definition |
2024-09-14 14:16:08 +0200 | <ski> | just mentioning it as something potentially interesting for (e.g.) thirdofmay18081814goya to check out |
2024-09-14 14:16:37 +0200 | <haskellbridge> | <thirdofmay18081814goya> watching a conference about them as i wait for coffee to wake me up |
2024-09-14 14:16:52 +0200 | <leah2> | anything on proofnets that requires less exegesis than girard? |
2024-09-14 14:16:55 +0200 | YuutaW | (~YuutaW@2404:f4c0:f9c3:502::100:17b7) (Ping timeout: 264 seconds) |
2024-09-14 14:17:10 +0200 | <Franciman> | yes leah2 there is something |
2024-09-14 14:17:18 +0200 | <Franciman> | i think you can look at erhard's work? |
2024-09-14 14:17:21 +0200 | <Franciman> | wait |
2024-09-14 14:17:39 +0200 | <Franciman> | sorry, retoré https://www.sciencedirect.com/science/article/pii/S030439750100175X |
2024-09-14 14:17:46 +0200 | <Franciman> | also abrusci |
2024-09-14 14:17:55 +0200 | <JuanDaugherty> | TIL: perplexity |
2024-09-14 14:17:57 +0200 | <ski> | hm, i recognize that name, at least |
2024-09-14 14:18:12 +0200 | <ski> | @wn perplexity |
2024-09-14 14:18:13 +0200 | <lambdabot> | *** "perplexity" wn "WordNet (r) 3.0 (2006)" |
2024-09-14 14:18:13 +0200 | <lambdabot> | perplexity |
2024-09-14 14:18:13 +0200 | <lambdabot> | n 1: trouble or confusion resulting from complexity |
2024-09-14 14:18:34 +0200 | <JuanDaugherty> | https://en.wikipedia.org/wiki/Perplexity |
2024-09-14 14:19:13 +0200 | <Franciman> | leah2: another source to get into proof nets is going via Linear Substitution Calculus by Accattoli and Kesner |
2024-09-14 14:19:38 +0200 | <Franciman> | it is a lambda calculus formalism that is isomorphic to proof nets for MELL iirc |
2024-09-14 14:19:38 +0200 | <JuanDaugherty> | but apparently its also a tool brand name and SMOG like measure on arkiv |
2024-09-14 14:19:58 +0200 | <ski> | (hm, i think i saw in some paper a reference to some paper by Abrusci (&al ?), on non-commutative logic) |
2024-09-14 14:20:05 +0200 | <leah2> | Franciman: thx |
2024-09-14 14:21:22 +0200 | <Franciman> | ski: i think retoré has done work on non communist logic too |
2024-09-14 14:21:26 +0200 | <Franciman> | err commutative* |
2024-09-14 14:21:44 +0200 | <JuanDaugherty> | freudian |
2024-09-14 14:21:46 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 14:21:47 +0200 | <ski> | yea, i wasn't sure if i'd seen that name or not |
2024-09-14 14:24:04 +0200 | <Franciman> | ski: looking at dblp i see abrusci working on lambek calculus |
2024-09-14 14:24:48 +0200 | <Franciman> | lol i'm scared of reading: Formal Ontologies and Coherent Spaces. J. Appl. Log. 12(1): 67-74 (2014) |
2024-09-14 14:25:41 +0200 | ski | . o O ( "RedPRL is the People's Refinement Logic, a next-generation homage to Nuprl" <https://github.com/redprl/sml-redprl> ) |
2024-09-14 14:26:14 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 255 seconds) |
2024-09-14 14:26:25 +0200 | <ski> | sounds exciting (and abstruse), Franciman :p |
2024-09-14 14:27:16 +0200 | <Franciman> | ski: hmm it seems related to semantic web ontologies |
2024-09-14 14:27:42 +0200 | <Franciman> | https://www.sciencedirect.com/science/article/pii/S1570868313000487?via%3Dihub <- if you care |
2024-09-14 14:28:03 +0200 | <Franciman> | sounds fun tho, because they say they provide a geometrical way to work with ontologies |
2024-09-14 14:28:12 +0200 | <ski> | i know some people have applied categorical methodology to ontologies |
2024-09-14 14:28:15 +0200 | <Franciman> | and we all know what geometrical entails in this world of machine learning algorithms working on maifolds |
2024-09-14 14:28:22 +0200 | <Franciman> | do you have any link, ski ? |
2024-09-14 14:28:49 +0200 | <ski> | hm. maybe "Seven Sketches in Composability" has some relevant link in references |
2024-09-14 14:28:59 +0200 | <Franciman> | thanks |
2024-09-14 14:29:10 +0200 | <ski> | (it does have a chapter on applying CT to databases) |
2024-09-14 14:30:03 +0200 | <ski> | but i know i've seen some paper link on ontology stuff with CT, i think either ##prolog, or #logicmoo |
2024-09-14 14:30:37 +0200 | Squared | (~Square@user/square) |
2024-09-14 14:30:55 +0200 | <ski> | maybe dmiles could recall a link |
2024-09-14 14:32:32 +0200 | <Franciman> | sorry ski https://arxiv.org/abs/1803.05316 is this the seven sketches you refer to? |
2024-09-14 14:38:11 +0200 | <ski> | yes, or <http://www.dspivak.net/7sketches.pdf>. also <http://brendanfong.com/7sketches.html> |
2024-09-14 14:38:30 +0200 | <Franciman> | ty |
2024-09-14 14:39:59 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 14:43:30 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2024-09-14 14:44:39 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds) |
2024-09-14 14:52:54 +0200 | euleritian | (~euleritia@dynamic-176-006-139-193.176.6.pool.telefonica.de) (Read error: Connection reset by peer) |
2024-09-14 14:53:12 +0200 | euleritian | (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) |
2024-09-14 14:53:26 +0200 | <[exa]> | monochrom: btw the interval tree from yesterday _is_ a really nice exercise in the end, even for implementation case analysis (the range splitting explodes very easily unless you fold the logic into data) |
2024-09-14 14:55:03 +0200 | <[exa]> | `Map beginIdx endIdx` is a pretty good representation, and you can assume the C-style open-ended intervals to make it really nice |
2024-09-14 14:56:31 +0200 | misterfish | (~misterfis@84.53.85.146) (Ping timeout: 264 seconds) |
2024-09-14 14:57:28 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 14:58:19 +0200 | misterfish | (~misterfis@84.53.85.146) |
2024-09-14 15:00:28 +0200 | youthlic | (~Thunderbi@user/youthlic) (Remote host closed the connection) |
2024-09-14 15:01:54 +0200 | machinedgod | (~machinedg@d50-99-47-73.abhsia.telus.net) |
2024-09-14 15:02:09 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds) |
2024-09-14 15:03:08 +0200 | youthlic | (~Thunderbi@user/youthlic) |
2024-09-14 15:05:58 +0200 | <haskellbridge> | <magic_rb> Leary thanks but what you explained went way over my head, ill have to sit down and actually analyze what you said lol |
2024-09-14 15:15:22 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 15:20:45 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 276 seconds) |
2024-09-14 15:32:31 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 15:36:46 +0200 | ash3en | (~Thunderbi@2a01:c23:9498:f00:6a45:b60b:690e:f299) |
2024-09-14 15:37:03 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
2024-09-14 15:37:24 +0200 | auri_ | (~auri@fsf/member/auri) |
2024-09-14 15:38:06 +0200 | auri | (~auri@fsf/member/auri) (Ping timeout: 246 seconds) |
2024-09-14 15:50:34 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 15:54:29 +0200 | wootehfoot | (~wootehfoo@user/wootehfoot) (Ping timeout: 248 seconds) |
2024-09-14 15:54:54 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds) |
2024-09-14 15:56:59 +0200 | JuanDaugherty | (~juan@user/JuanDaugherty) (Quit: JuanDaugherty) |
2024-09-14 16:04:12 +0200 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) |
2024-09-14 16:07:23 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 16:08:39 +0200 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 260 seconds) |
2024-09-14 16:10:33 +0200 | hiecaq` | (~hiecaq@user/hiecaq) (Quit: ERC 5.5.0.29.1 (IRC client for GNU Emacs 29.4)) |
2024-09-14 16:11:59 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 255 seconds) |
2024-09-14 16:13:06 +0200 | weary-traveler | (~user@user/user363627) |
2024-09-14 16:19:01 +0200 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection) |
2024-09-14 16:20:36 +0200 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) |
2024-09-14 16:21:20 +0200 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) |
2024-09-14 16:25:13 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 16:25:57 +0200 | morb | (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 248 seconds) |
2024-09-14 16:28:21 +0200 | sourcetarius | (~sourcetar@user/sourcetarius) |
2024-09-14 16:28:42 +0200 | mreh | (~matthew@host86-160-168-12.range86-160.btcentralplus.com) (Ping timeout: 265 seconds) |
2024-09-14 16:29:41 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 248 seconds) |
2024-09-14 16:32:55 +0200 | AlexNoo_ | (~AlexNoo@94.233.241.202) |
2024-09-14 16:33:39 +0200 | john | (~john@2406:5a00:241a:5600:41c4:1903:9759:a97c) (Read error: Connection reset by peer) |
2024-09-14 16:34:24 +0200 | john | (~john@2406:5a00:241a:5600:41c4:1903:9759:a97c) |
2024-09-14 16:34:55 +0200 | AlexZenon | (~alzenon@178.34.163.219) (Ping timeout: 264 seconds) |
2024-09-14 16:36:28 +0200 | AlexNoo | (~AlexNoo@178.34.163.219) (Ping timeout: 252 seconds) |
2024-09-14 16:39:00 +0200 | AlexZenon | (~alzenon@94.233.241.202) |
2024-09-14 16:42:40 +0200 | AlexNoo_ | AlexNoo |
2024-09-14 16:42:48 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 16:43:41 +0200 | jinsun_ | (~jinsun@user/jinsun) |
2024-09-14 16:43:41 +0200 | jinsun | (~jinsun@user/jinsun) (Killed (erbium.libera.chat (Nickname regained by services))) |
2024-09-14 16:43:41 +0200 | jinsun_ | jinsun |
2024-09-14 16:46:04 +0200 | aljustiet | (aljustiet@user/meow/aljustiet) (Quit: fBNC - https://bnc4free.com) |
2024-09-14 16:47:24 +0200 | misterfish | (~misterfis@84.53.85.146) (Ping timeout: 246 seconds) |
2024-09-14 16:47:44 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds) |
2024-09-14 16:51:49 +0200 | machinedgod | (~machinedg@d50-99-47-73.abhsia.telus.net) (Ping timeout: 260 seconds) |
2024-09-14 16:52:33 +0200 | ash3en | (~Thunderbi@2a01:c23:9498:f00:6a45:b60b:690e:f299) (Quit: ash3en) |
2024-09-14 16:59:02 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 16:59:26 +0200 | gmg | (~user@user/gehmehgeh) (Remote host closed the connection) |
2024-09-14 17:00:12 +0200 | gmg | (~user@user/gehmehgeh) |
2024-09-14 17:02:13 +0200 | troojg | (~troojg@user/troojg) |
2024-09-14 17:02:54 +0200 | weary-traveler | (~user@user/user363627) (Remote host closed the connection) |
2024-09-14 17:05:31 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 264 seconds) |
2024-09-14 17:06:56 +0200 | ChaiTRex | (~ChaiTRex@user/chaitrex) (Ping timeout: 260 seconds) |
2024-09-14 17:07:18 +0200 | spew | (~spew@201.141.99.170) |
2024-09-14 17:08:39 +0200 | L29Ah | (~L29Ah@wikipedia/L29Ah) () |
2024-09-14 17:09:58 +0200 | ChaiTRex | (~ChaiTRex@user/chaitrex) |
2024-09-14 17:16:28 +0200 | visilii_ | (~visilii@46.61.242.60) |
2024-09-14 17:18:01 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 17:19:49 +0200 | visilii | (~visilii@46.61.242.155) (Ping timeout: 248 seconds) |
2024-09-14 17:22:24 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds) |
2024-09-14 17:25:10 +0200 | hiecaq | (~hiecaq@user/hiecaq) |
2024-09-14 17:32:00 +0200 | lxsameer | (~lxsameer@Serene/lxsameer) |
2024-09-14 17:34:07 +0200 | econo_ | (uid147250@id-147250.tinside.irccloud.com) |
2024-09-14 17:35:26 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 17:36:53 +0200 | califax | (~califax@user/califx) (Remote host closed the connection) |
2024-09-14 17:38:28 +0200 | califax | (~califax@user/califx) |
2024-09-14 17:39:53 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
2024-09-14 17:42:19 +0200 | misterfish | (~misterfis@84.53.85.146) |
2024-09-14 17:42:20 +0200 | naxx | (~brandt@177.191-pool-nas4-sc.sccoast.net) |
2024-09-14 17:47:59 +0200 | troojg | (~troojg@user/troojg) (Remote host closed the connection) |
2024-09-14 17:51:02 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 17:55:23 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 245 seconds) |
2024-09-14 18:05:20 +0200 | tired | (~tired@user/tired) (Quit: /) |
2024-09-14 18:09:07 +0200 | troojg | (~troojg@user/troojg) |
2024-09-14 18:09:11 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 18:10:51 +0200 | sourcetarius_ | (~sourcetar@user/sourcetarius) |
2024-09-14 18:11:13 +0200 | sourcetarius | (~sourcetar@user/sourcetarius) (Read error: Connection reset by peer) |
2024-09-14 18:11:25 +0200 | ash3en | (~Thunderbi@2a01:c23:9498:f00:6a45:b60b:690e:f299) |
2024-09-14 18:13:38 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
2024-09-14 18:15:28 +0200 | misterfish | (~misterfis@84.53.85.146) (Ping timeout: 252 seconds) |
2024-09-14 18:20:12 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 18:20:48 +0200 | califax | (~califax@user/califx) (Remote host closed the connection) |
2024-09-14 18:21:07 +0200 | ash3en | (~Thunderbi@2a01:c23:9498:f00:6a45:b60b:690e:f299) (Ping timeout: 264 seconds) |
2024-09-14 18:25:00 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
2024-09-14 18:28:04 +0200 | wootehfoot | (~wootehfoo@user/wootehfoot) |
2024-09-14 18:29:53 +0200 | sw4n | (~sw4n@2605:59c0:40f0:9610:559:7713:a305:7d30) |
2024-09-14 18:30:24 +0200 | troojg | (~troojg@user/troojg) (Ping timeout: 260 seconds) |
2024-09-14 18:32:57 +0200 | califax | (~califax@user/califx) |
2024-09-14 18:36:27 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 18:40:56 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 255 seconds) |
2024-09-14 18:47:01 +0200 | spew | (~spew@201.141.99.170) (Quit: spew) |
2024-09-14 18:48:30 +0200 | misterfish | (~misterfis@84.53.85.146) |
2024-09-14 18:50:48 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 18:55:46 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 248 seconds) |
2024-09-14 19:04:56 +0200 | <haskellbridge> | <thirdofmay18081814goya> Leary: alternative formulation: suppose that we want to define a recursive data type X. then we're looking for T such that X = T(X). i.e., we're looking for a fixed point. a free monad is able to express such a fixed point |
2024-09-14 19:06:36 +0200 | <monochrom> | But free monads are a bit less general. |
2024-09-14 19:06:39 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 19:08:28 +0200 | tzh | (~tzh@c-76-115-131-146.hsd1.or.comcast.net) |
2024-09-14 19:08:41 +0200 | <monochrom> | For free monads, the fixed point equation is X(A) = T(A,X(A)), where T has the form T(A,R) = A + F(R), where F is a functor. |
2024-09-14 19:10:14 +0200 | AlexNoo_ | (~AlexNoo@94.233.241.202) |
2024-09-14 19:10:46 +0200 | <haskellbridge> | <thirdofmay18081814goya> hm right |
2024-09-14 19:11:01 +0200 | <monochrom> | [] does not fit that form, and even ignoring that form is still not a free monad, for example. |
2024-09-14 19:11:11 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
2024-09-14 19:11:37 +0200 | <monochrom> | But each [A] is a free algebra. :) |
2024-09-14 19:13:03 +0200 | <monochrom> | [A] = F([A]) where F is the functor F(R) = 1 + A*R. |
2024-09-14 19:13:24 +0200 | AlexNoo | (~AlexNoo@94.233.241.202) (Ping timeout: 252 seconds) |
2024-09-14 19:16:51 +0200 | peterbecich | (~Thunderbi@syn-047-229-123-186.res.spectrum.com) |
2024-09-14 19:17:04 +0200 | tomboy64 | (~tomboy64@user/tomboy64) (Ping timeout: 252 seconds) |
2024-09-14 19:17:04 +0200 | drlkf | (~drlkf@192.184.163.34.bc.googleusercontent.com) (Ping timeout: 252 seconds) |
2024-09-14 19:17:07 +0200 | <monochrom> | Fortunately, you can see how X(A) above is also a free algebra, using the functor G(R) = A + F(R). |
2024-09-14 19:17:26 +0200 | todi | (~todi@p57803331.dip0.t-ipconnect.de) (Ping timeout: 252 seconds) |
2024-09-14 19:17:28 +0200 | drlkf | (~drlkf@192.184.163.34.bc.googleusercontent.com) |
2024-09-14 19:18:42 +0200 | todi | (~todi@p57803331.dip0.t-ipconnect.de) |
2024-09-14 19:19:38 +0200 | mauke | (~mauke@user/mauke) (Ping timeout: 252 seconds) |
2024-09-14 19:19:47 +0200 | mauke | (~mauke@user/mauke) |
2024-09-14 19:20:22 +0200 | Natch | (~natch@c-9e07225c.038-60-73746f7.bbcust.telenor.se) (Ping timeout: 252 seconds) |
2024-09-14 19:21:40 +0200 | Natch | (~natch@c-9e07225c.038-60-73746f7.bbcust.telenor.se) |
2024-09-14 19:23:22 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 19:24:02 +0200 | haveo | (~weechat@pacamara.iuwt.fr) (Ping timeout: 252 seconds) |
2024-09-14 19:24:26 +0200 | haveo | (~weechat@pacamara.iuwt.fr) |
2024-09-14 19:25:52 +0200 | sprout | (~sprout@84-80-106-227.fixed.kpn.net) (Ping timeout: 252 seconds) |
2024-09-14 19:26:12 +0200 | sprout | (~sprout@84-80-106-227.fixed.kpn.net) |
2024-09-14 19:26:29 +0200 | AlexNoo_ | AlexNoo |
2024-09-14 19:27:42 +0200 | TheCoffeMaker_ | (~TheCoffeM@186.136.173.70) (Ping timeout: 252 seconds) |
2024-09-14 19:28:24 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 276 seconds) |
2024-09-14 19:30:18 +0200 | tomboy64 | (~tomboy64@user/tomboy64) |
2024-09-14 19:30:23 +0200 | czy | (~user@2a00:23c6:54a8:6301:c977:9d83:7d7f:2fe5) |
2024-09-14 19:30:46 +0200 | TheCoffeMaker | (~TheCoffeM@user/thecoffemaker) |
2024-09-14 19:31:04 +0200 | euphores | (~SASL_euph@user/euphores) (Ping timeout: 260 seconds) |
2024-09-14 19:32:29 +0200 | Pozyomka | (~pyon@user/pyon) (Read error: Connection reset by peer) |
2024-09-14 19:33:09 +0200 | Pozyomka | (~pyon@user/pyon) |
2024-09-14 19:34:51 +0200 | euphores | (~SASL_euph@user/euphores) |
2024-09-14 19:39:38 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 19:43:50 +0200 | TheCoffeMaker_ | (~TheCoffeM@186.136.173.70) |
2024-09-14 19:44:12 +0200 | TheCoffeMaker | (~TheCoffeM@user/thecoffemaker) (Ping timeout: 252 seconds) |
2024-09-14 19:44:29 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds) |
2024-09-14 19:45:18 +0200 | tv | (~tv@user/tv) (Ping timeout: 252 seconds) |
2024-09-14 19:45:18 +0200 | Rembane | (~Rembane@user/Rembane) (Ping timeout: 252 seconds) |
2024-09-14 19:45:49 +0200 | sprout | (~sprout@84-80-106-227.fixed.kpn.net) (Ping timeout: 252 seconds) |
2024-09-14 19:45:50 +0200 | nitrix | (~nitrix@user/meow/nitrix) (Ping timeout: 252 seconds) |
2024-09-14 19:45:50 +0200 | [_________] | (~oos95GWG@user/oos95GWG) (Ping timeout: 252 seconds) |
2024-09-14 19:45:57 +0200 | acro_ | (~acro@user/acro) |
2024-09-14 19:45:57 +0200 | nitrix_ | (~nitrix@user/meow/nitrix) |
2024-09-14 19:46:02 +0200 | peutri_ | (~peutri@bobo.desast.re) (Ping timeout: 252 seconds) |
2024-09-14 19:46:02 +0200 | eugenrh | (~eugenrh@user/eugenrh) (Ping timeout: 252 seconds) |
2024-09-14 19:46:11 +0200 | peutri | (~peutri@bobo.desast.re) |
2024-09-14 19:46:46 +0200 | acro | (~acro@user/acro) (Ping timeout: 252 seconds) |
2024-09-14 19:46:46 +0200 | acro_ | acro |
2024-09-14 19:47:11 +0200 | irssi | (~Rembane@user/Rembane) |
2024-09-14 19:47:38 +0200 | [_________] | (~oos95GWG@user/oos95GWG) |
2024-09-14 19:47:49 +0200 | bollu3 | (~bollu@159.65.151.13) |
2024-09-14 19:47:59 +0200 | nitrix_ | nitrix |
2024-09-14 19:48:00 +0200 | eugenrh | (~eugenrh@user/eugenrh) |
2024-09-14 19:48:25 +0200 | sprout | (~sprout@84-80-106-227.fixed.kpn.net) |
2024-09-14 19:49:42 +0200 | bollu | (~bollu@159.65.151.13) (Ping timeout: 252 seconds) |
2024-09-14 19:49:42 +0200 | bollu3 | bollu |
2024-09-14 19:50:01 +0200 | misterfish | (~misterfis@84.53.85.146) (Ping timeout: 244 seconds) |
2024-09-14 19:52:38 +0200 | sand-witch | (~m-mzmz6l@vmi833741.contaboserver.net) (Ping timeout: 252 seconds) |
2024-09-14 19:53:09 +0200 | czy | (~user@2a00:23c6:54a8:6301:c977:9d83:7d7f:2fe5) (Ping timeout: 265 seconds) |
2024-09-14 19:53:25 +0200 | sand-witch | (~m-mzmz6l@vmi833741.contaboserver.net) |
2024-09-14 19:56:39 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 19:56:58 +0200 | misterfish | (~misterfis@84.53.85.146) |
2024-09-14 19:57:52 +0200 | euphores | (~SASL_euph@user/euphores) (Quit: Leaving.) |
2024-09-14 19:59:39 +0200 | euphores | (~SASL_euph@user/euphores) |
2024-09-14 20:00:00 +0200 | tv | (~tv@user/tv) |
2024-09-14 20:01:24 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds) |
2024-09-14 20:13:04 +0200 | sw4n | (~sw4n@2605:59c0:40f0:9610:559:7713:a305:7d30) (Ping timeout: 260 seconds) |
2024-09-14 20:13:50 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 20:18:26 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 244 seconds) |
2024-09-14 20:19:36 +0200 | pavonia | (~user@user/siracusa) (Quit: Bye!) |
2024-09-14 20:20:19 +0200 | machinedgod | (~machinedg@d50-99-47-73.abhsia.telus.net) |
2024-09-14 20:20:43 +0200 | sw4n | (~sw4n@2605:59c0:40f0:9610:559:7713:a305:7d30) |
2024-09-14 20:21:11 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 20:23:29 +0200 | <lxsameer> | hey folks, how do you add a dependency flag to your cabal and ghci workflow? for example one on my dependencies has a flag -f json. |
2024-09-14 20:23:51 +0200 | <lxsameer> | when I add it to my ghc-options cabal is happy and builds, but ghci yells at me |
2024-09-14 20:24:10 +0200 | deriamis | (nobody@172-232-162-115.ip.linodeusercontent.com) (Ping timeout: 252 seconds) |
2024-09-14 20:24:17 +0200 | <tomsmeding> | lxsameer: I take it you have a *.cabal file? Do you have a cabal.project file too? |
2024-09-14 20:24:17 +0200 | <sclv> | you can specify a flag for a dependency in a cabal.project file |
2024-09-14 20:24:21 +0200 | <davean> | use cabal repl |
2024-09-14 20:24:26 +0200 | <geekosaur> | ^ |
2024-09-14 20:24:26 +0200 | deriamis | (nobody@2600:3c0a::f03c:95ff:fee8:f335) |
2024-09-14 20:24:38 +0200 | <tomsmeding> | also that, plain ghci will not work in a cabal project |
2024-09-14 20:25:03 +0200 | <geekosaur> | well, it will if you use environment files, but they'll also bite your ass at some point |
2024-09-14 20:25:24 +0200 | <lxsameer> | tomsmeding: yeah i have both |
2024-09-14 20:25:26 +0200 | <sclv> | also if your dependency has a flag that changes the exposed api surface area, then that is a Bad Practice and they shouldn't do that (not that you necessarily can control that) |
2024-09-14 20:25:34 +0200 | <tomsmeding> | lxsameer: if you want to see how to write flags: look at a freeze file, i.e. `cabal freeze` and then look at cabal.project.freeze |
2024-09-14 20:25:34 +0200 | <lxsameer> | ah, ok so not the main file |
2024-09-14 20:25:40 +0200 | <tomsmeding> | that file is valid syntax for a cabal.project |
2024-09-14 20:25:46 +0200 | <lxsameer> | cheers |
2024-09-14 20:26:03 +0200 | irssi | Rembane |
2024-09-14 20:26:06 +0200 | <sclv> | here's some example syntax in the docs https://cabal.readthedocs.io/en/3.4/cabal-project.html#solver-configuration-options |
2024-09-14 20:26:31 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 264 seconds) |
2024-09-14 20:26:45 +0200 | <monochrom> | Yeah putting it cabal.project is cleaner than remembering that you have to say "cabal install --lib ... tons of options to sets flags ..." |
2024-09-14 20:27:00 +0200 | <geekosaur> | --write-environment-files=always |
2024-09-14 20:27:08 +0200 | <geekosaur> | (or cabal.project equivalent) |
2024-09-14 20:27:21 +0200 | <geekosaur> | but, as I said, eventually it'll bite your ass hard |
2024-09-14 20:27:54 +0200 | <geekosaur> | it's like "cabal hell" but limited to your project because they're written to local build directories |
2024-09-14 20:28:33 +0200 | <tomsmeding> | *project directories, right? |
2024-09-14 20:28:38 +0200 | <tomsmeding> | ghc won't look in dist-newstyle |
2024-09-14 20:28:39 +0200 | <geekosaur> | once you start building up different versions, ghc will start grabbing wrong versions of deps |
2024-09-14 20:28:41 +0200 | <lxsameer> | cabal.project.local would be acceptable right? |
2024-09-14 20:28:45 +0200 | <geekosaur> | yes |
2024-09-14 20:28:55 +0200 | <geekosaur> | tomsmeding, source dirs |
2024-09-14 20:28:57 +0200 | <tomsmeding> | cabal.project.local is for stuff you don't want to push |
2024-09-14 20:29:17 +0200 | <tomsmeding> | geekosaur: right. My definition of "build directory" is "dist-newstyle" :p |
2024-09-14 20:30:15 +0200 | <monochrom> | I still use cabal-install --lib, but now I keep it in directory-local env files. :) |
2024-09-14 20:30:42 +0200 | <tomsmeding> | it's not that it can't work, but if you don't need it, better not have to think about doing it right |
2024-09-14 20:32:51 +0200 | <geekosaur> | yep. still has this problem lurking, thoiugh. it's safest with a freeze file and nuking the env files any time you update the freeze file. I *think* that will avoid the worst issues |
2024-09-14 20:32:59 +0200 | <monochrom> | Its just for study notes. A different topic to learn uses a different directory, e.g., I have one directory for learning hmatrix, a different one for learning sqlite and the sqlite-simple package. They won't interfere with each other. |
2024-09-14 20:34:05 +0200 | <monochrom> | More seriously projects like my https://github.com/treblacy/cabalgc are properly cabalized. |
2024-09-14 20:34:51 +0200 | <monochrom> | Basically iff I would just want to say "make" if it were C, I cabalize for Haskell. |
2024-09-14 20:35:03 +0200 | <dmj`> | would be interesting to make a language that compiles to sqlite VM instructions, w/ a static type system |
2024-09-14 20:35:12 +0200 | <tomsmeding> | the thing with C is that the step from `make` to something else is humungous |
2024-09-14 20:39:50 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 20:40:39 +0200 | aljustiet | (~aljustiet@user/meow/aljustiet) |
2024-09-14 20:44:33 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 248 seconds) |
2024-09-14 20:44:56 +0200 | peterbecich | (~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Quit: peterbecich) |
2024-09-14 20:45:24 +0200 | peterbecich | (~Thunderbi@syn-047-229-123-186.res.spectrum.com) |
2024-09-14 20:45:27 +0200 | michalz | (~michalz@185.246.207.201) |
2024-09-14 20:49:05 +0200 | sw4n | (~sw4n@2605:59c0:40f0:9610:559:7713:a305:7d30) (Ping timeout: 252 seconds) |
2024-09-14 20:57:44 +0200 | mreh | (~matthew@host86-160-168-12.range86-160.btcentralplus.com) |
2024-09-14 20:57:50 +0200 | JuanDaugherty | (~juan@user/JuanDaugherty) |
2024-09-14 21:00:01 +0200 | caconym9 | (~caconym@user/caconym) (Quit: bye) |
2024-09-14 21:00:37 +0200 | caconym9 | (~caconym@user/caconym) |
2024-09-14 21:01:47 +0200 | misterfish | (~misterfis@84.53.85.146) (Ping timeout: 265 seconds) |
2024-09-14 21:09:14 +0200 | wootehfoot | (~wootehfoo@user/wootehfoot) (Read error: Connection reset by peer) |
2024-09-14 21:09:59 +0200 | weary-traveler | (~user@user/user363627) |
2024-09-14 21:14:10 +0200 | spew | (~spew@201.141.99.170) |
2024-09-14 21:16:02 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 21:21:07 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 264 seconds) |
2024-09-14 21:25:12 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2024-09-14 21:26:31 +0200 | machinedgod | (~machinedg@d50-99-47-73.abhsia.telus.net) (Ping timeout: 264 seconds) |
2024-09-14 21:29:56 +0200 | L29Ah | (~L29Ah@wikipedia/L29Ah) |
2024-09-14 21:30:41 +0200 | sw4n | (~sw4n@2605:59c0:40f0:9610:559:7713:a305:7d30) |
2024-09-14 21:33:13 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 21:37:29 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 244 seconds) |
2024-09-14 21:39:07 +0200 | <cheater> | tomsmeding: why are freeze files necessary to have a dependency flag? |
2024-09-14 21:39:20 +0200 | <tomsmeding> | cheater: they aren't |
2024-09-14 21:39:32 +0200 | <geekosaur> | it's just a convenient way to see where dep flags fit in |
2024-09-14 21:39:35 +0200 | <tomsmeding> | I just pointed to them as an example of how the syntax works |
2024-09-14 21:39:43 +0200 | <cheater> | ahh |
2024-09-14 21:39:45 +0200 | <cheater> | gotcha, thanks guys |
2024-09-14 21:39:55 +0200 | <tomsmeding> | because freeze files contents are the same language as what goes in cabal.project |
2024-09-14 21:49:01 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 21:52:14 +0200 | Squared | (~Square@user/square) (Ping timeout: 260 seconds) |
2024-09-14 21:53:15 +0200 | mreh | (~matthew@host86-160-168-12.range86-160.btcentralplus.com) (Ping timeout: 252 seconds) |
2024-09-14 21:53:38 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
2024-09-14 22:04:53 +0200 | troojg | (~troojg@user/troojg) |
2024-09-14 22:04:57 +0200 | <__monty__> | tomsmeding: I keep hearing good things about Meson. |
2024-09-14 22:05:47 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 22:10:19 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds) |
2024-09-14 22:13:18 +0200 | spew | (~spew@201.141.99.170) (Read error: Connection reset by peer) |
2024-09-14 22:13:48 +0200 | michalz_ | (~michalz@185.246.207.215) |
2024-09-14 22:15:01 +0200 | <geekosaur> | the point, I think, was more that moving from make to anything else is a "complete build system rewrite" deal, not a simple migration |
2024-09-14 22:15:15 +0200 | michalz | (~michalz@185.246.207.201) (Ping timeout: 265 seconds) |
2024-09-14 22:15:16 +0200 | <geekosaur> | (and possibly redesign) |
2024-09-14 22:17:02 +0200 | <geekosaur> | none of the make alternatives are drop-in replacements |
2024-09-14 22:18:03 +0200 | <geekosaur> | even early ones like cake (roughly, a cross between make and ccache) took a lot of work |
2024-09-14 22:19:24 +0200 | spew | (~spew@201.141.99.170) |
2024-09-14 22:21:43 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 22:23:21 +0200 | <tomsmeding> | __monty__: does meson do dependencies? |
2024-09-14 22:23:35 +0200 | <tomsmeding> | as long as there are no dependencies to be built/installed, I can do with make just fine |
2024-09-14 22:24:17 +0200 | <EvanR> | this? https://cakebuild.net/ |
2024-09-14 22:24:23 +0200 | <tomsmeding> | preprocessing source files is no problem, multiple different configurations can be done with variables |
2024-09-14 22:24:35 +0200 | <tomsmeding> | make is perfectly fine UNTIL one needs anything involving external dependencies |
2024-09-14 22:24:45 +0200 | <geekosaur> | no, I'm talking about one from back in 1989ish |
2024-09-14 22:25:11 +0200 | <geekosaur> | it was aware of configurations, cached build products, and shared them across configurations when possible |
2024-09-14 22:25:55 +0200 | <geekosaur> | its downfall was that by far the most common pair of configurations is "devel / production" (debug-forward vs. optimization-forward), where the possible sharing is pretty much 0 |
2024-09-14 22:26:12 +0200 | <geekosaur> | oh, and defining configurations was messy |
2024-09-14 22:26:31 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 264 seconds) |
2024-09-14 22:27:04 +0200 | ash3en | (~Thunderbi@146.70.124.222) |
2024-09-14 22:27:21 +0200 | <geekosaur> | https://www.semanticscholar.org/paper/Cake%3A-a-fifth-generation-version-of-make-Somogyi/3e973b5c9… |
2024-09-14 22:29:51 +0200 | <geekosaur> | in practice, make+ccache turned out to be more practically usable |
2024-09-14 22:31:07 +0200 | benjaminl_ | (~benjaminl@2601:1c0:847f:9c70:223:24ff:fe66:4370) (Read error: Connection reset by peer) |
2024-09-14 22:31:22 +0200 | benjaminl | (~benjaminl@user/benjaminl) |
2024-09-14 22:35:24 +0200 | sw4n | (~sw4n@2605:59c0:40f0:9610:559:7713:a305:7d30) (Ping timeout: 260 seconds) |
2024-09-14 22:38:39 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 22:43:01 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 248 seconds) |
2024-09-14 22:50:26 +0200 | ec | (~ec@gateway/tor-sasl/ec) (Remote host closed the connection) |
2024-09-14 22:52:37 +0200 | weary-traveler | (~user@user/user363627) (Remote host closed the connection) |
2024-09-14 22:53:38 +0200 | target_i | (~target_i@user/target-i/x-6023099) (Quit: leaving) |
2024-09-14 22:53:46 +0200 | sw4n | (~sw4n@2605:59c0:40f0:9610:559:7713:a305:7d30) |
2024-09-14 22:55:42 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 22:57:34 +0200 | troojg | (~troojg@user/troojg) (Ping timeout: 260 seconds) |
2024-09-14 23:00:29 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds) |
2024-09-14 23:04:04 +0200 | aljustiet | (~aljustiet@user/meow/aljustiet) (Ping timeout: 265 seconds) |
2024-09-14 23:07:12 +0200 | ash3en | (~Thunderbi@146.70.124.222) (Quit: ash3en) |
2024-09-14 23:10:34 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 23:12:09 +0200 | peterbecich | (~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 260 seconds) |
2024-09-14 23:17:24 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds) |
2024-09-14 23:20:29 +0200 | Sgeo | (~Sgeo@user/sgeo) |
2024-09-14 23:20:37 +0200 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2024-09-14 23:27:37 +0200 | lxsameer | (~lxsameer@Serene/lxsameer) (Ping timeout: 255 seconds) |
2024-09-14 23:28:29 +0200 | sw4n | (~sw4n@2605:59c0:40f0:9610:559:7713:a305:7d30) (Ping timeout: 260 seconds) |
2024-09-14 23:30:19 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 23:34:50 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
2024-09-14 23:47:09 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) |
2024-09-14 23:48:54 +0200 | tomboy64 | (~tomboy64@user/tomboy64) (Ping timeout: 260 seconds) |
2024-09-14 23:51:36 +0200 | merijn | (~merijn@204-220-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds) |
2024-09-14 23:53:38 +0200 | sw4n | (~sw4n@2605:59c0:40f0:9610:559:7713:a305:7d30) |
2024-09-14 23:55:37 +0200 | tomboy64 | (~tomboy64@user/tomboy64) |
2024-09-14 23:56:24 +0200 | michalz_ | (~michalz@185.246.207.215) (Remote host closed the connection) |