Home freenode/#haskell: Logs Calendar

Logs: freenode/#haskell

←Prev  Next→ 502,152 events total
2020-11-04 12:39:42 <int-e> :t Data.Coerce.coerce
2020-11-04 12:39:43 <lambdabot> Coercible a b => a -> b
2020-11-04 12:40:10 <idnar> @type \f x -> Data.Coerce.coerce (f (Data.Coerce.coerce x))
2020-11-04 12:40:12 <lambdabot> (Coercible a1 b, Coercible a2 t) => (t -> a1) -> a2 -> b
2020-11-04 12:40:47 <merijn> I think you could juse coerce f? :p
2020-11-04 12:41:26 <merijn> :t Data.Coerce.coerce :: (Coercible a b, Coercible c d) => (a -> c) -> (b -> d)
2020-11-04 12:41:28 <lambdabot> error:
2020-11-04 12:41:28 <lambdabot> Not in scope: type constructor or class ‘Coercible’
2020-11-04 12:41:28 <lambdabot> error:
2020-11-04 12:41:44 <merijn> :t Data.Coerce.coerce :: (Data.Coerce.Coercible a b, Data.Coerce.Coercible c d) => (a -> c) -> (b -> d)
2020-11-04 12:41:45 <lambdabot> (Coercible a b, Coercible c d) => (a -> c) -> b -> d
2020-11-04 12:41:48 <merijn> boom
2020-11-04 12:42:00 nbloomf joins (~nbloomf@2600:1700:ad14:3020:fc37:ff3f:9c12:2922)
2020-11-04 12:42:04 <idnar> oh yes duh
2020-11-04 12:42:29 <int-e> @let import Data.Coerce
2020-11-04 12:42:30 <lambdabot> .L.hs:80:1: error:
2020-11-04 12:42:31 <lambdabot> Data.Coerce: Can't be safely imported!
2020-11-04 12:42:31 <lambdabot> The module itself isn't safe.
2020-11-04 12:42:31 chaosmasttter joins (~chaosmast@p200300c4a7117c01215e340256877fbe.dip0.t-ipconnect.de)
2020-11-04 12:42:44 <tomsmeding> safe haskell rears its head!
2020-11-04 12:42:57 <Uniaika> <3 <3
2020-11-04 12:42:58 <int-e> Fun, I thought it was supposed to be safe by now.
2020-11-04 12:43:06 × GUEST93534 quits (~GUEST9353@124.123.107.91) (Ping timeout: 244 seconds)
2020-11-04 12:43:08 <idnar> either way, awkward to use without -XTypeApplication I guess
2020-11-04 12:43:12 <Uniaika> int-e: with a name like that… ? :P
2020-11-04 12:43:21 <int-e> Uniaika: why not?
2020-11-04 12:43:27 <merijn> Pretty sure Data.Coerce should be Trustworthy, not Safe
2020-11-04 12:43:41 <int-e> merijn: well, base *is* trusted
2020-11-04 12:43:48 <Uniaika> int-e: the name screams "force your hand" :P
2020-11-04 12:43:56 <merijn> Actually, it's explicitly Unsafe
2020-11-04 12:44:02 <int-e> merijn: the matter of fact is... that.
2020-11-04 12:44:09 <merijn> int-e: Package trust and Trustworthy is different
2020-11-04 12:44:27 <int-e> merijn: package trust means to trust all Trustworthy modules in the package
2020-11-04 12:44:32 <merijn> trusted packages are "those packages whose Trustworthy modules should be treated as actually trustworth"
2020-11-04 12:44:46 <int-e> so if it *were* marked Trustworthy, lambdabot would allow it to be imported
2020-11-04 12:45:25 × darjeeling_ quits (~darjeelin@115.215.43.51) (Ping timeout: 260 seconds)
2020-11-04 12:46:07 <int-e> you *can* get coerce in lambdabot anyway, via profunctors, but I forgot the precise definition; it was somewhat convoluted.
2020-11-04 12:46:37 × yoyo quits (50a46f47@80-164-111-71-dynamic.dk.customer.tdc.net) (Remote host closed the connection)
2020-11-04 12:46:52 GUEST93997 joins (~GUEST9399@124.123.107.91)
2020-11-04 12:47:06 <int-e> @let import Data.Profunctor.Unsafe
2020-11-04 12:47:08 <lambdabot> .L.hs:114:1: error:
2020-11-04 12:47:08 <lambdabot> Data.Profunctor.Unsafe: Can't be safely imported!
2020-11-04 12:47:08 <lambdabot> The package (profunctors-5.5.2) the module resides in isn't trusted.
2020-11-04 12:47:12 <int-e> Ah.
2020-11-04 12:47:21 <int-e> Okay, I take it back :)
2020-11-04 12:48:03 <int-e> Uniaika: In any case, *that* module is marked Trustworthy btw... despite the name.
2020-11-04 12:48:03 × ahmr88 quits (~ahmr88@cpc85006-haye22-2-0-cust131.17-4.cable.virginm.net) (Remote host closed the connection)
2020-11-04 12:48:29 darjeeling_ joins (~darjeelin@115.215.43.51)
2020-11-04 12:48:59 heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-11-04 12:49:32 <int-e> (for historic reasons, really... it uses coerce noawadays, to unwrap and rewrap newtypes deep inside data structures, but it used to be based on unsafeCoerce)
2020-11-04 12:50:54 <int-e> I still expect that coerce is leaked through the lens ecosystem *somewhere*.
2020-11-04 12:51:21 <idnar> :t coerced
2020-11-04 12:51:23 <lambdabot> (Profunctor p, Functor f, Coercible s a, Coercible t b) => p a (f b) -> p s (f t)
2020-11-04 12:51:32 × acidjnk_new2 quits (~acidjnk@p200300d0c718f665213d210801ac68e4.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
2020-11-04 12:51:42 <int-e> oh, that simple.
2020-11-04 12:51:49 <idnar> :)
2020-11-04 12:51:53 <int-e> thanks
2020-11-04 12:52:27 AlterEgo- joins (~ladew@124-198-158-163.dynamic.caiway.nl)
2020-11-04 12:52:39 Lycurgus joins (~niemand@98.4.97.110)
2020-11-04 12:52:44 <idnar> from just now: <lambdabot> • Perhaps you meant ‘coerced’ (imported from Control.Lens)
2020-11-04 12:53:05 × heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 240 seconds)
2020-11-04 12:54:34 <int-e> :t \f -> runIdentity . coerced (Identity . f . runIdentity)
2020-11-04 12:54:36 <lambdabot> (Coercible b1 a, Coercible c b2) => (b1 -> b2) -> a -> c
2020-11-04 12:55:05 × Tario quits (~Tario@201.192.165.173) (Read error: Connection reset by peer)
2020-11-04 12:55:23 justMaD joins (~justMaD@184.75.221.35)
2020-11-04 12:56:06 <fendor> is it just me or is the cabal index pretty big? 800MB in .cabal/packages?
2020-11-04 12:56:19 mdunnio joins (~mdunnio@208.59.170.5)
2020-11-04 12:56:49 <idnar> is Coercible symmetric?
2020-11-04 12:57:29 <int-e> fendor: yes, but well... it contains all .cabal files every uploaded to hackage, and a bit of extra stuff
2020-11-04 12:57:53 <dcoutts> fendor: that's uncompressed locally. It only downloads the compressed version which is 90M.
2020-11-04 12:58:04 <int-e> idnar: yes.
2020-11-04 12:58:10 <fendor> dcoutts, oh well, on the server it still takes 800mb
2020-11-04 12:58:12 <merijn> .cabal/package holds all the downloaded tarballs too
2020-11-04 12:58:13 <int-e> and it's downloaded incrementally
2020-11-04 12:58:44 <int-e> But for small VPSs it is big.
2020-11-04 12:58:46 × GUEST93997 quits (~GUEST9399@124.123.107.91) (Read error: Connection reset by peer)
2020-11-04 12:58:52 <fendor> just by invoking `cabal update`
2020-11-04 12:59:02 <fendor> but admittedly, cabal 3.0.0.0, maybe something has changed?
2020-11-04 12:59:13 <int-e> Regardless, this is normal :-/
2020-11-04 13:00:10 <merijn> fendor: Well, what would you propose to change about it?
2020-11-04 13:00:10 GUEST94796 joins (~GUEST9479@124.123.107.91)
2020-11-04 13:00:24 <merijn> fendor: You need an index of all packages to do dependency resolution
2020-11-04 13:00:25 ahmr88 joins (~ahmr88@cpc85006-haye22-2-0-cust131.17-4.cable.virginm.net)
2020-11-04 13:00:30 <fendor> merijn, nothing, I am just asking if that is to be expected
2020-11-04 13:00:40 × GUEST94796 quits (~GUEST9479@124.123.107.91) (Read error: Connection reset by peer)
2020-11-04 13:00:49 mietek joins (sid134071@gateway/web/irccloud.com/x-xdfehjuwjfwgiund)
2020-11-04 13:01:00 <mietek> Is the new Haskell Foundation website on github somewhere?
2020-11-04 13:01:02 <merijn> fendor: Well, it has entries and hashes for every package (version) ever released, so...kinda
2020-11-04 13:01:12 <fendor> not claiming it is bad or anything, I dont know how anyone else does it
2020-11-04 13:01:18 × vfaronov quits (~vfaronov@broadband-95-84-210-78.ip.moscow.rt.ru) (Quit: vfaronov)
2020-11-04 13:01:32 vfaronov joins (~vfaronov@broadband-95-84-210-78.ip.moscow.rt.ru)
2020-11-04 13:01:32 urodna joins (~urodna@unaffiliated/urodna)
2020-11-04 13:01:34 <fendor> just wondering, because it seemed huge, but if it is ok, then it is ok
2020-11-04 13:01:37 <dminuoso> fendor: They all do it the same, really.
2020-11-04 13:01:41 <merijn> fendor: There doesn't seem to be a lot of reason to even have cabal on machines that aren't compiling, though?
2020-11-04 13:01:47 GUEST94894 joins (~GUEST9489@124.123.107.91)
2020-11-04 13:01:52 <merijn> dminuoso: Naah
2020-11-04 13:01:56 <merijn> dminuoso: Some do it much worse!
2020-11-04 13:01:59 Tario joins (~Tario@201.192.165.173)
2020-11-04 13:02:01 <dminuoso> heh

All times are in UTC.