Home liberachat/#haskell: Logs Calendar

Logs: liberachat/#haskell

←Prev  Next→ 1,804,223 events total
2025-08-28 07:32:58 jess joins (meow@libera/staff/cat/jess)
2025-08-28 07:34:58 <haskellbridge> <sm> Axman6: From https://docs.haskellstack.org/en/stable/ChangeLog I get the impression that stack started support for multi-library packages (AKA sub libraries AKA internal libraries ...) around 2018, and has been steadily improving that support ever since
2025-08-28 07:37:30 merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
2025-08-28 07:41:46 peterbecich joins (~Thunderbi@syn-047-229-123-186.res.spectrum.com)
2025-08-28 07:41:53 <haskellbridge> <sm> backpack support is another one people usually ask about; AFAIK it's not in stack and consensus is that the feature has failed as an practical feature in cabal/ghc (it should be in the language not the tools)
2025-08-28 07:42:34 × merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds)
2025-08-28 07:48:57 × mange quits (~mange@user/mange) (Quit: Quittin' time!)
2025-08-28 07:49:02 merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
2025-08-28 07:49:38 <Franciman> where is maerwald?
2025-08-28 07:50:17 <haskellbridge> <maerwald> what?
2025-08-28 07:51:45 <Franciman> what's up?
2025-08-28 07:51:52 <Franciman> how are you?
2025-08-28 07:52:02 <haskellbridge> <maerwald> fixing ghc and cabal
2025-08-28 07:53:03 <Franciman> cool
2025-08-28 07:54:07 × merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 260 seconds)
2025-08-28 07:54:09 <haskellbridge> <maerwald> What else is there to do
2025-08-28 07:56:58 <haskellbridge> <sm> Hmm. are mixins and backpack different names for the same thing ?
2025-08-28 07:58:09 ljdarj joins (~Thunderbi@user/ljdarj)
2025-08-28 07:58:46 Googulator68 is now known as Googulator
2025-08-28 08:03:33 <Franciman> backpack is a way to emulate certain of the properties of standard ml module system, iiuc
2025-08-28 08:03:44 <Franciman> aren't mixins a way to solve the expression problem?
2025-08-28 08:03:44 paul joins (~paul@p200300d0c724c95b1313013fcbfec0be.dip0.t-ipconnect.de)
2025-08-28 08:03:48 paul is now known as Guest8610
2025-08-28 08:04:07 × marinelli quits (~weechat@gateway/tor-sasl/marinelli) (Remote host closed the connection)
2025-08-28 08:04:50 merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
2025-08-28 08:04:53 marinelli joins (~weechat@gateway/tor-sasl/marinelli)
2025-08-28 08:05:12 × FANTOM quits (~fantom@87.74.59.94) (Ping timeout: 248 seconds)
2025-08-28 08:05:49 × peterbecich quits (~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 256 seconds)
2025-08-28 08:06:22 × arandombit quits (~arandombi@user/arandombit) (Ping timeout: 255 seconds)
2025-08-28 08:07:38 × tzh quits (~tzh@c-76-115-131-146.hsd1.or.comcast.net) (Quit: zzz)
2025-08-28 08:09:09 <sm> https://cabal.readthedocs.io/en/stable/cabal-package-description-file.html#pkg-field-mixins says "Mixin packages are part of the How to use Backpack modules extension to the Haskell module system."
2025-08-28 08:10:32 × merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 248 seconds)
2025-08-28 08:10:53 <sm> https://cabal.readthedocs.io/en/stable/how-to-use-backpack.html mentions "mix-in linking" a few times. But it's not clear if these things are essentially the same feature, or two features that overlap
2025-08-28 08:12:14 <Franciman> ah ok
2025-08-28 08:13:05 <sm> Also for anyone curious, this seems to be the main history of stack backpack support so far (2016..2024-08):
2025-08-28 08:13:11 <sm> https://github.com/commercialhaskell/stack/issues/2540
2025-08-28 08:13:14 <sm> https://github.com/commercialhaskell/stack/issues/4745
2025-08-28 08:13:17 <sm> https://github.com/commercialhaskell/stack/issues/6356
2025-08-28 08:14:36 × chiselfuse quits (~chiselfus@user/chiselfuse) (Remote host closed the connection)
2025-08-28 08:15:13 chiselfuse joins (~chiselfus@user/chiselfuse)
2025-08-28 08:15:17 merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
2025-08-28 08:19:01 acidjnk joins (~acidjnk@p200300d6e7171930a0d4799db13e1f65.dip0.t-ipconnect.de)
2025-08-28 08:19:59 arandombit joins (~arandombi@2603:7000:4600:ffbe:2ca2:a28f:2f37:22f6)
2025-08-28 08:19:59 × arandombit quits (~arandombi@2603:7000:4600:ffbe:2ca2:a28f:2f37:22f6) (Changing host)
2025-08-28 08:19:59 arandombit joins (~arandombi@user/arandombit)
2025-08-28 08:20:16 × merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds)
2025-08-28 08:22:16 <haskellbridge> <sm> ezyang's initial comment suggests that use of backpack in private/internal/sub libraries may just work; exposing backpack signatures in the public library is the problem
2025-08-28 08:22:56 <yushyin> I sometimes use mixins in my cabal files
2025-08-28 08:23:50 tromp joins (~textual@2001:1c00:3487:1b00:6941:8da5:79d5:ac1b)
2025-08-28 08:24:14 × arandombit quits (~arandombi@user/arandombit) (Ping timeout: 256 seconds)
2025-08-28 08:27:42 <sm> yushyin, can stack build those packages ?
2025-08-28 08:29:03 <yushyin> Dunno, but stack repl doesn't work with mixins. One reason why I stopped using stack
2025-08-28 08:29:58 <haskellbridge> <sm> are any of them public ? I'm curious
2025-08-28 08:31:04 merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
2025-08-28 08:31:35 <Franciman> yushyin: i personally avoid cabal too
2025-08-28 08:31:46 <Franciman> boot packages + ghc is WAYYY GOOD
2025-08-28 08:32:16 <Franciman> fortunately for programming in the large, cabal is quite good nowadays
2025-08-28 08:32:51 <yushyin> sm: No, I don't use mixins in public repos as I know about stack not working with them
2025-08-28 08:33:17 <haskellbridge> <sm> fair enough
2025-08-28 08:33:23 <Franciman> is there any use case, nowadays, to use stack rather than cabal'
2025-08-28 08:33:25 <Franciman> ?
2025-08-28 08:33:49 <Franciman> iiuc stackage is purposefully obfuscated to avoid being compatible with cabal, but is ultimately a cabal freeze output
2025-08-28 08:34:52 <haskellbridge> <sm> Franciman, I don't think yuc :)
2025-08-28 08:36:01 × merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 248 seconds)
2025-08-28 08:36:04 <Franciman> what does yuc mean?
2025-08-28 08:36:09 <Franciman> sorry
2025-08-28 08:37:32 <haskellbridge> <sm> "you understand correctly"
2025-08-28 08:37:42 arandombit joins (~arandombi@2603:7000:4600:ffbe:2ca2:a28f:2f37:22f6)
2025-08-28 08:37:42 × arandombit quits (~arandombi@2603:7000:4600:ffbe:2ca2:a28f:2f37:22f6) (Changing host)
2025-08-28 08:37:42 arandombit joins (~arandombi@user/arandombit)
2025-08-28 08:37:55 <Franciman> ty
2025-08-28 08:39:07 × darkling quits (~darkling@2001-ba8-1f1-f0e6-0-0-0-2.autov6rev.bitfolk.space) (Server closed connection)
2025-08-28 08:39:17 darkling joins (~darkling@2001-ba8-1f1-f0e6-0-0-0-2.autov6rev.bitfolk.space)
2025-08-28 08:40:30 PaulMartensen joins (15a119e437@2001:bc8:1210:2cd8::3bc)
2025-08-28 08:41:36 FANTOM joins (~fantom@87.74.59.94)
2025-08-28 08:41:37 × Guest8610 quits (~paul@p200300d0c724c95b1313013fcbfec0be.dip0.t-ipconnect.de) (Quit: Guest8610)
2025-08-28 08:42:20 <haskellbridge> <sm> the plot thickens once again: it seems there are private sublibraries, and public sublibraries, which should be considered separately
2025-08-28 08:42:54 × arandombit quits (~arandombi@user/arandombit) (Ping timeout: 260 seconds)
2025-08-28 08:45:46 <haskellbridge> <sm> Franciman if you're asking seriously: many people, including myself, like stack for its greater focus on reproducibility, its generally better UX, and its relative lack of cruft and legacy baggage.
2025-08-28 08:46:45 trickard_ is now known as trickard
2025-08-28 08:46:51 merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
2025-08-28 08:47:05 <Franciman> i see sm thanks
2025-08-28 08:50:57 chele joins (~chele@user/chele)
2025-08-28 08:53:37 × FANTOM quits (~fantom@87.74.59.94) (Ping timeout: 248 seconds)
2025-08-28 08:54:03 arandombit joins (~arandombi@2603:7000:4600:ffbe:2ca2:a28f:2f37:22f6)
2025-08-28 08:54:03 × arandombit quits (~arandombi@2603:7000:4600:ffbe:2ca2:a28f:2f37:22f6) (Changing host)
2025-08-28 08:54:03 arandombit joins (~arandombi@user/arandombit)
2025-08-28 08:55:09 × merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 260 seconds)
2025-08-28 08:55:42 literon joins (~literon@2E8B6C41.catv.pool.telekom.hu)
2025-08-28 08:58:25 × arandombit quits (~arandombi@user/arandombit) (Ping timeout: 248 seconds)
2025-08-28 09:02:22 ubert1 joins (~Thunderbi@178.165.186.86.wireless.dyn.drei.com)
2025-08-28 09:05:49 merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl)
2025-08-28 09:08:47 kuribas joins (~user@ip-188-118-57-242.reverse.destiny.be)
2025-08-28 09:09:06 FANTOM joins (~fantom@87.74.59.94)
2025-08-28 09:09:31 Square3 joins (~Square4@user/square)
2025-08-28 09:10:41 × merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 248 seconds)
2025-08-28 09:12:07 × tomboy64 quits (~tomboy64@user/tomboy64) (Ping timeout: 256 seconds)
2025-08-28 09:13:23 tomboy64 joins (~tomboy64@user/tomboy64)
2025-08-28 09:17:59 gmg joins (~user@user/gehmehgeh)
2025-08-28 09:20:40 arandombit joins (~arandombi@2603:7000:4600:ffbe:2ca2:a28f:2f37:22f6)

All times are in UTC.