2021-10-08 00:05:30 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
2021-10-08 00:05:30 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host) |
2021-10-08 00:05:30 +0200 | wroathe | (~wroathe@user/wroathe) |
2021-10-08 00:06:50 +0200 | hgolden | (~hgolden2@cpe-172-114-81-123.socal.res.rr.com) (Remote host closed the connection) |
2021-10-08 00:08:01 +0200 | beka | (~beka@104.193.170.240) (Ping timeout: 265 seconds) |
2021-10-08 00:08:32 +0200 | <Skyfire> | Are there any mature Haskell libraries for commutative algebra computations? I want to compute the Hilbert series of a graded subring of C[x,y]. |
2021-10-08 00:08:50 +0200 | Gurkenglas | (~Gurkengla@dslb-002-203-144-204.002.203.pools.vodafone-ip.de) (Ping timeout: 265 seconds) |
2021-10-08 00:10:54 +0200 | <sclv> | sadly nothing pleasant to use that i know of |
2021-10-08 00:11:47 +0200 | <sclv> | Skyfire: probably your best bet -- https://hackage.haskell.org/package/HaskellForMaths |
2021-10-08 00:11:58 +0200 | <Skyfire> | Thanks. Let's see if there is something for Hilbert series. |
2021-10-08 00:12:25 +0200 | Lorra | (~lorenzo@2001:a61:be4:201:ad0b:4d75:e3f6:65ba) (Quit: Konversation terminated!) |
2021-10-08 00:12:50 +0200 | emf_ | (~emf@2620:10d:c090:400::5:fdfa) (Ping timeout: 260 seconds) |
2021-10-08 00:14:28 +0200 | emf | (~emf@163.114.132.7) |
2021-10-08 00:14:55 +0200 | gehmehgeh | (~user@user/gehmehgeh) (Quit: Leaving) |
2021-10-08 00:15:34 +0200 | hnOsmium0001 | (uid453710@hampstead.irccloud.com) (Quit: Connection closed for inactivity) |
2021-10-08 00:17:08 +0200 | beka | (~beka@104.193.170.240) |
2021-10-08 00:22:58 +0200 | <Skyfire> | Wow, the Math.CommutativeAlgebra.GroebnerBasis module seems very nice. But apparently the hilbertSeriesQA function assumes that the generators have degree 1, which is not true in my case. |
2021-10-08 00:29:29 +0200 | hnOsmium0001 | (uid453710@id-453710.hampstead.irccloud.com) |
2021-10-08 00:30:31 +0200 | geekosaur | (~geekosaur@xmonad/geekosaur) (Ping timeout: 245 seconds) |
2021-10-08 00:33:50 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer) |
2021-10-08 00:37:46 +0200 | wroathe | (~wroathe@user/wroathe) (Ping timeout: 252 seconds) |
2021-10-08 00:39:13 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
2021-10-08 00:39:13 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host) |
2021-10-08 00:39:13 +0200 | wroathe | (~wroathe@user/wroathe) |
2021-10-08 00:40:01 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:f513:8be8:adee:de02) (Remote host closed the connection) |
2021-10-08 00:42:22 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-10-08 00:42:35 +0200 | fendor | (~fendor@178.165.191.25.wireless.dyn.drei.com) (Remote host closed the connection) |
2021-10-08 00:44:58 +0200 | dhouthoo | (~dhouthoo@178-117-36-167.access.telenet.be) (Quit: WeeChat 3.2) |
2021-10-08 00:48:41 +0200 | bdaed | (~bdaed@185.234.208.208.r.toneticgroup.pl) |
2021-10-08 00:51:31 +0200 | DNH | (~DNH@2a02:8108:1100:16d8:a11a:d19d:8c20:4068) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2021-10-08 00:52:17 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:25a3:7e37:69ba:6dab) |
2021-10-08 00:53:10 +0200 | bdaed | (~bdaed@185.234.208.208.r.toneticgroup.pl) (Ping timeout: 252 seconds) |
2021-10-08 00:54:56 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) |
2021-10-08 00:55:03 +0200 | Tuplanolla | (~Tuplanoll@91-159-69-50.elisa-laajakaista.fi) (Quit: Leaving.) |
2021-10-08 00:58:41 +0200 | max22- | (~maxime@2a01cb088335980045db91cc5b38a3ac.ipv6.abo.wanadoo.fr) (Remote host closed the connection) |
2021-10-08 00:59:10 +0200 | myShoggoth | (~myShoggot@97-120-70-214.ptld.qwest.net) (Ping timeout: 260 seconds) |
2021-10-08 01:01:09 +0200 | MQ-17J | (~MQ-17J@d192-24-122-179.try.wideopenwest.com) (Read error: Connection reset by peer) |
2021-10-08 01:03:40 +0200 | <zzz> | someone finally did it |
2021-10-08 01:03:42 +0200 | <zzz> | https://youtube.com/watch?v=ADqLBc1vFwI |
2021-10-08 01:03:55 +0200 | <monochrom> | haha |
2021-10-08 01:06:13 +0200 | MQ-17J | (~MQ-17J@8.6.144.117) |
2021-10-08 01:07:31 +0200 | myShoggoth | (~myShoggot@97-120-70-214.ptld.qwest.net) |
2021-10-08 01:12:25 +0200 | spider | (~spider@vps-951ce37a.vps.ovh.ca) (Quit: WeeChat 3.2) |
2021-10-08 01:16:02 +0200 | spider | (~spider@vps-951ce37a.vps.ovh.ca) |
2021-10-08 01:17:08 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds) |
2021-10-08 01:18:25 +0200 | alzgh | (~alzgh@user/alzgh) (Remote host closed the connection) |
2021-10-08 01:18:52 +0200 | myShoggoth | (~myShoggot@97-120-70-214.ptld.qwest.net) (Read error: Connection reset by peer) |
2021-10-08 01:19:10 +0200 | myShoggoth | (~myShoggot@97-120-70-214.ptld.qwest.net) |
2021-10-08 01:19:41 +0200 | vysn | (~vysn@user/vysn) (Ping timeout: 245 seconds) |
2021-10-08 01:20:24 +0200 | Null_A | (~null_a@2601:645:8700:2290:75e9:85ca:7982:df23) |
2021-10-08 01:23:23 +0200 | ystael | (~ystael@user/ystael) |
2021-10-08 01:27:02 +0200 | mortemeur | (~mortemeur@pool-173-76-107-201.bstnma.fios.verizon.net) (Read error: Connection reset by peer) |
2021-10-08 01:28:48 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer) |
2021-10-08 01:29:30 +0200 | Null_A | (~null_a@2601:645:8700:2290:75e9:85ca:7982:df23) (Remote host closed the connection) |
2021-10-08 01:29:30 +0200 | Vajb | (~Vajb@85-76-12-150-nat.elisa-mobile.fi) |
2021-10-08 01:31:09 +0200 | emf | (~emf@163.114.132.7) (Ping timeout: 245 seconds) |
2021-10-08 01:35:54 +0200 | acidjnk_new3 | (~acidjnk@p200300d0c703cb3809607f7c8c1f0b15.dip0.t-ipconnect.de) |
2021-10-08 01:36:38 +0200 | cesar- | (~cesar@2607:f380:828:fa00::e70) |
2021-10-08 01:37:05 +0200 | myShoggoth | (~myShoggot@97-120-70-214.ptld.qwest.net) (Ping timeout: 260 seconds) |
2021-10-08 01:38:52 +0200 | acidjnk_new | (~acidjnk@p200300d0c703cb15c01e6432704cfc21.dip0.t-ipconnect.de) (Ping timeout: 252 seconds) |
2021-10-08 01:39:57 +0200 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) |
2021-10-08 01:41:18 +0200 | cesar- | (~cesar@2607:f380:828:fa00::e70) (Ping timeout: 265 seconds) |
2021-10-08 01:41:57 +0200 | pretty_dumm_guy | (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Quit: WeeChat 3.3) |
2021-10-08 01:42:02 +0200 | myShoggoth | (~myShoggot@97-120-70-214.ptld.qwest.net) |
2021-10-08 01:46:54 +0200 | Null_A | (~null_a@2601:645:8700:2290:8de:8d66:958e:46b4) |
2021-10-08 01:48:15 +0200 | Vajb | (~Vajb@85-76-12-150-nat.elisa-mobile.fi) (Read error: Connection reset by peer) |
2021-10-08 01:49:05 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) |
2021-10-08 01:49:24 +0200 | ec | (~ec@gateway/tor-sasl/ec) (Ping timeout: 276 seconds) |
2021-10-08 01:50:33 +0200 | shapr | (~user@pool-100-36-247-68.washdc.fios.verizon.net) (Remote host closed the connection) |
2021-10-08 01:54:21 +0200 | acidjnk_new3 | (~acidjnk@p200300d0c703cb3809607f7c8c1f0b15.dip0.t-ipconnect.de) (Ping timeout: 265 seconds) |
2021-10-08 01:54:47 +0200 | zaquest | (~notzaques@5.128.210.178) (Remote host closed the connection) |
2021-10-08 01:54:52 +0200 | shapr | (~user@pool-100-36-247-68.washdc.fios.verizon.net) |
2021-10-08 01:55:54 +0200 | zaquest | (~notzaques@5.128.210.178) |
2021-10-08 02:16:54 +0200 | Psybur | (~Psybur@mobile-166-170-32-197.mycingular.net) (Remote host closed the connection) |
2021-10-08 02:17:12 +0200 | libertyprime | (~libertypr@118.149.84.202) |
2021-10-08 02:17:13 +0200 | Psybur | (~Psybur@mobile-166-170-32-197.mycingular.net) |
2021-10-08 02:20:04 +0200 | wroathe | (~wroathe@user/wroathe) (Ping timeout: 252 seconds) |
2021-10-08 02:22:21 +0200 | shapr | (~user@pool-100-36-247-68.washdc.fios.verizon.net) (Remote host closed the connection) |
2021-10-08 02:24:04 +0200 | myShoggoth | (~myShoggot@97-120-70-214.ptld.qwest.net) (Ping timeout: 245 seconds) |
2021-10-08 02:33:16 +0200 | <dsal> | That thing about "Data.Map.Strict.Map" not being strict had me for a second. I thought I was about to learn a thing. |
2021-10-08 02:33:30 +0200 | lavaman | (~lavaman@98.38.249.169) |
2021-10-08 02:33:47 +0200 | <zzz> | dsal: yeah... |
2021-10-08 02:34:02 +0200 | <dsal> | I was spoiled by having already discovered that in a positive way. |
2021-10-08 02:35:09 +0200 | shapr | (~user@pool-100-36-247-68.washdc.fios.verizon.net) |
2021-10-08 02:35:11 +0200 | vicfred | (~vicfred@user/vicfred) (Quit: Leaving) |
2021-10-08 02:35:47 +0200 | <monochrom> | Does the term "false dichotomy" suffer from boolean blindness, which is just a new way to say false dichotomy? >:) |
2021-10-08 02:36:26 +0200 | <monochrom> | (Anyway, "lazy and strict" is just another false dichotomy or boolean blindness, as usual.) |
2021-10-08 02:37:08 +0200 | bdaed | (~bdaed@185.234.208.208.r.toneticgroup.pl) |
2021-10-08 02:38:11 +0200 | alx741 | (~alx741@181.196.69.122) (Ping timeout: 265 seconds) |
2021-10-08 02:38:13 +0200 | lavaman | (~lavaman@98.38.249.169) (Ping timeout: 252 seconds) |
2021-10-08 02:38:53 +0200 | <zzz> | import Data.Foldl'.Lazy |
2021-10-08 02:39:01 +0200 | <monochrom> | :) |
2021-10-08 02:39:34 +0200 | renzhi | (~xp@2607:fa49:6500:b100::5845) (Ping timeout: 250 seconds) |
2021-10-08 02:39:42 +0200 | <ghoulguy> | And anyway, the opposite of lazy is active or industrious or something. |
2021-10-08 02:39:43 +0200 | vicfred | (~vicfred@user/vicfred) |
2021-10-08 02:40:06 +0200 | <ghoulguy> | lax would be a better match for strict |
2021-10-08 02:41:05 +0200 | <monochrom> | onoes the spooky creepy ghoulguy is back! |
2021-10-08 02:41:50 +0200 | bdaed | (~bdaed@185.234.208.208.r.toneticgroup.pl) (Ping timeout: 260 seconds) |
2021-10-08 02:42:01 +0200 | ghoulguy | pulls aside the mask |
2021-10-08 02:42:01 +0200 | <ghoulguy> | monochrom, it's just me! |
2021-10-08 02:42:21 +0200 | <monochrom> | Aaaaaiiiiiiiieeeeee.... |
2021-10-08 02:42:26 +0200 | <c_wraith> | but under the mask is... exactly the same face? Why were you even wearing a mask? |
2021-10-08 02:42:59 +0200 | <zzz> | that's exactly what haskell needs... an excuse to introduce the word laxative into the lingo |
2021-10-08 02:43:04 +0200 | <monochrom> | value-recursive mask |
2021-10-08 02:43:22 +0200 | <awpr> | already have lax monoidal functors |
2021-10-08 02:43:42 +0200 | <c_wraith> | everyone just calls them Applicative, though |
2021-10-08 02:43:57 +0200 | <awpr> | we could have strict lax monoidal functors and lax strict monoidal functors (but the latter wouldn't be expressible as a type constructor) |
2021-10-08 02:45:35 +0200 | <awpr> | now that I think about it, strict functors might not satisfy the functor laws, depending on how lax you want to be about strictness |
2021-10-08 02:45:49 +0200 | <zzz> | laxatives are just endolaxoids in the category of... |
2021-10-08 02:48:19 +0200 | vicfred | (~vicfred@user/vicfred) (Quit: Leaving) |
2021-10-08 02:48:51 +0200 | <monochrom> | endomorphism |
2021-10-08 02:48:54 +0200 | <monochrom> | s |
2021-10-08 02:51:33 +0200 | alx741 | (~alx741@181.196.68.60) |
2021-10-08 02:58:14 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
2021-10-08 02:58:14 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host) |
2021-10-08 02:58:14 +0200 | wroathe | (~wroathe@user/wroathe) |
2021-10-08 02:58:29 +0200 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 265 seconds) |
2021-10-08 02:58:51 +0200 | Farzad | (~FarzadBek@151.238.114.149) (Ping timeout: 245 seconds) |
2021-10-08 03:03:31 +0200 | wroathe | (~wroathe@user/wroathe) (Ping timeout: 252 seconds) |
2021-10-08 03:05:28 +0200 | myShoggoth | (~myShoggot@97-120-70-214.ptld.qwest.net) |
2021-10-08 03:07:48 +0200 | Null_A | (~null_a@2601:645:8700:2290:8de:8d66:958e:46b4) (Remote host closed the connection) |
2021-10-08 03:08:47 +0200 | <geranim0> | hi, i had lots of fun with tmp in c++ and was unsure if haskell offers similar capability of writing functions that take types and return types? |
2021-10-08 03:09:29 +0200 | <monochrom> | What is tmp? |
2021-10-08 03:09:37 +0200 | <geranim0> | template metaprogramming |
2021-10-08 03:10:10 +0200 | xff0x | (~xff0x@2001:1a81:5214:3f00:d123:8201:4d44:2918) (Ping timeout: 252 seconds) |
2021-10-08 03:10:28 +0200 | <awpr> | sounds like you might like type families, more advanced typeclass shenanigans, data families, and GHC.Generics |
2021-10-08 03:10:38 +0200 | <Axman6> | we have template haskell for generating code at compile time, and things like type families for writing functions over types |
2021-10-08 03:11:09 +0200 | <awpr> | + GADTs to link type-level stuff to runtime stuff |
2021-10-08 03:11:27 +0200 | <monochrom> | https://www.smbc-comics.com/comic/tonight comes to mind. |
2021-10-08 03:11:28 +0200 | <Axman6> | typ family IsInt (a :: Type) :: Bool where IsInt Int = 'True; IsInt a = 'False -- I don't know if that actually works... |
2021-10-08 03:12:04 +0200 | xff0x | (~xff0x@2001:1a81:5251:1900:7e75:5755:e512:a0e0) |
2021-10-08 03:13:03 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-10-08 03:13:41 +0200 | <geranim0> | awpr: thanks for the pointers! |
2021-10-08 03:13:52 +0200 | <Axman6> | type family ScrewYouGHC where ScrewYouGHC a = ScrewYouGHC (a,a) -- I hope this doesn't compile |
2021-10-08 03:13:56 +0200 | machinedgod | (~machinedg@135-23-192-217.cpe.pppoe.ca) (Remote host closed the connection) |
2021-10-08 03:14:14 +0200 | <awpr> | UndecidableInstances |
2021-10-08 03:14:34 +0200 | myShoggoth | (~myShoggot@97-120-70-214.ptld.qwest.net) (Ping timeout: 252 seconds) |
2021-10-08 03:15:05 +0200 | <Axman6> | https://rebeccaskinner.net/posts/2021-08-25-introduction-to-type-level-programming.html might also be useful geranim0 |
2021-10-08 03:15:07 +0200 | machinedgod | (~machinedg@135-23-192-217.cpe.pppoe.ca) |
2021-10-08 03:15:09 +0200 | <awpr> | i.e. GHC will reject it by default, but if you need an escape hatch, it will gladly explode its memory space trying to run it |
2021-10-08 03:15:24 +0200 | <awpr> | (haven't double-checked that) |
2021-10-08 03:16:58 +0200 | <geranim0> | Axman6: thanks! |
2021-10-08 03:18:36 +0200 | <Axman6> | geranim0: can you be more specific about what you actually want to do? We have lots of tools but choosing the right one will depend on the job. |
2021-10-08 03:19:46 +0200 | <geranim0> | i wanted to make sure i learn a language that supports it now that i know its power xD |
2021-10-08 03:19:51 +0200 | <geranim0> | i feel handicapped without it |
2021-10-08 03:23:39 +0200 | <Axman6> | In my experience, I haven't seen TMP used for things that are particularly compicated - of course it can be and I've seen things like the prime number checked at compile time, whereas we are definitely moving to a world where we are pushing as much as we can into the type system. Things like servant for defining web servers mostly in the type system are a good example |
2021-10-08 03:26:00 +0200 | <Axman6> | but if you're only just learning Haskell, you likely have a lot to learn before you'll be able to make use of type level programming |
2021-10-08 03:32:06 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
2021-10-08 03:32:06 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host) |
2021-10-08 03:32:06 +0200 | wroathe | (~wroathe@user/wroathe) |
2021-10-08 03:39:39 +0200 | <Axman6> | Hmm, having read through that article, I'm not sure I find it a particularly compelling example that shows off the power of type level programming |
2021-10-08 03:41:52 +0200 | Jonno_FT1 | (~come@api.carswap.me) (Quit: Reconnecting) |
2021-10-08 03:42:01 +0200 | Jonno_FTW | (~come@api.carswap.me) |
2021-10-08 03:42:02 +0200 | <zzz> | jkjlkj |
2021-10-08 03:42:47 +0200 | Jonno_FTW | (~come@api.carswap.me) (Changing host) |
2021-10-08 03:42:47 +0200 | Jonno_FTW | (~come@user/jonno-ftw/x-0835346) |
2021-10-08 03:43:55 +0200 | a6a45081-2b83 | (~aditya@2601:249:4300:1296:88ec:cc73:84d4:1507) |
2021-10-08 03:47:24 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 245 seconds) |
2021-10-08 03:51:10 +0200 | <geranim0> | Axman6: https://www.youtube.com/watch?v=L2SktfaJPuU |
2021-10-08 03:52:25 +0200 | Codaraxis | (~Codaraxis@user/codaraxis) (Ping timeout: 260 seconds) |
2021-10-08 03:54:35 +0200 | <Axman6> | That loop unrolling thing is pretty easy to do in Haskell with type level programming |
2021-10-08 03:54:45 +0200 | myShoggoth | (~myShoggot@97-120-70-214.ptld.qwest.net) |
2021-10-08 03:55:56 +0200 | NinjaTrappeur | (~ninja@user/ninjatrappeur) (Ping timeout: 245 seconds) |
2021-10-08 03:56:06 +0200 | <Axman6> | the matrix example is something we get for free with lazines :P |
2021-10-08 03:57:55 +0200 | <Axman6> | the dimensional analysis thing is nicely implemented in https://hackage.haskell.org/package/dimensional |
2021-10-08 03:58:03 +0200 | Codaraxis | (~Codaraxis@user/codaraxis) |
2021-10-08 03:58:23 +0200 | Codaraxis | (~Codaraxis@user/codaraxis) (Read error: Connection reset by peer) |
2021-10-08 03:58:55 +0200 | <Axman6> | The place where templates make a lot of sense to me if for specialisation, generating code for each type it's used at. We can do that in Haskell using SPECIALISE but it's a bit less predictable IIRD |
2021-10-08 03:58:57 +0200 | <Axman6> | IIRC* |
2021-10-08 04:00:43 +0200 | Amras | (~Amras@user/Amras) (Ping timeout: 252 seconds) |
2021-10-08 04:11:32 +0200 | wrengr | wrengr_away |
2021-10-08 04:12:24 +0200 | shapr | (~user@pool-100-36-247-68.washdc.fios.verizon.net) (Ping timeout: 245 seconds) |
2021-10-08 04:14:11 +0200 | <Axman6> | "The concepts, they come from functional programming" |
2021-10-08 04:14:48 +0200 | yinghua | (~yinghua@2800:2121:1400:900:c0b8:d50d:9ecd:24ca) (Quit: Leaving) |
2021-10-08 04:14:58 +0200 | hexfive | (~eric@50.35.83.177) |
2021-10-08 04:15:08 +0200 | hexfive | (~eric@50.35.83.177) (Client Quit) |
2021-10-08 04:25:12 +0200 | bdaed | (~bdaed@185.234.208.208.r.toneticgroup.pl) |
2021-10-08 04:25:59 +0200 | Psybur | (~Psybur@mobile-166-170-32-197.mycingular.net) (Remote host closed the connection) |
2021-10-08 04:26:53 +0200 | justsomeguy | (~justsomeg@user/justsomeguy) |
2021-10-08 04:27:27 +0200 | <a6a45081-2b83> | How can I load both the library and executable from my project in cabal. Currently I load the library in repl then load the executable file. |
2021-10-08 04:28:01 +0200 | <a6a45081-2b83> | Also why does repl compile everytime even if there is no change in source code |
2021-10-08 04:28:15 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer) |
2021-10-08 04:29:59 +0200 | bdaed | (~bdaed@185.234.208.208.r.toneticgroup.pl) (Ping timeout: 265 seconds) |
2021-10-08 04:30:34 +0200 | <a6a45081-2b83> | Also why does Ctrl-C not stop repl (I was trying to print some variable but It just stopped after printing a double quote) |
2021-10-08 04:32:19 +0200 | abrantesasf | (~abrantesa@187.36.170.211) |
2021-10-08 04:36:52 +0200 | _abrantesasf_ | (~abrantesa@187.36.170.211) |
2021-10-08 04:37:14 +0200 | abrantesasf | (~abrantesa@187.36.170.211) (Ping timeout: 265 seconds) |
2021-10-08 04:39:51 +0200 | NinjaTrappeur | (~ninja@user/ninjatrappeur) |
2021-10-08 04:41:14 +0200 | <monochrom> | I load the library ("cabal repl") then :load or :add the executable, too. |
2021-10-08 04:41:30 +0200 | <monochrom> | I cannot reproduce the second one. |
2021-10-08 04:41:37 +0200 | <monochrom> | I cannot reproduce the third one. |
2021-10-08 04:42:05 +0200 | _abrantesasf_ | (~abrantesa@187.36.170.211) (Remote host closed the connection) |
2021-10-08 04:45:13 +0200 | <a6a45081-2b83> | So I was able to break on exception but it seems it stopped way above in the callstack than the position where the exception occured. Do I have to add `HasCallStack` too all the functions called in between? |
2021-10-08 04:46:00 +0200 | <a6a45081-2b83> | so here's the output: https://hastebin.com/anaducukiy.yaml |
2021-10-08 04:46:29 +0200 | <a6a45081-2b83> | The error occured in src/Gibbon/L0/Typecheck.hs but the history shows only until src/Gibbon/HaskellFrontend.hs. |
2021-10-08 04:51:47 +0200 | <awpr> | "when an error thunk is created" is different from "when an exception occurs" (the latter happens when the former is evaluated) |
2021-10-08 04:52:11 +0200 | <awpr> | e.g. `const 4 (error "failed")` doesn't raise an exception at all |
2021-10-08 04:52:20 +0200 | shapr | (~user@pool-100-36-247-68.washdc.fios.verizon.net) |
2021-10-08 04:52:49 +0200 | <a6a45081-2b83> | Ok so `error` function only creates an error thunk and it is only thrown when it's values is required in some future computation? |
2021-10-08 04:53:22 +0200 | <a6a45081-2b83> | I will then need to find a way to get a proper history to debug ghci, hmm |
2021-10-08 04:53:23 +0200 | <awpr> | exactly. sometimes you can make things behave better by making things more strict about their errors |
2021-10-08 04:53:47 +0200 | <a6a45081-2b83> | I heard using -fprof helps to get the call stack. |
2021-10-08 04:53:53 +0200 | <ghoulguy> | a6a45081-2b83, Yes, you'd want to add more HasCallStack if you want more of that structure |
2021-10-08 04:53:58 +0200 | <shapr> | yay, the next Boston Haskell is scheduled! https://www.meetup.com/Boston-Haskell/events/281285037/ |
2021-10-08 04:54:58 +0200 | td_ | (~td@94.134.91.74) (Ping timeout: 265 seconds) |
2021-10-08 04:55:56 +0200 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) (Ping timeout: 265 seconds) |
2021-10-08 04:56:35 +0200 | td_ | (~td@muedsl-82-207-238-110.citykom.de) |
2021-10-08 04:57:45 +0200 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) |
2021-10-08 05:00:52 +0200 | TDANG | (~TDANG@inet-177-7.ets.org) |
2021-10-08 05:01:22 +0200 | <TDANG> | hi. What does this expression mean? |
2021-10-08 05:01:35 +0200 | <TDANG> | type Validator :: * |
2021-10-08 05:02:27 +0200 | <a6a45081-2b83> | that did help but it seems I eventually read an typeclass instance definition and I am not sure which function calls the typeclass member function |
2021-10-08 05:02:38 +0200 | <a6a45081-2b83> | maybe I should build for profiling and use -xc, thinking.... |
2021-10-08 05:03:05 +0200 | <awpr> | yeah, that situation cannot be debugged further with HasCallStack without changing the class definition |
2021-10-08 05:03:19 +0200 | <awpr> | I've had to _remove a Num instance_ over that issue before |
2021-10-08 05:03:34 +0200 | <awpr> | profiling is your only recourse |
2021-10-08 05:04:04 +0200 | <a6a45081-2b83> | I know that there is `stack build --profile` idk what cabal equivalent is, maybe `ghc-flags=-fprof -fprof-auto` or something |
2021-10-08 05:04:18 +0200 | waleee | (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 265 seconds) |
2021-10-08 05:04:41 +0200 | <TDANG> | hi. What does this expression mean: type Validator :: * |
2021-10-08 05:04:44 +0200 | <awpr> | `type Validator :: *` is a declaration that just says Validator is a Type |
2021-10-08 05:05:06 +0200 | <awpr> | (and suggests that Validator will be defined soon) |
2021-10-08 05:06:04 +0200 | <awpr> | it's a standalone kind signature https://ryanglscott.github.io/2020/01/05/five-benefits-to-using-standalonekindsignatures/ |
2021-10-08 05:07:12 +0200 | libertyprime | (~libertypr@118.149.84.202) (Ping timeout: 265 seconds) |
2021-10-08 05:07:55 +0200 | <TDANG> | When using type, what to use :: or = |
2021-10-08 05:08:19 +0200 | <awpr> | both for different things. = is much more common |
2021-10-08 05:09:16 +0200 | zebrag | (~chris@user/zebrag) (Quit: Konversation terminated!) |
2021-10-08 05:09:21 +0200 | <awpr> | `type ... :: ...` is a kind signature; `type ... = ...` is a type alias definition. same idea as with function type signatures and definitions |
2021-10-08 05:10:04 +0200 | geranim0 | (~geranim0@modemcable242.171-178-173.mc.videotron.ca) (Ping timeout: 252 seconds) |
2021-10-08 05:10:25 +0200 | sugar | (~sugar@bras-base-hmtnon1497w-grc-21-70-26-153-130.dsl.bell.ca) |
2021-10-08 05:10:32 +0200 | sugar | (~sugar@bras-base-hmtnon1497w-grc-21-70-26-153-130.dsl.bell.ca) (Client Quit) |
2021-10-08 05:10:48 +0200 | sugar | (~sugar@bras-base-hmtnon1497w-grc-21-70-26-153-130.dsl.bell.ca) |
2021-10-08 05:12:10 +0200 | hololeap | (~hololeap@user/hololeap) (Quit: Bye) |
2021-10-08 05:15:57 +0200 | <TDANG> | Thanks |
2021-10-08 05:20:10 +0200 | mbuf | (~Shakthi@171.61.175.133) |
2021-10-08 05:23:38 +0200 | libertyprime | (~libertypr@118.149.83.215) |
2021-10-08 05:23:39 +0200 | wroathe | (~wroathe@user/wroathe) (Ping timeout: 245 seconds) |
2021-10-08 05:26:13 +0200 | sleblanc | (~sleblanc@user/sleblanc) |
2021-10-08 05:26:35 +0200 | <zzz> | matrix bridge out? |
2021-10-08 05:33:45 +0200 | <ghoulguy> | zzz, looks like it's just a normal amount of lagged |
2021-10-08 05:38:32 +0200 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) |
2021-10-08 05:43:15 +0200 | <sm> | is there any looping function in base, where you can test for the end condition ? |
2021-10-08 05:43:51 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-10-08 05:46:56 +0200 | <sm> | fix ? |
2021-10-08 05:47:13 +0200 | <monochrom> | Perhaps "until" helps. |
2021-10-08 05:47:50 +0200 | <sm> | and secondly, I'd like it to be monadic |
2021-10-08 05:50:12 +0200 | <monochrom> | Then the package monad-loops has a lot of those. |
2021-10-08 05:51:21 +0200 | <TDANG> | Hi. What does this operator do: <- |
2021-10-08 05:51:38 +0200 | <Axman6> | :t until |
2021-10-08 05:51:39 +0200 | <lambdabot> | (a -> Bool) -> (a -> a) -> a -> a |
2021-10-08 05:52:09 +0200 | <Axman6> | TDANG: it's part of do-notation, it's syntax sugar for using the Monad class' (>>=) function |
2021-10-08 05:52:49 +0200 | <Axman6> | @undo do {x <- f a; y <- g b x; return $ h x y } |
2021-10-08 05:52:49 +0200 | <lambdabot> | f a >>= \ x -> g b x >>= \ y -> return $ h x y |
2021-10-08 05:55:25 +0200 | <TDANG> | Still unclear ;-( I saw it without do-notation |
2021-10-08 05:56:15 +0200 | <TDANG> | tx = mconcat [mustSpendScriptOutput oref $ Redeemer $ I 17 | oref <- orefs] |
2021-10-08 05:56:44 +0200 | <ghoulguy> | TDANG, it's the same thing there as using <- in do notation |
2021-10-08 05:57:09 +0200 | <TDANG> | What is: oref <-orefs |
2021-10-08 05:57:21 +0200 | <ghoulguy> | In the context of a "list comprehension" like that, it means that you'll iterate through each element of the list orefs and each of those elements will be called oref |
2021-10-08 05:57:40 +0200 | <ghoulguy> | > [2 * x | x <- [5,3,7] ] |
2021-10-08 05:57:42 +0200 | <lambdabot> | [10,6,14] |
2021-10-08 05:57:52 +0200 | <ghoulguy> | > let xs = [5,3,7] in [2 * x | x <- xs ] |
2021-10-08 05:57:54 +0200 | <lambdabot> | [10,6,14] |
2021-10-08 05:58:05 +0200 | <TDANG> | oh, I see |
2021-10-08 05:58:17 +0200 | <ghoulguy> | > let xs = [x,y,z] in [2 * x | x <- xs ] |
2021-10-08 05:58:18 +0200 | <lambdabot> | [2 * x,2 * y,2 * z] |
2021-10-08 05:58:39 +0200 | machinedgod | (~machinedg@135-23-192-217.cpe.pppoe.ca) (Ping timeout: 245 seconds) |
2021-10-08 05:58:41 +0200 | <TDANG> | so, here, <- means iteration of list |
2021-10-08 05:58:53 +0200 | <TDANG> | not in the do-notation context? |
2021-10-08 05:59:18 +0200 | <ghoulguy> | > let xs = [x,y]; ys = [a,b] in [ (i,j) | i <- xs, j <- ys ] |
2021-10-08 05:59:20 +0200 | <lambdabot> | [(x,a),(x,b),(y,a),(y,b)] |
2021-10-08 05:59:29 +0200 | <ghoulguy> | it's the same in do-notation for lists |
2021-10-08 05:59:54 +0200 | <ghoulguy> | > do let { xs = [x,y,z]}; a <- xs; pure (2*a) |
2021-10-08 05:59:56 +0200 | <lambdabot> | [2 * x,2 * y,2 * z] |
2021-10-08 06:00:19 +0200 | <dsal> | @undo [2 * x | x <- [5,3,7] ] |
2021-10-08 06:00:19 +0200 | <lambdabot> | concatMap (\ x -> [2 * x]) [5, 3, 7] |
2021-10-08 06:01:04 +0200 | <Axman6> | TDANG: they are really being used for the same thing in do notation and list comprehensions, that's how the monad instance for lists works. read x <- xs as "for each x selected from xs" |
2021-10-08 06:01:54 +0200 | <TDANG> | I see |
2021-10-08 06:04:11 +0200 | <Axman6> | > do { x <- [1,2,3]; y <- [10,20,30]; return (y+x) } |
2021-10-08 06:04:13 +0200 | <lambdabot> | [11,21,31,12,22,32,13,23,33] |
2021-10-08 06:04:15 +0200 | <TDANG> | What is the meaning of | in : tx = mconcat [mustSpendScriptOutput oref $ Redeemer $ I 17 | oref <- orefs] |
2021-10-08 06:04:34 +0200 | <Axman6> | > [y+x | x <- [1,2,3], y <- [10,20,30]] -- these are the same |
2021-10-08 06:04:36 +0200 | <lambdabot> | [11,21,31,12,22,32,13,23,33] |
2021-10-08 06:05:07 +0200 | <ghoulguy> | TDANG, the | means "here comes the list comprehension stuff" |
2021-10-08 06:05:22 +0200 | joeyh_ | (joeyh@kitenet.net) (Quit: ZNC 1.8.2+deb2+b1 - https://znc.in) |
2021-10-08 06:05:32 +0200 | joeyh | (joeyh@kitenet.net) |
2021-10-08 06:05:37 +0200 | MQ-17J | (~MQ-17J@8.6.144.117) (Ping timeout: 252 seconds) |
2021-10-08 06:05:39 +0200 | <TDANG> | Ok, so | used to separte the iteration of list |
2021-10-08 06:05:46 +0200 | <ghoulguy> | Mere list literals look like: [1] or [1,2] |
2021-10-08 06:05:58 +0200 | <ghoulguy> | throw in a | and you're in list comprehension land |
2021-10-08 06:05:58 +0200 | <Axman6> | list comprehensions look like: [res <something made from the values to the right> | x <- xs <values selected from various lists>, x^2 == n <conditions used to filter things> ] |
2021-10-08 06:06:24 +0200 | <ghoulguy> | > ([10 | True], [10 | False]) |
2021-10-08 06:06:26 +0200 | <lambdabot> | ([10],[]) |
2021-10-08 06:06:27 +0200 | <Axman6> | https://wiki.haskell.org/List_comprehension |
2021-10-08 06:07:37 +0200 | <Axman6> | > [ (x,y,z) | [1..100; y <- [x .. 100], z <- [y .. 100], x^2 + y^2 == z^2] |
2021-10-08 06:07:39 +0200 | <lambdabot> | <hint>:1:20: error: parse error on input ‘;’ |
2021-10-08 06:08:03 +0200 | <Axman6> | > [ (x,y,z) | x <- [1..100] y <- [x .. 100], z <- [y .. 10000], x^2 + y^2 == z^2] |
2021-10-08 06:08:04 +0200 | <lambdabot> | <hint>:1:29: error: |
2021-10-08 06:08:05 +0200 | <lambdabot> | parse error on input ‘<-’ |
2021-10-08 06:08:05 +0200 | <lambdabot> | Perhaps this statement should be within a 'do' block? |
2021-10-08 06:08:17 +0200 | <Axman6> | > [ (x,y,z) | x <- [1..100], y <- [x .. 100], z <- [y .. 10000], x^2 + y^2 == z^2] -- I am bad at this |
2021-10-08 06:08:23 +0200 | <lambdabot> | mueval-core: Time limit exceeded |
2021-10-08 06:08:29 +0200 | <TDANG> | So, | always go with [ ], correct? |
2021-10-08 06:08:31 +0200 | <ghoulguy> | *nods* excellent sequence |
2021-10-08 06:08:52 +0200 | <ghoulguy> | TDANG, no, but when the | is inside the [], that's what it means |
2021-10-08 06:09:52 +0200 | <TDANG> | ya, let me explain: when use list-comprehension, | is always inside [ ] |
2021-10-08 06:09:56 +0200 | <TDANG> | correct? |
2021-10-08 06:10:44 +0200 | <Axman6> | > [ (x,y,z) | x <- [1..100], y <- [x .. 100], z <- map (^2) [y .. 100], x^2 + y^2 == z] -- A much faster version of the above |
2021-10-08 06:10:46 +0200 | <lambdabot> | [(3,4,25),(5,12,169),(6,8,100),(7,24,625),(8,15,289),(9,12,225),(9,40,1681),... |
2021-10-08 06:11:23 +0200 | <Axman6> | I think it's more correct to say that | is part of list comprehension syntax, we use | for things that have nothing to do with list comprehensions too |
2021-10-08 06:11:45 +0200 | MQ-17J | (~MQ-17J@d192-24-122-179.try.wideopenwest.com) |
2021-10-08 06:13:29 +0200 | bdaed | (~bdaed@185.234.208.208.r.toneticgroup.pl) |
2021-10-08 06:13:33 +0200 | <TDANG> | ya, I see |
2021-10-08 06:14:22 +0200 | <a6a45081-2b83> | awpr: tried making a profile build but ran into ghc issue, sad life *sobbing* |
2021-10-08 06:14:30 +0200 | <a6a45081-2b83> | (https://gitlab.haskell.org/ghc/ghc/-/issues/16525) |
2021-10-08 06:14:44 +0200 | <TDANG> | tx = mconcat [mustSpendScriptOutput oref $ Redeemer $ I 17 | oref <- orefs] |
2021-10-08 06:14:45 +0200 | <TDANG> | Traslated: |
2021-10-08 06:14:47 +0200 | <TDANG> | first, use Redeemer function to process I 17 |
2021-10-08 06:14:48 +0200 | <TDANG> | then for each oref in orefs, use mustSpendScriptOutput for oref. Then consume the above result |
2021-10-08 06:14:50 +0200 | <TDANG> | then mconcat the above result |
2021-10-08 06:15:11 +0200 | <awpr> | can it be repro'd by compiling it and running the program? |
2021-10-08 06:16:21 +0200 | <a6a45081-2b83> | it can but the semigroup operator (<>) is being called from so many places, idk where to look for the thing causing invalid input to be passed to (<>) |
2021-10-08 06:16:59 +0200 | <a6a45081-2b83> | N.B. the bug is in invalid operands being passed to (<>) which is causing a bug |
2021-10-08 06:18:14 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 245 seconds) |
2021-10-08 06:18:15 +0200 | bdaed | (~bdaed@185.234.208.208.r.toneticgroup.pl) (Ping timeout: 265 seconds) |
2021-10-08 06:18:38 +0200 | <awpr> | yeah, ending up in this situation is rough. honestly I have no idea how to debug it other than "think really hard and divine the answer eventually" |
2021-10-08 06:18:52 +0200 | <monochrom> | Do you know Python list comprehension? [ foo | x <- list ] is [ foo for x in list ] |
2021-10-08 06:19:30 +0200 | <awpr> | I mean, you could do silly things like define your own `<>` with `HasCallStack` and `unsafePerformIO . try . evaluate` and shadow `<>` with that everywhere |
2021-10-08 06:19:36 +0200 | <monochrom> | If you're huge into translating programs to English, you should switch to COBOL. |
2021-10-08 06:20:22 +0200 | <awpr> | this is where my position of "no partial instance methods" comes from: because then, this happens and there is no good solution |
2021-10-08 06:21:08 +0200 | <a6a45081-2b83> | oh, that makes sense... |
2021-10-08 06:21:38 +0200 | <a6a45081-2b83> | I'm trying to see if an older version of ghc works, if it does then I'm gonna stick with it for the time... |
2021-10-08 06:25:31 +0200 | shapr | (~user@pool-100-36-247-68.washdc.fios.verizon.net) (Ping timeout: 245 seconds) |
2021-10-08 06:34:13 +0200 | <TDANG> | grab = do |
2021-10-08 06:34:14 +0200 | <TDANG> | utxos <- utxoAt scrAddress |
2021-10-08 06:34:43 +0200 | <TDANG> | can I do: utxos = utxoAt scrAddress ? |
2021-10-08 06:35:11 +0200 | lavaman | (~lavaman@98.38.249.169) |
2021-10-08 06:35:25 +0200 | <TDANG> | What is the difference btw = vs <= |
2021-10-08 06:35:51 +0200 | <TDANG> | sorry, in above expression, btw: = vs <- |
2021-10-08 06:39:50 +0200 | lavaman | (~lavaman@98.38.249.169) (Ping timeout: 260 seconds) |
2021-10-08 06:45:25 +0200 | alzgh | (~alzgh@user/alzgh) |
2021-10-08 06:50:07 +0200 | <a6a45081-2b83> | earlier ghc version worked... |
2021-10-08 06:51:01 +0200 | mbuf | (~Shakthi@171.61.175.133) (Quit: Leaving) |
2021-10-08 06:53:19 +0200 | slowButPresent | (~slowButPr@user/slowbutpresent) (Quit: leaving) |
2021-10-08 07:00:15 +0200 | justsomeguy | (~justsomeg@user/justsomeguy) (Quit: WeeChat 3.2) |
2021-10-08 07:07:05 +0200 | oxide | (~lambda@user/oxide) |
2021-10-08 07:08:19 +0200 | Null_A | (~null_a@2601:645:8700:2290:8de:8d66:958e:46b4) |
2021-10-08 07:12:52 +0200 | Null_A | (~null_a@2601:645:8700:2290:8de:8d66:958e:46b4) (Ping timeout: 265 seconds) |
2021-10-08 07:15:15 +0200 | alzgh | (~alzgh@user/alzgh) (Remote host closed the connection) |
2021-10-08 07:20:04 +0200 | michalz | (~michalz@185.246.204.93) |
2021-10-08 07:24:29 +0200 | sleblanc | (~sleblanc@user/sleblanc) (Ping timeout: 245 seconds) |
2021-10-08 07:30:15 +0200 | <sm> | yes fix.. and used trace to get around the need for IO. https://github.com/simonmichael/games/blob/main/caverunner/caverunner.hs#L257:L285 |
2021-10-08 07:30:37 +0200 | <sm> | but I think it's not good |
2021-10-08 07:30:45 +0200 | takuan | (~takuan@178-116-218-225.access.telenet.be) |
2021-10-08 07:33:28 +0200 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) (Remote host closed the connection) |
2021-10-08 07:33:58 +0200 | Amras | (~Amras@user/Amras) |
2021-10-08 07:34:23 +0200 | chomwitt | (~chomwitt@2a02:587:dc18:b400:12c3:7bff:fe6d:d374) |
2021-10-08 07:38:52 +0200 | rkrishnan | (~user@45.127.46.26) |
2021-10-08 07:38:53 +0200 | amk | (~amk@109.255.169.126) (Ping timeout: 268 seconds) |
2021-10-08 07:39:29 +0200 | hyiltiz | (~quassel@31.220.5.250) (Ping timeout: 245 seconds) |
2021-10-08 07:40:30 +0200 | amk | (~amk@109.255.169.126) |
2021-10-08 07:41:09 +0200 | sm | swiftly replaces that with a custom IO recursion |
2021-10-08 07:42:10 +0200 | vysn | (~vysn@user/vysn) |
2021-10-08 07:43:59 +0200 | hyiltiz | (~quassel@31.220.5.250) |
2021-10-08 07:47:32 +0200 | MQ-17J | (~MQ-17J@d192-24-122-179.try.wideopenwest.com) (Remote host closed the connection) |
2021-10-08 07:47:46 +0200 | MQ-17J | (~MQ-17J@d192-24-122-179.try.wideopenwest.com) |
2021-10-08 07:48:06 +0200 | ubert | (~Thunderbi@91.141.46.27.wireless.dyn.drei.com) |
2021-10-08 08:01:40 +0200 | bdaed | (~bdaed@185.234.208.208.r.toneticgroup.pl) |
2021-10-08 08:14:18 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) |
2021-10-08 08:14:24 +0200 | mei | (~mei@user/mei) |
2021-10-08 08:14:28 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-10-08 08:18:35 +0200 | rtjure | (~rtjure@bras-79-132-17-74.comnet.bg) |
2021-10-08 08:19:22 +0200 | lortabac | (~lortabac@2a01:e0a:541:b8f0:ee1f:1bdf:384a:356) |
2021-10-08 08:19:34 +0200 | <Axman6> | TDANG: = and <- do different things, x = y says that x is the same as y, whereas x <- y says (roughly) for each x that y produces, do something with that x. the precise meaning of <- depends on which monad you're using. for lists is means for each x in y, for IO, y :: IO a and x :: a, and it means give the value that y returns the name a |
2021-10-08 08:20:44 +0200 | cheater | (~Username@user/cheater) (Ping timeout: 245 seconds) |
2021-10-08 08:24:33 +0200 | cheater | (~Username@user/cheater) |
2021-10-08 08:30:34 +0200 | cfricke | (~cfricke@user/cfricke) |
2021-10-08 08:33:11 +0200 | wonko | (~wjc@62.115.229.50) |
2021-10-08 08:34:54 +0200 | bdaed | (~bdaed@185.234.208.208.r.toneticgroup.pl) (Ping timeout: 245 seconds) |
2021-10-08 08:39:22 +0200 | ubert1 | (~Thunderbi@91.141.46.27.wireless.dyn.drei.com) |
2021-10-08 08:42:20 +0200 | benin03693230163 | (~benin@183.82.24.191) |
2021-10-08 08:47:23 +0200 | Cajun | (~Cajun@user/cajun) (Ping timeout: 256 seconds) |
2021-10-08 08:48:51 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 245 seconds) |
2021-10-08 08:50:47 +0200 | chele | (~chele@user/chele) |
2021-10-08 08:52:38 +0200 | dyeplexer | (~dyeplexer@user/dyeplexer) |
2021-10-08 08:55:10 +0200 | timCF | (~timCF@m91-129-108-244.cust.tele2.ee) (Ping timeout: 260 seconds) |
2021-10-08 09:00:37 +0200 | bdaed | (~bdaed@185.234.208.208.r.toneticgroup.pl) |
2021-10-08 09:03:51 +0200 | NinjaTrappeur | (~ninja@user/ninjatrappeur) (Ping timeout: 245 seconds) |
2021-10-08 09:04:18 +0200 | NinjaTrappeur | (~ninja@user/ninjatrappeur) |
2021-10-08 09:04:22 +0200 | tzh_ | (~tzh@c-24-21-73-154.hsd1.or.comcast.net) |
2021-10-08 09:04:22 +0200 | xff0x | (~xff0x@2001:1a81:5251:1900:7e75:5755:e512:a0e0) (Ping timeout: 252 seconds) |
2021-10-08 09:05:13 +0200 | xff0x | (~xff0x@2001:1a81:5251:1900:6353:3c1e:a988:d99) |
2021-10-08 09:06:31 +0200 | tzh | (~tzh@c-24-21-73-154.hsd1.or.comcast.net) (Ping timeout: 252 seconds) |
2021-10-08 09:07:16 +0200 | tzh | (~tzh@c-24-21-73-154.hsd1.wa.comcast.net) |
2021-10-08 09:08:23 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer) |
2021-10-08 09:08:36 +0200 | mikoto-chan | (~mikoto-ch@ip-83-134-2-136.dsl.scarlet.be) |
2021-10-08 09:09:04 +0200 | tzh_ | (~tzh@c-24-21-73-154.hsd1.or.comcast.net) (Ping timeout: 245 seconds) |
2021-10-08 09:09:52 +0200 | motherfsck | (~motherfsc@user/motherfsck) (Ping timeout: 252 seconds) |
2021-10-08 09:09:54 +0200 | libertyprime | (~libertypr@118.149.83.215) (Read error: Connection reset by peer) |
2021-10-08 09:11:27 +0200 | aplainzetakind | (~johndoe@captainludd.powered.by.lunarbnc.net) (Quit: Free ZNC ~ Powered by LunarBNC: https://LunarBNC.net) |
2021-10-08 09:12:14 +0200 | aplainzetakind | (~johndoe@captainludd.powered.by.lunarbnc.net) |
2021-10-08 09:12:49 +0200 | vysn | (~vysn@user/vysn) (Quit: WeeChat 3.2) |
2021-10-08 09:13:01 +0200 | bdaed | (~bdaed@185.234.208.208.r.toneticgroup.pl) (Ping timeout: 245 seconds) |
2021-10-08 09:13:57 +0200 | fendor | (~fendor@178.165.191.25.wireless.dyn.drei.com) |
2021-10-08 09:14:22 +0200 | motherfsck | (~motherfsc@user/motherfsck) |
2021-10-08 09:16:50 +0200 | <Amras> | is there a library that handles parsec-style parsing alongside pickling? |
2021-10-08 09:21:07 +0200 | <Amras> | ie. where I can define `do; staticString '{'; x' <- (varInt, x myData); staticString '}'` and have it both work to parse `{12}` and to generate `{12}` |
2021-10-08 09:24:34 +0200 | <awpr> | that's a bit of a difficult thing to achieve, largely because Monad isn't a suitable typeclass for it: it involves jointly building up and tearing down the "result type", whereas Monad can only talk about producing the "result type"; things like Divisible/Decidable are for tearing down their type parameter, but they go _only_ that direction too |
2021-10-08 09:25:51 +0200 | cheater | (~Username@user/cheater) (Quit: (BitchX) Wouldn't it be great if the dog could walk itself?) |
2021-10-08 09:25:57 +0200 | <awpr> | just looking around, I found https://hackage.haskell.org/package/bidirectional-0.1.0.0/docs/Data-IParser.html, based on profunctors, but I'm not sure whether it's any good |
2021-10-08 09:26:00 +0200 | tzh | (~tzh@c-24-21-73-154.hsd1.wa.comcast.net) (Quit: zzz) |
2021-10-08 09:29:50 +0200 | <awpr> | this looks more promising: https://hackage.haskell.org/package/roundtrip |
2021-10-08 09:34:48 +0200 | a6a45081-2b83 | (~aditya@2601:249:4300:1296:88ec:cc73:84d4:1507) (Remote host closed the connection) |
2021-10-08 09:37:28 +0200 | cheater | (~Username@user/cheater) |
2021-10-08 09:37:38 +0200 | ub | (~Thunderbi@178.115.60.191.wireless.dyn.drei.com) |
2021-10-08 09:37:49 +0200 | ubert | (~Thunderbi@91.141.46.27.wireless.dyn.drei.com) (Ping timeout: 245 seconds) |
2021-10-08 09:37:50 +0200 | ub | ubert |
2021-10-08 09:37:52 +0200 | ubert1 | (~Thunderbi@91.141.46.27.wireless.dyn.drei.com) (Ping timeout: 252 seconds) |
2021-10-08 09:40:52 +0200 | pavonia_ | (~user@user/siracusa) |
2021-10-08 09:41:13 +0200 | pavonia | (~user@user/siracusa) (Ping timeout: 252 seconds) |
2021-10-08 09:41:26 +0200 | pavonia_ | pavonia |
2021-10-08 09:45:29 +0200 | <awpr> | wait I knew there was a reason this problem sounded familiar: I took a shot at the binary serialization version of it a while ago and was fairly content with the results. if you stick a parser and an encoder into a record together, you can write combinators that compose them on sums and products. for a textual version, they should be able to have "sequencing" with static text easily enough, too |
2021-10-08 09:45:32 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-10-08 09:46:16 +0200 | Sgeo | (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
2021-10-08 09:47:08 +0200 | libertyprime | (~libertypr@118.149.78.62) |
2021-10-08 09:47:10 +0200 | <Amras> | right; that seems to be the principle behind most solutions I've seen |
2021-10-08 09:48:54 +0200 | jtomas_ | (~jtomas@95.red-88-11-64.dynamicip.rima-tde.net) |
2021-10-08 09:54:00 +0200 | <jackdk> | Amras: an abstraction worth looking at is the idea of a monoidal functor, which can generalise applicative/alternative/divisible/decidable, depending on whether you're using Either or (,) as your product and whether you're dealing with co- or contravariant functors |
2021-10-08 09:55:16 +0200 | <jackdk> | Amras: George WIlson's talk Contravariant Functors: the Other Side of the Coin https://www.youtube.com/watch?v=IJ_bVVsQhvc explains the Divisible and Decidable typeclasses using prettyprinters as an example |
2021-10-08 09:56:42 +0200 | <jackdk> | Amras: You can then do something like `data PP a = PP (PrettyPrinter a) (Parser a)`and build up many operations using the monoidal functor abstraction. You can get an fmaplike operation by stealing imap from the Invariant class in the invariant package, but the more mathematically-literate people told me it was a bodge when I suggested it |
2021-10-08 09:57:56 +0200 | <awpr> | the thing that constituted a breakthrough for me was realizing that `newtype PP a b = PP (PrettyPrinter b) (Parser a)` was the solution to needing invariant mapping |
2021-10-08 09:58:03 +0200 | <jackdk> | Amras: Otherwise, it's possible better to treat it as a profunctor: `data PP a b = PP (PrettyPrinter a) (Parser b)` |
2021-10-08 09:58:08 +0200 | <jackdk> | yeah that |
2021-10-08 09:58:09 +0200 | <awpr> | ;) |
2021-10-08 09:58:53 +0200 | <awpr> | because then the weird invariant mapping is replaced by normal `dimap`, and you gain the flexibility to mess with both sides separately |
2021-10-08 09:58:53 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) |
2021-10-08 09:59:16 +0200 | <jackdk> | You can then get sum/productish instances from the `product-profunctors` package, which I've been meaning to wrangle into a better hierarchy: https://github.com/tomjaguarpaw/product-profunctors/pull/54 |
2021-10-08 09:59:57 +0200 | baruch | (~spinoza3@c-73-147-19-239.hsd1.va.comcast.net) |
2021-10-08 10:01:21 +0200 | <jackdk> | from there, you can recreate applicative and maybe monad operations on `b`, and divisible and decideable operations on the `a`. Can't write an `(<|>)` equivalent on the `b` though |
2021-10-08 10:03:23 +0200 | <jackdk> | generics-eot also gives you good tools to split things into Either and (,) |
2021-10-08 10:03:36 +0200 | <jackdk> | http://jackkelly.name/blog/archives/2020/08/19/abstracting_over_applicative_alternative_divisible_… has links if you want to explore the `PP a = PP (Pretty a) (Parser a)` approach, but I consider it a dead end |
2021-10-08 10:04:37 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer) |
2021-10-08 10:05:38 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) |
2021-10-08 10:06:34 +0200 | barzo | (~barzo@176.55.50.114) |
2021-10-08 10:06:35 +0200 | timCF | (~timCF@254-149-20-81.sta.estpak.ee) |
2021-10-08 10:07:19 +0200 | max22- | (~maxime@lfbn-ren-1-762-224.w81-53.abo.wanadoo.fr) |
2021-10-08 10:07:35 +0200 | econo | (uid147250@user/econo) (Quit: Connection closed for inactivity) |
2021-10-08 10:08:26 +0200 | hendursa1 | (~weechat@user/hendursaga) |
2021-10-08 10:08:27 +0200 | <jackdk> | I think the profunctor that has a pair of parser and prettyprinter (note that you can create it as a `Product` of a `Clown` and a `Joker`) is "better" because it lets you vary the type variables independently if you need to go from `PP a a` to `PP b b` in a non-obvious way. |
2021-10-08 10:08:31 +0200 | <jackdk> | anyway, braindump over |
2021-10-08 10:11:12 +0200 | hendursaga | (~weechat@user/hendursaga) (Ping timeout: 276 seconds) |
2021-10-08 10:15:17 +0200 | gehmehgeh | (~user@user/gehmehgeh) |
2021-10-08 10:17:08 +0200 | acidjnk_new3 | (~acidjnk@p200300d0c703cb3809607f7c8c1f0b15.dip0.t-ipconnect.de) |
2021-10-08 10:18:48 +0200 | werneta | (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 265 seconds) |
2021-10-08 10:19:07 +0200 | timCF | (~timCF@254-149-20-81.sta.estpak.ee) (Ping timeout: 252 seconds) |
2021-10-08 10:21:42 +0200 | libertyprime | (~libertypr@118.149.78.62) (Ping timeout: 265 seconds) |
2021-10-08 10:28:39 +0200 | libertyprime | (~libertypr@118.149.73.16) |
2021-10-08 10:31:13 +0200 | DNH | (~DNH@2a02:8108:1100:16d8:a11a:d19d:8c20:4068) |
2021-10-08 10:32:01 +0200 | <Amras> | thanks |
2021-10-08 10:34:34 +0200 | rkrishnan | (~user@45.127.46.26) (Ping timeout: 252 seconds) |
2021-10-08 10:36:57 +0200 | lavaman | (~lavaman@98.38.249.169) |
2021-10-08 10:41:26 +0200 | lavaman | (~lavaman@98.38.249.169) (Ping timeout: 260 seconds) |
2021-10-08 10:49:44 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds) |
2021-10-08 10:51:01 +0200 | azeem | (~azeem@2a00:801:42b:dd4e:d5b8:f7b1:5263:aa76) (Read error: Connection reset by peer) |
2021-10-08 10:51:52 +0200 | azeem | (~azeem@emp-183-4.eduroam.uu.se) |
2021-10-08 10:53:48 +0200 | vpan | (~vilius@212.117.1.172) |
2021-10-08 10:53:48 +0200 | azeem | (~azeem@emp-183-4.eduroam.uu.se) (Read error: Connection reset by peer) |
2021-10-08 10:55:34 +0200 | hnOsmium0001 | (uid453710@id-453710.hampstead.irccloud.com) (Quit: Connection closed for inactivity) |
2021-10-08 10:56:51 +0200 | azeem | (~azeem@emp-183-4.eduroam.uu.se) |
2021-10-08 10:57:43 +0200 | DNH | (~DNH@2a02:8108:1100:16d8:a11a:d19d:8c20:4068) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2021-10-08 10:58:09 +0200 | fendor_ | (~fendor@178.115.75.223.wireless.dyn.drei.com) |
2021-10-08 11:01:00 +0200 | fendor | (~fendor@178.165.191.25.wireless.dyn.drei.com) (Ping timeout: 265 seconds) |
2021-10-08 11:04:23 +0200 | beka | (~beka@104.193.170.240) (Ping timeout: 265 seconds) |
2021-10-08 11:08:40 +0200 | mikoto-chan | (~mikoto-ch@ip-83-134-2-136.dsl.scarlet.be) (Ping timeout: 252 seconds) |
2021-10-08 11:10:19 +0200 | mikoto-chan | (~mikoto-ch@ip-83-134-2-136.dsl.scarlet.be) |
2021-10-08 11:25:40 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:25a3:7e37:69ba:6dab) (Remote host closed the connection) |
2021-10-08 11:26:29 +0200 | Gurkenglas | (~Gurkengla@dslb-002-203-144-204.002.203.pools.vodafone-ip.de) |
2021-10-08 11:27:11 +0200 | kuribas | (~user@ptr-25vy0i7xa7aijducfsu.18120a2.ip6.access.telenet.be) |
2021-10-08 11:35:27 +0200 | jonatan_ | (~nate@h85-8-60-194.cust.a3fiber.se) (Remote host closed the connection) |
2021-10-08 11:36:31 +0200 | wei2912 | (~wei2912@112.199.250.21) |
2021-10-08 11:37:36 +0200 | DNH | (~DNH@ip5f5abb04.dynamic.kabel-deutschland.de) |
2021-10-08 11:43:35 +0200 | <kuribas> | Found how to write hspec smallcheck tests, and change the depth. Not hard when you know it. Just difficult to navigate through the polymorphic functions and orphan instances... |
2021-10-08 11:44:29 +0200 | mikoto-chan | (~mikoto-ch@ip-83-134-2-136.dsl.scarlet.be) (Ping timeout: 245 seconds) |
2021-10-08 11:46:36 +0200 | mikoto-chan | (~mikoto-ch@ip-83-134-2-136.dsl.scarlet.be) |
2021-10-08 11:47:26 +0200 | barzo | (~barzo@176.55.50.114) (Remote host closed the connection) |
2021-10-08 11:52:09 +0200 | DNH | (~DNH@ip5f5abb04.dynamic.kabel-deutschland.de) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2021-10-08 11:53:26 +0200 | barzo | (~barzo@176.55.53.201) |
2021-10-08 11:54:03 +0200 | barzo | (~barzo@176.55.53.201) (Client Quit) |
2021-10-08 11:54:16 +0200 | barzo | (~barzo@176.55.53.201) |
2021-10-08 12:02:37 +0200 | mestre | (~mestre@191.177.175.57) |
2021-10-08 12:05:56 +0200 | chomwitt | (~chomwitt@2a02:587:dc18:b400:12c3:7bff:fe6d:d374) (Ping timeout: 245 seconds) |
2021-10-08 12:10:15 +0200 | <kuribas> | Is haskell + extensions a *big* language? |
2021-10-08 12:10:19 +0200 | <kuribas> | compared to java say? |
2021-10-08 12:10:44 +0200 | <kuribas> | it seems to me most language "accumulate" features as they evolve. |
2021-10-08 12:12:32 +0200 | <mestre> | Its hard removing a feature. |
2021-10-08 12:13:06 +0200 | <kuribas> | or, like in scheme, the language keeps small, but implementations get big, and each implementation has it's own ways of doing things. |
2021-10-08 12:14:16 +0200 | <kuribas> | it's just because I heard people complain that haskell is big with all extensions... |
2021-10-08 12:15:22 +0200 | fendor_ | fendor |
2021-10-08 12:15:43 +0200 | <mestre> | It is big, don't get me wrong. But the language extensions are great. |
2021-10-08 12:16:32 +0200 | <mestre> | Can't compare with Java, though, never used it. |
2021-10-08 12:19:24 +0200 | <fendor> | I think my biggest issue with how big haskell is the accumulation of new syntax over time that seems to not interact nicely |
2021-10-08 12:19:31 +0200 | <fendor> | or at least not visually nice |
2021-10-08 12:20:26 +0200 | <mestre> | Interesting. Can you give me an example of a weird interaction? |
2021-10-08 12:20:28 +0200 | <kuribas> | fendor: like what? |
2021-10-08 12:20:32 +0200 | <fendor> | for example, while I love patternguards, their syntax is really weird with case expressions |
2021-10-08 12:20:39 +0200 | <fendor> | > case () | () <- () -> () |
2021-10-08 12:20:40 +0200 | <lambdabot> | <hint>:1:9: error: parse error on input ‘|’ |
2021-10-08 12:20:48 +0200 | <fendor> | > case () of | () <- () -> () |
2021-10-08 12:20:49 +0200 | <lambdabot> | <hint>:1:12: error: parse error on input ‘|’ |
2021-10-08 12:20:57 +0200 | <fendor> | wait |
2021-10-08 12:21:06 +0200 | <fendor> | > case () of () | () <- () -> () |
2021-10-08 12:21:08 +0200 | <lambdabot> | () |
2021-10-08 12:22:45 +0200 | <fendor> | contrived example, but maybe illustrates a bit what I mean by "not visually nice" |
2021-10-08 12:23:12 +0200 | <kuribas> | yeah, that can be hard to read. |
2021-10-08 12:24:18 +0200 | <mestre> | Guess you have to limit yourself to a subset that plays well together :/ |
2021-10-08 12:25:12 +0200 | <kuribas> | ugh, does hspec-junit-formatter really restricts to base (>=4.14.1.0)? |
2021-10-08 12:25:24 +0200 | <fendor> | it is not like this is "bad", but if we designed the grammar from the start, I doubt we would use "->" in case expressions and have pattern guards use "<-" |
2021-10-08 12:25:45 +0200 | DNH | (~DNH@2a02:8108:1100:16d8:25ec:8a4c:7bf8:2c3a) |
2021-10-08 12:25:49 +0200 | <fendor> | *re-designed |
2021-10-08 12:26:13 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:25a3:7e37:69ba:6dab) |
2021-10-08 12:27:09 +0200 | <mestre> | 'case Foo of True do undefined; False do undefined' maybe |
2021-10-08 12:27:49 +0200 | ubert | (~Thunderbi@178.115.60.191.wireless.dyn.drei.com) (Ping timeout: 245 seconds) |
2021-10-08 12:27:50 +0200 | <fendor> | idk, why not reuse `=` since we have that in guard expressions and function definitions? |
2021-10-08 12:28:16 +0200 | <fendor> | however, that ship has sailed |
2021-10-08 12:28:36 +0200 | <mestre> | yeah |
2021-10-08 12:31:08 +0200 | zincy_ | (~tom@2a00:23c8:970c:4801:e07c:c539:ea16:90d3) (Remote host closed the connection) |
2021-10-08 12:31:11 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:25a3:7e37:69ba:6dab) (Ping timeout: 268 seconds) |
2021-10-08 12:34:47 +0200 | barzo | (~barzo@176.55.53.201) (Read error: Connection reset by peer) |
2021-10-08 12:35:21 +0200 | <kuribas> | fendor: yeah, a new language could use '=' instead of '->' |
2021-10-08 12:35:23 +0200 | barzo | (~barzo@31.177.222.75) |
2021-10-08 12:35:37 +0200 | ubert | (~Thunderbi@178.115.60.191.wireless.dyn.drei.com) |
2021-10-08 12:35:38 +0200 | chomwitt | (~chomwitt@94.66.61.137) |
2021-10-08 12:38:13 +0200 | timCF | (~timCF@254-149-20-81.sta.estpak.ee) |
2021-10-08 12:42:50 +0200 | timCF | (~timCF@254-149-20-81.sta.estpak.ee) (Ping timeout: 265 seconds) |
2021-10-08 12:45:08 +0200 | __monty__ | (~toonn@user/toonn) |
2021-10-08 12:45:35 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-10-08 13:02:52 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer) |
2021-10-08 13:06:09 +0200 | ikex | (~ash@user/ikex) (Ping timeout: 245 seconds) |
2021-10-08 13:06:39 +0200 | ikex | (~ash@user/ikex) |
2021-10-08 13:11:39 +0200 | Vajb | (~Vajb@n8vwdu04eps78g521-2.v6.elisa-mobile.fi) |
2021-10-08 13:11:51 +0200 | AlexNoo_ | (~AlexNoo@94.233.240.247) |
2021-10-08 13:13:35 +0200 | AlexZenon | (~alzenon@94.233.240.2) (Ping timeout: 260 seconds) |
2021-10-08 13:13:56 +0200 | DNH | (~DNH@2a02:8108:1100:16d8:25ec:8a4c:7bf8:2c3a) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2021-10-08 13:14:15 +0200 | Alex_test | (~al_test@94.233.240.2) (Ping timeout: 265 seconds) |
2021-10-08 13:15:19 +0200 | AlexNoo | (~AlexNoo@94.233.240.2) (Ping timeout: 245 seconds) |
2021-10-08 13:15:23 +0200 | DNH | (~DNH@2a02:8108:1100:16d8:25ec:8a4c:7bf8:2c3a) |
2021-10-08 13:17:21 +0200 | AlexZenon | (~alzenon@94.233.240.247) |
2021-10-08 13:17:48 +0200 | Alex_test | (~al_test@94.233.240.247) |
2021-10-08 13:19:54 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 245 seconds) |
2021-10-08 13:28:01 +0200 | libertyprime | (~libertypr@118.149.73.16) (Ping timeout: 245 seconds) |
2021-10-08 13:29:16 +0200 | APic | (apic@apic.name) (Quit: leaving) |
2021-10-08 13:29:56 +0200 | APic | (apic@apic.name) |
2021-10-08 13:30:56 +0200 | mbuf | (~Shakthi@122.174.39.240) |
2021-10-08 13:31:11 +0200 | wei2912 | (~wei2912@112.199.250.21) (Quit: Lost terminal) |
2021-10-08 13:32:16 +0200 | Vajb | (~Vajb@n8vwdu04eps78g521-2.v6.elisa-mobile.fi) (Read error: Connection reset by peer) |
2021-10-08 13:32:16 +0200 | azeem | (~azeem@emp-183-4.eduroam.uu.se) (Read error: Connection reset by peer) |
2021-10-08 13:33:05 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) |
2021-10-08 13:33:14 +0200 | azeem | (~azeem@emp-183-4.eduroam.uu.se) |
2021-10-08 13:33:45 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer) |
2021-10-08 13:33:53 +0200 | azeem | (~azeem@emp-183-4.eduroam.uu.se) (Read error: Connection reset by peer) |
2021-10-08 13:35:27 +0200 | azeem | (~azeem@emp-183-4.eduroam.uu.se) |
2021-10-08 13:37:18 +0200 | <kuribas> | ugh, it doesn't look like flycheck-haskell supports tests :-( |
2021-10-08 13:43:15 +0200 | kuribas | (~user@ptr-25vy0i7xa7aijducfsu.18120a2.ip6.access.telenet.be) (Quit: ERC (IRC client for Emacs 26.3)) |
2021-10-08 13:44:20 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) |
2021-10-08 13:45:13 +0200 | <lortabac> | is there some easy way to get a constructor index with Generic instead of Data.Data? |
2021-10-08 13:58:16 +0200 | machinedgod | (~machinedg@135-23-192-217.cpe.pppoe.ca) |
2021-10-08 14:01:03 +0200 | thyriaen | (~thyriaen@dynamic-077-013-083-201.77.13.pool.telefonica.de) |
2021-10-08 14:02:07 +0200 | ub | (~Thunderbi@178.115.60.191.wireless.dyn.drei.com) |
2021-10-08 14:03:04 +0200 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) |
2021-10-08 14:04:02 +0200 | max22- | (~maxime@lfbn-ren-1-762-224.w81-53.abo.wanadoo.fr) (Ping timeout: 265 seconds) |
2021-10-08 14:04:25 +0200 | sleblanc | (~sleblanc@user/sleblanc) |
2021-10-08 14:05:16 +0200 | shapr | (~user@pool-100-36-247-68.washdc.fios.verizon.net) |
2021-10-08 14:07:10 +0200 | phma | (~phma@host-67-44-209-51.hnremote.net) (Read error: Connection reset by peer) |
2021-10-08 14:08:39 +0200 | wonko | (~wjc@62.115.229.50) (Ping timeout: 245 seconds) |
2021-10-08 14:15:15 +0200 | phma | (~phma@host-67-44-209-84.hnremote.net) |
2021-10-08 14:15:53 +0200 | lavaman | (~lavaman@98.38.249.169) |
2021-10-08 14:16:33 +0200 | geranim0 | (~geranim0@modemcable242.171-178-173.mc.videotron.ca) |
2021-10-08 14:17:16 +0200 | barzo | (~barzo@31.177.222.75) (Ping timeout: 252 seconds) |
2021-10-08 14:19:43 +0200 | barzo | (~barzo@31.177.222.75) |
2021-10-08 14:27:23 +0200 | mbuf | (~Shakthi@122.174.39.240) (Quit: Leaving) |
2021-10-08 14:41:28 +0200 | Guest65 | (~Guest65@49.207.193.19) |
2021-10-08 14:41:59 +0200 | jlamothe | (~jlamothe@104.158.48.100) (Ping timeout: 245 seconds) |
2021-10-08 14:45:22 +0200 | <Guest65> | in GHCi, this works: let f x = x :: Int, but this doesn't: let f x = x :: Num a => a. any idea why? |
2021-10-08 14:49:01 +0200 | <lortabac> | Guest65: because the right signature should be f :: Num a => a -> a |
2021-10-08 14:49:23 +0200 | <lortabac> | the (Num a) constraint should apply to both arguments |
2021-10-08 14:49:39 +0200 | <Guest65> | why does it in the `Int` case? |
2021-10-08 14:49:52 +0200 | <Guest65> | why does it work in the `Int` case? |
2021-10-08 14:49:54 +0200 | <lortabac> | the Int case is correct |
2021-10-08 14:49:56 +0200 | xiongxin | (~quassel@113.116.33.66) |
2021-10-08 14:49:58 +0200 | <lortabac> | x is an Int |
2021-10-08 14:50:01 +0200 | DNH | (~DNH@2a02:8108:1100:16d8:25ec:8a4c:7bf8:2c3a) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2021-10-08 14:50:33 +0200 | <Guest65> | I am not sure I understand the reason. |
2021-10-08 14:50:43 +0200 | <lortabac> | your definitions are parsed as f x = (x :: Int) |
2021-10-08 14:50:50 +0200 | <Guest65> | ok |
2021-10-08 14:50:52 +0200 | <lortabac> | and f x = (x :: Num a => a) |
2021-10-08 14:50:52 +0200 | <pavonia> | It's not clear to me either why it can infer the final type in one case but not in the other |
2021-10-08 14:53:16 +0200 | waleee | (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) |
2021-10-08 14:53:37 +0200 | <lortabac> | I guess (f x = x :: Num a => a) is interpreted as (f x = x :: forall a. Num a => a) |
2021-10-08 14:53:44 +0200 | <pavonia> | > :t let f x = x == (123 :: Num a => a) in f |
2021-10-08 14:53:46 +0200 | <lambdabot> | <hint>:1:1: error: parse error on input ‘:’ |
2021-10-08 14:53:58 +0200 | <pavonia> | %> :t let f x = x == (123 :: Num a => a) in f |
2021-10-08 14:54:03 +0200 | <lortabac> | which is wrong, because the argument should have the same type as the result |
2021-10-08 14:54:14 +0200 | <pavonia> | Bah, what was the command for the other bot? |
2021-10-08 14:54:29 +0200 | <lortabac> | > 1 :: Num a => a |
2021-10-08 14:54:31 +0200 | <lambdabot> | 1 |
2021-10-08 14:54:59 +0200 | <lortabac> | in this case we are saying that the type of 1 can be any type as long as it is an instance of Num |
2021-10-08 14:55:21 +0200 | <lortabac> | > f x = (x :: Num a => a) |
2021-10-08 14:55:23 +0200 | <lambdabot> | <hint>:1:5: error: parse error on input ‘=’ |
2021-10-08 14:55:42 +0200 | <Guest65> | the type inference works differently for `Int` than it does for `Num a => a`. why is that? |
2021-10-08 14:55:45 +0200 | <lortabac> | in this case we are trying to say the same thing about the second x |
2021-10-08 14:55:50 +0200 | <lortabac> | which is false |
2021-10-08 14:56:02 +0200 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
2021-10-08 14:56:02 +0200 | <lortabac> | the second x cannot be any type, it must be the same as the argument |
2021-10-08 14:56:15 +0200 | <Guest65> | I am sorry? |
2021-10-08 14:56:20 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer) |
2021-10-08 14:57:10 +0200 | Vajb | (~Vajb@n8vwdu04eps78g521-2.v6.elisa-mobile.fi) |
2021-10-08 14:57:18 +0200 | CiaoSen | (~Jura@p200300c9571e34002a3a4dfffe84dbd5.dip0.t-ipconnect.de) |
2021-10-08 14:57:50 +0200 | <lortabac> | (Num a => a) means "this can be any type as long as it os an instance of Num" |
2021-10-08 14:57:52 +0200 | <lortabac> | ok? |
2021-10-08 14:57:59 +0200 | <Guest65> | correct |
2021-10-08 14:58:08 +0200 | sleblanc | (~sleblanc@user/sleblanc) (Quit: Leaving) |
2021-10-08 14:58:11 +0200 | <Guest65> | i know the reason, i think |
2021-10-08 14:58:15 +0200 | <lortabac> | this is true in the case of a literal, like 1 or 42 |
2021-10-08 14:58:38 +0200 | <lortabac> | you can use 1 for Ints, Floats etc. |
2021-10-08 14:59:01 +0200 | jlamothe | (~jlamothe@104.158.48.100) |
2021-10-08 14:59:10 +0200 | <lortabac> | now, if you try to define f x = (x :: Num a => a) |
2021-10-08 14:59:26 +0200 | <Guest65> | the `Num a => a` doesn't quantify across both argument and result, which is why it fails. |
2021-10-08 15:00:36 +0200 | <lortabac> | yes, I guess it is interpreted as (x :: forall a. Num a => a) |
2021-10-08 15:01:09 +0200 | <Guest65> | you say, the type checker infers f (x :: Num a => a) = x :: Num a => a, which doesn't restrict both the argument and result to the same type, so it fails. |
2021-10-08 15:01:32 +0200 | <lortabac> | yes I think so |
2021-10-08 15:01:54 +0200 | <Guest65> | thanks, you can see it from the error message. |
2021-10-08 15:02:01 +0200 | <Guest65> | one other question. |
2021-10-08 15:03:00 +0200 | <Guest65> | how can i join haskell libera chat channel from an irc client, say LimeChat? I mean any idea what the configurations would be? |
2021-10-08 15:03:01 +0200 | Vajb | (~Vajb@n8vwdu04eps78g521-2.v6.elisa-mobile.fi) (Read error: Connection reset by peer) |
2021-10-08 15:03:39 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) |
2021-10-08 15:03:54 +0200 | AlexNoo_ | AlexNoo |
2021-10-08 15:06:01 +0200 | <yushyin> | Guest65: did you see https://libera.chat/guides/connect ? |
2021-10-08 15:07:05 +0200 | DNH | (~DNH@2a02:8108:1100:16d8:25ec:8a4c:7bf8:2c3a) |
2021-10-08 15:07:39 +0200 | ga | (~gabx@8.41.6.83) |
2021-10-08 15:07:55 +0200 | acidjnk_new3 | (~acidjnk@p200300d0c703cb3809607f7c8c1f0b15.dip0.t-ipconnect.de) (Ping timeout: 252 seconds) |
2021-10-08 15:08:55 +0200 | <Guest65> | yeah, i saw that. for some reason, libera is not recognizing my login. it says "failed login" without giving any more details. |
2021-10-08 15:11:15 +0200 | geekosaur | (~geekosaur@xmonad/geekosaur) |
2021-10-08 15:12:01 +0200 | max22- | (~maxime@2a01cb088335980097eb09a47970d526.ipv6.abo.wanadoo.fr) |
2021-10-08 15:12:43 +0200 | kuribas | (~user@ptr-25vy0i7xa7aijducfsu.18120a2.ip6.access.telenet.be) |
2021-10-08 15:13:46 +0200 | Hydrazer | (~Hydrazer@S010684c9b26eee6d.cg.shawcable.net) |
2021-10-08 15:13:47 +0200 | juhp | (~juhp@128.106.188.220) (Read error: Connection reset by peer) |
2021-10-08 15:14:01 +0200 | juhp | (~juhp@128.106.188.220) |
2021-10-08 15:14:09 +0200 | kuribas | (~user@ptr-25vy0i7xa7aijducfsu.18120a2.ip6.access.telenet.be) (Remote host closed the connection) |
2021-10-08 15:14:34 +0200 | Hydrazer | (~Hydrazer@S010684c9b26eee6d.cg.shawcable.net) (Client Quit) |
2021-10-08 15:15:06 +0200 | Guest33 | (~Guest33@52.187.169.108) |
2021-10-08 15:15:12 +0200 | <yushyin> | Guest65: you should be able to connect without a login, if you already have a registered nick on libera check out https://libera.chat/guides/limechat |
2021-10-08 15:15:43 +0200 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) (Quit: = "") |
2021-10-08 15:16:30 +0200 | <yushyin> | Guest65: if nothing works, maybe ask in #libera |
2021-10-08 15:16:44 +0200 | <Guest65> | ok |
2021-10-08 15:17:12 +0200 | Guest33 | (~Guest33@52.187.169.108) (Client Quit) |
2021-10-08 15:17:57 +0200 | pavonia | (~user@user/siracusa) (Quit: Bye!) |
2021-10-08 15:19:26 +0200 | lavaman | (~lavaman@98.38.249.169) (Ping timeout: 265 seconds) |
2021-10-08 15:20:05 +0200 | MatrixTravelerb4 | (~voyagert2@2001:470:69fc:105::22) (Write error: Connection reset by peer) |
2021-10-08 15:20:05 +0200 | vaibhavsagar[m] | (~vaibhavsa@2001:470:69fc:105::ffe) (Read error: Connection reset by peer) |
2021-10-08 15:20:05 +0200 | ftzm[m] | (~ftzmmatri@2001:470:69fc:105::1:dfc) (Read error: Connection reset by peer) |
2021-10-08 15:20:05 +0200 | kevin[m]1 | (~pnotequal@2001:470:69fc:105::a54) (Read error: Connection reset by peer) |
2021-10-08 15:20:05 +0200 | maralorn | (~maralorn@2001:470:69fc:105::251) (Read error: Connection reset by peer) |
2021-10-08 15:20:05 +0200 | lwe[m] | (~dendrumat@2001:470:69fc:105::2f9b) (Read error: Connection reset by peer) |
2021-10-08 15:20:06 +0200 | Rosuavio[m] | (~rosariopu@2001:470:69fc:105::a57) (Read error: Connection reset by peer) |
2021-10-08 15:20:06 +0200 | jophish | (~jophish@2001:470:69fc:105::670) (Write error: Connection reset by peer) |
2021-10-08 15:20:06 +0200 | Christoph[m] | (~hpotsirhc@2001:470:69fc:105::2ff8) (Read error: Connection reset by peer) |
2021-10-08 15:20:06 +0200 | ericson23141 | (~ericson23@2001:470:69fc:105::70c) (Write error: Connection reset by peer) |
2021-10-08 15:20:06 +0200 | ServerStatsDisco | (~serversta@2001:470:69fc:105::1a) (Read error: Connection reset by peer) |
2021-10-08 15:20:06 +0200 | sm | (~sm@plaintextaccounting/sm) (Read error: Connection reset by peer) |
2021-10-08 15:20:06 +0200 | dexmad[m] | (~dexmadmat@2001:470:69fc:105::e056) (Write error: Connection reset by peer) |
2021-10-08 15:20:06 +0200 | wysteriary[m] | (~wysteriar@2001:470:69fc:105::a42e) (Read error: Connection reset by peer) |
2021-10-08 15:20:06 +0200 | fendor[m] | (~fendormat@2001:470:69fc:105::fcbd) (Write error: Connection reset by peer) |
2021-10-08 15:20:06 +0200 | razor[m] | (~razormone@2001:470:69fc:105::f048) (Write error: Connection reset by peer) |
2021-10-08 15:20:06 +0200 | shiraeeshi[m] | (~shiraeesh@2001:470:69fc:105::1:77) (Write error: Connection reset by peer) |
2021-10-08 15:20:06 +0200 | Tisoxin | (~ikosit@user/ikosit) (Write error: Connection reset by peer) |
2021-10-08 15:20:06 +0200 | ilkecan[m] | (~ilkecanma@2001:470:69fc:105::1:79b) (Write error: Connection reset by peer) |
2021-10-08 15:20:06 +0200 | Orbstheorem | (~orbstheor@2001:470:69fc:105::a56) (Write error: Connection reset by peer) |
2021-10-08 15:20:06 +0200 | jesser[m] | (~jessermat@2001:470:69fc:105::d5ae) (Write error: Connection reset by peer) |
2021-10-08 15:20:06 +0200 | Morrow[m] | (~morrowmma@2001:470:69fc:105::1d0) (Read error: Connection reset by peer) |
2021-10-08 15:20:06 +0200 | ixlun | (~ixlun@2001:470:69fc:105::41b3) (Read error: Connection reset by peer) |
2021-10-08 15:20:06 +0200 | Drew[m] | (~drewefenw@2001:470:69fc:105::c8c4) (Read error: Connection reset by peer) |
2021-10-08 15:20:06 +0200 | maerwald[m] | (~maerwaldm@2001:470:69fc:105::1ee) (Read error: Connection reset by peer) |
2021-10-08 15:20:06 +0200 | hjulle[m] | (~hjullemat@2001:470:69fc:105::1dd) (Read error: Connection reset by peer) |
2021-10-08 15:20:06 +0200 | soft | (~soft-matr@2001:470:69fc:105::c75) (Read error: Connection reset by peer) |
2021-10-08 15:20:06 +0200 | ormaaj | (~ormaaj@user/ormaaj) (Read error: Connection reset by peer) |
2021-10-08 15:20:06 +0200 | bb010g | (~bb010g@2001:470:69fc:105::9a5) (Write error: Connection reset by peer) |
2021-10-08 15:20:06 +0200 | cloudy | (~cloudy@2001:470:69fc:105::50c0) (Read error: Connection reset by peer) |
2021-10-08 15:20:06 +0200 | PotatoHatsue | (~berberman@2001:470:69fc:105::b488) (Read error: Connection reset by peer) |
2021-10-08 15:20:06 +0200 | bakinonion[m] | (~bakinonio@2001:470:69fc:105::ddb3) (Read error: Connection reset by peer) |
2021-10-08 15:20:06 +0200 | oak- | (~oakuniver@2001:470:69fc:105::fcd) (Read error: Connection reset by peer) |
2021-10-08 15:20:06 +0200 | reza[m] | (~rezaphone@2001:470:69fc:105::3eda) (Read error: Connection reset by peer) |
2021-10-08 15:20:07 +0200 | santiagopim[m] | (~santiagop@2001:470:69fc:105::e57d) (Read error: Connection reset by peer) |
2021-10-08 15:20:07 +0200 | stoicswe[m] | (~deadlette@2001:470:69fc:105::d277) (Read error: Connection reset by peer) |
2021-10-08 15:20:07 +0200 | psydroid | (~psydroid@user/psydroid) (Read error: Connection reset by peer) |
2021-10-08 15:20:07 +0200 | marinelli[m] | (~marinelli@2001:470:69fc:105::2d8) (Write error: Connection reset by peer) |
2021-10-08 15:20:07 +0200 | smichel17[m] | (~smichel17@2001:470:69fc:105::2d32) (Write error: Connection reset by peer) |
2021-10-08 15:20:07 +0200 | moats | (~oats@user/oats) (Write error: Connection reset by peer) |
2021-10-08 15:20:07 +0200 | xosdy[m] | (~xosdyalet@2001:470:69fc:105::31f7) (Write error: Connection reset by peer) |
2021-10-08 15:20:07 +0200 | denbrahe[m] | (~denbrahem@2001:470:69fc:105::19c0) (Write error: Connection reset by peer) |
2021-10-08 15:20:07 +0200 | codygman[m] | (~codygman@2001:470:69fc:105::b4ba) (Write error: Connection reset by peer) |
2021-10-08 15:20:07 +0200 | asdofindia-m | (~akshaymat@2001:470:69fc:105::831) (Write error: Connection reset by peer) |
2021-10-08 15:20:07 +0200 | unrooted | (~unrooted@2001:470:69fc:105::a4a) (Write error: Connection reset by peer) |
2021-10-08 15:20:07 +0200 | carmysilna | (~brightly-@2001:470:69fc:105::2190) (Write error: Connection reset by peer) |
2021-10-08 15:20:07 +0200 | Topik[m] | (~topikmatr@2001:470:69fc:105::a082) (Write error: Connection reset by peer) |
2021-10-08 15:20:07 +0200 | quantum | (~quantum@user/quantum/x-8556232) (Write error: Connection reset by peer) |
2021-10-08 15:20:07 +0200 | monadfritz[m] | (~ahdytmatr@2001:470:69fc:105::e1f1) (Write error: Connection reset by peer) |
2021-10-08 15:20:07 +0200 | ongy[m] | (~ongymatri@2001:470:69fc:105::5018) (Write error: Connection reset by peer) |
2021-10-08 15:20:07 +0200 | amesgen[m] | (~amesgenm]@2001:470:69fc:105::82b) (Write error: Connection reset by peer) |
2021-10-08 15:20:07 +0200 | thomasjm[m] | (~thomasjmm@2001:470:69fc:105::c6d9) (Write error: Connection reset by peer) |
2021-10-08 15:20:07 +0200 | commuswift[m] | (~commuswif@2001:470:69fc:105::e862) (Write error: Connection reset by peer) |
2021-10-08 15:20:07 +0200 | fakehacker[m] | (~fakehacke@2001:470:69fc:105::b5f0) (Write error: Connection reset by peer) |
2021-10-08 15:20:07 +0200 | hsiktas[m] | (~hsiktasma@2001:470:69fc:105::30d4) (Read error: Connection reset by peer) |
2021-10-08 15:20:08 +0200 | YoungChiefBTW | (~youngchie@user/youngchiefbtw) (Write error: Connection reset by peer) |
2021-10-08 15:20:08 +0200 | schuelermine[m] | (~schuelerm@user/schuelermine) (Write error: Connection reset by peer) |
2021-10-08 15:20:08 +0200 | fgaz | (~fgaz@2001:470:69fc:105::842) (Write error: Connection reset by peer) |
2021-10-08 15:20:08 +0200 | Arathorn | (~arathorn@2001:470:69fc:105::1f) (Write error: Connection reset by peer) |
2021-10-08 15:20:08 +0200 | ru0mad[m] | (~ru0madmat@2001:470:69fc:105::9b2) (Write error: Connection reset by peer) |
2021-10-08 15:20:08 +0200 | jneira[m] | (~jneiramat@2001:470:69fc:105::d729) (Read error: Connection reset by peer) |
2021-10-08 15:20:08 +0200 | aidy | (~aidy@2001:470:69fc:105::c7b4) (Read error: Connection reset by peer) |
2021-10-08 15:20:08 +0200 | bitonic1 | (~bitonic@2001:470:69fc:105::1812) (Write error: Connection reset by peer) |
2021-10-08 15:20:08 +0200 | siraben | (~siraben@user/siraben) (Write error: Connection reset by peer) |
2021-10-08 15:20:08 +0200 | Magnus[m] | (~magthetch@2001:470:69fc:105::d1a7) (Read error: Connection reset by peer) |
2021-10-08 15:20:08 +0200 | srid[m] | (~sridmatri@2001:470:69fc:105::1c2) (Read error: Connection reset by peer) |
2021-10-08 15:20:08 +0200 | mekeor[m] | (~mekeormat@2001:470:69fc:105::17e4) (Write error: Connection reset by peer) |
2021-10-08 15:20:08 +0200 | peddie | (~peddie@2001:470:69fc:105::25d) (Write error: Connection reset by peer) |
2021-10-08 15:20:08 +0200 | SawyerBergeron[m | (~sawyerber@2001:470:69fc:105::3036) (Write error: Connection reset by peer) |
2021-10-08 15:20:08 +0200 | dualinverter[m] | (~dualinver@2001:470:69fc:105::16a7) (Write error: Connection reset by peer) |
2021-10-08 15:20:08 +0200 | fcortesi | (~fcortesi@2001:470:69fc:105::f3a9) (Write error: Connection reset by peer) |
2021-10-08 15:20:08 +0200 | zfnmxt | (~zfnmxtzfn@2001:470:69fc:105::2b32) (Write error: Connection reset by peer) |
2021-10-08 15:20:08 +0200 | alexfmpe[m] | (~alexfmpem@2001:470:69fc:105::38ba) (Write error: Connection reset by peer) |
2021-10-08 15:20:08 +0200 | tsmc[m] | (~tsmcmatri@2001:470:69fc:105::1:7e1) (Write error: Connection reset by peer) |
2021-10-08 15:20:09 +0200 | craige[m] | (~craigemcw@2001:470:69fc:105::35f1) (Read error: Connection reset by peer) |
2021-10-08 15:20:09 +0200 | SimonWeiss[m] | (~weiss-dma@2001:470:69fc:105::bebd) (Read error: Connection reset by peer) |
2021-10-08 15:20:09 +0200 | OndejSkup[m] | (~mimivxmat@2001:470:69fc:105::c300) (Write error: Connection reset by peer) |
2021-10-08 15:20:09 +0200 | Tavi[m] | (~factoidde@2001:470:69fc:105::1:819) (Write error: Connection reset by peer) |
2021-10-08 15:20:09 +0200 | the-coot[m] | (~the-cootm@2001:470:69fc:105::95f) (Write error: Connection reset by peer) |
2021-10-08 15:20:09 +0200 | hughjfchen[m] | (~hughjfche@2001:470:69fc:105::c29d) (Write error: Connection reset by peer) |
2021-10-08 15:20:09 +0200 | jchia[m] | (~jchiamatr@2001:470:69fc:105::c50b) (Write error: Connection reset by peer) |
2021-10-08 15:20:09 +0200 | reddishblue[m] | (~reddishbl@2001:470:69fc:105::21eb) (Write error: Connection reset by peer) |
2021-10-08 15:20:09 +0200 | Deewiant | (~deewiant@2001:470:69fc:105::2fd3) (Write error: Connection reset by peer) |
2021-10-08 15:20:09 +0200 | Deide | (~deide@user/deide) (Write error: Connection reset by peer) |
2021-10-08 15:20:09 +0200 | kadoban | (~kadoban@user/kadoban) (Write error: Connection reset by peer) |
2021-10-08 15:20:09 +0200 | sam[m]1 | (~sammtopoi@2001:470:69fc:105::e887) (Write error: Connection reset by peer) |
2021-10-08 15:20:09 +0200 | kar1 | (~kar1@2001:470:69fc:105::c308) (Write error: Connection reset by peer) |
2021-10-08 15:20:09 +0200 | rednaZ[m] | (~r3dnazmat@2001:470:69fc:105::ba70) (Read error: Connection reset by peer) |
2021-10-08 15:20:09 +0200 | unclechu | (~unclechu@2001:470:69fc:105::354) (Write error: Connection reset by peer) |
2021-10-08 15:20:09 +0200 | cdsmith | (~cdsmithma@2001:470:69fc:105::284) (Read error: Connection reset by peer) |
2021-10-08 15:20:09 +0200 | IgnatInsarov[m] | (~kindaroma@2001:470:69fc:105::f5d9) (Read error: Connection reset by peer) |
2021-10-08 15:20:09 +0200 | zwro[m] | (~zwromatri@2001:470:69fc:105::1d4) (Write error: Connection reset by peer) |
2021-10-08 15:20:09 +0200 | Ollie[m] | (~ollieocha@2001:470:69fc:105::41a5) (Read error: Connection reset by peer) |
2021-10-08 15:20:09 +0200 | hsek[m] | (~hsekmatri@2001:470:69fc:105::d18f) (Write error: Connection reset by peer) |
2021-10-08 15:20:09 +0200 | ManofLetters[m] | (~manoflett@2001:470:69fc:105::3be) (Write error: Connection reset by peer) |
2021-10-08 15:20:09 +0200 | gdhffd[m] | (~gdhffdmat@2001:470:69fc:105::1:799) (Write error: Connection reset by peer) |
2021-10-08 15:20:09 +0200 | afotgkmnzj7asv3r | (~afotgkmnz@2001:470:69fc:105::c24b) (Read error: Connection reset by peer) |
2021-10-08 15:20:09 +0200 | justosophy[m] | (~justosoph@2001:470:69fc:105::572f) (Read error: Connection reset by peer) |
2021-10-08 15:22:00 +0200 | ga | (~gabx@8.41.6.83) (Quit: Leaving) |
2021-10-08 15:23:02 +0200 | jchia[m] | (~jchiamatr@2001:470:69fc:105::c50b) |
2021-10-08 15:24:40 +0200 | kuribas | (~user@ptr-25vy0i7xa7aijducfsu.18120a2.ip6.access.telenet.be) |
2021-10-08 15:24:47 +0200 | <yushyin> | Guest65: you can also register a nickname while using the webchat https://libera.chat/guides/registration#registering and use the limechat guide afterwards |
2021-10-08 15:24:48 +0200 | MatrixTravelerbo | (~voyagert2@2001:470:69fc:105::22) |
2021-10-08 15:25:00 +0200 | dualinverter[m] | (~dualinver@2001:470:69fc:105::16a7) |
2021-10-08 15:25:00 +0200 | fgaz | (~fgaz@2001:470:69fc:105::842) |
2021-10-08 15:25:00 +0200 | peddie | (~peddie@2001:470:69fc:105::25d) |
2021-10-08 15:25:00 +0200 | cdsmith | (~cdsmithma@2001:470:69fc:105::284) |
2021-10-08 15:25:00 +0200 | Morrow[m] | (~morrowmma@2001:470:69fc:105::1d0) |
2021-10-08 15:25:01 +0200 | hsek[m] | (~hsekmatri@2001:470:69fc:105::d18f) |
2021-10-08 15:25:01 +0200 | thomasjm[m] | (~thomasjmm@2001:470:69fc:105::c6d9) |
2021-10-08 15:25:15 +0200 | ru0mad[m] | (~ru0madmat@2001:470:69fc:105::9b2) |
2021-10-08 15:25:27 +0200 | gdhffd[m] | (~gdhffdmat@2001:470:69fc:105::1:799) |
2021-10-08 15:25:41 +0200 | bb010g | (~bb010g@2001:470:69fc:105::9a5) |
2021-10-08 15:25:41 +0200 | ServerStatsDisco | (~serversta@2001:470:69fc:105::1a) |
2021-10-08 15:25:41 +0200 | amesgen[m] | (~amesgenm]@2001:470:69fc:105::82b) |
2021-10-08 15:25:41 +0200 | the-coot[m] | (~the-cootm@2001:470:69fc:105::95f) |
2021-10-08 15:25:41 +0200 | moats | (~oats@user/oats) |
2021-10-08 15:25:55 +0200 | soft | (~soft-matr@2001:470:69fc:105::c75) |
2021-10-08 15:25:56 +0200 | zfnmxt | (~zfnmxtzfn@2001:470:69fc:105::2b32) |
2021-10-08 15:26:11 +0200 | oak- | (~oakuniver@2001:470:69fc:105::fcd) |
2021-10-08 15:26:11 +0200 | kadoban | (~kadoban@user/kadoban) |
2021-10-08 15:26:11 +0200 | bitonic | (~bitonic@2001:470:69fc:105::1812) |
2021-10-08 15:26:11 +0200 | jophish | (~jophish@2001:470:69fc:105::670) |
2021-10-08 15:26:11 +0200 | ericson2314 | (~ericson23@2001:470:69fc:105::70c) |
2021-10-08 15:26:12 +0200 | Arathorn | (~arathorn@2001:470:69fc:105::1f) |
2021-10-08 15:26:12 +0200 | Ollie[m] | (~ollieocha@2001:470:69fc:105::41a5) |
2021-10-08 15:26:12 +0200 | PotatoHatsue | (~berberman@2001:470:69fc:105::b488) |
2021-10-08 15:26:12 +0200 | ixlun | (~ixlun@2001:470:69fc:105::41b3) |
2021-10-08 15:26:12 +0200 | unclechu | (~unclechu@2001:470:69fc:105::354) |
2021-10-08 15:26:12 +0200 | Deewiant | (~deewiant@2001:470:69fc:105::2fd3) |
2021-10-08 15:26:12 +0200 | unrooted | (~unrooted@2001:470:69fc:105::a4a) |
2021-10-08 15:26:12 +0200 | rednaZ[m] | (~r3dnazmat@2001:470:69fc:105::ba70) |
2021-10-08 15:26:12 +0200 | maralorn | (~maralorn@2001:470:69fc:105::251) |
2021-10-08 15:26:25 +0200 | SimonWeiss[m] | (~weiss-dma@2001:470:69fc:105::bebd) |
2021-10-08 15:26:25 +0200 | denbrahe[m] | (~denbrahem@2001:470:69fc:105::19c0) |
2021-10-08 15:26:26 +0200 | lwe[m] | (~dendrumat@2001:470:69fc:105::2f9b) |
2021-10-08 15:26:40 +0200 | jesser[m] | (~jessermat@2001:470:69fc:105::d5ae) |
2021-10-08 15:26:43 +0200 | reza[m] | (~rezaphone@2001:470:69fc:105::3eda) |
2021-10-08 15:26:44 +0200 | quantum | (~quantum@user/quantum/x-8556232) |
2021-10-08 15:26:44 +0200 | marinelli[m] | (~marinelli@2001:470:69fc:105::2d8) |
2021-10-08 15:26:44 +0200 | hsiktas[m] | (~hsiktasma@2001:470:69fc:105::30d4) |
2021-10-08 15:27:00 +0200 | Orbstheorem | (~orbstheor@2001:470:69fc:105::a56) |
2021-10-08 15:27:14 +0200 | ubert | (~Thunderbi@178.115.60.191.wireless.dyn.drei.com) (Remote host closed the connection) |
2021-10-08 15:27:15 +0200 | ub | ubert |
2021-10-08 15:27:26 +0200 | craige[m] | (~craigemcw@2001:470:69fc:105::35f1) |
2021-10-08 15:27:40 +0200 | afotgkmnzj7asv3r | (~afotgkmnz@2001:470:69fc:105::c24b) |
2021-10-08 15:27:40 +0200 | schuelermine[m] | (~schuelerm@user/schuelermine) |
2021-10-08 15:27:41 +0200 | razor[m] | (~razormone@2001:470:69fc:105::f048) |
2021-10-08 15:27:41 +0200 | sm | (~sm@plaintextaccounting/sm) |
2021-10-08 15:27:41 +0200 | reddishblue[m] | (~reddishbl@2001:470:69fc:105::21eb) |
2021-10-08 15:27:53 +0200 | justosophy[m] | (~justosoph@2001:470:69fc:105::572f) |
2021-10-08 15:27:54 +0200 | kevin[m]1 | (~pnotequal@2001:470:69fc:105::a54) |
2021-10-08 15:27:54 +0200 | Deide | (~deide@user/deide) |
2021-10-08 15:28:06 +0200 | fakehacker[m] | (~fakehacke@2001:470:69fc:105::b5f0) |
2021-10-08 15:28:06 +0200 | hughjfchen[m] | (~hughjfche@2001:470:69fc:105::c29d) |
2021-10-08 15:28:18 +0200 | srid[m] | (~sridmatri@2001:470:69fc:105::1c2) |
2021-10-08 15:28:18 +0200 | IgnatInsarov[m] | (~kindaroma@2001:470:69fc:105::f5d9) |
2021-10-08 15:28:18 +0200 | psydroid | (~psydroid@user/psydroid) |
2021-10-08 15:28:18 +0200 | Christoph[m] | (~hpotsirhc@2001:470:69fc:105::2ff8) |
2021-10-08 15:28:30 +0200 | wysteriary[m] | (~wysteriar@2001:470:69fc:105::a42e) |
2021-10-08 15:28:30 +0200 | zwro[m] | (~zwromatri@2001:470:69fc:105::1d4) |
2021-10-08 15:28:38 +0200 | waleee | (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 246 seconds) |
2021-10-08 15:28:42 +0200 | stoicswe[m] | (~deadlette@2001:470:69fc:105::d277) |
2021-10-08 15:28:55 +0200 | sam[m]12 | (~sammtopoi@2001:470:69fc:105::e887) |
2021-10-08 15:28:55 +0200 | Topik[m] | (~topikmatr@2001:470:69fc:105::a082) |
2021-10-08 15:28:55 +0200 | OndejSkup[m] | (~mimivxmat@2001:470:69fc:105::c300) |
2021-10-08 15:29:09 +0200 | kar1 | (~kar1@2001:470:69fc:105::c308) |
2021-10-08 15:29:09 +0200 | ongy[m] | (~ongymatri@2001:470:69fc:105::5018) |
2021-10-08 15:29:10 +0200 | YoungChiefBTW | (~youngchie@2001:470:69fc:105::214c) |
2021-10-08 15:29:10 +0200 | alexfmpe[m] | (~alexfmpem@2001:470:69fc:105::38ba) |
2021-10-08 15:29:10 +0200 | asdofindia-m | (~akshaymat@2001:470:69fc:105::831) |
2021-10-08 15:29:10 +0200 | hjulle[m] | (~hjullemat@2001:470:69fc:105::1dd) |
2021-10-08 15:29:10 +0200 | Drew[m] | (~drewefenw@2001:470:69fc:105::c8c4) |
2021-10-08 15:29:10 +0200 | jneira[m] | (~jneiramat@2001:470:69fc:105::d729) |
2021-10-08 15:29:10 +0200 | Magnus[m] | (~magthetch@2001:470:69fc:105::d1a7) |
2021-10-08 15:29:10 +0200 | siraben | (~siraben@user/siraben) |
2021-10-08 15:29:22 +0200 | dexmad[m] | (~dexmadmat@2001:470:69fc:105::e056) |
2021-10-08 15:29:22 +0200 | smichel17[m] | (~smichel17@2001:470:69fc:105::2d32) |
2021-10-08 15:29:22 +0200 | SawyerBergeron[m | (~sawyerber@2001:470:69fc:105::3036) |
2021-10-08 15:29:23 +0200 | Tisoxin | (~ikosit@user/ikosit) |
2021-10-08 15:29:35 +0200 | monadfritz[m] | (~ahdytmatr@2001:470:69fc:105::e1f1) |
2021-10-08 15:29:35 +0200 | bakinonion[m] | (~bakinonio@2001:470:69fc:105::ddb3) |
2021-10-08 15:29:35 +0200 | alex[m]1234567 | (~alexchete@2001:470:69fc:105::1:1001) |
2021-10-08 15:29:35 +0200 | fcortesi | (~fcortesi@2001:470:69fc:105::f3a9) |
2021-10-08 15:29:35 +0200 | ManofLetters[m] | (~manoflett@2001:470:69fc:105::3be) |
2021-10-08 15:29:48 +0200 | commuswift[m] | (~commuswif@2001:470:69fc:105::e862) |
2021-10-08 15:29:48 +0200 | cloudy | (~cloudy@2001:470:69fc:105::50c0) |
2021-10-08 15:29:48 +0200 | carmysilna | (~brightly-@2001:470:69fc:105::2190) |
2021-10-08 15:29:48 +0200 | fendor[m] | (~fendormat@2001:470:69fc:105::fcbd) |
2021-10-08 15:29:48 +0200 | aidy | (~aidy@2001:470:69fc:105::c7b4) |
2021-10-08 15:29:49 +0200 | shiraeeshi[m] | (~shiraeesh@2001:470:69fc:105::1:77) |
2021-10-08 15:30:01 +0200 | ilkecan[m] | (~ilkecanma@2001:470:69fc:105::1:79b) |
2021-10-08 15:30:02 +0200 | tsmc[m] | (~tsmcmatri@2001:470:69fc:105::1:7e1) |
2021-10-08 15:30:06 +0200 | jtomas | (~jtomas@95.red-88-11-64.dynamicip.rima-tde.net) |
2021-10-08 15:30:15 +0200 | codygman[m] | (~codygman@2001:470:69fc:105::b4ba) |
2021-10-08 15:30:27 +0200 | xosdy[m] | (~xosdyalet@2001:470:69fc:105::31f7) |
2021-10-08 15:30:28 +0200 | vaibhavsagar[m] | (~vaibhavsa@2001:470:69fc:105::ffe) |
2021-10-08 15:30:28 +0200 | santiagopim[m] | (~santiagop@2001:470:69fc:105::e57d) |
2021-10-08 15:30:40 +0200 | Tavi[m] | (~factoidde@2001:470:69fc:105::1:819) |
2021-10-08 15:30:40 +0200 | mekeor[m] | (~mekeormat@2001:470:69fc:105::17e4) |
2021-10-08 15:30:40 +0200 | maerwald[m] | (~maerwaldm@2001:470:69fc:105::1ee) |
2021-10-08 15:30:40 +0200 | ormaaj | (~ormaaj@user/ormaaj) |
2021-10-08 15:30:52 +0200 | RosarioPulella[m | (~rosariopu@2001:470:69fc:105::a57) |
2021-10-08 15:31:04 +0200 | ftzm[m] | (~ftzmmatri@2001:470:69fc:105::1:dfc) |
2021-10-08 15:31:52 +0200 | jtomas_ | (~jtomas@95.red-88-11-64.dynamicip.rima-tde.net) (Ping timeout: 268 seconds) |
2021-10-08 15:34:41 +0200 | xff0x | (~xff0x@2001:1a81:5251:1900:6353:3c1e:a988:d99) (Ping timeout: 245 seconds) |
2021-10-08 15:35:30 +0200 | kuribas | (~user@ptr-25vy0i7xa7aijducfsu.18120a2.ip6.access.telenet.be) (Remote host closed the connection) |
2021-10-08 15:40:00 +0200 | spider | (~spider@vps-951ce37a.vps.ovh.ca) (Ping timeout: 260 seconds) |
2021-10-08 15:41:18 +0200 | waleee | (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) |
2021-10-08 15:43:03 +0200 | gaff | (~gaff@49.207.193.19) |
2021-10-08 15:45:02 +0200 | gaff | (~gaff@49.207.193.19) (Quit: Leaving...) |
2021-10-08 15:45:21 +0200 | gaff | (~gaff@49.207.193.19) |
2021-10-08 15:45:51 +0200 | gaff | (~gaff@49.207.193.19) (Client Quit) |
2021-10-08 15:47:01 +0200 | xff0x | (~xff0x@2001:1a81:5251:1900:6353:3c1e:a988:d99) |
2021-10-08 15:51:54 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-10-08 15:51:58 +0200 | oxide | (~lambda@user/oxide) (Ping timeout: 265 seconds) |
2021-10-08 15:53:31 +0200 | Guest65 | (~Guest65@49.207.193.19) (Ping timeout: 256 seconds) |
2021-10-08 15:53:37 +0200 | oxide | (~lambda@user/oxide) |
2021-10-08 15:56:14 +0200 | doyougnu | (~user@c-73-25-202-122.hsd1.or.comcast.net) |
2021-10-08 15:58:18 +0200 | oxide | (~lambda@user/oxide) (Ping timeout: 260 seconds) |
2021-10-08 15:59:51 +0200 | oxide | (~lambda@user/oxide) |
2021-10-08 16:03:04 +0200 | kuribas | (~user@ptr-25vy0i7xa7aijducfsu.18120a2.ip6.access.telenet.be) |
2021-10-08 16:03:20 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
2021-10-08 16:03:20 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host) |
2021-10-08 16:03:20 +0200 | wroathe | (~wroathe@user/wroathe) |
2021-10-08 16:03:31 +0200 | jtomas | (~jtomas@95.red-88-11-64.dynamicip.rima-tde.net) (Ping timeout: 250 seconds) |
2021-10-08 16:03:48 +0200 | TDANG_ | (~TDANG@2600:1700:13c1:8fe0:681c:2c55:e429:1c47) |
2021-10-08 16:04:35 +0200 | <kuribas> | when I do ":l tests/test.hs" in ghci, I get "Could not find module ‘Test.ActList’". But that's a module in my test. |
2021-10-08 16:04:43 +0200 | gaff | (~gaff@49.207.207.229) |
2021-10-08 16:04:53 +0200 | <kuribas> | in my cabal under test-suite test: other-modules: Test.ActList |
2021-10-08 16:05:23 +0200 | boxscape_ | (~boxscape_@134.171.69.87) |
2021-10-08 16:05:26 +0200 | <maerwald> | did you run `cabal repl --enable-tests`? |
2021-10-08 16:05:37 +0200 | <kuribas> | no, just ghci |
2021-10-08 16:05:38 +0200 | michalz | (~michalz@185.246.204.93) (Remote host closed the connection) |
2021-10-08 16:05:40 +0200 | <maerwald> | well |
2021-10-08 16:06:01 +0200 | ubert | (~Thunderbi@178.115.60.191.wireless.dyn.drei.com) (Quit: ubert) |
2021-10-08 16:06:10 +0200 | TDANG | (~TDANG@inet-177-7.ets.org) (Ping timeout: 252 seconds) |
2021-10-08 16:06:11 +0200 | <kuribas> | but I am trying to make flycheck work with my test-suite. |
2021-10-08 16:06:32 +0200 | gaff | (~gaff@49.207.207.229) (Client Quit) |
2021-10-08 16:06:56 +0200 | <kuribas> | apparently that runs: stack runghc tests/test.hs |
2021-10-08 16:07:32 +0200 | <maerwald> | cabal run ghci -- tests/test.hs |
2021-10-08 16:07:45 +0200 | <maerwald> | or: cabal run ghc -- --interactive tests/test.hs |
2021-10-08 16:08:47 +0200 | <kuribas> | and with stack? |
2021-10-08 16:09:05 +0200 | waleee | (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Quit: WeeChat 3.3) |
2021-10-08 16:09:07 +0200 | <maerwald> | stack ghci? |
2021-10-08 16:10:29 +0200 | waleee | (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) |
2021-10-08 16:14:42 +0200 | vpan | (~vilius@212.117.1.172) (Quit: Leaving.) |
2021-10-08 16:16:52 +0200 | gaff | (~gaff@49.207.207.229) |
2021-10-08 16:17:50 +0200 | <kuribas> | maerwald: https://github.com/flycheck/flycheck-haskell/blob/master/flycheck-haskell.el#L81 |
2021-10-08 16:20:35 +0200 | Sgeo | (~Sgeo@user/sgeo) |
2021-10-08 16:20:45 +0200 | waywardmessiah | (~waywardme@50.225.117.237) |
2021-10-08 16:21:14 +0200 | jtomas | (~jtomas@95.red-88-11-64.dynamicip.rima-tde.net) |
2021-10-08 16:21:40 +0200 | jinsun | (~quassel@user/jinsun) (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.) |
2021-10-08 16:22:17 +0200 | jinsun | (~quassel@user/jinsun) |
2021-10-08 16:22:49 +0200 | ec | (~ec@gateway/tor-sasl/ec) |
2021-10-08 16:26:09 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 245 seconds) |
2021-10-08 16:31:38 +0200 | cfricke | (~cfricke@user/cfricke) (Quit: WeeChat 3.3) |
2021-10-08 16:39:50 +0200 | ocramz_ | (~user@c80-216-51-213.bredband.tele2.se) |
2021-10-08 16:39:51 +0200 | <ocramz_> | ell |
2021-10-08 16:39:55 +0200 | <ocramz_> | o |
2021-10-08 16:40:16 +0200 | <shapr> | hi |
2021-10-08 16:40:17 +0200 | <shapr> | there |
2021-10-08 16:40:32 +0200 | <ocramz_> | any unfortunate souls who have to deal with typesetting code in LaTex ? |
2021-10-08 16:41:15 +0200 | <ocramz_> | I find tweaking 'lstlistings' particularly cumbersome so was wondering whether I can steal some nice defaults from someone |
2021-10-08 16:42:09 +0200 | <ocramz_> | I'm reading https://cs.brynmawr.edu/~rae/papers/2018/stitch/stitch.pdf which has nice keyword highliting |
2021-10-08 16:43:11 +0200 | <ocramz_> | waiting for the PLDI or ICFP gang to show u |
2021-10-08 16:43:27 +0200 | tomsmeding | subscribes to the conversation |
2021-10-08 16:43:44 +0200 | <tomsmeding> | isn't this some kind of agda export though? |
2021-10-08 16:44:50 +0200 | <ocramz_> | no I think the \forall is just a stylistic flair, looks like plain haskell to me |
2021-10-08 16:48:23 +0200 | TDANG | (~TDANG@inet-177-7.ets.org) |
2021-10-08 16:49:10 +0200 | mestre | (~mestre@191.177.175.57) (Quit: Lost terminal) |
2021-10-08 16:49:10 +0200 | MQ-17J | (~MQ-17J@d192-24-122-179.try.wideopenwest.com) (Read error: Connection reset by peer) |
2021-10-08 16:49:41 +0200 | MQ-17J | (~MQ-17J@d192-24-122-179.try.wideopenwest.com) |
2021-10-08 16:50:30 +0200 | gaff | (~gaff@49.207.207.229) (Remote host closed the connection) |
2021-10-08 16:50:34 +0200 | TDANG_ | (~TDANG@2600:1700:13c1:8fe0:681c:2c55:e429:1c47) (Ping timeout: 260 seconds) |
2021-10-08 16:52:05 +0200 | amahl | (~amahl@dsl-jklbng12-54fbca-64.dhcp.inet.fi) |
2021-10-08 16:52:17 +0200 | geekosaur | (~geekosaur@xmonad/geekosaur) (Remote host closed the connection) |
2021-10-08 16:53:29 +0200 | waywardmessiah | (~waywardme@50.225.117.237) () |
2021-10-08 16:53:56 +0200 | geekosaur | (~geekosaur@xmonad/geekosaur) |
2021-10-08 16:54:20 +0200 | wonko | (~wjc@62.115.229.50) |
2021-10-08 16:57:49 +0200 | <tomsmeding> | yeah I know, was referring to the formatting |
2021-10-08 16:58:09 +0200 | <tomsmeding> | this looks like Haskell, but I think this formatting looks very similar to what you see in papers that use agda I think |
2021-10-08 17:00:19 +0200 | baruch | (~spinoza3@c-73-147-19-239.hsd1.va.comcast.net) (Quit: WeeChat 3.4-dev) |
2021-10-08 17:02:08 +0200 | <kuribas> | The problem with LaTeX is that is tries to hide TeX weirdness, but that is impossible. Better to embrace it (plant TeX :) ) |
2021-10-08 17:02:19 +0200 | <kuribas> | (erm plain TeX) |
2021-10-08 17:06:33 +0200 | <amirouche> | plant TeX x') |
2021-10-08 17:08:52 +0200 | slowButPresent | (~slowButPr@user/slowbutpresent) |
2021-10-08 17:09:33 +0200 | <Franciman> | you could try markdown |
2021-10-08 17:09:36 +0200 | <Franciman> | and use pandoc to convert |
2021-10-08 17:09:40 +0200 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) (Read error: Connection reset by peer) |
2021-10-08 17:09:48 +0200 | <Franciman> | it also allows syntax highlighting |
2021-10-08 17:11:40 +0200 | wroathe | (~wroathe@user/wroathe) (Ping timeout: 252 seconds) |
2021-10-08 17:14:12 +0200 | lortabac | (~lortabac@2a01:e0a:541:b8f0:ee1f:1bdf:384a:356) (Quit: WeeChat 2.8) |
2021-10-08 17:17:53 +0200 | geekosaur | (~geekosaur@xmonad/geekosaur) (Remote host closed the connection) |
2021-10-08 17:18:07 +0200 | geekosaur | (~geekosaur@xmonad/geekosaur) |
2021-10-08 17:19:02 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:25a3:7e37:69ba:6dab) |
2021-10-08 17:20:10 +0200 | alzgh | (~alzgh@user/alzgh) |
2021-10-08 17:20:18 +0200 | <monochrom> | ocramz_: I use lstlistings but with \lstset{language={}, basicstyle=\ttfamily}. Henceforth the only tweaking I ever need is basicstyle=\ttfamily\small |
2021-10-08 17:22:55 +0200 | <monochrom> | (That is, until I use that for online exam questions. The generated PDF is such that if a student does a text copy-paste, there are spurrious spaces. I don't know the exact pathway or who's to blame.) |
2021-10-08 17:23:38 +0200 | <monochrom> | (I "fixed" it by using pandoc to generate html for online exams.) |
2021-10-08 17:23:42 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:25a3:7e37:69ba:6dab) (Ping timeout: 260 seconds) |
2021-10-08 17:24:12 +0200 | gaff | (~gaff@49.207.207.229) |
2021-10-08 17:25:36 +0200 | neurocyte0132889 | (~neurocyte@185.238.253.15) |
2021-10-08 17:25:36 +0200 | neurocyte0132889 | (~neurocyte@185.238.253.15) (Changing host) |
2021-10-08 17:25:36 +0200 | neurocyte0132889 | (~neurocyte@user/neurocyte) |
2021-10-08 17:26:16 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:25a3:7e37:69ba:6dab) |
2021-10-08 17:27:02 +0200 | kuribas | (~user@ptr-25vy0i7xa7aijducfsu.18120a2.ip6.access.telenet.be) (Remote host closed the connection) |
2021-10-08 17:27:03 +0200 | zebrag | (~chris@user/zebrag) |
2021-10-08 17:28:43 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
2021-10-08 17:28:43 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host) |
2021-10-08 17:28:43 +0200 | wroathe | (~wroathe@user/wroathe) |
2021-10-08 17:29:29 +0200 | azeem | (~azeem@emp-183-4.eduroam.uu.se) (Ping timeout: 245 seconds) |
2021-10-08 17:30:11 +0200 | jtomas | (~jtomas@95.red-88-11-64.dynamicip.rima-tde.net) (Ping timeout: 250 seconds) |
2021-10-08 17:30:19 +0200 | <absence> | int-e: FYI, that TH problem you tested for me yesterday turned out to be caused by DuplicateRecordFields being enabled for the file that defines the DecsQ. probably a variant of this: https://gitlab.haskell.org/ghc/ghc/-/issues/14848 |
2021-10-08 17:30:52 +0200 | boxscape_ | (~boxscape_@134.171.69.87) (Ping timeout: 252 seconds) |
2021-10-08 17:31:06 +0200 | gaff | (~gaff@49.207.207.229) (Remote host closed the connection) |
2021-10-08 17:31:21 +0200 | gaff | (~gaff@49.207.207.229) |
2021-10-08 17:31:30 +0200 | chele | (~chele@user/chele) (Remote host closed the connection) |
2021-10-08 17:32:08 +0200 | kimjetwav | (~user@2607:fea8:235f:9730:cb0f:f2b8:510e:5110) |
2021-10-08 17:32:49 +0200 | wroathe | (~wroathe@user/wroathe) (Ping timeout: 245 seconds) |
2021-10-08 17:34:20 +0200 | <int-e> | absence: I see, thanks for the update |
2021-10-08 17:34:51 +0200 | <tomsmeding> | monochrom: I guess, but am not sure, that another way to avoid spurious spaces is to put the code in a verbatim environment |
2021-10-08 17:35:29 +0200 | <tomsmeding> | under the assumption that what's going wrong is that lstlisting doesn't actually set that basicstyle for the entire block, only for the keywords themselves, so the spaces in between are in a proportional font and thus too narrow |
2021-10-08 17:36:09 +0200 | ocramz_ | (~user@c80-216-51-213.bredband.tele2.se) (Ping timeout: 245 seconds) |
2021-10-08 17:36:37 +0200 | lbseale | (~lbseale@user/ep1ctetus) |
2021-10-08 17:36:55 +0200 | ocramz_ | (~user@c80-216-51-213.bredband.tele2.se) |
2021-10-08 17:37:05 +0200 | DNH | (~DNH@2a02:8108:1100:16d8:25ec:8a4c:7bf8:2c3a) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2021-10-08 17:37:33 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:25a3:7e37:69ba:6dab) (Remote host closed the connection) |
2021-10-08 17:38:08 +0200 | azeem | (~azeem@2a00:801:429:e0aa:bd65:9227:b4c:ee58) |
2021-10-08 17:45:42 +0200 | zer0bitz | (~zer0bitz@dsl-hkibng31-54fafc-123.dhcp.inet.fi) |
2021-10-08 17:46:00 +0200 | mc47 | (~mc47@xmonad/TheMC47) |
2021-10-08 17:47:03 +0200 | <ocramz_> | Franciman : pandoc is a good idea. Do you know if it supports latex style files ? (.sty) |
2021-10-08 17:47:13 +0200 | <Franciman> | yes |
2021-10-08 17:47:17 +0200 | <Franciman> | but only if it outputs to latex |
2021-10-08 17:47:22 +0200 | <Franciman> | you can add verbatim latex |
2021-10-08 17:47:27 +0200 | <Franciman> | in the preamble |
2021-10-08 17:47:34 +0200 | <Franciman> | and it gets added to the preamble of the output latex |
2021-10-08 17:47:38 +0200 | <Franciman> | wait |
2021-10-08 17:47:41 +0200 | <ocramz_> | that's great, I'll try this route then |
2021-10-08 17:48:08 +0200 | <monochrom> | tomsmeding: Yeah verbatim is reliable, just uncustomizable :) |
2021-10-08 17:48:36 +0200 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:25a3:7e37:69ba:6dab) |
2021-10-08 17:49:13 +0200 | <tomsmeding> | sure :p |
2021-10-08 17:49:42 +0200 | <Franciman> | https://pandoc.org/MANUAL.html#creating-a-pdf this may be helpful |
2021-10-08 17:49:44 +0200 | <Franciman> | and also |
2021-10-08 17:50:00 +0200 | <monochrom> | I enjoy \lstMakeShortInline` so now I just have to say `f x = x + 1` instead of \verb... I forgot the exact \verb syntax for the inline thing. |
2021-10-08 17:51:04 +0200 | <Franciman> | https://pandoc.org/MANUAL.html#variables-for-latex <- this one |
2021-10-08 17:51:09 +0200 | <Franciman> | but really you can put your custom preamble |
2021-10-08 17:51:16 +0200 | <Franciman> | if I can find an example |
2021-10-08 17:51:18 +0200 | <monochrom> | To be sure, I don't need every-thing-customizable, but as said I sometimes need a smaller font size, verbatim is rigid on that. |
2021-10-08 17:51:24 +0200 | mc47 | (~mc47@xmonad/TheMC47) (Quit: Leaving) |
2021-10-08 17:51:42 +0200 | <Franciman> | ocramz_: https://pandoc.org/MANUAL.html#syntax-highlighting <- this is for syntax highlighting |
2021-10-08 17:51:43 +0200 | mc47 | (~mc47@xmonad/TheMC47) |
2021-10-08 17:52:27 +0200 | <monochrom> | On an exam paper for on-site exams, I want some code (part of the question) to be smaller, and some other code (part of the answer space) to be bigger (to match student writing). |
2021-10-08 17:52:47 +0200 | <Franciman> | https://superuser.com/questions/356032/markdown-to-latex-conversion-with-a-custom-preamble-using-p… and this helped me putting thins in the preamble |
2021-10-08 17:53:18 +0200 | <Franciman> | monochrom: does verbatim support colors? |
2021-10-08 17:53:28 +0200 | <Franciman> | i.e. syntax highlighting |
2021-10-08 17:53:31 +0200 | <monochrom> | I think no. I never needed colours. |
2021-10-08 17:53:33 +0200 | <ocramz_> | awesome thanks for the links Franciman |
2021-10-08 17:53:48 +0200 | <monochrom> | Hell, look at my nick, do I look like I appreciate colours? :) |
2021-10-08 17:53:52 +0200 | <Franciman> | ahah |
2021-10-08 17:53:56 +0200 | <Franciman> | np ocramz_ |
2021-10-08 17:54:36 +0200 | <Franciman> | yeah black and white gives better definition to objects in photography, too |
2021-10-08 17:54:42 +0200 | <Franciman> | but color gives emotion |
2021-10-08 17:54:46 +0200 | <geekosaur> | verbatim supports basically nothing |
2021-10-08 17:54:57 +0200 | <geekosaur> | except, well, verbatim text |
2021-10-08 17:55:10 +0200 | <Franciman> | well nice black and white photos give emotions too |
2021-10-08 17:55:40 +0200 | myShoggoth | (~myShoggot@97-120-70-214.ptld.qwest.net) (Ping timeout: 252 seconds) |
2021-10-08 17:56:32 +0200 | <tomsmeding> | monochrom: what about https://mirror.lyrahosting.com/CTAN/macros/latex/contrib/fancyvrb/doc/fancyvrb-doc.pdf ? |
2021-10-08 17:56:56 +0200 | <tomsmeding> | seems to support defining an inline shortcut like your `` thing (\DefineShortVerb) |
2021-10-08 17:57:09 +0200 | <tomsmeding> | and also fontsize :) |
2021-10-08 17:57:15 +0200 | <tomsmeding> | haven't tested copyability though |
2021-10-08 18:00:06 +0200 | <geekosaur> | (verbatim also scares me, I looked at the impl once and the way they detect \end{verbatim} is hacky as all hell even for TeX |
2021-10-08 18:00:08 +0200 | OndejSkup[m] | (~mimivxmat@2001:470:69fc:105::c300) (Quit: You have been kicked for being idle) |
2021-10-08 18:00:19 +0200 | <geekosaur> | ) |
2021-10-08 18:00:19 +0200 | <monochrom> | I haven't tried. But looks like worth trying. |
2021-10-08 18:00:20 +0200 | OndejSkup[m] | (~mimivxmat@2001:470:69fc:105::c300) |
2021-10-08 18:00:21 +0200 | OndejSkup[m] | (~mimivxmat@2001:470:69fc:105::c300) () |
2021-10-08 18:00:36 +0200 | Null_A | (~null_a@2601:645:8700:2290:8de:8d66:958e:46b4) |
2021-10-08 18:01:10 +0200 | Psybur | (~Psybur@mobile-166-170-32-197.mycingular.net) |
2021-10-08 18:01:12 +0200 | <monochrom> | Oh, \end{verbatim} is like The Dark Lord Who Must Not Be Named in programming anyway, so I'm fine with that. :) |
2021-10-08 18:01:39 +0200 | tomsmeding | invents a programming language where "\end{verbatim}" at the start of a line is meaningful and occurs in many programs |
2021-10-08 18:01:48 +0200 | neurocyte0132889 | (~neurocyte@user/neurocyte) (Read error: Connection reset by peer) |
2021-10-08 18:01:59 +0200 | jle` | (~justin@cpe-23-240-75-236.socal.res.rr.com) (Quit: WeeChat 2.7) |
2021-10-08 18:03:01 +0200 | neurocyte0132889 | (~neurocyte@185.238.253.15) |
2021-10-08 18:03:01 +0200 | neurocyte0132889 | (~neurocyte@185.238.253.15) (Changing host) |
2021-10-08 18:03:01 +0200 | neurocyte0132889 | (~neurocyte@user/neurocyte) |
2021-10-08 18:04:46 +0200 | hnOsmium0001 | (uid453710@id-453710.hampstead.irccloud.com) |
2021-10-08 18:05:19 +0200 | econo | (uid147250@user/econo) |
2021-10-08 18:06:55 +0200 | jakalx | (~jakalx@base.jakalx.net) () |
2021-10-08 18:06:58 +0200 | xiongxin | (~quassel@113.116.33.66) (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.) |
2021-10-08 18:10:08 +0200 | jtomas | (~jtomas@95.red-88-11-64.dynamicip.rima-tde.net) |
2021-10-08 18:10:21 +0200 | Null_A | (~null_a@2601:645:8700:2290:8de:8d66:958e:46b4) (Remote host closed the connection) |
2021-10-08 18:10:47 +0200 | Null_A | (~null_a@2601:645:8700:2290:8de:8d66:958e:46b4) |
2021-10-08 18:13:17 +0200 | <gaff> | In GHCi, this compiles: f x = x :: Int, but this doesn't: f x = x :: Num a => a. Any idea why? |
2021-10-08 18:16:17 +0200 | gaff | (~gaff@49.207.207.229) (Quit: Leaving...) |
2021-10-08 18:16:34 +0200 | gaff | (~gaff@49.207.207.229) |
2021-10-08 18:16:49 +0200 | <gaff> | In GHCi, this compiles: f x = x :: Int, but this doesn't: f x = x :: Num a => a. Any idea why? |
2021-10-08 18:17:15 +0200 | <Hecate> | uh |
2021-10-08 18:17:17 +0200 | <Hecate> | no idea |
2021-10-08 18:17:26 +0200 | <Hecate> | but 'f (x :: Num a => a) = x' works with a couple of extensions |
2021-10-08 18:17:54 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
2021-10-08 18:17:54 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host) |
2021-10-08 18:17:54 +0200 | wroathe | (~wroathe@user/wroathe) |
2021-10-08 18:17:57 +0200 | <gaff> | Hecate: ok, what are the extensions? |
2021-10-08 18:18:21 +0200 | <Hecate> | RankNTypes & ScopedTypeVariables |
2021-10-08 18:18:22 +0200 | <tomsmeding> | gaff: not ghci specific, in a file it also doesn't work |
2021-10-08 18:18:38 +0200 | <tomsmeding> | I expect this is due to some kind of impredicativity? |
2021-10-08 18:18:43 +0200 | <Hecate> | tomsmeding: yeah but you're more likely to inline the type signatures in ghci :P |
2021-10-08 18:19:00 +0200 | <gaff> | tomsmeding: yeah, i just tested in GHCi so far. thanks |
2021-10-08 18:19:08 +0200 | <tomsmeding> | > f :: Num a => a -> a ; f x = x |
2021-10-08 18:19:08 +0200 | hololeap | (~hololeap@user/hololeap) |
2021-10-08 18:19:09 +0200 | <lambdabot> | <hint>:1:22: error: parse error on input ‘;’ |
2021-10-08 18:19:15 +0200 | <tomsmeding> | % f :: Num a => a -> a ; f x = x |
2021-10-08 18:19:16 +0200 | <yahb> | tomsmeding: |
2021-10-08 18:19:18 +0200 | <Franciman> | gaff: it does not work because then, f would have type (Num a => a) -> (Num a => a) |
2021-10-08 18:19:20 +0200 | <Franciman> | i think |
2021-10-08 18:19:36 +0200 | <Franciman> | that requires the haskell extensions above mentioned |
2021-10-08 18:19:44 +0200 | <Franciman> | err |
2021-10-08 18:19:52 +0200 | <Franciman> | (forall a. Num a => a) -> (forall a. Num a => a) |
2021-10-08 18:20:07 +0200 | <gaff> | Franciman: actually from the error reported, haskell refuses to infer the type of the argument to `f` |
2021-10-08 18:20:47 +0200 | <tomsmeding> | the error with that rigid type variable p is very much like what happens if you let an existential variable escape |
2021-10-08 18:20:53 +0200 | <Hecate> | % f (x :: Num a => a) = x |
2021-10-08 18:20:54 +0200 | <yahb> | Hecate: |
2021-10-08 18:20:56 +0200 | <Hecate> | boo |
2021-10-08 18:21:03 +0200 | <Hecate> | % :t f (x :: Num a => a) = x |
2021-10-08 18:21:04 +0200 | <yahb> | Hecate: ; <interactive>:1:21: error: parse error on input `=' |
2021-10-08 18:21:09 +0200 | <Hecate> | curse |
2021-10-08 18:21:14 +0200 | <tomsmeding> | % :t f |
2021-10-08 18:21:14 +0200 | <yahb> | tomsmeding: Num a => (Num a => a) -> a |
2021-10-08 18:21:19 +0200 | <tomsmeding> | cool |
2021-10-08 18:21:20 +0200 | <gaff> | Franciman: even with those extensions, `f x = x :: Num a => a` does not work |
2021-10-08 18:22:01 +0200 | <Franciman> | hmm you are right |
2021-10-08 18:23:02 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-10-08 18:23:33 +0200 | gustik | (~gustik@2a01:c844:2411:2d20:922e:5225:fa8f:b211) (Quit: Leaving) |
2021-10-08 18:24:08 +0200 | <gaff> | tomsmeding: what do you mean by "let an existential variable escape"? |
2021-10-08 18:24:14 +0200 | myShoggoth | (~myShoggot@97-120-70-214.ptld.qwest.net) |
2021-10-08 18:24:28 +0200 | <tomsmeding> | % data Thing where MkThing :: a -> Thing |
2021-10-08 18:24:28 +0200 | <yahb> | tomsmeding: |
2021-10-08 18:24:33 +0200 | <Franciman> | gaff: is this something you want to try, or do you need it in a bigger setting? |
2021-10-08 18:24:43 +0200 | <tomsmeding> | oh |
2021-10-08 18:24:49 +0200 | <tomsmeding> | % data Thing where MkThing :: a -> (a -> Int) -> Thing |
2021-10-08 18:24:49 +0200 | <yahb> | tomsmeding: |
2021-10-08 18:25:04 +0200 | <gaff> | Franciman: i just came across it in some code i was looking at |
2021-10-08 18:25:18 +0200 | neurocyte0132889 | (~neurocyte@user/neurocyte) (Ping timeout: 260 seconds) |
2021-10-08 18:25:32 +0200 | <tomsmeding> | % f :: Thing -> Int ; f t = let { (x, f) = case t of MkThing x f -> (x, f) } in f x |
2021-10-08 18:25:32 +0200 | <yahb> | tomsmeding: ; <interactive>:16:68: error:; * Couldn't match expected type `t0' with actual type `a'; because type variable `a' would escape its scope; This (rigid, skolem) type variable is bound by a pattern with constructor: MkThing :: forall a. a -> (a -> Int) -> Thing, in a case alternative at <interactive>:16:52-62; * In the expression: x; In the expression: (x, f); In a case al |
2021-10-08 18:25:35 +0200 | <geekosaur> | actually the problem is that the iunside type signature does not mean the same thing as an outside one, so ghc infers the oiuter type signature and then discovers the inner one conflicts with it |
2021-10-08 18:25:54 +0200 | <Franciman> | ohh |
2021-10-08 18:25:56 +0200 | <tomsmeding> | gaff: this, but actually the error is more explicit about it apparently |
2021-10-08 18:26:03 +0200 | <geekosaur> | re the original question |
2021-10-08 18:26:31 +0200 | <Franciman> | ah geekosaur are you saying that it tries to infer :: forall a. a -> (forall b. Num b => b) |
2021-10-08 18:26:33 +0200 | <Franciman> | ? |
2021-10-08 18:26:55 +0200 | <Franciman> | no wait, I am confused |
2021-10-08 18:27:17 +0200 | <geekosaur> | no, I mean there is a difference between `f :: Num a => a; f = ...` and `f = ... :: Num a => a` |
2021-10-08 18:27:34 +0200 | <tomsmeding> | see also: https://mail.haskell.org/pipermail/haskell-cafe/2021-October/134709.html |
2021-10-08 18:27:43 +0200 | <geekosaur> | the latter does not actually have a type signature as far as ghc is concerned, so it infers one and then breaks because of the given one |
2021-10-08 18:27:55 +0200 | <Franciman> | oh lol |
2021-10-08 18:28:29 +0200 | <geekosaur> | made worse in this case because of the monomorphism restriction, so it infers a monomorphic type for f |
2021-10-08 18:28:37 +0200 | wroathe | (~wroathe@user/wroathe) (Ping timeout: 252 seconds) |
2021-10-08 18:28:39 +0200 | <geekosaur> | (probably Integer) |
2021-10-08 18:28:44 +0200 | <gaff> | geekosaur: yeah, correct. but this compiles with some extensions: `f (x :: Num a => a) =x` |
2021-10-08 18:29:33 +0200 | mei | (~mei@user/mei) (Read error: Connection reset by peer) |
2021-10-08 18:30:05 +0200 | DNH | (~DNH@2a02:8108:1100:16d8:25ec:8a4c:7bf8:2c3a) |
2021-10-08 18:30:47 +0200 | emf | (~emf@162.218.217.186) |
2021-10-08 18:31:07 +0200 | <gaff> | i am not sure why that one compiles |
2021-10-08 18:31:20 +0200 | <gaff> | `f (x :: Num a => a) =x` |
2021-10-08 18:32:33 +0200 | <tomsmeding> | magic |
2021-10-08 18:34:13 +0200 | <gaff> | and of course `f x = x ::: Int` compiles without any extensions whatsoever!! |
2021-10-08 18:34:53 +0200 | <geekosaur> | monomorphism restriction, as I mentioned |
2021-10-08 18:35:01 +0200 | <tomsmeding> | % f x = x ::: Int |
2021-10-08 18:35:01 +0200 | <yahb> | tomsmeding: ; <interactive>:17:9: error: Data constructor not in scope: (:::) :: t -> t0 -> t1; <interactive>:17:13: error:; * Data constructor not in scope: Int; * Perhaps you meant variable `int' (imported from Text.PrettyPrint.HughesPJ) |
2021-10-08 18:35:29 +0200 | <geekosaur> | basically, if you have no parameters it assumes you want it to be computed only once, which requires a monomorphic type |
2021-10-08 18:35:42 +0200 | <hololeap> | with the optics package, how would I apply another optic to the second value of a tuple? |
2021-10-08 18:35:47 +0200 | <geekosaur> | so it infers one unless you have an outer type signature that specifically says otherwise |
2021-10-08 18:35:47 +0200 | <tomsmeding> | geekosaur: s/parameters/type signature/? |
2021-10-08 18:35:56 +0200 | <geekosaur> | f vs. f x |
2021-10-08 18:36:25 +0200 | tomsmeding | doesn't see a binding in this discussion without parameters |
2021-10-08 18:36:39 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
2021-10-08 18:36:39 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host) |
2021-10-08 18:36:39 +0200 | wroathe | (~wroathe@user/wroathe) |
2021-10-08 18:36:46 +0200 | <geekosaur> | I thought the original one used Num a => a |
2021-10-08 18:36:50 +0200 | <hololeap> | I want to create a new lens that leaves the first value of a tuple alone and focuses on the second value |
2021-10-08 18:37:05 +0200 | <geekosaur> | oh, but we've moved on, sorry |
2021-10-08 18:37:19 +0200 | <gaff> | geekosaur: getting rid off parameters is one way to get out of the monomorphic restriction, right? |
2021-10-08 18:37:34 +0200 | <geekosaur> | no, adding them is one way |
2021-10-08 18:37:42 +0200 | <geekosaur> | I misread whatwas going on at this point |
2021-10-08 18:37:46 +0200 | <gaff> | this was the original question -- : In GHCi, this compiles: f x = x :: Int, but this doesn't: f x = x :: Num a => a. Any idea why? |
2021-10-08 18:37:59 +0200 | jakalx | (~jakalx@base.jakalx.net) |
2021-10-08 18:38:19 +0200 | <geekosaur> | my original statement about inferring the outer tyype signature stands |
2021-10-08 18:38:54 +0200 | <geekosaur> | but ghc(i) only infers what is needed, and "what is needed" means use sites, not the actual definition |
2021-10-08 18:39:06 +0200 | <Tisoxin> | is `foldr = foldl . reverse` true? |
2021-10-08 18:39:17 +0200 | <geekosaur> | plus, ghci is a bit strange compared to ghc as it can't see what will be needed, so it makes assumptions ghc does not |
2021-10-08 18:39:22 +0200 | Null_A | (~null_a@2601:645:8700:2290:8de:8d66:958e:46b4) (Remote host closed the connection) |
2021-10-08 18:39:23 +0200 | <gaff> | geekosaur: ok, but in the case of `Int`, ihaskell is able to infer the signature without problems? |
2021-10-08 18:39:32 +0200 | <Tisoxin> | actually nvm |
2021-10-08 18:39:33 +0200 | <monochrom> | Tisoxin: Not for infinite lists. |
2021-10-08 18:39:34 +0200 | <geekosaur> | so it'll assume f :: Integer -> Integer and then break |
2021-10-08 18:39:42 +0200 | emf_ | (~emf@2620:10d:c090:400::5:3586) |
2021-10-08 18:39:49 +0200 | Null_A | (~null_a@2601:645:8700:2290:8de:8d66:958e:46b4) |
2021-10-08 18:40:01 +0200 | <geekosaur> | :t second |
2021-10-08 18:40:02 +0200 | <lambdabot> | Arrow a => a b c -> a (d, b) (d, c) |
2021-10-08 18:40:07 +0200 | <tomsmeding> | Tisoxin: almost ;) |
2021-10-08 18:40:09 +0200 | <geekosaur> | wrong second, I think |
2021-10-08 18:40:25 +0200 | werneta | (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) |
2021-10-08 18:40:30 +0200 | <monochrom> | "f x = x :: a" is not how to express "f :: a -> a" either, in the first place. |
2021-10-08 18:41:16 +0200 | emf | (~emf@162.218.217.186) (Ping timeout: 252 seconds) |
2021-10-08 18:41:24 +0200 | <gaff> | monochrom: correct, i know. but i wanted to know why it does not work. |
2021-10-08 18:41:52 +0200 | CiaoSen | (~Jura@p200300c9571e34002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Ping timeout: 252 seconds) |
2021-10-08 18:42:03 +0200 | <hololeap> | put most simply, I want a lens using the optics package that looks like this: Lens' (a, Identity b) (a, b) |
2021-10-08 18:42:18 +0200 | <monochrom> | The long story involves looking into the actual rules, not "intuition", of type inference. |
2021-10-08 18:42:43 +0200 | <gaff> | monochrom: ok, |
2021-10-08 18:43:02 +0200 | <monochrom> | The short story though, IMO, is: "I want to specify the type of f, therefore I specify the type of something else" is clearly an XY problem. |
2021-10-08 18:43:47 +0200 | <gaff> | monochrom: yeah, got it. it is not my code, by the way. i just came across it while looking at something. |
2021-10-08 18:45:22 +0200 | <tomsmeding> | hololeap: haven't ever used lenses, but is that not something like `over _2`? |
2021-10-08 18:46:41 +0200 | <hololeap> | tomsmeding: basically. but I was looking for something that used combinators of Optics instead of defining it directly with functions. with the optics package, Optics are opaque and I'm wondering if there's a combinator that does this particular thing |
2021-10-08 18:46:57 +0200 | <tomsmeding> | hololeap: ... doesn't what I wrote also work in optics? |
2021-10-08 18:47:10 +0200 | <tomsmeding> | like, Optics exports 'over' and '_2' |
2021-10-08 18:47:22 +0200 | <hololeap> | sort of, but it doesn't compose with other optics |
2021-10-08 18:47:25 +0200 | <tomsmeding> | ah |
2021-10-08 18:47:51 +0200 | <hololeap> | with the lens library, it would |
2021-10-08 18:49:44 +0200 | Null_A | (~null_a@2601:645:8700:2290:8de:8d66:958e:46b4) (Remote host closed the connection) |
2021-10-08 18:50:10 +0200 | Null_A | (~null_a@2601:645:8700:2290:8de:8d66:958e:46b4) |
2021-10-08 18:52:08 +0200 | zero | (~z@user/zero) |
2021-10-08 18:52:52 +0200 | wroathe | (~wroathe@user/wroathe) (Ping timeout: 252 seconds) |
2021-10-08 18:53:42 +0200 | zzz | (~z@user/zero) (Ping timeout: 250 seconds) |
2021-10-08 18:55:00 +0200 | ocramz_ | (~user@c80-216-51-213.bredband.tele2.se) (Ping timeout: 265 seconds) |
2021-10-08 18:57:18 +0200 | <hololeap> | the best I can come up with is something like `lens (second runIdentity) (const (second Identity))`, which makes a composible Lens |
2021-10-08 18:57:25 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds) |
2021-10-08 18:57:52 +0200 | <hololeap> | but, it would be nice to be able to re-use another lens (#runIdentity in this example) |
2021-10-08 19:00:05 +0200 | Null_A | (~null_a@2601:645:8700:2290:8de:8d66:958e:46b4) (Remote host closed the connection) |
2021-10-08 19:00:30 +0200 | Null_A | (~null_a@2601:645:8700:2290:8de:8d66:958e:46b4) |
2021-10-08 19:00:36 +0200 | werneta | (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Remote host closed the connection) |
2021-10-08 19:03:06 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
2021-10-08 19:03:06 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host) |
2021-10-08 19:03:06 +0200 | wroathe | (~wroathe@user/wroathe) |
2021-10-08 19:06:10 +0200 | werneta | (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) |
2021-10-08 19:06:11 +0200 | pretty_dumm_guy | (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) |
2021-10-08 19:08:05 +0200 | ocramz_ | (~user@c80-216-51-213.bredband.tele2.se) |
2021-10-08 19:12:49 +0200 | ocramz_ | (~user@c80-216-51-213.bredband.tele2.se) (Ping timeout: 245 seconds) |
2021-10-08 19:12:50 +0200 | zero | (~z@user/zero) (Read error: Connection reset by peer) |
2021-10-08 19:14:20 +0200 | gaff | (~gaff@49.207.207.229) (Leaving...) |
2021-10-08 19:14:56 +0200 | justsomeguy | (~justsomeg@user/justsomeguy) |
2021-10-08 19:16:43 +0200 | lavaman | (~lavaman@98.38.249.169) |
2021-10-08 19:17:11 +0200 | emf_ | (~emf@2620:10d:c090:400::5:3586) (Ping timeout: 245 seconds) |
2021-10-08 19:21:09 +0200 | lavaman | (~lavaman@98.38.249.169) (Ping timeout: 245 seconds) |
2021-10-08 19:23:02 +0200 | chomwitt | (~chomwitt@94.66.61.137) (Ping timeout: 265 seconds) |
2021-10-08 19:23:07 +0200 | mikoto-chan | (~mikoto-ch@ip-83-134-2-136.dsl.scarlet.be) (Ping timeout: 252 seconds) |
2021-10-08 19:24:00 +0200 | hyiltiz | (~quassel@31.220.5.250) (Ping timeout: 265 seconds) |
2021-10-08 19:25:42 +0200 | hyiltiz | (~quassel@31.220.5.250) |
2021-10-08 19:26:23 +0200 | ocramz_ | (~user@c80-216-51-213.bredband.tele2.se) |
2021-10-08 19:26:28 +0200 | MQ-17J | (~MQ-17J@d192-24-122-179.try.wideopenwest.com) (Read error: Connection reset by peer) |
2021-10-08 19:26:51 +0200 | myShoggoth | (~myShoggot@97-120-70-214.ptld.qwest.net) (Remote host closed the connection) |
2021-10-08 19:27:05 +0200 | MQ-17J | (~MQ-17J@d192-24-122-179.try.wideopenwest.com) |
2021-10-08 19:27:09 +0200 | myShoggoth | (~myShoggot@97-120-70-214.ptld.qwest.net) |
2021-10-08 19:27:23 +0200 | mikoto-chan | (~mikoto-ch@ip-83-134-2-136.dsl.scarlet.be) |
2021-10-08 19:30:19 +0200 | MidAutumnMoon | (~MidAutumn@user/midautumnmoon) (Ping timeout: 245 seconds) |
2021-10-08 19:31:21 +0200 | ocramz_ | (~user@c80-216-51-213.bredband.tele2.se) (Ping timeout: 245 seconds) |
2021-10-08 19:31:50 +0200 | emf | (~emf@163.114.132.6) |
2021-10-08 19:32:23 +0200 | ocramz_ | (~user@c80-216-51-213.bredband.tele2.se) |
2021-10-08 19:34:28 +0200 | oxide | (~lambda@user/oxide) (Read error: Connection reset by peer) |
2021-10-08 19:35:31 +0200 | waleee | (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 245 seconds) |
2021-10-08 19:35:37 +0200 | Hanicef | (~gustaf@81-229-9-108-no92.tbcn.telia.com) |
2021-10-08 19:36:28 +0200 | tzh | (~tzh@c-24-21-73-154.hsd1.wa.comcast.net) |
2021-10-08 19:37:32 +0200 | ocramz_ | (~user@c80-216-51-213.bredband.tele2.se) (Ping timeout: 265 seconds) |
2021-10-08 19:37:39 +0200 | waleee | (~waleee@h-98-128-228-119.NA.cust.bahnhof.se) |
2021-10-08 19:38:12 +0200 | oxide | (~lambda@user/oxide) |
2021-10-08 19:38:19 +0200 | MidAutumnMoon | (~MidAutumn@user/midautumnmoon) |
2021-10-08 19:38:19 +0200 | kmein_ | (~weechat@user/kmein) |
2021-10-08 19:40:19 +0200 | kmein | (~weechat@user/kmein) (Ping timeout: 245 seconds) |
2021-10-08 19:49:31 +0200 | ocramz_ | (~user@c80-216-51-213.bredband.tele2.se) |
2021-10-08 19:50:45 +0200 | chomwitt | (~chomwitt@94.66.61.137) |
2021-10-08 19:51:09 +0200 | hyiltiz | (~quassel@31.220.5.250) (Ping timeout: 245 seconds) |
2021-10-08 19:53:59 +0200 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) |
2021-10-08 19:54:28 +0200 | taeaad_ | (~taeaad@user/taeaad) (Quit: ZNC 1.7.5+deb4 - https://znc.in) |
2021-10-08 19:54:50 +0200 | neurocyte0132889 | (~neurocyte@user/neurocyte) |
2021-10-08 19:55:31 +0200 | myShoggoth | (~myShoggot@97-120-70-214.ptld.qwest.net) (Ping timeout: 252 seconds) |
2021-10-08 19:55:53 +0200 | myShoggoth | (~myShoggot@97-120-70-214.ptld.qwest.net) |
2021-10-08 19:56:08 +0200 | obs\ | (~obscur1ty@156.192.159.45) |
2021-10-08 19:56:08 +0200 | obs\ | (~obscur1ty@156.192.159.45) (Changing host) |
2021-10-08 19:56:08 +0200 | obs\ | (~obscur1ty@user/obs/x-5924898) |
2021-10-08 19:57:00 +0200 | VoidNoir0 | (~VoidNoir0@72.80.203.52) |
2021-10-08 19:57:44 +0200 | <hololeap> | newtype TrivialMap k v = TrivialMap { getTrivialMap :: Maybe v } |
2021-10-08 19:57:51 +0200 | <hololeap> | deriving (Show2, Eq2, Ord2) via Flip (Biff Const Maybe Identity) |
2021-10-08 19:57:56 +0200 | <hololeap> | :D |
2021-10-08 19:58:09 +0200 | jtomas | (~jtomas@95.red-88-11-64.dynamicip.rima-tde.net) (Remote host closed the connection) |
2021-10-08 19:58:32 +0200 | jtomas | (~jtomas@95.red-88-11-64.dynamicip.rima-tde.net) |
2021-10-08 19:58:51 +0200 | hyiltiz | (~quassel@31.220.5.250) |
2021-10-08 19:59:55 +0200 | <monochrom> | Biff. That's a nostalgial name. :) |
2021-10-08 20:01:52 +0200 | stiell | (~stiell@gateway/tor-sasl/stiell) (Remote host closed the connection) |
2021-10-08 20:02:21 +0200 | stiell | (~stiell@gateway/tor-sasl/stiell) |
2021-10-08 20:02:25 +0200 | <hololeap> | % :t Biff |
2021-10-08 20:02:26 +0200 | <yahb> | hololeap: ; <interactive>:1:1: error: Data constructor not in scope: Biff |
2021-10-08 20:08:14 +0200 | ocramz_ | (~user@c80-216-51-213.bredband.tele2.se) (Ping timeout: 245 seconds) |
2021-10-08 20:08:47 +0200 | geekosaur | (~geekosaur@xmonad/geekosaur) (Remote host closed the connection) |
2021-10-08 20:10:36 +0200 | taeaad | (~taeaad@user/taeaad) |
2021-10-08 20:10:37 +0200 | geekosaur | (~geekosaur@xmonad/geekosaur) |
2021-10-08 20:14:08 +0200 | aegon | (~mike@174.127.249.180) |
2021-10-08 20:14:25 +0200 | Gurkenglas | (~Gurkengla@dslb-002-203-144-204.002.203.pools.vodafone-ip.de) (Ping timeout: 265 seconds) |
2021-10-08 20:14:52 +0200 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) (Quit: Laa shay'a waqi'un moutlaq bale kouloun moumkine) |
2021-10-08 20:17:11 +0200 | justsomeguy | (~justsomeg@user/justsomeguy) (Ping timeout: 245 seconds) |
2021-10-08 20:17:46 +0200 | Null_A | (~null_a@2601:645:8700:2290:8de:8d66:958e:46b4) (Ping timeout: 260 seconds) |
2021-10-08 20:17:52 +0200 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) |
2021-10-08 20:21:22 +0200 | ocramz_ | (~user@c80-216-51-213.bredband.tele2.se) |
2021-10-08 20:21:33 +0200 | mc47 | (~mc47@xmonad/TheMC47) (Remote host closed the connection) |
2021-10-08 20:23:01 +0200 | hyiltiz | (~quassel@31.220.5.250) (Ping timeout: 245 seconds) |
2021-10-08 20:25:56 +0200 | ocramz_ | (~user@c80-216-51-213.bredband.tele2.se) (Ping timeout: 245 seconds) |
2021-10-08 20:26:03 +0200 | justsomeguy | (~justsomeg@user/justsomeguy) |
2021-10-08 20:26:21 +0200 | stiell | (~stiell@gateway/tor-sasl/stiell) (Remote host closed the connection) |
2021-10-08 20:26:28 +0200 | Gurkenglas | (~Gurkengla@dslb-002-203-144-204.002.203.pools.vodafone-ip.de) |
2021-10-08 20:26:44 +0200 | stiell | (~stiell@gateway/tor-sasl/stiell) |
2021-10-08 20:27:35 +0200 | max22- | (~maxime@2a01cb088335980097eb09a47970d526.ipv6.abo.wanadoo.fr) (Ping timeout: 260 seconds) |
2021-10-08 20:27:58 +0200 | Hanicef | (~gustaf@81-229-9-108-no92.tbcn.telia.com) (Quit: leaving) |
2021-10-08 20:31:52 +0200 | jtomas | (~jtomas@95.red-88-11-64.dynamicip.rima-tde.net) (Ping timeout: 252 seconds) |
2021-10-08 20:33:04 +0200 | DNH | (~DNH@2a02:8108:1100:16d8:25ec:8a4c:7bf8:2c3a) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2021-10-08 20:34:54 +0200 | wroathe | (~wroathe@user/wroathe) (Ping timeout: 245 seconds) |
2021-10-08 20:36:59 +0200 | alx741 | (~alx741@181.196.68.60) (Ping timeout: 245 seconds) |
2021-10-08 20:37:01 +0200 | bontaq | (~user@ool-45779fe5.dyn.optonline.net) |
2021-10-08 20:37:46 +0200 | dyeplexer | (~dyeplexer@user/dyeplexer) (Remote host closed the connection) |
2021-10-08 20:38:31 +0200 | ocramz_ | (~user@c80-216-51-213.bredband.tele2.se) |
2021-10-08 20:41:24 +0200 | thyriaen | (~thyriaen@dynamic-077-013-083-201.77.13.pool.telefonica.de) (Remote host closed the connection) |
2021-10-08 20:45:47 +0200 | justsomeguy | (~justsomeg@user/justsomeguy) (Quit: WeeChat 3.2) |
2021-10-08 20:47:49 +0200 | wonko | (~wjc@62.115.229.50) (Ping timeout: 252 seconds) |
2021-10-08 20:48:11 +0200 | Null_A | (~null_a@2601:645:8700:2290:14d:2889:1082:cd2c) |
2021-10-08 20:48:45 +0200 | jtomas | (~jtomas@95.red-88-11-64.dynamicip.rima-tde.net) |
2021-10-08 20:49:15 +0200 | wonko | (~wjc@62.115.229.50) |
2021-10-08 20:49:49 +0200 | alx741 | (~alx741@181.196.68.60) |
2021-10-08 20:51:39 +0200 | Tuplanolla | (~Tuplanoll@91-159-69-50.elisa-laajakaista.fi) |
2021-10-08 20:51:47 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
2021-10-08 20:51:47 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host) |
2021-10-08 20:51:47 +0200 | wroathe | (~wroathe@user/wroathe) |
2021-10-08 20:52:49 +0200 | hyiltiz | (~quassel@31.220.5.250) |
2021-10-08 20:53:24 +0200 | azimut | (~azimut@gateway/tor-sasl/azimut) (Ping timeout: 276 seconds) |
2021-10-08 20:53:26 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-10-08 20:53:27 +0200 | decio38 | (~decio@2001:8a0:6a6e:400:bea9:acb4:9307:4374) |
2021-10-08 20:54:11 +0200 | decio38 | (~decio@2001:8a0:6a6e:400:bea9:acb4:9307:4374) () |
2021-10-08 20:54:11 +0200 | azimut | (~azimut@gateway/tor-sasl/azimut) |
2021-10-08 20:54:45 +0200 | decio | (~decio@2001:8a0:6a6e:400:bea9:acb4:9307:4374) |
2021-10-08 20:56:21 +0200 | wroathe | (~wroathe@user/wroathe) (Ping timeout: 245 seconds) |
2021-10-08 20:56:49 +0200 | max22- | (~maxime@2a01cb0883359800e541236a3ab6432d.ipv6.abo.wanadoo.fr) |
2021-10-08 20:57:40 +0200 | ocramz_ | (~user@c80-216-51-213.bredband.tele2.se) (Ping timeout: 252 seconds) |
2021-10-08 20:58:04 +0200 | _ht | (~quassel@82-169-194-8.biz.kpn.net) (Remote host closed the connection) |
2021-10-08 20:58:25 +0200 | echoone | (~echoone@2a02:8109:a1c0:5d05:a571:daab:d921:339e) |
2021-10-08 20:59:15 +0200 | ocramz_ | (~user@c80-216-51-213.bredband.tele2.se) |
2021-10-08 21:00:06 +0200 | werneta | (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Remote host closed the connection) |
2021-10-08 21:02:29 +0200 | vicfred | (~vicfred@user/vicfred) |
2021-10-08 21:04:23 +0200 | stiell | (~stiell@gateway/tor-sasl/stiell) (Remote host closed the connection) |
2021-10-08 21:04:45 +0200 | stiell | (~stiell@gateway/tor-sasl/stiell) |
2021-10-08 21:04:58 +0200 | _xor | (~xor@72.49.199.147) (Read error: Connection reset by peer) |
2021-10-08 21:05:31 +0200 | rtjure | (~rtjure@bras-79-132-17-74.comnet.bg) (Ping timeout: 245 seconds) |
2021-10-08 21:05:37 +0200 | <ocramz_> | % :t Just |
2021-10-08 21:05:38 +0200 | <yahb> | ocramz_: a -> Maybe a |
2021-10-08 21:05:45 +0200 | <ocramz_> | nice |
2021-10-08 21:05:58 +0200 | <ocramz_> | is this the new lambdabot ? |
2021-10-08 21:06:15 +0200 | <geekosaur> | not really new, just different |
2021-10-08 21:06:25 +0200 | <geekosaur> | it's an actual ghci, for one |
2021-10-08 21:06:42 +0200 | <geekosaur> | has a different set of packages loaded, can do limited I/O, etc. |
2021-10-08 21:07:04 +0200 | <ocramz_> | very handy |
2021-10-08 21:09:03 +0200 | _xor | (~xor@72.49.199.147) |
2021-10-08 21:09:31 +0200 | <ocramz_> | % :t fix |
2021-10-08 21:09:31 +0200 | <yahb> | ocramz_: (a -> a) -> a |
2021-10-08 21:09:37 +0200 | <ocramz_> | % fix error |
2021-10-08 21:09:42 +0200 | <ocramz_> | ayy |
2021-10-08 21:09:42 +0200 | <yahb> | ocramz_: "*** Exception: *** Exception: *** Exception: *** Exception: *** Exception: *** Exception: *** Exception: *** Exception: *** Exception: *** Exception: *** Exception: *** Exception: *** Exception: *** Exception: *** Exception: *** Exception: *** Exception: *** Exception: *** Exception: *** Exception: *** Exception: *** Exception: *** Exception: *** Exception: *** Exception: *** Exception: *** Excep |
2021-10-08 21:09:58 +0200 | <ocramz_> | veri gud |
2021-10-08 21:10:08 +0200 | <Hecate> | :% :t fix . error |
2021-10-08 21:10:11 +0200 | <Hecate> | damn |
2021-10-08 21:10:14 +0200 | <Hecate> | % :t fix . error |
2021-10-08 21:10:14 +0200 | <yahb> | Hecate: [Char] -> c |
2021-10-08 21:10:18 +0200 | <Hecate> | beautiful |
2021-10-08 21:11:33 +0200 | zero | (~z@user/zero) |
2021-10-08 21:12:15 +0200 | chexum | (~quassel@gateway/tor-sasl/chexum) (Ping timeout: 276 seconds) |
2021-10-08 21:12:55 +0200 | decio | (~decio@2001:8a0:6a6e:400:bea9:acb4:9307:4374) (Quit: because) |
2021-10-08 21:13:04 +0200 | chexum | (~quassel@gateway/tor-sasl/chexum) |
2021-10-08 21:15:32 +0200 | <ocramz_> | monochrom : I might have found out why lstlistings adds extra space in rendered Latex; try adding 'columns=flexible' in the lstset dictionary |
2021-10-08 21:16:08 +0200 | w-spc-gir | (~w-spc-gir@2601:646:9c00:594c:bc3a:4a61:1dc8:3137) |
2021-10-08 21:17:57 +0200 | DNH | (~DNH@2a02:8108:1100:16d8:25ec:8a4c:7bf8:2c3a) |
2021-10-08 21:18:43 +0200 | biberu | (~biberu@user/biberu) (Read error: Connection reset by peer) |
2021-10-08 21:19:03 +0200 | biberu | (~biberu@user/biberu) |
2021-10-08 21:19:08 +0200 | w-spc-gir | (~w-spc-gir@2601:646:9c00:594c:bc3a:4a61:1dc8:3137) (Read error: Connection reset by peer) |
2021-10-08 21:20:28 +0200 | w-spc-gir | (~w-spc-gir@2600:380:4726:be29:5ddc:ae64:ed97:ac37) |
2021-10-08 21:21:18 +0200 | bdaed | (~bdaed@185.234.208.208.r.toneticgroup.pl) |
2021-10-08 21:22:23 +0200 | ru0mad | (~ru0mad@82-64-17-144.subs.proxad.net) |
2021-10-08 21:23:01 +0200 | jtomas | (~jtomas@95.red-88-11-64.dynamicip.rima-tde.net) (Ping timeout: 252 seconds) |
2021-10-08 21:25:06 +0200 | w-spc-gir | (~w-spc-gir@2600:380:4726:be29:5ddc:ae64:ed97:ac37) (Read error: Connection reset by peer) |
2021-10-08 21:28:08 +0200 | <lbseale> | I'd like to be able to run a process that prints colored text to std out, but save that text and maybe print it out later with colors |
2021-10-08 21:28:13 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds) |
2021-10-08 21:28:48 +0200 | <lbseale> | I've gotten as far as running `createProcess` with CreatePipe, using hGetContents to get the stdOut, but it doesn't have the colors |
2021-10-08 21:28:53 +0200 | <geekosaur> | easiest way to do that is bespoke output functions that both print and save |
2021-10-08 21:29:10 +0200 | <geekosaur> | oh, I see |
2021-10-08 21:29:18 +0200 | <awpr> | most CLI programs detect whether the output is a terminal to decide whether to use color by default |
2021-10-08 21:29:31 +0200 | <geekosaur> | if the program checks to see if output is a tty thyen you need to use a pty instead of sa pipe |
2021-10-08 21:29:33 +0200 | <awpr> | usually you have to pass a flag like `--color=always` to override it |
2021-10-08 21:29:50 +0200 | <lbseale> | ah ok |
2021-10-08 21:29:57 +0200 | <geekosaur> | there are some primitive pty functions in System.Process if you do need to do this |
2021-10-08 21:30:14 +0200 | <geekosaur> | (note that you will lose portability to Windows) |
2021-10-08 21:30:22 +0200 | <lbseale> | I'm ok with that |
2021-10-08 21:30:26 +0200 | <awpr> | ah that's an interesting trick. flag would be easier if it exists, but if not, you might have to do that |
2021-10-08 21:30:48 +0200 | w-spc-gir | (~w-spc-gir@2600:380:4726:be29:5ddc:ae64:ed97:ac37) |
2021-10-08 21:30:51 +0200 | <geekosaur> | hm, maybe they're in System.Posix.Process |
2021-10-08 21:30:52 +0200 | w-spc-gir | (~w-spc-gir@2600:380:4726:be29:5ddc:ae64:ed97:ac37) (Read error: Connection reset by peer) |
2021-10-08 21:31:09 +0200 | <monochrom> | Yeah pty is a unix thing. |
2021-10-08 21:31:12 +0200 | <awpr> | (I've never personally noticed a program that wouldn't let you force-enable color on a non-tty) |
2021-10-08 21:31:38 +0200 | <lbseale> | yeah it has a --color=always option, and that worked! Thanks much |
2021-10-08 21:33:10 +0200 | <monochrom> | And then System.Posix.Process goes on to use the BSD style. |
2021-10-08 21:33:25 +0200 | cheater | (~Username@user/cheater) (Ping timeout: 252 seconds) |
2021-10-08 21:33:25 +0200 | kawpuh | (~kawpuh@66.42.81.80) (Read error: Connection reset by peer) |
2021-10-08 21:33:37 +0200 | kawpuh | (~kawpuh@66.42.81.80) |
2021-10-08 21:33:47 +0200 | cheater | (~Username@user/cheater) |
2021-10-08 21:36:29 +0200 | jtomas | (~jtomas@95.red-88-11-64.dynamicip.rima-tde.net) |
2021-10-08 21:37:29 +0200 | w-spc-gir | (~w-spc-gir@2600:380:4726:be29:5ddc:ae64:ed97:ac37) |
2021-10-08 21:38:14 +0200 | w-spc-gir | (~w-spc-gir@2600:380:4726:be29:5ddc:ae64:ed97:ac37) (Read error: Connection reset by peer) |
2021-10-08 21:38:29 +0200 | <monochrom> | ocramz_: Nice find. Thanks. |
2021-10-08 21:39:29 +0200 | mikoto-chan | (~mikoto-ch@ip-83-134-2-136.dsl.scarlet.be) (Ping timeout: 245 seconds) |
2021-10-08 21:41:11 +0200 | w-spc-gir | (~w-spc-gir@2600:380:4726:be29:5ddc:ae64:ed97:ac37) |
2021-10-08 21:41:14 +0200 | w-spc-gir | (~w-spc-gir@2600:380:4726:be29:5ddc:ae64:ed97:ac37) (Read error: Connection reset by peer) |
2021-10-08 21:43:06 +0200 | wrengr_away | wrengr |
2021-10-08 21:45:40 +0200 | mjrosenb | (~mjrosenb@pool-108-54-97-96.nycmny.fios.verizon.net) (Ping timeout: 252 seconds) |
2021-10-08 21:56:32 +0200 | w-spc-gir | (~w-spc-gir@2600:380:4726:be29:5ddc:ae64:ed97:ac37) |
2021-10-08 21:56:33 +0200 | w-spc-gir | (~w-spc-gir@2600:380:4726:be29:5ddc:ae64:ed97:ac37) (Read error: Connection reset by peer) |
2021-10-08 21:57:09 +0200 | acidjnk_new3 | (~acidjnk@p200300d0c703cb3809607f7c8c1f0b15.dip0.t-ipconnect.de) |
2021-10-08 21:57:58 +0200 | jumper149 | (~jumper149@80.240.31.34) |
2021-10-08 21:58:11 +0200 | slowButPresent | (~slowButPr@user/slowbutpresent) (Ping timeout: 265 seconds) |
2021-10-08 21:59:13 +0200 | alzgh | (~alzgh@user/alzgh) (Remote host closed the connection) |
2021-10-08 21:59:32 +0200 | alzgh | (~alzgh@user/alzgh) |
2021-10-08 21:59:35 +0200 | slowButPresent | (~slowButPr@user/slowbutpresent) |
2021-10-08 22:05:19 +0200 | juhp | (~juhp@128.106.188.220) (Ping timeout: 245 seconds) |
2021-10-08 22:07:14 +0200 | DNH | (~DNH@2a02:8108:1100:16d8:25ec:8a4c:7bf8:2c3a) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2021-10-08 22:08:04 +0200 | w-spc-gir | (~w-spc-gir@2600:380:4726:be29:5ddc:ae64:ed97:ac37) |
2021-10-08 22:08:25 +0200 | juhp | (~juhp@128.106.188.220) |
2021-10-08 22:09:29 +0200 | w-spc-gir | (~w-spc-gir@2600:380:4726:be29:5ddc:ae64:ed97:ac37) (Read error: Connection reset by peer) |
2021-10-08 22:10:26 +0200 | w-spc-gir | (~w-spc-gir@2600:380:4726:be29:5ddc:ae64:ed97:ac37) |
2021-10-08 22:10:30 +0200 | tfeb | (~tfb@88.98.95.237) |
2021-10-08 22:10:52 +0200 | DNH | (~DNH@2a02:8108:1100:16d8:25ec:8a4c:7bf8:2c3a) |
2021-10-08 22:11:34 +0200 | oxide | (~lambda@user/oxide) (Ping timeout: 245 seconds) |
2021-10-08 22:11:46 +0200 | w-spc-gir | (~w-spc-gir@2600:380:4726:be29:5ddc:ae64:ed97:ac37) (Remote host closed the connection) |
2021-10-08 22:11:59 +0200 | w-spc-gir | (~w-spc-gir@2600:380:4726:be29:5ddc:ae64:ed97:ac37) |
2021-10-08 22:12:13 +0200 | mjrosenb | (~mjrosenb@pool-108-54-97-96.nycmny.fios.verizon.net) |
2021-10-08 22:13:34 +0200 | w-spc-gir | (~w-spc-gir@2600:380:4726:be29:5ddc:ae64:ed97:ac37) (Read error: Connection reset by peer) |
2021-10-08 22:15:39 +0200 | wootehfoot | (~wootehfoo@user/wootehfoot) |
2021-10-08 22:19:11 +0200 | w-spc-gir | (~w-spc-gir@2600:380:4726:be29:5ddc:ae64:ed97:ac37) |
2021-10-08 22:19:18 +0200 | rtjure | (~rtjure@bras-79-132-17-74.comnet.bg) |
2021-10-08 22:19:20 +0200 | w-spc-gir | (~w-spc-gir@2600:380:4726:be29:5ddc:ae64:ed97:ac37) (Read error: Connection reset by peer) |
2021-10-08 22:21:38 +0200 | tfeb | (~tfb@88.98.95.237) (Quit: died) |
2021-10-08 22:25:39 +0200 | hgolden | (~hgolden2@cpe-172-114-81-123.socal.res.rr.com) |
2021-10-08 22:27:49 +0200 | w-spc-gir | (~w-spc-gir@2600:380:4726:be29:5ddc:ae64:ed97:ac37) |
2021-10-08 22:28:13 +0200 | emf | (~emf@163.114.132.6) (Quit: emf) |
2021-10-08 22:28:31 +0200 | emf | (~emf@2620:10d:c090:400::5:3586) |
2021-10-08 22:31:11 +0200 | justsomeguy | (~justsomeg@user/justsomeguy) |
2021-10-08 22:32:59 +0200 | coffee7 | (~a@p200300ef971a6853e4ca7f30fbe64496.dip0.t-ipconnect.de) |
2021-10-08 22:33:22 +0200 | myShoggoth | (~myShoggot@97-120-70-214.ptld.qwest.net) (Ping timeout: 252 seconds) |
2021-10-08 22:35:42 +0200 | w-spc-gir | (~w-spc-gir@2600:380:4726:be29:5ddc:ae64:ed97:ac37) (Read error: Connection reset by peer) |
2021-10-08 22:36:59 +0200 | hyiltiz | (~quassel@31.220.5.250) (Ping timeout: 245 seconds) |
2021-10-08 22:37:45 +0200 | <coffee7> | I'm looking for a beginner friendly library for plotting math functions. There are several in hackage but maybe a hint from the people who have already used them? Thank you. |
2021-10-08 22:38:15 +0200 | sprout_ | (~quassel@2a02:a467:ccd6:1:9093:865d:793c:93e8) (Ping timeout: 260 seconds) |
2021-10-08 22:38:39 +0200 | waleee | (~waleee@h-98-128-228-119.NA.cust.bahnhof.se) (Ping timeout: 245 seconds) |
2021-10-08 22:39:23 +0200 | justsomeguy | (~justsomeg@user/justsomeguy) (Quit: WeeChat 3.2) |
2021-10-08 22:40:15 +0200 | oxide | (~lambda@user/oxide) |
2021-10-08 22:41:56 +0200 | w-spc-gir | (~w-spc-gir@2600:380:4726:be29:5ddc:ae64:ed97:ac37) |
2021-10-08 22:42:14 +0200 | w-spc-gir | (~w-spc-gir@2600:380:4726:be29:5ddc:ae64:ed97:ac37) (Read error: Connection reset by peer) |
2021-10-08 22:43:46 +0200 | hyiltiz | (~quassel@31.220.5.250) |
2021-10-08 22:50:12 +0200 | <Franciman> | coffee7: Hi, what output would you like? |
2021-10-08 22:50:16 +0200 | waleee | (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) |
2021-10-08 22:50:18 +0200 | <Franciman> | plot on a pdf file maybe? |
2021-10-08 22:50:22 +0200 | <Franciman> | or in a GUI? |
2021-10-08 22:50:40 +0200 | Cajun | (~Cajun@user/cajun) |
2021-10-08 22:52:04 +0200 | myShoggoth | (~myShoggot@97-120-70-214.ptld.qwest.net) |
2021-10-08 22:53:57 +0200 | <coffee7> | It doesn't really matter. It's only for me. A simple jpg output is fine. |
2021-10-08 22:55:48 +0200 | <coffee7> | easy to use and get started quickly is the most important thing. I was looking at easyplot. |
2021-10-08 22:57:31 +0200 | Null_A | (~null_a@2601:645:8700:2290:14d:2889:1082:cd2c) (Remote host closed the connection) |
2021-10-08 23:02:27 +0200 | Null_A | (~null_a@2601:645:8700:2290:14d:2889:1082:cd2c) |
2021-10-08 23:04:40 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
2021-10-08 23:04:40 +0200 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host) |
2021-10-08 23:04:40 +0200 | wroathe | (~wroathe@user/wroathe) |
2021-10-08 23:04:53 +0200 | echoone | (~echoone@2a02:8109:a1c0:5d05:a571:daab:d921:339e) (Quit: Client closed) |
2021-10-08 23:07:41 +0200 | w-spc-gir | (~w-spc-gir@2600:380:4726:be29:5ddc:ae64:ed97:ac37) |
2021-10-08 23:08:26 +0200 | a6a45081-2b83 | (~aditya@2601:249:4300:1296:88ec:cc73:84d4:1507) |
2021-10-08 23:10:38 +0200 | <a6a45081-2b83> | I'm trying to use ghci to debug a program, but I am confused by the binding scopes. I am inside a do block which is on the RHS of a case statement value. How can I access the value itself? |
2021-10-08 23:11:00 +0200 | w-spc-gir | (~w-spc-gir@2600:380:4726:be29:5ddc:ae64:ed97:ac37) (Read error: Connection reset by peer) |
2021-10-08 23:11:14 +0200 | <a6a45081-2b83> | e.g. `case ex of A a -> ...; B b -> do {.... <I am here> }` I want to get the value of b. |
2021-10-08 23:11:42 +0200 | pavonia | (~user@user/siracusa) |
2021-10-08 23:12:00 +0200 | <geekosaur> | b should be in scope there unless your indentation is heinously off |
2021-10-08 23:12:09 +0200 | <geekosaur> | and then I'd expect a compile error |
2021-10-08 23:12:30 +0200 | <geekosaur> | @where paste |
2021-10-08 23:12:30 +0200 | <lambdabot> | Help us help you: please paste full code, input and/or output at e.g. https://paste.tomsmeding.com |
2021-10-08 23:13:06 +0200 | <monochrom> | The question is very unclear because we are not told what steps you have carried out to even warrant this b to exist in the first place. |
2021-10-08 23:13:13 +0200 | alzgh | (~alzgh@user/alzgh) (Remote host closed the connection) |
2021-10-08 23:13:32 +0200 | alzgh | (~alzgh@user/alzgh) |
2021-10-08 23:13:35 +0200 | Maxdamantus | (~Maxdamant@user/maxdamantus) (Ping timeout: 265 seconds) |
2021-10-08 23:13:43 +0200 | <a6a45081-2b83> | let me share the code snippet to be more clear. |
2021-10-08 23:14:06 +0200 | Maxdamantus | (~Maxdamant@user/maxdamantus) |
2021-10-08 23:15:03 +0200 | takuan | (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection) |
2021-10-08 23:16:11 +0200 | <a6a45081-2b83> | here it is: https://paste.tomsmeding.com/kIWKwryY |
2021-10-08 23:16:57 +0200 | <monochrom> | Uh which line is so-called "584"? |
2021-10-08 23:17:24 +0200 | <a6a45081-2b83> | `584: (s4, rhs_ty_gen) <- generalize venv' s3 bound_tyvars drvd_rhs_ty'` |
2021-10-08 23:17:56 +0200 | <monochrom> | Uh who is "b"? |
2021-10-08 23:18:34 +0200 | <a6a45081-2b83> | b is `LetE (v, [], gvn_rhs_ty, rhs) bod`, more specifically I want the value of v and bod |
2021-10-08 23:19:24 +0200 | <monochrom> | And you are saying ":print v" gives you what? |
2021-10-08 23:19:41 +0200 | <a6a45081-2b83> | `<interactive>:1:1: error: Not in scope: ‘v’` |
2021-10-08 23:20:01 +0200 | Lord_of_Life_ | (~Lord@user/lord-of-life/x-2819915) |
2021-10-08 23:20:42 +0200 | <monochrom> | How about, for example, ":print s3", to guard against confirmation bias? |
2021-10-08 23:20:56 +0200 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 245 seconds) |
2021-10-08 23:21:41 +0200 | <a6a45081-2b83> | `s3 = (_t2::Gibbon.L0.Typecheck.Subst)` |
2021-10-08 23:21:55 +0200 | <a6a45081-2b83> | I tried using `:force s3` and that works too |
2021-10-08 23:22:02 +0200 | <a6a45081-2b83> | I get some nested value |
2021-10-08 23:22:29 +0200 | <lbseale> | it's because s3 is in the scope of the exact line you're breaking on, but v is not |
2021-10-08 23:22:47 +0200 | Lord_of_Life_ | Lord_of_Life |
2021-10-08 23:22:47 +0200 | <lbseale> | you want to break on the line that starts with `Let E ...` |
2021-10-08 23:23:39 +0200 | bdaed | (~bdaed@185.234.208.208.r.toneticgroup.pl) (Ping timeout: 245 seconds) |
2021-10-08 23:24:02 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-10-08 23:24:47 +0200 | geekosaur | (~geekosaur@xmonad/geekosaur) (Remote host closed the connection) |
2021-10-08 23:25:06 +0200 | geekosaur | (~geekosaur@xmonad/geekosaur) |
2021-10-08 23:25:31 +0200 | wonko | (~wjc@62.115.229.50) (Ping timeout: 245 seconds) |
2021-10-08 23:25:47 +0200 | w-spc-gir | (~w-spc-gir@2600:380:4726:be29:5ddc:ae64:ed97:ac37) |
2021-10-08 23:26:13 +0200 | wonko | (~wjc@62.115.229.50) |
2021-10-08 23:26:36 +0200 | <a6a45081-2b83> | one more thing, is there a way to put conditional breakpoints, from the reference it doesn't seem like |
2021-10-08 23:26:50 +0200 | w-spc-gir | (~w-spc-gir@2600:380:4726:be29:5ddc:ae64:ed97:ac37) (Read error: Connection reset by peer) |
2021-10-08 23:27:13 +0200 | <monochrom> | Oh haha "We originally provided bindings for all variables in scope, rather than just the free variables of the expression, but found that this affected performance considerably, hence the current restriction to just the free variables." |
2021-10-08 23:29:34 +0200 | ss4 | (~wootehfoo@user/wootehfoot) |
2021-10-08 23:30:38 +0200 | <Franciman> | coffee7: I liked these ones: https://hackage.haskell.org/package/gnuplot https://hackage.haskell.org/package/dynamic-plot-0.4.1.0/docs/Graphics-Dynamic-Plot-R2.html |
2021-10-08 23:30:43 +0200 | <Franciman> | and easy plot |
2021-10-08 23:30:51 +0200 | bdaed | (~bdaed@185.234.208.208.r.toneticgroup.pl) |
2021-10-08 23:30:56 +0200 | emf | (~emf@2620:10d:c090:400::5:3586) (Ping timeout: 245 seconds) |
2021-10-08 23:31:21 +0200 | wootehfoot | (~wootehfoo@user/wootehfoot) (Ping timeout: 245 seconds) |
2021-10-08 23:31:49 +0200 | emf | (~emf@2620:10d:c090:400::5:3586) |
2021-10-08 23:33:55 +0200 | jtomas | (~jtomas@95.red-88-11-64.dynamicip.rima-tde.net) (Ping timeout: 252 seconds) |
2021-10-08 23:36:28 +0200 | Pickchea | (~private@user/pickchea) |
2021-10-08 23:36:47 +0200 | wonko | (~wjc@62.115.229.50) (Ping timeout: 265 seconds) |
2021-10-08 23:36:48 +0200 | <a6a45081-2b83> | this makes me a little annoyed that they removed it :( |
2021-10-08 23:39:54 +0200 | Gurkenglas | (~Gurkengla@dslb-002-203-144-204.002.203.pools.vodafone-ip.de) (Ping timeout: 245 seconds) |
2021-10-08 23:41:32 +0200 | p3n | (~p3n@217.198.124.246) (Quit: ZNC 1.8.2 - https://znc.in) |
2021-10-08 23:41:39 +0200 | tabaqui | (~root@46.39.45.162) |
2021-10-08 23:42:04 +0200 | w-spc-gir | (~w-spc-gir@2600:380:4726:be29:5ddc:ae64:ed97:ac37) |
2021-10-08 23:43:09 +0200 | w-spc-gir | (~w-spc-gir@2600:380:4726:be29:5ddc:ae64:ed97:ac37) (Read error: Connection reset by peer) |
2021-10-08 23:46:00 +0200 | alzgh | (~alzgh@user/alzgh) (Remote host closed the connection) |
2021-10-08 23:46:03 +0200 | barzo | (~barzo@31.177.222.75) (Remote host closed the connection) |
2021-10-08 23:46:04 +0200 | p3n | (~p3n@2a00:19a0:3:7c:0:d9c6:7cf6:1) |
2021-10-08 23:46:19 +0200 | alzgh | (~alzgh@user/alzgh) |
2021-10-08 23:46:57 +0200 | barzo | (~barzo@31.177.222.75) |
2021-10-08 23:46:58 +0200 | rtjure | (~rtjure@bras-79-132-17-74.comnet.bg) (Quit: Leaving) |
2021-10-08 23:47:05 +0200 | barzo | (~barzo@31.177.222.75) () |
2021-10-08 23:48:01 +0200 | sugar | (~sugar@bras-base-hmtnon1497w-grc-21-70-26-153-130.dsl.bell.ca) (Quit: Client closed) |
2021-10-08 23:49:00 +0200 | fendor | (~fendor@178.115.75.223.wireless.dyn.drei.com) (Remote host closed the connection) |
2021-10-08 23:49:02 +0200 | libertyprime | (~libertypr@118.149.75.78) |
2021-10-08 23:49:20 +0200 | <coffee7> | Franciman: will try easy plot. Thanks for your opinion. |
2021-10-08 23:49:25 +0200 | jumper149 | (~jumper149@80.240.31.34) (Quit: WeeChat 3.2.1) |
2021-10-08 23:49:50 +0200 | <Franciman> | hey, no prob. good luck! |
2021-10-08 23:52:10 +0200 | ocramz_ | (~user@c80-216-51-213.bredband.tele2.se) (Remote host closed the connection) |
2021-10-08 23:52:23 +0200 | ocramz_ | (~user@c80-216-51-213.bredband.tele2.se) |
2021-10-08 23:54:31 +0200 | doyougnu | (~user@c-73-25-202-122.hsd1.or.comcast.net) (Remote host closed the connection) |
2021-10-08 23:56:58 +0200 | ocramz_ | (~user@c80-216-51-213.bredband.tele2.se) (Ping timeout: 252 seconds) |
2021-10-08 23:57:26 +0200 | bdaed | (~bdaed@185.234.208.208.r.toneticgroup.pl) (Quit: Lost terminal) |
2021-10-08 23:58:32 +0200 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds) |
2021-10-08 23:59:29 +0200 | vicfred | (~vicfred@user/vicfred) (Ping timeout: 245 seconds) |
2021-10-08 23:59:44 +0200 | w-spc-gir | (~w-spc-gir@2601:205:4000:dd60:bc3a:4a61:1dc8:3137) |