Logs on 2023-09-05 (liberachat/#haskell)
| 00:04:20 | → | todi1 joins (~todi@p4fd1a685.dip0.t-ipconnect.de) |
| 00:04:45 | × | todi quits (~todi@p4fd1a580.dip0.t-ipconnect.de) (Ping timeout: 255 seconds) |
| 00:05:15 | → | Axman6 joins (~Axman6@user/axman6) |
| 00:12:18 | × | califax quits (~califax@user/califx) (Ping timeout: 246 seconds) |
| 00:12:19 | → | stites joins (~stites@130.44.147.204) |
| 00:13:20 | → | califax joins (~califax@user/califx) |
| 00:14:33 | → | danza_ joins (~francesco@151.43.100.207) |
| 00:14:44 | × | danza__ quits (~francesco@151.43.119.54) (Read error: Connection reset by peer) |
| 00:14:45 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:b4dc:645a:ee0c:be48) |
| 00:22:02 | → | arahael joins (~arahael@119-18-1-27.771201.syd.nbn.aussiebb.net) |
| 00:25:36 | → | caryhartline joins (~caryhartl@168.182.58.169) |
| 00:25:44 | × | mima quits (~mmh@net-93-67-197-209.cust.vodafonedsl.it) (Ping timeout: 246 seconds) |
| 00:26:32 | × | arahael quits (~arahael@119-18-1-27.771201.syd.nbn.aussiebb.net) (Ping timeout: 246 seconds) |
| 00:30:44 | × | xff0x quits (~xff0x@2405:6580:b080:900:5a86:3c66:d876:96c3) (Ping timeout: 246 seconds) |
| 00:31:07 | → | xff0x joins (~xff0x@178.255.149.135) |
| 00:40:48 | × | jrm quits (~jrm@user/jrm) (Quit: ciao) |
| 00:42:11 | → | jrm joins (~jrm@user/jrm) |
| 00:49:13 | → | mud joins (~mud@user/kadoban) |
| 00:49:45 | × | xff0x quits (~xff0x@178.255.149.135) (Ping timeout: 255 seconds) |
| 00:51:22 | → | xff0x joins (~xff0x@2405:6580:b080:900:63fb:4866:4d67:b879) |
| 00:51:26 | → | bliminse joins (~bliminse@user/bliminse) |
| 01:00:10 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:b4dc:645a:ee0c:be48) (Remote host closed the connection) |
| 01:11:00 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:b4dc:645a:ee0c:be48) |
| 01:11:12 | × | albet70 quits (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
| 01:17:18 | → | albet70 joins (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
| 01:21:08 | × | bliminse quits (~bliminse@user/bliminse) (Ping timeout: 246 seconds) |
| 01:23:16 | → | bliminse joins (~bliminse@user/bliminse) |
| 01:24:00 | → | nate2 joins (~nate@c-98-45-169-16.hsd1.ca.comcast.net) |
| 01:25:06 | × | bitdex_ quits (~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 246 seconds) |
| 01:28:01 | × | ft quits (~ft@p508dbfdc.dip0.t-ipconnect.de) (Ping timeout: 250 seconds) |
| 01:29:00 | × | nate2 quits (~nate@c-98-45-169-16.hsd1.ca.comcast.net) (Ping timeout: 246 seconds) |
| 01:29:39 | → | ft joins (~ft@p508db230.dip0.t-ipconnect.de) |
| 01:30:30 | × | caryhartline quits (~caryhartl@168.182.58.169) (Quit: caryhartline) |
| 01:31:16 | → | bitdex_ joins (~bitdex@gateway/tor-sasl/bitdex) |
| 01:41:05 | × | bratwurst quits (~blaadsfa@2604:3d09:207f:f650:216:3eff:fe5a:a1f8) (Ping timeout: 246 seconds) |
| 01:42:25 | → | bratwurst joins (~blaadsfa@2604:3d09:207f:f650:216:3eff:fe5a:a1f8) |
| 01:43:27 | × | VioletJewel quits (violet@user/violetjewel) (Server closed connection) |
| 01:43:41 | → | VioletJewel joins (~violet@user/violetjewel) |
| 01:43:53 | × | bliminse quits (~bliminse@user/bliminse) (Ping timeout: 246 seconds) |
| 01:45:58 | → | bliminse joins (~bliminse@user/bliminse) |
| 01:46:51 | × | xff0x quits (~xff0x@2405:6580:b080:900:63fb:4866:4d67:b879) (Ping timeout: 246 seconds) |
| 01:48:54 | × | otto_s quits (~user@p5b044a3a.dip0.t-ipconnect.de) (Ping timeout: 255 seconds) |
| 01:50:43 | → | otto_s joins (~user@p5de2f6ce.dip0.t-ipconnect.de) |
| 02:00:40 | → | arahael joins (~arahael@119-18-1-27.771201.syd.nbn.aussiebb.net) |
| 02:02:51 | → | Square joins (~Square@user/square) |
| 02:04:06 | <Square> | It seems to me cabal doesn't require you to specify files in Other-Modules/Exposed-Modules for it to actually compile and/or depend on that particular file. Can one enforce this check somehow? |
| 02:04:53 | × | arahael quits (~arahael@119-18-1-27.771201.syd.nbn.aussiebb.net) (Ping timeout: 246 seconds) |
| 02:05:49 | → | caryhartline joins (~caryhartl@168.182.58.169) |
| 02:11:53 | × | bratwurst quits (~blaadsfa@2604:3d09:207f:f650:216:3eff:fe5a:a1f8) (Ping timeout: 246 seconds) |
| 02:15:55 | × | td_ quits (~td@i53870910.versanet.de) (Ping timeout: 245 seconds) |
| 02:16:58 | → | nate2 joins (~nate@c-98-45-169-16.hsd1.ca.comcast.net) |
| 02:18:04 | → | td_ joins (~td@i53870903.versanet.de) |
| 02:30:23 | → | finn_elija joins (~finn_elij@user/finn-elija/x-0085643) |
| 02:30:23 | × | FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija))) |
| 02:30:23 | finn_elija | is now known as FinnElija |
| 02:30:37 | → | xff0x joins (~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp) |
| 02:34:48 | × | ddellacosta quits (~ddellacos@ool-44c738de.dyn.optonline.net) (Ping timeout: 246 seconds) |
| 02:36:48 | → | ddellacosta joins (~ddellacos@ool-44c738de.dyn.optonline.net) |
| 02:42:15 | × | terrorjack quits (~terrorjac@2a01:4f8:c17:87f8::) (Quit: The Lounge - https://thelounge.chat) |
| 02:43:31 | × | haasn quits (sid579015@id-579015.hampstead.irccloud.com) (Server closed connection) |
| 02:43:39 | → | haasn joins (sid579015@id-579015.hampstead.irccloud.com) |
| 02:44:10 | → | terrorjack joins (~terrorjac@2a01:4f8:c17:87f8::) |
| 02:52:51 | → | machinedgod joins (~machinedg@d198-53-218-113.abhsia.telus.net) |
| 02:58:25 | → | lisbeths joins (uid135845@id-135845.lymington.irccloud.com) |
| 02:59:36 | → | sm joins (~sm@plaintextaccounting/sm) |
| 03:00:03 | × | sm quits (~sm@plaintextaccounting/sm) (Client Quit) |
| 03:16:39 | × | [itchyjunk] quits (~itchyjunk@user/itchyjunk/x-7353470) (Remote host closed the connection) |
| 03:19:05 | × | nate2 quits (~nate@c-98-45-169-16.hsd1.ca.comcast.net) (Ping timeout: 246 seconds) |
| 03:19:55 | → | aforemny joins (~aforemny@2001:9e8:6cca:9c00:ab92:c9b8:f35f:37ac) |
| 03:20:30 | × | aforemny_ quits (~aforemny@i59F516F2.versanet.de) (Ping timeout: 255 seconds) |
| 03:23:12 | × | bliminse quits (~bliminse@user/bliminse) (Ping timeout: 255 seconds) |
| 03:24:46 | → | MQ-17J joins (~MQ-17J@104.28.216.165) |
| 03:24:55 | → | bliminse joins (~bliminse@user/bliminse) |
| 03:31:31 | × | peutri quits (~peutri@bobo.desast.re) (Server closed connection) |
| 03:31:41 | → | peutri joins (~peutri@bobo.desast.re) |
| 03:32:47 | ← | MQ-17J parts (~MQ-17J@104.28.216.165) (Leaving) |
| 03:34:59 | × | mud quits (~mud@user/kadoban) (Quit: quit) |
| 03:37:27 | × | mira quits (~aranea@wireguard/contributorcat/mira) (Server closed connection) |
| 03:37:51 | → | mira joins (~aranea@wireguard/contributorcat/mira) |
| 03:46:45 | → | elderephemera joins (~MQ-17J@104.28.216.165) |
| 03:47:04 | ← | elderephemera parts (~MQ-17J@104.28.216.165) (Leaving) |
| 03:48:09 | × | wroathe quits (~wroathe@user/wroathe) (Ping timeout: 255 seconds) |
| 03:54:16 | → | arahael joins (~arahael@119-18-1-27.771201.syd.nbn.aussiebb.net) |
| 03:59:41 | × | arahael quits (~arahael@119-18-1-27.771201.syd.nbn.aussiebb.net) (Ping timeout: 246 seconds) |
| 04:05:52 | → | _ht joins (~Thunderbi@28-52-174-82.ftth.glasoperator.nl) |
| 04:06:35 | × | shiraeeshi quits (~shiraeesh@46.42.239.97) (Ping timeout: 246 seconds) |
| 04:06:41 | × | nyc quits (~nyc@2603-7000-a106-2fb5-0000-0000-0000-1f21.res6.spectrum.com) (Ping timeout: 246 seconds) |
| 04:09:24 | × | dsrt^ quits (~cd@c-66-56-7-24.hsd1.ga.comcast.net) (Remote host closed the connection) |
| 04:14:22 | × | danza_ quits (~francesco@151.43.100.207) (Read error: Connection reset by peer) |
| 04:14:32 | → | danza_ joins (~francesco@151.47.101.236) |
| 04:17:57 | → | beefyran joins (~beefyran@user/beefyran) |
| 04:18:13 | × | pavonia quits (~user@user/siracusa) (Quit: Bye!) |
| 04:23:50 | → | arahael joins (~arahael@119-18-1-27.771201.syd.nbn.aussiebb.net) |
| 04:32:15 | × | libertyprime quits (~libertypr@203.96.203.44) (Quit: leaving) |
| 04:33:07 | × | caryhartline quits (~caryhartl@168.182.58.169) (Quit: caryhartline) |
| 04:34:03 | × | arahael quits (~arahael@119-18-1-27.771201.syd.nbn.aussiebb.net) (Ping timeout: 255 seconds) |
| 04:36:23 | × | beefyran quits (~beefyran@user/beefyran) (Ping timeout: 245 seconds) |
| 04:41:03 | → | michalz joins (~michalz@185.246.207.197) |
| 04:42:00 | → | arahael joins (~arahael@119-18-1-27.771201.syd.nbn.aussiebb.net) |
| 04:43:01 | <Lears> | TIL the inliner can diverge even on -O0. GHC does not like the Y combinator. <.< |
| 04:43:38 | × | chiselfuse quits (~chiselfus@user/chiselfuse) (Remote host closed the connection) |
| 04:45:01 | → | chiselfuse joins (~chiselfus@user/chiselfuse) |
| 04:46:08 | × | arahael quits (~arahael@119-18-1-27.771201.syd.nbn.aussiebb.net) (Ping timeout: 246 seconds) |
| 04:48:02 | <monochrom> | Square: cabal sdist will miss out unlisted files. |
| 04:48:32 | <Square> | monochrom, oh ok. I'll try that |
| 04:48:33 | <monochrom> | And cabal install runs cabal sdist first and then use that tarball only. So it misses out on unlisted files, too. |
| 04:49:41 | → | acidjnk joins (~acidjnk@p200300d6e7072f7228e66677b5f34067.dip0.t-ipconnect.de) |
| 04:51:08 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 04:53:30 | → | takuan joins (~takuan@178-116-218-225.access.telenet.be) |
| 04:55:19 | → | Feuermagier_ joins (~Feuermagi@user/feuermagier) |
| 04:55:19 | Feuermagier | is now known as Guest9570 |
| 04:55:19 | × | Guest9570 quits (~Feuermagi@user/feuermagier) (Killed (cadmium.libera.chat (Nickname regained by services))) |
| 04:55:19 | Feuermagier_ | is now known as Feuermagier |
| 05:00:14 | → | caryhartline joins (~caryhartl@168.182.58.169) |
| 05:04:14 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 05:05:13 | × | thegeekinside quits (~thegeekin@189.180.122.37) (Ping timeout: 240 seconds) |
| 05:07:36 | × | lisbeths quits (uid135845@id-135845.lymington.irccloud.com) (Quit: Connection closed for inactivity) |
| 05:15:46 | → | Jackneill_ joins (~Jackneill@20014C4E1E04F900E74304164F416429.dsl.pool.telekom.hu) |
| 05:35:16 | × | _ht quits (~Thunderbi@28-52-174-82.ftth.glasoperator.nl) (Quit: _ht) |
| 05:42:39 | → | azimut joins (~azimut@gateway/tor-sasl/azimut) |
| 05:45:00 | → | CiaoSen joins (~Jura@2a05:5800:286:2800:664b:f0ff:fe37:9ef) |
| 05:59:45 | × | bliminse quits (~bliminse@user/bliminse) (Quit: leaving) |
| 06:05:33 | → | nyc joins (~nyc@2603-7000-a106-2fb5-0000-0000-0000-1f21.res6.spectrum.com) |
| 06:08:23 | → | trev joins (~trev@user/trev) |
| 06:08:25 | → | Me-me joins (~me-me@2602:ff16:3:0:1:dc:beef:d00d) |
| 06:13:25 | → | Square2 joins (~Square4@user/square) |
| 06:16:00 | × | Square quits (~Square@user/square) (Ping timeout: 246 seconds) |
| 06:26:41 | <Axman6> | Lears: can you even meaningfully type the y-combinator in Haskell? |
| 06:27:55 | <Lears> | With newtype magic. |
| 06:29:07 | <Lears> | % newtype Y a = Y{ ($$) :: Y a -> a } |
| 06:29:07 | <yahb2> | <no output> |
| 06:29:15 | <Lears> | % fix f = Y (\x -> f (x $$ x)) $$ Y (\x -> f (x $$ x)) |
| 06:29:15 | <yahb2> | <no output> |
| 06:29:19 | <Lears> | % :t fix |
| 06:29:19 | <yahb2> | fix :: (t -> t) -> t |
| 06:29:39 | → | sord937 joins (~sord937@gateway/tor-sasl/sord937) |
| 06:29:40 | × | Unicorn_Princess quits (~Unicorn_P@user/Unicorn-Princess/x-3540542) (Remote host closed the connection) |
| 06:32:38 | <Axman6> | right, thatr's like a well known example of breaking things |
| 06:35:28 | <Lears> | You can fix it pretty easily: https://gitlab.haskell.org/ghc/ghc/-/issues/23933 |
| 06:36:58 | <Lears> | (tldr with NOINLINE) |
| 06:40:48 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 06:42:01 | → | oo_miguel joins (~Thunderbi@78-11-179-96.static.ip.netia.com.pl) |
| 06:47:12 | × | Fischmiep quits (~Fischmiep@user/Fischmiep) (Read error: Connection reset by peer) |
| 06:47:44 | → | lortabac joins (~lortabac@2a01:e0a:541:b8f0:5542:f1ee:fb24:2ffc) |
| 06:52:45 | → | Fischmiep joins (~Fischmiep@user/Fischmiep) |
| 06:56:20 | → | chele joins (~chele@user/chele) |
| 07:00:24 | → | gmg joins (~user@user/gehmehgeh) |
| 07:07:58 | × | apteryx quits (~maxim@dsl-10-135-141.b2b2c.ca) (Ping timeout: 255 seconds) |
| 07:08:22 | → | fendor joins (~fendor@2a02:8388:1640:be00:c785:45ab:c70:9d3f) |
| 07:08:48 | × | FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Ping timeout: 246 seconds) |
| 07:11:13 | → | FinnElija joins (~finn_elij@user/finn-elija/x-0085643) |
| 07:11:44 | × | ubert quits (~Thunderbi@178.115.34.37.wireless.dyn.drei.com) (Remote host closed the connection) |
| 07:15:12 | → | coot joins (~coot@89-69-206-216.dynamic.chello.pl) |
| 07:16:24 | → | yosef` joins (~yosef`@user/yosef/x-2947716) |
| 07:16:33 | → | nate2 joins (~nate@c-98-45-169-16.hsd1.ca.comcast.net) |
| 07:18:24 | × | drewjose quits (~drewjose@223.178.83.128) (Quit: have a nice day ^_^) |
| 07:18:50 | × | hpc quits (~juzz@ip98-169-35-163.dc.dc.cox.net) (Ping timeout: 246 seconds) |
| 07:20:53 | → | hpc joins (~juzz@ip98-169-35-163.dc.dc.cox.net) |
| 07:21:27 | × | nate2 quits (~nate@c-98-45-169-16.hsd1.ca.comcast.net) (Ping timeout: 246 seconds) |
| 07:21:27 | → | apteryx joins (~maxim@dsl-153-125.b2b2c.ca) |
| 07:21:59 | → | Guest67 joins (~Guest67@115.96.240.6) |
| 07:22:48 | × | Sgeo quits (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
| 07:28:21 | → | mima joins (~mmh@net-2-38-140-112.cust.vodafonedsl.it) |
| 07:33:47 | → | arahael joins (~arahael@119-18-1-27.771201.syd.nbn.aussiebb.net) |
| 07:35:03 | × | monochrom quits (trebla@216.138.220.146) (Quit: NO CARRIER) |
| 07:35:34 | × | FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija))) |
| 07:35:34 | → | finn_elija joins (~finn_elij@user/finn-elija/x-0085643) |
| 07:35:34 | finn_elija | is now known as FinnElija |
| 07:35:39 | × | notzmv quits (~zmv@user/notzmv) (Ping timeout: 255 seconds) |
| 07:38:16 | × | arahael quits (~arahael@119-18-1-27.771201.syd.nbn.aussiebb.net) (Ping timeout: 260 seconds) |
| 07:39:23 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 07:40:53 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:b4dc:645a:ee0c:be48) (Remote host closed the connection) |
| 07:44:36 | → | monochrom joins (trebla@216.138.220.146) |
| 07:45:19 | × | phma quits (~phma@host-67-44-208-33.hnremote.net) (Read error: Connection reset by peer) |
| 07:45:51 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 07:46:16 | → | phma joins (~phma@2001:5b0:212a:ac18:72e5:9a4c:a0c1:197d) |
| 07:46:53 | → | arahael joins (~arahael@119-18-1-27.771201.syd.nbn.aussiebb.net) |
| 07:47:46 | × | tzh quits (~tzh@c-24-21-73-154.hsd1.or.comcast.net) (Quit: zzz) |
| 07:50:03 | × | pieguy128 quits (~pieguy128@bras-base-mtrlpq5031w-grc-46-67-70-100-114.dsl.bell.ca) (Ping timeout: 255 seconds) |
| 07:51:27 | <Axman6> | Hmmmm, I didn't think that OverloadedRecordUpdate would be such a pain to use, do I really need to redefine getField and setField? Can't import some defaults? |
| 07:52:40 | × | arahael quits (~arahael@119-18-1-27.771201.syd.nbn.aussiebb.net) (Ping timeout: 244 seconds) |
| 07:53:13 | <tomsmeding> | Axman6: > At this time, RebindableSyntax must be enabled when OverloadedRecordUpdate is and users are required to provide definitions for getField and setField. We anticipate this restriction to be lifted in a future release of GHC with builtin support for setField. |
| 07:53:20 | <tomsmeding> | https://downloads.haskell.org/ghc/latest/docs/users_guide/exts/overloaded_record_update.html#extension-OverloadedRecordUpdate |
| 07:53:33 | <tomsmeding> | obscure design IMO |
| 07:54:02 | <Axman6> | yeah I saw that, I was hoping I could import something and use Generic or... something. Was goping to not need lens for this project (as much as I love lens) |
| 07:54:23 | <tomsmeding> | I'd bounce off from having to enable RebindableSyntax |
| 07:54:31 | <tomsmeding> | that's a sledgehammer |
| 07:54:56 | <tomsmeding> | bloody 'if' won't work anymore unless you define an ifThenElse function, or what was it |
| 07:55:06 | <Axman6> | yeah, having to import Prelude and Data.String to get... numbers and string literals... is fun. Not worth it I think. Maybe I'll give optics a run |
| 07:55:29 | <tomsmeding> | it feels so tangential to the extension itself though |
| 07:55:35 | <tomsmeding> | why require the whole of RebindableSyntax |
| 07:55:48 | <tomsmeding> | if it was just setField and getField you'd define those in a Util module and get on with your life |
| 07:55:57 | <Axman6> | yeah agreed. I guess the extension should be considered experimental at the moment |
| 07:56:12 | <tomsmeding> | imean, EXPERIMENTAL |
| 07:56:17 | <tomsmeding> | :p |
| 07:56:23 | <Axman6> | indeed... |
| 07:56:30 | <tomsmeding> | boldface all-caps |
| 07:56:37 | <Axman6> | (I did miss that and jump straight to the code, like any good dev should) |
| 07:56:44 | <tomsmeding> | yeah |
| 07:56:54 | <tomsmeding> | been experimental since 9.2 |
| 07:56:54 | <Axman6> | banner blindness, look it up |
| 07:57:09 | Axman6 | -> home |
| 07:57:37 | <tomsmeding> | that phenomenon is greater than just banners, and greater than just web or tech in the first place |
| 07:58:01 | <tomsmeding> | our office building has a button that you need to press to open the exit door, and the button is on a pillar 2 metres back from the door or so |
| 07:58:23 | × | mima quits (~mmh@net-2-38-140-112.cust.vodafonedsl.it) (Ping timeout: 246 seconds) |
| 07:58:33 | <tomsmeding> | the button was 10cm by 20cm or so and had an absolutely massive fat black downwards-pointing arrow pasted above it |
| 07:58:47 | <tomsmeding> | as we say it, "it was too big" |
| 07:59:01 | <tomsmeding> | people miss it constantly (who haven't been there before) |
| 07:59:27 | <tomsmeding> | also if some interface, or letter, or something has text printed very big, that's not where you start looking for information, because surely it's not going to be that obvious |
| 07:59:28 | <tomsmeding> | until it is |
| 08:00:24 | → | mima joins (~mmh@net-2-38-141-18.cust.vodafonedsl.it) |
| 08:00:38 | <tomsmeding> | (the button is now one of those big round red "launch the missiles" button; perhaps that will help) |
| 08:00:46 | <tomsmeding> | s/button;/buttons;/ |
| 08:01:11 | <tomsmeding> | well s/big // because it's smaller than the bloody previous button |
| 08:04:42 | × | econo_ quits (uid147250@id-147250.tinside.irccloud.com) (Quit: Connection closed for inactivity) |
| 08:08:46 | → | pieguy128 joins (~pieguy128@bras-base-mtrlpq5031w-grc-46-67-70-100-114.dsl.bell.ca) |
| 08:14:09 | <jackdk> | Axman6: I like generic-lens and overloaded labels |
| 08:14:19 | × | danza_ quits (~francesco@151.47.101.236) (Read error: Connection reset by peer) |
| 08:15:02 | → | danza_ joins (~francesco@151.57.111.200) |
| 08:19:20 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:9c2e:82af:913e:28a3) |
| 08:20:15 | → | sm joins (~sm@plaintextaccounting/sm) |
| 08:20:45 | × | sm quits (~sm@plaintextaccounting/sm) (Client Quit) |
| 08:21:32 | × | vglfr quits (~vglfr@cli-188-239-233-89.bbn.slav.dn.ua) (Read error: Connection reset by peer) |
| 08:21:43 | → | sm joins (~sm@plaintextaccounting/sm) |
| 08:21:53 | → | vglfr joins (~vglfr@cli-188-239-233-89.bbn.slav.dn.ua) |
| 08:22:46 | → | cfricke joins (~cfricke@user/cfricke) |
| 08:23:43 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:9c2e:82af:913e:28a3) (Ping timeout: 240 seconds) |
| 08:24:59 | × | gmg quits (~user@user/gehmehgeh) (Quit: Leaving) |
| 08:26:15 | × | aforemny quits (~aforemny@2001:9e8:6cca:9c00:ab92:c9b8:f35f:37ac) (Ping timeout: 244 seconds) |
| 08:26:56 | → | mc47 joins (~mc47@xmonad/TheMC47) |
| 08:27:55 | → | libertyprime joins (~libertypr@203.96.203.44) |
| 08:31:09 | → | aforemny joins (~aforemny@2001:9e8:6cd1:3f00:8007:4d21:194:48dd) |
| 08:34:28 | → | arahael joins (~arahael@119-18-1-27.771201.syd.nbn.aussiebb.net) |
| 08:38:17 | × | sm quits (~sm@plaintextaccounting/sm) (Ping timeout: 246 seconds) |
| 08:40:17 | × | CiaoSen quits (~Jura@2a05:5800:286:2800:664b:f0ff:fe37:9ef) (Ping timeout: 246 seconds) |
| 08:41:21 | × | arahael quits (~arahael@119-18-1-27.771201.syd.nbn.aussiebb.net) (Ping timeout: 250 seconds) |
| 08:41:50 | → | ubert joins (~Thunderbi@178.115.34.37.wireless.dyn.drei.com) |
| 08:42:53 | → | sm joins (~sm@plaintextaccounting/sm) |
| 08:52:47 | × | Guest67 quits (~Guest67@115.96.240.6) (Quit: Client closed) |
| 08:59:40 | × | yosef` quits (~yosef`@user/yosef/x-2947716) (Quit: Client closed) |
| 09:03:08 | → | ccapndave joins (~ccapndave@xcpe-62-167-165-47.cgn.res.adslplus.ch) |
| 09:03:11 | × | danza_ quits (~francesco@151.57.111.200) (Ping timeout: 258 seconds) |
| 09:03:18 | × | ccapndave quits (~ccapndave@xcpe-62-167-165-47.cgn.res.adslplus.ch) (Client Quit) |
| 09:04:20 | × | jargon quits (~jargon@184.101.191.140) (Ping timeout: 250 seconds) |
| 09:04:35 | → | jargon joins (~jargon@174-22-199-178.phnx.qwest.net) |
| 09:07:25 | → | ubert1 joins (~Thunderbi@178.115.70.236.wireless.dyn.drei.com) |
| 09:07:47 | × | ubert quits (~Thunderbi@178.115.34.37.wireless.dyn.drei.com) (Ping timeout: 250 seconds) |
| 09:07:48 | ubert1 | is now known as ubert |
| 09:11:44 | → | drewjose joins (~drewjose@223.178.83.128) |
| 09:12:49 | → | zer0bitz joins (~zer0bitz@user/zer0bitz) |
| 09:18:27 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:9c2e:82af:913e:28a3) |
| 09:19:27 | × | ringo___ quits (~ringo@157.230.117.128) (Server closed connection) |
| 09:19:47 | → | ringo___ joins (~ringo@157.230.117.128) |
| 09:27:07 | × | Buggys- quits (Buggys@Buggy.shelltalk.net) (Ping timeout: 246 seconds) |
| 09:28:47 | → | MQ-17J joins (~MQ-17J@104.28.216.165) |
| 09:35:25 | → | Buggys joins (Buggys@buggy.shelltalk.net) |
| 09:37:51 | <albet70> | is there a simple tutorial for alex & happy? |
| 09:39:48 | <Hecate> | albet70: yes! |
| 09:40:00 | <Hecate> | https://serokell.io/blog/lexing-with-alex |
| 09:40:01 | → | danse-nr3 joins (~francesco@151.57.111.200) |
| 09:40:04 | <Hecate> | this is part 1 |
| 09:43:40 | → | notzmv joins (~zmv@user/notzmv) |
| 09:49:26 | × | sm quits (~sm@plaintextaccounting/sm) (Quit: sm) |
| 09:51:10 | → | thyriaen joins (~thyriaen@91.197.68.193) |
| 09:52:38 | <thyriaen> | Hiho, I have a string in my sourceode ( command run in the os ) which should not be altered, but is too long to fit in one line of my sourcede file hence i would like to split it into several lines -- what is the best practice in those cases ? |
| 09:54:08 | × | ph88^ quits (~ph88@ip5b403cd4.dynamic.kabel-deutschland.de) (Ping timeout: 246 seconds) |
| 09:59:40 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 10:01:05 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 10:04:35 | <tomsmeding> | thyriaen: multi-line strings exist https://www.haskell.org/onlinereport/haskell2010/haskellch2.html#x7-200002.6 |
| 10:04:43 | <Hecate> | % :t mconcat @String |
| 10:04:44 | <yahb2> | mconcat @String :: [String] -> String |
| 10:04:59 | <Hecate> | thyriaen: 👆 |
| 10:05:12 | <tomsmeding> | but multi-line strings are typically hard on syntax highlighters, hence concat is typically used :p |
| 10:05:16 | <tomsmeding> | % :t concat |
| 10:05:16 | <yahb2> | concat :: Foldable t => t [a] -> [a] |
| 10:05:34 | <tomsmeding> | Hecate: would you use mconcat over concat? |
| 10:06:07 | <Hecate> | % :t concat @String |
| 10:06:07 | <yahb2> | <interactive>:1:9: error: ; • Expected kind ‘* -> *’, but ‘String’ has kind ‘*’ ; • In the type ‘String’ ; In the expression: concat @String |
| 10:06:08 | <tomsmeding> | for really long strings there is |
| 10:06:10 | <tomsmeding> | @hackage file-embed |
| 10:06:10 | <lambdabot> | https://hackage.haskell.org/package/file-embed |
| 10:06:11 | <Hecate> | boou |
| 10:06:21 | <Hecate> | tomsmeding: I usually use mconcat yeah |
| 10:06:40 | <tomsmeding> | % :t concat @_ @Char |
| 10:06:40 | <yahb2> | concat @_ @Char :: Foldable w => w [Char] -> [Char] |
| 10:06:43 | <tomsmeding> | % :t concat @[] @Char |
| 10:06:43 | <yahb2> | concat @[] @Char :: [[Char]] -> [Char] |
| 10:07:02 | → | Unicorn_Princess joins (~Unicorn_P@user/Unicorn-Princess/x-3540542) |
| 10:07:03 | <tomsmeding> | why does @_ @Char turn the t into a w |
| 10:07:05 | <albet70> | monad do not compose, can we say monad can be wrapped by another monad? |
| 10:07:13 | <tomsmeding> | that's called a monad transformer |
| 10:07:27 | × | renegade_ quits (~renegade@bcdcac82.skybroadband.com) (Ping timeout: 245 seconds) |
| 10:07:31 | <tomsmeding> | Hecate: are you also of the camp of using fmap instead of map? :p |
| 10:08:07 | <danse-nr3> | i do, makes totally sense |
| 10:08:51 | <Hecate> | tomsmeding: actually no, I usually do it ML-style, List.map, Vector.map, etc |
| 10:09:00 | <tomsmeding> | I see |
| 10:10:09 | → | renegade joins (~renegade@bcdcac82.skybroadband.com) |
| 10:10:27 | <thyriaen> | tomsmeding, i will use your multiline string, thanks <3 |
| 10:10:57 | <danse-nr3> | :t fold |
| 10:10:58 | <lambdabot> | (Foldable t, Monoid m) => t m -> m |
| 10:11:25 | <tomsmeding> | % :t fold @[] @String |
| 10:11:25 | <yahb2> | <interactive>:1:7: error: ; • Expecting one more argument to ‘[]’ ; Expected a type, but ‘[]’ has kind ‘* -> *’ ; • In the type ‘[]’ ; In the expression: fold @[] @String |
| 10:11:35 | <tomsmeding> | % :set -fprint-explicit-foralls |
| 10:11:35 | <yahb2> | <no output> |
| 10:11:37 | <tomsmeding> | % :t fold |
| 10:11:37 | <yahb2> | fold ; :: forall a b k. ; containers-0.6.5.1:Utils.Containers.Internal.TypeError.Whoops ; "Data.Map.fold is gone. Use foldr." => ; (a -> b -> b) -> b -> Map k a -> b |
| 10:11:44 | <tomsmeding> | ? |
| 10:11:45 | <tomsmeding> | ah |
| 10:11:49 | <danse-nr3> | what are those @? Tried them on ghci but gave me syntax error |
| 10:11:59 | <tomsmeding> | :set -XTypeApplications |
| 10:12:04 | <tomsmeding> | https://downloads.haskell.org/ghc/latest/docs/users_guide/exts/type_applications.html#extension-TypeApplications |
| 10:12:32 | <tomsmeding> | % :t Data.Foldable.fold @[] @String |
| 10:12:32 | <yahb2> | Data.Foldable.fold @[] @String :: [String] -> String |
| 10:12:49 | <danse-nr3> | i see they are instances somehow |
| 10:13:00 | <tomsmeding> | it's instantiating the type parameters of the function |
| 10:13:01 | <tomsmeding> | % :t id |
| 10:13:01 | <yahb2> | id :: forall a. a -> a |
| 10:13:05 | <tomsmeding> | % :t id @Int |
| 10:13:05 | <yahb2> | id @Int :: Int -> Int |
| 10:13:12 | <tomsmeding> | it's instantiating that 'a' |
| 10:13:21 | <tomsmeding> | % :t Data.Foldable.fold |
| 10:13:21 | <yahb2> | Data.Foldable.fold ; :: forall (t :: * -> *) m. (Foldable t, Monoid m) => t m -> m |
| 10:13:25 | <tomsmeding> | % :t Data.Foldable.fold @[] |
| 10:13:25 | <yahb2> | Data.Foldable.fold @[] :: forall m. Monoid m => [m] -> m |
| 10:13:28 | <tomsmeding> | % :t Data.Foldable.fold @[] @String |
| 10:13:28 | <yahb2> | Data.Foldable.fold @[] @String :: [String] -> String |
| 10:14:18 | <tomsmeding> | % :t Data.Foldable.fold @_ @String |
| 10:14:19 | <yahb2> | Data.Foldable.fold @_ @String ; :: forall {w :: * -> *}. Foldable w => w String -> String |
| 10:14:24 | <tomsmeding> | you can also leave out type parameters |
| 10:14:44 | <tomsmeding> | % :t (==) |
| 10:14:44 | <yahb2> | (==) :: forall a. Eq a => a -> a -> Bool |
| 10:14:46 | <tomsmeding> | % :t (==) @Int |
| 10:14:46 | <yahb2> | (==) @Int :: Int -> Int -> Bool |
| 10:17:09 | × | drewjose quits (~drewjose@223.178.83.128) (Ping timeout: 246 seconds) |
| 10:17:41 | × | xff0x quits (~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp) (Ping timeout: 246 seconds) |
| 10:19:54 | × | ft quits (~ft@p508db230.dip0.t-ipconnect.de) (Quit: leaving) |
| 10:20:57 | × | tcard quits (~tcard@2400:4051:5801:7500:cf17:befc:ff82:5303) (Remote host closed the connection) |
| 10:21:09 | → | tcard joins (~tcard@2400:4051:5801:7500:cf17:befc:ff82:5303) |
| 10:21:25 | × | hsw quits (~hsw@2001-b030-2303-0104-0172-0025-0012-0132.hinet-ip6.hinet.net) (Remote host closed the connection) |
| 10:21:41 | → | hsw joins (~hsw@2001-b030-2303-0104-0172-0025-0012-0132.hinet-ip6.hinet.net) |
| 10:22:11 | × | sefidel quits (~sefidel@user/sefidel) (Read error: Connection reset by peer) |
| 10:22:25 | → | sefidel joins (~sefidel@user/sefidel) |
| 10:22:26 | × | artem quits (~artem@c-73-103-90-145.hsd1.in.comcast.net) (Read error: Connection reset by peer) |
| 10:22:27 | × | hook54321 quits (sid149355@user/hook54321) (Ping timeout: 245 seconds) |
| 10:22:31 | × | Boarders___ quits (sid425905@id-425905.lymington.irccloud.com) (Read error: Connection reset by peer) |
| 10:22:33 | × | JSharp quits (sid4580@id-4580.lymington.irccloud.com) (Read error: Connection reset by peer) |
| 10:22:37 | × | mustafa quits (sid502723@rockylinux/releng/mustafa) (Read error: Connection reset by peer) |
| 10:22:37 | → | ulysses4ever joins (~artem@2601:249:4380:8950:f474:e3f8:9806:671) |
| 10:22:38 | × | remmie quits (ianremsen@tilde.team) (Quit: ZNC 1.8.1 - https://znc.in) |
| 10:22:39 | × | jakesyl____ quits (sid56879@id-56879.hampstead.irccloud.com) (Read error: Connection reset by peer) |
| 10:22:45 | → | mustafa joins (sid502723@rockylinux/releng/mustafa) |
| 10:22:48 | × | haritz quits (~hrtz@user/haritz) (Quit: ZNC 1.8.2+deb2 - https://znc.in) |
| 10:22:49 | → | JSharp joins (sid4580@id-4580.lymington.irccloud.com) |
| 10:22:52 | → | Boarders___ joins (sid425905@id-425905.lymington.irccloud.com) |
| 10:23:01 | → | haritz joins (~hrtz@2a02:8010:65b5:0:6009:6384:e3cb:2220) |
| 10:23:02 | × | haritz quits (~hrtz@2a02:8010:65b5:0:6009:6384:e3cb:2220) (Changing host) |
| 10:23:02 | → | haritz joins (~hrtz@user/haritz) |
| 10:23:07 | → | jakesyl____ joins (sid56879@id-56879.hampstead.irccloud.com) |
| 10:23:48 | × | riatre quits (~quassel@2001:310:6000:f::5198:1) (Read error: Connection reset by peer) |
| 10:23:55 | → | hook54321 joins (sid149355@user/hook54321) |
| 10:24:17 | → | remmie joins (ianremsen@tilde.team) |
| 10:24:32 | → | riatre joins (~quassel@2001:310:6000:f::5198:1) |
| 10:24:46 | → | drewjose joins (~drewjose@223.178.85.147) |
| 10:30:45 | × | drewjose quits (~drewjose@223.178.85.147) (Quit: have a nice day ^_^) |
| 10:49:18 | → | drewjose joins (~drewjose@129.154.40.88) |
| 10:51:43 | × | drewjose quits (~drewjose@129.154.40.88) (Client Quit) |
| 10:51:47 | → | CiaoSen joins (~Jura@2a05:5800:286:2800:664b:f0ff:fe37:9ef) |
| 10:55:34 | → | drewjose joins (~drewjose@129.154.40.88) |
| 10:55:52 | × | drewjose quits (~drewjose@129.154.40.88) (Client Quit) |
| 10:56:57 | → | drewjose joins (~drewjose@129.154.40.88) |
| 10:58:09 | × | jmdaemon quits (~jmdaemon@user/jmdaemon) (Ping timeout: 244 seconds) |
| 11:01:17 | → | shiraeeshi joins (~shiraeesh@46.42.245.170) |
| 11:18:09 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 11:18:26 | → | nate2 joins (~nate@c-98-45-169-16.hsd1.ca.comcast.net) |
| 11:19:00 | → | xff0x joins (~xff0x@2405:6580:b080:900:cdd2:5212:d38a:f71b) |
| 11:22:05 | × | stites quits (~stites@130.44.147.204) (Remote host closed the connection) |
| 11:22:35 | → | stites joins (~stites@130.44.147.204) |
| 11:22:48 | × | stites quits (~stites@130.44.147.204) (Remote host closed the connection) |
| 11:22:56 | × | nate2 quits (~nate@c-98-45-169-16.hsd1.ca.comcast.net) (Ping timeout: 245 seconds) |
| 11:23:21 | → | stites joins (~stites@130.44.147.204) |
| 11:25:45 | × | danse-nr3 quits (~francesco@151.57.111.200) (Ping timeout: 246 seconds) |
| 11:26:57 | → | danse-nr3 joins (~francesco@151.57.111.200) |
| 11:31:47 | × | danse-nr3 quits (~francesco@151.57.111.200) (Ping timeout: 246 seconds) |
| 11:33:38 | × | vglfr quits (~vglfr@cli-188-239-233-89.bbn.slav.dn.ua) (Remote host closed the connection) |
| 11:34:23 | → | vglfr joins (~vglfr@cli-188-239-233-89.bbn.slav.dn.ua) |
| 11:37:00 | → | waleee joins (~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7) |
| 11:39:26 | × | infinity0 quits (~infinity0@pwned.gg) (Remote host closed the connection) |
| 11:39:52 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 11:41:03 | × | vglfr quits (~vglfr@cli-188-239-233-89.bbn.slav.dn.ua) (Remote host closed the connection) |
| 11:41:03 | × | anpad quits (~pandeyan@user/anpad) (Quit: ZNC 1.8.2 - https://znc.in) |
| 11:42:48 | → | vglfr joins (~vglfr@cli-188-239-233-89.bbn.slav.dn.ua) |
| 11:43:35 | → | anpad joins (~pandeyan@user/anpad) |
| 11:45:00 | × | vglfr quits (~vglfr@cli-188-239-233-89.bbn.slav.dn.ua) (Remote host closed the connection) |
| 11:45:15 | → | vglfr joins (~vglfr@cli-188-239-233-89.bbn.slav.dn.ua) |
| 11:48:01 | × | stites quits (~stites@130.44.147.204) (Read error: Connection reset by peer) |
| 11:48:48 | → | stites joins (~stites@130.44.147.204) |
| 11:51:41 | → | danse-nr3 joins (~francesco@151.57.111.200) |
| 11:52:22 | × | mrmr1 quits (~mrmr@user/mrmr) (Ping timeout: 255 seconds) |
| 11:53:13 | × | Unicorn_Princess quits (~Unicorn_P@user/Unicorn-Princess/x-3540542) (Remote host closed the connection) |
| 11:57:01 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 12:00:39 | → | L29Ah joins (~L29Ah@wikipedia/L29Ah) |
| 12:01:50 | × | machinedgod quits (~machinedg@d198-53-218-113.abhsia.telus.net) (Read error: Connection reset by peer) |
| 12:03:46 | × | cfricke quits (~cfricke@user/cfricke) (Ping timeout: 245 seconds) |
| 12:03:51 | → | arahael joins (~arahael@119-18-1-27.771201.syd.nbn.aussiebb.net) |
| 12:04:00 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 12:06:03 | → | machinedgod joins (~machinedg@d198-53-218-113.abhsia.telus.net) |
| 12:08:25 | × | arahael quits (~arahael@119-18-1-27.771201.syd.nbn.aussiebb.net) (Ping timeout: 245 seconds) |
| 12:12:37 | → | kuribas joins (~user@ip-188-118-57-242.reverse.destiny.be) |
| 12:15:03 | → | danse-nr3_ joins (~francesco@151.37.101.109) |
| 12:15:20 | × | danse-nr3 quits (~francesco@151.57.111.200) (Read error: Connection reset by peer) |
| 12:17:14 | → | beefyran joins (~beefyran@user/beefyran) |
| 12:22:31 | × | xstill_ quits (xstill@fimu/xstill) (Server closed connection) |
| 12:22:50 | → | xstill_ joins (xstill@fimu/xstill) |
| 12:25:13 | → | artem joins (~artem@73.145.242.21) |
| 12:26:34 | × | jle` quits (~jle`@cpe-23-240-75-236.socal.res.rr.com) (Ping timeout: 255 seconds) |
| 12:26:52 | × | ulysses4ever quits (~artem@2601:249:4380:8950:f474:e3f8:9806:671) (Ping timeout: 248 seconds) |
| 12:28:21 | → | jle` joins (~jle`@cpe-23-240-75-236.socal.res.rr.com) |
| 12:30:34 | × | artem quits (~artem@73.145.242.21) (Read error: Connection reset by peer) |
| 12:32:27 | → | thenickname joins (~ident@165.sub-174-215-176.myvzw.com) |
| 12:33:17 | → | Guest52 joins (~Guest52@h154.natout.aau.dk) |
| 12:33:40 | × | Guest52 quits (~Guest52@h154.natout.aau.dk) (Client Quit) |
| 12:34:22 | → | ulysses4ever joins (~artem@73.145.242.21) |
| 12:34:38 | × | bitdex_ quits (~bitdex@gateway/tor-sasl/bitdex) (Quit: = "") |
| 12:35:04 | → | infinity0 joins (~infinity0@pwned.gg) |
| 12:36:29 | × | beefyran quits (~beefyran@user/beefyran) (Quit: Client closed) |
| 12:38:23 | × | libertyprime quits (~libertypr@203.96.203.44) (Ping timeout: 246 seconds) |
| 12:43:41 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 12:44:38 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 12:47:36 | → | libertyprime joins (~libertypr@203.96.203.44) |
| 12:48:24 | × | mysl quits (~mysl@user/mysl) (Ping timeout: 255 seconds) |
| 12:53:00 | × | libertyprime quits (~libertypr@203.96.203.44) (Ping timeout: 248 seconds) |
| 12:57:30 | → | mysl joins (~mysl@user/mysl) |
| 12:58:31 | × | lightandlight quits (sid135476@id-135476.helmsley.irccloud.com) (Server closed connection) |
| 12:58:41 | → | lightandlight joins (sid135476@id-135476.helmsley.irccloud.com) |
| 13:07:27 | × | seeg123456 quits (~seeg12345@64.176.64.83) (Server closed connection) |
| 13:07:44 | → | seeg123456 joins (~seeg12345@64.176.64.83) |
| 13:09:54 | → | Lycurgus joins (~juan@user/Lycurgus) |
| 13:11:59 | → | arahael joins (~arahael@119-18-1-27.771201.syd.nbn.aussiebb.net) |
| 13:12:38 | → | aniketd1 joins (~Thunderbi@2405:201:d00b:116e:46f:8553:dbb5:cd81) |
| 13:13:04 | × | aniketd1 quits (~Thunderbi@2405:201:d00b:116e:46f:8553:dbb5:cd81) (Client Quit) |
| 13:17:39 | × | arahael quits (~arahael@119-18-1-27.771201.syd.nbn.aussiebb.net) (Ping timeout: 244 seconds) |
| 13:22:25 | × | jespada quits (~jespada@cpc121308-nmal25-2-0-cust15.19-2.cable.virginm.net) (Read error: Connection reset by peer) |
| 13:30:41 | × | thenickname quits (~ident@165.sub-174-215-176.myvzw.com) (Quit: Quit) |
| 13:30:47 | × | mysl quits (~mysl@user/mysl) (Ping timeout: 246 seconds) |
| 13:32:25 | → | mysl joins (~mysl@user/mysl) |
| 13:37:23 | × | Lycurgus quits (~juan@user/Lycurgus) (Quit: Tschüss) |
| 13:37:38 | × | ddellacosta quits (~ddellacos@ool-44c738de.dyn.optonline.net) (Quit: WeeChat 4.0.3) |
| 13:39:48 | → | pavonia joins (~user@user/siracusa) |
| 13:41:07 | → | arahael joins (~arahael@119-18-1-27.771201.syd.nbn.aussiebb.net) |
| 13:41:26 | → | jespada joins (~jespada@nmal-25-b2-v4wan-166098-cust2758.vm24.cable.virginm.net) |
| 13:41:43 | → | ddellacosta joins (~ddellacos@ool-44c738de.dyn.optonline.net) |
| 13:43:10 | → | Square joins (~Square@user/square) |
| 13:45:26 | × | arahael quits (~arahael@119-18-1-27.771201.syd.nbn.aussiebb.net) (Ping timeout: 245 seconds) |
| 13:47:31 | × | jespada quits (~jespada@nmal-25-b2-v4wan-166098-cust2758.vm24.cable.virginm.net) (Ping timeout: 245 seconds) |
| 13:49:16 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 13:51:41 | <danse-nr3_> | i am using hoogle with a local database for my project, which is really convenient when looking up stuff |
| 13:51:57 | → | jespada joins (~jespada@cpc121308-nmal25-2-0-cust15.19-2.cable.virginm.net) |
| 13:52:45 | <danse-nr3_> | i have got the impression that sometimes the server could affect the database, which is very strange. I would expect it to only read the database, but sometimes the server does not behave the same after a restart, as if the database had changed |
| 13:55:27 | × | Noinia quits (~Frank@77-162-168-71.fixed.kpn.net) (Server closed connection) |
| 13:55:40 | → | Noinia joins (~Frank@77-162-168-71.fixed.kpn.net) |
| 14:00:55 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 14:01:51 | → | arahael joins (~arahael@119-18-1-27.771201.syd.nbn.aussiebb.net) |
| 14:02:46 | → | mjs2600 joins (~mjs2600@c-174-169-225-239.hsd1.vt.comcast.net) |
| 14:04:08 | → | thegeekinside joins (~thegeekin@189.180.122.37) |
| 14:06:27 | × | arahael quits (~arahael@119-18-1-27.771201.syd.nbn.aussiebb.net) (Ping timeout: 255 seconds) |
| 14:07:02 | × | shiraeeshi quits (~shiraeesh@46.42.245.170) (Ping timeout: 245 seconds) |
| 14:09:43 | × | CiaoSen quits (~Jura@2a05:5800:286:2800:664b:f0ff:fe37:9ef) (Ping timeout: 240 seconds) |
| 14:10:05 | → | ystael joins (~ystael@user/ystael) |
| 14:12:42 | × | thegeekinside quits (~thegeekin@189.180.122.37) (Ping timeout: 246 seconds) |
| 14:15:53 | → | adeptangel joins (cren@tilde.team) |
| 14:16:18 | <adeptangel> | Hi, beginner question here, can someone help me diagnose the mistake I made with this fold? https://paste.tomsmeding.com/s2zJpTDW |
| 14:17:11 | <probie> | :t foldr |
| 14:17:12 | <lambdabot> | Foldable t => (a -> b -> b) -> b -> t a -> b |
| 14:17:16 | <probie> | :t foldl |
| 14:17:17 | <lambdabot> | Foldable t => (b -> a -> b) -> b -> t a -> b |
| 14:18:46 | <probie> | :t let alphabetPosChar = (undefined :: Char -> String) in (\cs b -> cs ++ (alphabetPosChar b)) |
| 14:18:47 | <lambdabot> | [Char] -> Char -> [Char] |
| 14:19:26 | <probie> | adeptangel: With `foldr` the current element is the first parameter, whilst with `foldl` it's the second |
| 14:20:30 | <probie> | so you need to change the order of arguments in the function you're passing |
| 14:20:57 | <probie> | :t let alphabetPosChar = (undefined :: Char -> String) in (\b cs -> cs ++ (alphabetPosChar b)) |
| 14:20:58 | <lambdabot> | Char -> [Char] -> [Char] |
| 14:21:20 | <adeptangel> | probie: ohhh now I feel silly |
| 14:21:21 | <adeptangel> | thanks |
| 14:21:28 | <adeptangel> | fixed |
| 14:22:22 | <probie> | or change from using `foldr` to `foldl` (except never actually use `foldl`, use `foldl'` from the module `Data.List`) |
| 14:22:27 | × | Square quits (~Square@user/square) (Ping timeout: 245 seconds) |
| 14:33:01 | <adeptangel> | probie: what's wrong with the standard foldl? |
| 14:34:31 | × | hays quits (rootvegeta@fsf/member/hays) (Server closed connection) |
| 14:34:56 | <geekosaur> | thunks build up unless you're very careful |
| 14:35:41 | <danse-nr3_> | https://wiki.haskell.org/Foldr_Foldl_Foldl%27 if you want to deepen adeptangel. foldr is fine |
| 14:36:34 | → | gatekempt joins (~gatekempt@user/gatekempt) |
| 14:38:57 | <adeptangel> | wow, that's weird, thanks |
| 14:39:19 | <adeptangel> | (why isn't the more efficient one in Prelude?) |
| 14:40:22 | <danse-nr3_> | as the wiki page says, foldl' is not always the best one to use, and foldr will be fine for most cases |
| 14:41:39 | <c_wraith> | ... foldr is not fine for most cases, unless you like writing the CPS-transform to turn it into foldl' by hand... |
| 14:43:10 | <c_wraith> | It's best to think of the fact that foldr and foldl' have similar names as an accident, and learn what each one *does*. Converting one to the other is awkward in one direction, and impossible in the other. |
| 14:43:16 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 14:44:45 | × | caryhartline quits (~caryhartl@168.182.58.169) (Quit: caryhartline) |
| 14:46:28 | → | bratwurst joins (~blaadsfa@2604:3d09:207f:f650:216:3eff:fe5a:a1f8) |
| 14:47:48 | <danse-nr3_> | sorry i oversimplified |
| 14:47:48 | <probie> | :t \f z xs-> foldr (\x k !acc -> k (f acc x)) id xs z |
| 14:47:49 | <lambdabot> | Foldable t1 => (t2 -> t3 -> t2) -> t2 -> t1 t3 -> t2 |
| 14:49:55 | <c_wraith> | foldr is really bad when it's used with a function that combines both its arguments strictly. That results in it using stack space proportional to the length of the list. |
| 14:52:36 | × | waleee quits (~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7) (Ping timeout: 255 seconds) |
| 14:53:58 | → | caryhartline joins (~caryhartl@168.182.58.169) |
| 14:56:22 | → | sm joins (~sm@plaintextaccounting/sm) |
| 14:57:30 | <probie> | If you're folding over an infinite list, you always have to use `foldr` |
| 14:57:49 | → | Unicorn_Princess joins (~Unicorn_P@user/Unicorn-Princess/x-3540542) |
| 14:57:58 | → | thegeekinside joins (~thegeekin@189.180.122.37) |
| 14:58:17 | <EvanR> | foldr and foldl' do entirely different things so a rule of thumb might be to not get into the habit of pitting them against each other |
| 14:59:21 | <EvanR> | even though they are named similar and you can implement foldl with foldr, it's not like a bikeshed paintjob question |
| 14:59:36 | <EvanR> | one is probably appropriate and one is not |
| 15:00:55 | × | bratwurst quits (~blaadsfa@2604:3d09:207f:f650:216:3eff:fe5a:a1f8) (Ping timeout: 245 seconds) |
| 15:01:11 | <EvanR> | foldl' is your classic accumulating parameter loop, and foldr replaces the constructors in a lazy list with a function or the base value respectively |
| 15:01:15 | <dolio> | > foldl' (\a i -> if i == 0 then 0 else a*i) 1 ([1..10] ++ 0 : [1..]) |
| 15:01:21 | <lambdabot> | mueval-core: Time limit exceeded |
| 15:04:06 | <danse-nr3_> | > foldl' (\a i -> a * i) 0 [1..] |
| 15:04:12 | <lambdabot> | mueval-core: Time limit exceeded |
| 15:04:30 | <EvanR> | tbf foldr fails on that too |
| 15:04:44 | <danse-nr3_> | =D |
| 15:04:56 | <dolio> | Well, it could avoid it depending on what (*) is. |
| 15:05:34 | → | tzh joins (~tzh@c-24-21-73-154.hsd1.wa.comcast.net) |
| 15:05:41 | → | bratwurst joins (~blaadsfa@2604:3d09:207f:f650:216:3eff:fe5a:a1f8) |
| 15:06:03 | <danse-nr3_> | > foldr (\i a -> if i == 0 then 0 else a*i) 1 ([1..10] <> 0 : [1..]) |
| 15:06:04 | <lambdabot> | error: |
| 15:06:05 | <lambdabot> | • No instance for (Num [Integer]) |
| 15:06:05 | <lambdabot> | arising from a use of ‘e_100111001’ |
| 15:06:55 | <dolio> | (<>) is too high precedence, probably. |
| 15:07:13 | <danse-nr3_> | > foldr (\i a -> if i == 0 then 0 else a*i) 1 ([1..10] <> (0 : [1..])) |
| 15:07:15 | <lambdabot> | 0 |
| 15:08:14 | <EvanR> | it's still gross, despite cancelling early on 0. Because of the chain i*i*i*i*i*i* up to that point |
| 15:08:40 | <probie> | > let take' n xs = foldr (\x k m -> if m >= n then [] else x:(k (m + 1))) (const []) xs 0 in take' 5 [1..] |
| 15:08:41 | <lambdabot> | [1,2,3,4,5] |
| 15:09:16 | <EvanR> | er, ...*i*i*i*i |
| 15:09:40 | <probie> | <bad advice>Just always use `foldr`, but make sure to use it right</bad advice> |
| 15:10:08 | × | chexum quits (~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection) |
| 15:10:10 | → | captnemo joins (~captnemo@193.32.127.239) |
| 15:10:23 | → | chexum joins (~quassel@gateway/tor-sasl/chexum) |
| 15:10:38 | × | bratwurst quits (~blaadsfa@2604:3d09:207f:f650:216:3eff:fe5a:a1f8) (Ping timeout: 246 seconds) |
| 15:11:08 | <EvanR> | Never give "Always/Never ..." advice because it's Always Wrong |
| 15:12:26 | <int-e> | it says fold right because it's always right? |
| 15:13:10 | <probie> | But also because it subsumes `foldl` and `foldl'` |
| 15:14:03 | <int-e> | . o O ( only if you know that foldr takes 4 arguments ) |
| 15:14:46 | × | captnemo quits (~captnemo@193.32.127.239) (Client Quit) |
| 15:15:34 | <int-e> | And of course that story falls apart with Foldable |
| 15:17:30 | <EvanR> | foldr the mother of all list functions |
| 15:18:42 | × | lortabac quits (~lortabac@2a01:e0a:541:b8f0:5542:f1ee:fb24:2ffc) (Quit: WeeChat 2.8) |
| 15:19:21 | <probie> | The only function you need is `hylo f g = go where go = f . fmap go . g`. All this `foldr` and `foldl` stuff is insufficiently general |
| 15:20:10 | → | nate2 joins (~nate@c-98-45-169-16.hsd1.ca.comcast.net) |
| 15:20:45 | <geekosaur> | sounds like a lot of folderol |
| 15:21:59 | × | Unicorn_Princess quits (~Unicorn_P@user/Unicorn-Princess/x-3540542) (Remote host closed the connection) |
| 15:24:08 | <int-e> | also that `fmap` is not on lists |
| 15:24:34 | → | Simikando joins (~Simikando@adsl-dyn91.91-127-22.t-com.sk) |
| 15:25:01 | × | nate2 quits (~nate@c-98-45-169-16.hsd1.ca.comcast.net) (Ping timeout: 245 seconds) |
| 15:25:08 | <int-e> | (well maybe it is, but then you'll be working with unlabelled variadic trees) |
| 15:26:25 | → | arahael joins (~arahael@119-18-1-27.771201.syd.nbn.aussiebb.net) |
| 15:30:51 | × | arahael quits (~arahael@119-18-1-27.771201.syd.nbn.aussiebb.net) (Ping timeout: 255 seconds) |
| 15:31:07 | × | migas quits (~migas@astra4961.startdedicated.net) (Ping timeout: 258 seconds) |
| 15:31:09 | → | migas6 joins (~migas@astra4961.startdedicated.net) |
| 15:31:20 | × | thegeekinside quits (~thegeekin@189.180.122.37) (Ping timeout: 245 seconds) |
| 15:37:41 | <probie> | % hylo f g = go where go = f . fmap go . g |
| 15:37:41 | <yahb2> | <no output> |
| 15:37:56 | <probie> | % :set -XLambdaCase |
| 15:37:56 | <yahb2> | <no output> |
| 15:38:03 | <probie> | % import Data.Functor.Compose |
| 15:38:03 | <yahb2> | <no output> |
| 15:38:40 | <probie> | % let sum' xs = hylo (\case { Nothing -> id; Just (x,y) -> \acc -> y $! (x + acc) } . getCompose) (Compose . \case {[] -> Nothing; (x:xs) -> Just (x, xs)}) xs 0 in sum' [1..5] |
| 15:38:40 | <yahb2> | 15 |
| 15:41:44 | → | shiraeeshi joins (~shiraeesh@46.42.245.170) |
| 15:43:54 | × | Square2 quits (~Square4@user/square) (Ping timeout: 255 seconds) |
| 15:44:34 | × | MQ-17J quits (~MQ-17J@104.28.216.165) (Ping timeout: 255 seconds) |
| 15:45:20 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:9c2e:82af:913e:28a3) (Remote host closed the connection) |
| 15:45:33 | → | ph88 joins (~ph88@ip5b403cd4.dynamic.kabel-deutschland.de) |
| 15:45:35 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:9c2e:82af:913e:28a3) |
| 15:46:40 | ← | L29Ah parts (~L29Ah@wikipedia/L29Ah) () |
| 15:50:26 | × | Simikando quits (~Simikando@adsl-dyn91.91-127-22.t-com.sk) (Ping timeout: 245 seconds) |
| 15:55:14 | → | thegeekinside joins (~thegeekin@189.180.122.37) |
| 15:57:10 | → | Simikando joins (~Simikando@adsl-dyn91.91-127-22.t-com.sk) |
| 15:59:05 | × | Simikando quits (~Simikando@adsl-dyn91.91-127-22.t-com.sk) (Remote host closed the connection) |
| 15:59:52 | × | _d0t quits (~{-d0t-}@user/-d0t-/x-7915216) (Remote host closed the connection) |
| 16:00:43 | → | _d0t joins (~{-d0t-}@user/-d0t-/x-7915216) |
| 16:09:37 | → | econo_ joins (uid147250@id-147250.tinside.irccloud.com) |
| 16:11:31 | × | chele quits (~chele@user/chele) (Remote host closed the connection) |
| 16:13:48 | × | stites quits (~stites@130.44.147.204) (Ping timeout: 246 seconds) |
| 16:15:04 | → | danse-nr3__ joins (~francesco@151.43.113.4) |
| 16:15:09 | × | machinedgod quits (~machinedg@d198-53-218-113.abhsia.telus.net) (Ping timeout: 255 seconds) |
| 16:15:12 | → | artem joins (~artem@c-73-103-90-145.hsd1.in.comcast.net) |
| 16:17:30 | × | danse-nr3_ quits (~francesco@151.37.101.109) (Ping timeout: 258 seconds) |
| 16:17:52 | × | ulysses4ever quits (~artem@73.145.242.21) (Ping timeout: 245 seconds) |
| 16:19:56 | → | stites joins (~stites@2607:fb91:dc3:f4f9:40b5:d12a:e4cd:feb2) |
| 16:20:55 | × | sm quits (~sm@plaintextaccounting/sm) (Quit: sm) |
| 16:22:17 | × | thyriaen quits (~thyriaen@91.197.68.193) (Ping timeout: 246 seconds) |
| 16:27:54 | → | merijn joins (~merijn@088-129-128-083.dynamic.caiway.nl) |
| 16:29:13 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 16:29:56 | × | sord937 quits (~sord937@gateway/tor-sasl/sord937) (Quit: sord937) |
| 16:30:38 | × | vglfr quits (~vglfr@cli-188-239-233-89.bbn.slav.dn.ua) (Remote host closed the connection) |
| 16:31:05 | → | vglfr joins (~vglfr@cli-188-239-233-89.bbn.slav.dn.ua) |
| 16:31:21 | × | fendor quits (~fendor@2a02:8388:1640:be00:c785:45ab:c70:9d3f) (Remote host closed the connection) |
| 16:32:38 | × | vglfr quits (~vglfr@cli-188-239-233-89.bbn.slav.dn.ua) (Remote host closed the connection) |
| 16:33:23 | → | vglfr joins (~vglfr@cli-188-239-233-89.bbn.slav.dn.ua) |
| 16:35:20 | → | billchenchina joins (~billchenc@2a0c:b641:7a2:320:ee3e:47ca:6070:d71a) |
| 16:35:24 | × | billchenchina quits (~billchenc@2a0c:b641:7a2:320:ee3e:47ca:6070:d71a) (Client Quit) |
| 16:35:46 | × | kuribas quits (~user@ip-188-118-57-242.reverse.destiny.be) (Remote host closed the connection) |
| 16:35:48 | <joel135> | i haven't seen this hylomorphism stuff before |
| 16:36:02 | <joel135> | but i've seen the löb function, pretty similar |
| 16:36:05 | → | _ht joins (~Thunderbi@28-52-174-82.ftth.glasoperator.nl) |
| 16:37:13 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:9c2e:82af:913e:28a3) (Remote host closed the connection) |
| 16:39:30 | <probie> | :t \f -> let res = fmap ($ res) f in res -- this one, right? |
| 16:39:31 | <lambdabot> | Functor f => f (f b -> b) -> f b |
| 16:39:40 | × | merijn quits (~merijn@088-129-128-083.dynamic.caiway.nl) (Ping timeout: 244 seconds) |
| 16:40:32 | <joel135> | yes, where f is a "sphreadsheet" |
| 16:40:50 | <joel135> | the former f, not the functor |
| 16:40:58 | → | sm joins (~sm@plaintextaccounting/sm) |
| 16:43:14 | × | gatekempt quits (~gatekempt@user/gatekempt) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 16:46:54 | × | mima quits (~mmh@net-2-38-141-18.cust.vodafonedsl.it) (Ping timeout: 255 seconds) |
| 16:47:31 | → | wootehfoot joins (~wootehfoo@user/wootehfoot) |
| 16:47:44 | → | igghibu joins (~igghibu@178.249.211.100) |
| 16:48:30 | → | mima joins (~mmh@net-2-38-141-18.cust.vodafonedsl.it) |
| 16:50:31 | × | Natch quits (~natch@c-9e07225c.038-60-73746f7.bbcust.telenor.se) (Ping timeout: 244 seconds) |
| 16:51:46 | → | Natch joins (~natch@c-9e07225c.038-60-73746f7.bbcust.telenor.se) |
| 16:55:49 | AlexNoo_ | is now known as AlexNoo |
| 16:56:41 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:9c2e:82af:913e:28a3) |
| 17:02:14 | → | aaronv joins (~aaronv@user/aaronv) |
| 17:03:49 | → | Simikando joins (~Simikando@adsl-dyn91.91-127-22.t-com.sk) |
| 17:04:39 | × | igghibu quits (~igghibu@178.249.211.100) (Quit: igghibu) |
| 17:09:27 | × | aaronv quits (~aaronv@user/aaronv) (Ping timeout: 246 seconds) |
| 17:09:30 | × | stites quits (~stites@2607:fb91:dc3:f4f9:40b5:d12a:e4cd:feb2) (Read error: Connection reset by peer) |
| 17:09:51 | → | stites joins (~stites@130.44.147.204) |
| 17:15:54 | × | coot quits (~coot@89-69-206-216.dynamic.chello.pl) (Quit: coot) |
| 17:17:48 | → | lex_ joins (~alex@188.26.233.194) |
| 17:19:36 | → | chromoblob joins (~user@37.113.180.113) |
| 17:20:03 | <chromoblob> | how best to walk a directed graph in parallel? |
| 17:20:20 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 17:20:25 | × | opqdonut quits (opqdonut@pseudo.fixme.fi) (Ping timeout: 255 seconds) |
| 17:20:32 | → | opqdonut joins (opqdonut@pseudo.fixme.fi) |
| 17:21:43 | × | echoreply quits (~echoreply@2001:19f0:9002:1f3b:5400:ff:fe6f:8b8d) (Ping timeout: 240 seconds) |
| 17:23:17 | × | lex_ quits (~alex@188.26.233.194) (Ping timeout: 245 seconds) |
| 17:23:53 | × | Simikando quits (~Simikando@adsl-dyn91.91-127-22.t-com.sk) (Quit: Leaving) |
| 17:26:01 | <c_wraith> | chromoblob: a breadth-first search, or actually parallel? |
| 17:27:47 | × | hgolden quits (~hgolden@2603-8000-9d00-3ed1-fc05-5499-f77c-fbe5.res6.spectrum.com) (Remote host closed the connection) |
| 17:29:03 | × | danse-nr3__ quits (~francesco@151.43.113.4) (Ping timeout: 246 seconds) |
| 17:29:59 | <chromoblob> | c_wraith: i'm thinking about walks where threads join for each node's incoming edges and thread splits for each node's outgoing edges, and (in my case) threads cannot communicate; "thread" means just code that in principle can be run in parallel with other threads, but isn't necessarily by a given implementation |
| 17:30:31 | → | danza joins (~francesco@151.43.113.4) |
| 17:30:49 | <chromoblob> | and i'm interested about cycle-containing directed graphs |
| 17:31:47 | <chromoblob> | the walk starts a thread in each node with no incoming edges |
| 17:32:42 | <joel135> | does it mean that each graph node waits for a complete set of inputs (indexed by the ingoing edges) before spawning anything? |
| 17:33:30 | <chromoblob> | joel135: well, that's impossible with cycles, of course |
| 17:33:51 | <joel135> | i'll take that as a no |
| 17:34:31 | <chromoblob> | no, forget that "the walk starts a thread in each node without incoming edges" |
| 17:34:55 | <chromoblob> | the walk starts a thread in each given node in parallel |
| 17:35:02 | <chromoblob> | there's just the start set |
| 17:35:13 | → | echoreply joins (~echoreply@2001:19f0:9002:1f3b:5400:ff:fe6f:8b8d) |
| 17:36:59 | → | aaronv joins (~aaronv@user/aaronv) |
| 17:38:33 | → | mikoto-chan joins (~mikoto-ch@ip-83-134-209-157.dsl.scarlet.be) |
| 17:39:07 | → | hgolden joins (~hgolden@2603-8000-9d00-3ed1-fc05-5499-f77c-fbe5.res6.spectrum.com) |
| 17:39:09 | → | thyriaen joins (~thyriaen@91.197.68.193) |
| 17:39:35 | <tomsmeding> | chromoblob: how do you determine whether to spawn threads at a node or not |
| 17:39:59 | <tomsmeding> | if you spawn threads for every single edge, your threads are going to be _much_ too granular, even with GHC RTS's lightweight green threads |
| 17:40:09 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 17:40:10 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:9c2e:82af:913e:28a3) (Read error: Connection reset by peer) |
| 17:40:18 | <tomsmeding> | unless processing one graph node is super expensive and worth spawning a thread for |
| 17:41:05 | <chromoblob> | ahh, so, a "performance problem" |
| 17:41:20 | → | gmg joins (~user@user/gehmehgeh) |
| 17:42:00 | <chromoblob> | why is parallel programming so undeveloped |
| 17:43:11 | <geekosaur> | it's not for lack of trying |
| 17:43:29 | <c_wraith> | this is a surprisingly hard problem. if you want efficiency, you need to not duplicate work across threads. |
| 17:43:43 | → | chomwitt joins (~chomwitt@2a02:587:7a1b:5800:1ac0:4dff:fedb:a3f1) |
| 17:44:52 | <chromoblob> | can my algorithm be expressed as one that forks and joins at *every* node, and then launched on an implementation that only spawns "actual threads" when it's worth to, and uses "stupid" scheduling of threads inside the "actual thread"? |
| 17:45:37 | <chromoblob> | by "stupid" scheduling i mean execute sequentially |
| 17:45:46 | <chromoblob> | (they cannot communicate) |
| 17:46:38 | × | sm quits (~sm@plaintextaccounting/sm) (Quit: sm) |
| 17:48:53 | <chromoblob> | c_wraith: how is duplication of work related to granularity? |
| 17:50:21 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:9c2e:82af:913e:28a3) |
| 17:51:02 | <c_wraith> | duplicated work is a natural property of traversing a non-tree graph, unless you track visited nodes. tracking visited nodes in a parallel traversal implies some form of cross-thread communication |
| 17:51:38 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 17:52:39 | <chromoblob> | c_wraith: i mean. the threads that are parallel do not communicate, but communication does happen from a forked thread to the children and from the joined threads to the combined thread |
| 17:53:44 | <danza> | sounds like you can make some assumptions about where threads can fork or join |
| 17:55:00 | <danza> | and "forks and joins at every node" sounds like the work is in walking the links actually |
| 17:56:49 | → | gatekempt joins (~gatekempt@user/gatekempt) |
| 17:57:03 | <chromoblob> | the nodes are points of "the disjunction counterpart of unification", the operation is applied to all ends of incoming edges and all starts of outgoing edges, and these two results are unified |
| 17:57:35 | <chromoblob> | unified in normal, conjunctive sense |
| 17:58:52 | <chromoblob> | although identities are tricky there |
| 17:58:59 | <chromoblob> | identities of unification |
| 17:59:03 | × | gatekempt quits (~gatekempt@user/gatekempt) (Client Quit) |
| 18:01:11 | → | gatekempt joins (~gatekempt@user/gatekempt) |
| 18:01:28 | <danza> | is it possible that the graph state does not converge? Or is there an halting condition? What happens if a wave of computation comes back to the same nodes? |
| 18:03:09 | <chromoblob> | danza: if there is a cycle, then a thread should join its own descendant. the multithreaded flavor of fixpoint |
| 18:03:54 | <c_wraith> | how do you even track incoming work? are you storing all the back links for each node? |
| 18:03:54 | <chromoblob> | ok, this is quite complex |
| 18:04:48 | <danza> | i don't see how to model this as threads walking the graph, i can only think of a thread taking care of each node, which seams expensive, so probably a task for green threads at least at the beginning |
| 18:06:30 | × | aaronv quits (~aaronv@user/aaronv) (Ping timeout: 246 seconds) |
| 18:06:59 | <c_wraith> | I mean, this really sounds like a work queue sort of situation |
| 18:07:15 | <chromoblob> | c_wraith: i don't get the question, there is a set of vertices and for every vertex, a set of incoming and outgoing edges... so you just look at the incoming edges, no? |
| 18:07:52 | → | lex_ joins (~alex@188.26.233.194) |
| 18:08:11 | <c_wraith> | it's kind of uncommon to explicitly store backlinks in some graph reprentations. |
| 18:08:55 | <c_wraith> | if you're using an adjacency matrix, sure you've got them. but adjacency matrices are very inefficient for large sparse graphs. |
| 18:10:04 | <c_wraith> | (admittedly, you could use a sparse matrix representation, if you have one in a library) |
| 18:10:37 | <c_wraith> | if you're using an edge list representation, back edges are rarely included |
| 18:10:53 | <chromoblob> | can't they be trivially included |
| 18:11:13 | <chromoblob> | sure, most of my graphs will be sparse |
| 18:11:25 | <c_wraith> | at the cost of doubling the size of tracking edges and making graph construction and manipulation more complicated, sure. |
| 18:12:07 | <danza> | this makes me think that you mentioned "outgoing" edges, but if they are part of a node's computation, how are they outgoing? |
| 18:12:13 | × | dy quits (sid3438@user/dy) (Ping timeout: 240 seconds) |
| 18:12:43 | × | econo_ quits (uid147250@id-147250.tinside.irccloud.com) (Ping timeout: 240 seconds) |
| 18:12:43 | × | agander_m quits (sid407952@id-407952.tinside.irccloud.com) (Ping timeout: 240 seconds) |
| 18:12:57 | × | trev quits (~trev@user/trev) (Quit: trev) |
| 18:13:13 | × | jackdk quits (sid373013@cssa/jackdk) (Ping timeout: 240 seconds) |
| 18:13:39 | <chromoblob> | okay, sorry, i think a normal fixpoint won't work here, thanks danza |
| 18:14:14 | <danza> | no worries, you made us really curious :] |
| 18:15:22 | <tomsmeding> | re "why is parallel programming so undeveloped" -- as geekosaur said, it turns out to be _hard_ |
| 18:15:47 | <tomsmeding> | easy solutions for easy cases sometimes work, but doing something more general and getting decent performance out is actually surprisingly difficult |
| 18:15:51 | <chromoblob> | so, i already described the full problem i want to solve in short in the message which mentions "the disjunction part of unification", i also want it to handle cycles well |
| 18:15:52 | <geekosaur> | people have been trying to solve it since at least the 1970s |
| 18:15:54 | <tomsmeding> | all kinds of approaches have been tried |
| 18:16:08 | <chromoblob> | "all" really |
| 18:16:20 | → | jackdk joins (sid373013@cssa/jackdk) |
| 18:16:27 | → | agander_m joins (sid407952@id-407952.tinside.irccloud.com) |
| 18:16:29 | → | econo_ joins (uid147250@id-147250.tinside.irccloud.com) |
| 18:16:32 | → | dy joins (sid3438@user/dy) |
| 18:16:33 | <tomsmeding> | the most annoying problems (for task-parallelism, like multicore CPU execution) tend to be communication and granularity |
| 18:16:41 | <chromoblob> | i have an idea for a new processor architecture, if it works well then there will be one more approach |
| 18:16:46 | <tomsmeding> | joins are communication, because they entail synchronisation |
| 18:17:20 | <chromoblob> | but it's to come in some years |
| 18:17:23 | <tomsmeding> | for data-parallelism, like SIMD on CPU and like GPU execution, there's more issues with control flow divergence and data locality |
| 18:17:37 | <tomsmeding> | data locality is a problem on CPU as well, but not quite as severely as on a GPU |
| 18:17:56 | <tomsmeding> | and these are just the high-over generalities |
| 18:18:10 | → | L29Ah joins (~L29Ah@wikipedia/L29Ah) |
| 18:18:19 | <chromoblob> | these also are architecture-specific. |
| 18:18:41 | <tomsmeding> | they are, but performance is unfortunately architecture-specific :p |
| 18:19:24 | <tomsmeding> | the best that we've got in abstracting over architecture for performance is "cache-oblivious algorithms", which are CPU algorithms that work with any kind of cache size layout |
| 18:19:30 | <chromoblob> | i think there's guaranteed model-specific architecture-agnostic performance |
| 18:19:32 | <tomsmeding> | but that's just one aspect of the architecture |
| 18:20:37 | <tomsmeding> | how are you going to abstract over CPU and GPU? For a GPU, you need huge amounts of parallelism, where many of those parallel threads are allowed to be doing the exact same operations in lockstep on different, but preferably adjacent, data |
| 18:21:01 | <tomsmeding> | algorithms that run well are going to run acceptably on CPU, but not necessarily very well |
| 18:23:09 | <tomsmeding> | doing anything neat in this area is publication-worthy |
| 18:23:35 | <chromoblob> | if i succeed, i sure will |
| 18:23:59 | × | chomwitt quits (~chomwitt@2a02:587:7a1b:5800:1ac0:4dff:fedb:a3f1) (Remote host closed the connection) |
| 18:25:22 | → | sinbad joins (~sinbad@user/sinbad) |
| 18:30:22 | × | lex_ quits (~alex@188.26.233.194) (Ping timeout: 245 seconds) |
| 18:30:58 | → | aaronv joins (~aaronv@user/aaronv) |
| 18:34:22 | → | Tuplanolla joins (~Tuplanoll@91-159-68-236.elisa-laajakaista.fi) |
| 18:37:11 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 18:38:19 | × | tv quits (~tv@user/tv) (Quit: derp) |
| 18:51:34 | × | aaronv quits (~aaronv@user/aaronv) (Remote host closed the connection) |
| 18:51:59 | → | aaronv joins (~aaronv@user/aaronv) |
| 18:56:31 | todi1 | is now known as todi |
| 18:58:05 | × | phma quits (~phma@2001:5b0:212a:ac18:72e5:9a4c:a0c1:197d) (Read error: Connection reset by peer) |
| 19:02:41 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:9c2e:82af:913e:28a3) (Remote host closed the connection) |
| 19:03:11 | → | tv joins (~tv@user/tv) |
| 19:05:05 | → | waleee joins (~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7) |
| 19:05:15 | × | tv quits (~tv@user/tv) (Client Quit) |
| 19:05:31 | → | tv joins (~tv@user/tv) |
| 19:06:54 | × | tv quits (~tv@user/tv) (Client Quit) |
| 19:07:40 | → | tv joins (~tv@user/tv) |
| 19:08:18 | × | tv quits (~tv@user/tv) (Client Quit) |
| 19:08:34 | → | tv joins (~tv@user/tv) |
| 19:10:00 | × | tv quits (~tv@user/tv) (Client Quit) |
| 19:10:13 | → | Unicorn_Princess joins (~Unicorn_P@user/Unicorn-Princess/x-3540542) |
| 19:10:16 | → | tv joins (~tv@user/tv) |
| 19:14:00 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 19:15:04 | → | aniketd joins (32aa4844cd@2604:bf00:561:2000::dcb) |
| 19:15:11 | → | coot joins (~coot@89-69-206-216.dynamic.chello.pl) |
| 19:16:34 | → | jmdaemon joins (~jmdaemon@user/jmdaemon) |
| 19:18:47 | × | tv quits (~tv@user/tv) (Quit: derp) |
| 19:19:04 | → | tv joins (~tv@user/tv) |
| 19:21:05 | × | aaronv quits (~aaronv@user/aaronv) (Remote host closed the connection) |
| 19:21:32 | → | aaronv joins (~aaronv@user/aaronv) |
| 19:21:40 | → | nate2 joins (~nate@c-98-45-169-16.hsd1.ca.comcast.net) |
| 19:23:10 | × | aaronv quits (~aaronv@user/aaronv) (Remote host closed the connection) |
| 19:23:40 | → | aaronv joins (~aaronv@user/aaronv) |
| 19:26:41 | × | aaronv quits (~aaronv@user/aaronv) (Remote host closed the connection) |
| 19:27:06 | → | aaronv joins (~aaronv@user/aaronv) |
| 19:27:08 | × | nate2 quits (~nate@c-98-45-169-16.hsd1.ca.comcast.net) (Ping timeout: 248 seconds) |
| 19:27:41 | × | mechap quits (~mechap@user/mechap) (Quit: WeeChat 4.0.4) |
| 19:34:11 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:9c2e:82af:913e:28a3) |
| 19:35:45 | × | Jackneill_ quits (~Jackneill@20014C4E1E04F900E74304164F416429.dsl.pool.telekom.hu) (Ping timeout: 246 seconds) |
| 19:37:28 | × | tv quits (~tv@user/tv) (Quit: derp) |
| 19:38:51 | → | tv joins (~tv@user/tv) |
| 19:39:37 | → | jeetelongname joins (~jeet@cpc96970-rdng25-2-0-cust390.15-3.cable.virginm.net) |
| 19:42:33 | × | caryhartline quits (~caryhartl@168.182.58.169) (Quit: caryhartline) |
| 19:42:40 | → | lortabac joins (~lortabac@2a01:e0a:541:b8f0:cc01:6402:78d9:4eea) |
| 19:46:12 | × | aaronv quits (~aaronv@user/aaronv) (Quit: Leaving) |
| 19:48:08 | × | mc47 quits (~mc47@xmonad/TheMC47) (Remote host closed the connection) |
| 19:48:11 | → | aaronv joins (~aaronv@user/aaronv) |
| 19:55:01 | × | bjobjo quits (~bjobjo@user/bjobjo) (Ping timeout: 260 seconds) |
| 19:55:12 | × | aaronv quits (~aaronv@user/aaronv) (Ping timeout: 255 seconds) |
| 19:55:40 | → | bjobjo joins (~bjobjo@user/bjobjo) |
| 19:55:56 | <chromoblob> | okay, i misled myself, this isn't a graph walk, it's a graph map and a parallel unification job |
| 19:57:14 | <chromoblob> | but |
| 19:57:21 | → | catch22 joins (~catch22@204.40.96.58.static.exetel.com.au) |
| 19:58:09 | × | mima quits (~mmh@net-2-38-141-18.cust.vodafonedsl.it) (Ping timeout: 246 seconds) |
| 20:00:03 | <chromoblob> | well, cycle-less graph can be handled by a graph walk, but with cycleful i don't even know yet how it should work |
| 20:00:25 | → | caryhartline joins (~caryhartl@168.182.58.169) |
| 20:03:04 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 20:04:17 | → | waldo joins (~waldo@user/waldo) |
| 20:04:20 | × | takuan quits (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection) |
| 20:04:31 | × | hughjfch1 quits (~hughjfche@vmi556545.contaboserver.net) (Server closed connection) |
| 20:04:56 | → | hughjfch1 joins (~hughjfche@vmi556545.contaboserver.net) |
| 20:06:31 | × | drewjose quits (~drewjose@129.154.40.88) (Quit: Ping timeout (120 seconds)) |
| 20:06:50 | → | drewjose joins (~drewjose@129.154.40.88) |
| 20:09:59 | × | _ht quits (~Thunderbi@28-52-174-82.ftth.glasoperator.nl) (Remote host closed the connection) |
| 20:10:21 | × | waldo quits (~waldo@user/waldo) (Quit: waldo) |
| 20:10:35 | → | waldo joins (~waldo@user/waldo) |
| 20:10:46 | → | phma joins (~phma@host-67-44-208-151.hnremote.net) |
| 20:12:52 | × | remexre quits (~remexre@user/remexre) (Ping timeout: 245 seconds) |
| 20:14:53 | × | danza quits (~francesco@151.43.113.4) (Read error: Connection reset by peer) |
| 20:15:03 | → | danza joins (~francesco@ge-19-98-248.service.infuturo.it) |
| 20:16:05 | × | stites quits (~stites@130.44.147.204) (Ping timeout: 246 seconds) |
| 20:16:15 | → | stites joins (~stites@2607:fb90:ad60:d802:6a88:133c:2a05:da97) |
| 20:16:25 | → | remexre joins (~remexre@user/remexre) |
| 20:16:45 | × | stites quits (~stites@2607:fb90:ad60:d802:6a88:133c:2a05:da97) (Read error: Connection reset by peer) |
| 20:17:05 | → | stites joins (~stites@c-71-232-14-73.hsd1.ma.comcast.net) |
| 20:19:57 | × | stites quits (~stites@c-71-232-14-73.hsd1.ma.comcast.net) (Read error: Connection reset by peer) |
| 20:20:56 | → | stites joins (~stites@c-71-232-14-73.hsd1.ma.comcast.net) |
| 20:22:02 | × | thegeekinside quits (~thegeekin@189.180.122.37) (Ping timeout: 246 seconds) |
| 20:24:59 | × | coot quits (~coot@89-69-206-216.dynamic.chello.pl) (Quit: coot) |
| 20:25:27 | × | liskin quits (~liskin@xmonad/liskin) (Server closed connection) |
| 20:25:47 | → | liskin joins (~liskin@xmonad/liskin) |
| 20:27:20 | × | jeetelongname quits (~jeet@cpc96970-rdng25-2-0-cust390.15-3.cable.virginm.net) (Remote host closed the connection) |
| 20:28:05 | × | swistak quits (~swistak@185.21.216.141) (Remote host closed the connection) |
| 20:29:32 | → | jeetelongname joins (~jeet@cpc96970-rdng25-2-0-cust390.15-3.cable.virginm.net) |
| 20:31:24 | × | acidjnk quits (~acidjnk@p200300d6e7072f7228e66677b5f34067.dip0.t-ipconnect.de) (Ping timeout: 246 seconds) |
| 20:34:54 | × | waldo quits (~waldo@user/waldo) (Ping timeout: 246 seconds) |
| 20:35:48 | → | libertyprime joins (~libertypr@203.96.203.44) |
| 20:50:35 | → | waldo joins (~waldo@user/waldo) |
| 20:50:59 | × | waldo quits (~waldo@user/waldo) (Client Quit) |
| 20:55:04 | × | michalz quits (~michalz@185.246.207.197) (Remote host closed the connection) |
| 20:56:10 | × | lortabac quits (~lortabac@2a01:e0a:541:b8f0:cc01:6402:78d9:4eea) (Quit: WeeChat 2.8) |
| 20:58:43 | × | libertyprime quits (~libertypr@203.96.203.44) (Ping timeout: 240 seconds) |
| 20:59:28 | × | jeetelongname quits (~jeet@cpc96970-rdng25-2-0-cust390.15-3.cable.virginm.net) (Remote host closed the connection) |
| 20:59:48 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 21:00:01 | → | ft joins (~ft@p508db230.dip0.t-ipconnect.de) |
| 21:04:31 | × | xsarnik quits (xsarnik@lounge.fi.muni.cz) (Server closed connection) |
| 21:04:47 | → | xsarnik joins (xsarnik@lounge.fi.muni.cz) |
| 21:10:27 | × | thaumavorio quits (~thaumavor@thaumavor.io) (Server closed connection) |
| 21:10:48 | → | thaumavorio joins (~thaumavor@thaumavor.io) |
| 21:12:48 | ← | sinbad parts (~sinbad@user/sinbad) () |
| 21:14:30 | × | thyriaen quits (~thyriaen@91.197.68.193) (Remote host closed the connection) |
| 21:14:46 | → | libertyprime joins (~libertypr@203.96.203.44) |
| 21:25:06 | → | Lycurgus joins (~juan@user/Lycurgus) |
| 21:28:09 | × | artem quits (~artem@c-73-103-90-145.hsd1.in.comcast.net) (Read error: Connection reset by peer) |
| 21:28:09 | → | ulysses4ever joins (~artem@c-73-103-90-145.hsd1.in.comcast.net) |
| 21:28:53 | × | oo_miguel quits (~Thunderbi@78-11-179-96.static.ip.netia.com.pl) (Ping timeout: 246 seconds) |
| 21:30:18 | → | machinedgod joins (~machinedg@d198-53-218-113.abhsia.telus.net) |
| 21:30:30 | × | stites quits (~stites@c-71-232-14-73.hsd1.ma.comcast.net) (Ping timeout: 245 seconds) |
| 21:31:47 | → | stites joins (~stites@2607:fb90:ad62:84d1:e06:3ee5:5b34:6465) |
| 21:34:19 | → | sm joins (~sm@plaintextaccounting/sm) |
| 21:35:48 | × | mikoto-chan quits (~mikoto-ch@ip-83-134-209-157.dsl.scarlet.be) (Ping timeout: 255 seconds) |
| 21:36:00 | × | stites quits (~stites@2607:fb90:ad62:84d1:e06:3ee5:5b34:6465) (Read error: Connection reset by peer) |
| 21:36:20 | → | stites joins (~stites@c-71-232-14-73.hsd1.ma.comcast.net) |
| 21:46:15 | manwithl- | is now known as manwithluck |
| 21:57:08 | → | thegeekinside joins (~thegeekin@189.180.122.37) |
| 21:59:57 | → | jeetelongname joins (~jeet@cpc96970-rdng25-2-0-cust390.15-3.cable.virginm.net) |
| 22:04:36 | × | L29Ah quits (~L29Ah@wikipedia/L29Ah) (Ping timeout: 245 seconds) |
| 22:04:41 | × | sm quits (~sm@plaintextaccounting/sm) (Quit: sm) |
| 22:05:08 | → | wroathe joins (~wroathe@user/wroathe) |
| 22:06:01 | → | arahael joins (~arahael@119-18-1-27.771201.syd.nbn.aussiebb.net) |
| 22:06:51 | × | jeetelongname quits (~jeet@cpc96970-rdng25-2-0-cust390.15-3.cable.virginm.net) (Ping timeout: 255 seconds) |
| 22:09:22 | → | eggplant_ joins (~Eggplanta@2600:1700:38c5:d800:9c2e:82af:913e:28a3) |
| 22:10:48 | × | Tuplanolla quits (~Tuplanoll@91-159-68-236.elisa-laajakaista.fi) (Quit: Leaving.) |
| 22:11:12 | × | econo_ quits (uid147250@id-147250.tinside.irccloud.com) (Ping timeout: 245 seconds) |
| 22:11:43 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:9c2e:82af:913e:28a3) (Ping timeout: 240 seconds) |
| 22:12:35 | → | chomwitt joins (~chomwitt@2a02:587:7a1b:5800:1ac0:4dff:fedb:a3f1) |
| 22:13:04 | → | econo_ joins (uid147250@id-147250.tinside.irccloud.com) |
| 22:13:48 | × | arahael quits (~arahael@119-18-1-27.771201.syd.nbn.aussiebb.net) (Ping timeout: 255 seconds) |
| 22:18:24 | → | L29Ah joins (~L29Ah@wikipedia/L29Ah) |
| 22:19:52 | → | whatsupdoc joins (uid509081@id-509081.hampstead.irccloud.com) |
| 22:25:02 | × | Lycurgus quits (~juan@user/Lycurgus) (Quit: Tschüss) |
| 22:29:39 | → | jeetelongname joins (~jeet@cpc96970-rdng25-2-0-cust390.15-3.cable.virginm.net) |
| 22:29:43 | × | waleee quits (~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7) (Ping timeout: 240 seconds) |
| 22:30:01 | → | hays joins (rootvegeta@fsf/member/hays) |
| 22:30:52 | × | kjak quits (~kjak@pool-108-28-157-148.washdc.fios.verizon.net) (Ping timeout: 258 seconds) |
| 22:30:52 | × | stites quits (~stites@c-71-232-14-73.hsd1.ma.comcast.net) (Read error: Connection reset by peer) |
| 22:31:53 | × | Patternmaster quits (~georg@user/Patternmaster) (Ping timeout: 246 seconds) |
| 22:32:08 | → | waleee joins (~waleee@h-176-10-137-138.NA.cust.bahnhof.se) |
| 22:32:25 | → | stites joins (~stites@c-71-232-14-73.hsd1.ma.comcast.net) |
| 22:34:37 | × | Vq quits (~vq@90-227-195-9-no77.tbcn.telia.com) (Ping timeout: 244 seconds) |
| 22:38:38 | × | stites quits (~stites@c-71-232-14-73.hsd1.ma.comcast.net) (Ping timeout: 246 seconds) |
| 22:38:46 | → | stites joins (~stites@2607:fb90:ad62:84d1:e06:3ee5:5b34:6465) |
| 22:41:03 | × | jmdaemon quits (~jmdaemon@user/jmdaemon) (Ping timeout: 255 seconds) |
| 22:41:39 | → | Patternmaster joins (~georg@li1192-118.members.linode.com) |
| 22:41:39 | × | Patternmaster quits (~georg@li1192-118.members.linode.com) (Changing host) |
| 22:41:39 | → | Patternmaster joins (~georg@user/Patternmaster) |
| 22:42:44 | × | stites quits (~stites@2607:fb90:ad62:84d1:e06:3ee5:5b34:6465) (Read error: Connection reset by peer) |
| 22:43:04 | → | stites joins (~stites@130.44.147.204) |
| 22:44:44 | × | chomwitt quits (~chomwitt@2a02:587:7a1b:5800:1ac0:4dff:fedb:a3f1) (Remote host closed the connection) |
| 22:46:01 | → | aaronv joins (~aaronv@user/aaronv) |
| 22:46:27 | × | wagle quits (~wagle@quassel.wagle.io) (Server closed connection) |
| 22:46:43 | → | wagle joins (~wagle@quassel.wagle.io) |
| 22:50:50 | × | gatekempt quits (~gatekempt@user/gatekempt) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 22:51:41 | → | Vq joins (~vq@90-225-115-195-no122.tbcn.telia.com) |
| 22:53:08 | × | jeetelongname quits (~jeet@cpc96970-rdng25-2-0-cust390.15-3.cable.virginm.net) (Remote host closed the connection) |
| 22:56:39 | → | jmdaemon joins (~jmdaemon@user/jmdaemon) |
| 22:57:27 | × | wroathe quits (~wroathe@user/wroathe) (Read error: Connection reset by peer) |
| 22:57:36 | → | wroathe joins (~wroathe@user/wroathe) |
| 23:05:00 | × | azimut quits (~azimut@gateway/tor-sasl/azimut) (Ping timeout: 246 seconds) |
| 23:06:48 | × | jmdaemon quits (~jmdaemon@user/jmdaemon) (Ping timeout: 246 seconds) |
| 23:10:35 | → | [itchyjunk] joins (~itchyjunk@user/itchyjunk/x-7353470) |
| 23:13:35 | × | caryhartline quits (~caryhartl@168.182.58.169) (Quit: caryhartline) |
| 23:17:41 | → | arahael joins (~arahael@119-18-1-27.771201.syd.nbn.aussiebb.net) |
| 23:23:17 | × | arahael quits (~arahael@119-18-1-27.771201.syd.nbn.aussiebb.net) (Ping timeout: 245 seconds) |
| 23:23:26 | → | nate2 joins (~nate@c-98-45-169-16.hsd1.ca.comcast.net) |
| 23:27:00 | × | geekosaur quits (~geekosaur@xmonad/geekosaur) (Quit: Leaving) |
| 23:27:08 | × | haskellbridge quits (~haskellbr@069-135-003-034.biz.spectrum.com) (Remote host closed the connection) |
| 23:27:13 | × | robobub quits (uid248673@id-248673.uxbridge.irccloud.com) (Quit: Connection closed for inactivity) |
| 23:27:51 | × | wroathe quits (~wroathe@user/wroathe) (Ping timeout: 255 seconds) |
| 23:28:18 | × | nate2 quits (~nate@c-98-45-169-16.hsd1.ca.comcast.net) (Ping timeout: 255 seconds) |
| 23:29:16 | → | jmdaemon joins (~jmdaemon@user/jmdaemon) |
| 23:29:56 | → | geekosaur joins (~geekosaur@xmonad/geekosaur) |
| 23:31:18 | → | haskellbridge joins (~haskellbr@069-135-003-034.biz.spectrum.com) |
| 23:33:03 | × | ezzieyguywuf quits (~Unknown@user/ezzieyguywuf) (Ping timeout: 246 seconds) |
| 23:34:51 | → | ezzieyguywuf joins (~Unknown@user/ezzieyguywuf) |
| 23:36:51 | × | notzmv quits (~zmv@user/notzmv) (Ping timeout: 255 seconds) |
| 23:37:15 | × | gmg quits (~user@user/gehmehgeh) (Quit: Leaving) |
| 23:38:00 | → | Sgeo joins (~Sgeo@user/sgeo) |
| 23:39:39 | → | caryhartline joins (~caryhartl@168.182.58.169) |
| 23:41:17 | × | stites quits (~stites@130.44.147.204) (Ping timeout: 246 seconds) |
| 23:41:47 | → | stites joins (~stites@2607:fb90:ad62:84d1:e06:3ee5:5b34:6465) |
| 23:42:36 | × | aaronv quits (~aaronv@user/aaronv) (Ping timeout: 248 seconds) |
| 23:47:17 | → | mrmr1 joins (~mrmr@user/mrmr) |
| 23:52:09 | × | Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 255 seconds) |
| 23:52:22 | → | Lord_of_Life_ joins (~Lord@user/lord-of-life/x-2819915) |
| 23:53:43 | Lord_of_Life_ | is now known as Lord_of_Life |
| 23:56:32 | → | wroathe joins (~wroathe@207-153-38-140.fttp.usinternet.com) |
| 23:56:32 | × | wroathe quits (~wroathe@207-153-38-140.fttp.usinternet.com) (Changing host) |
| 23:56:32 | → | wroathe joins (~wroathe@user/wroathe) |
All times are in UTC on 2023-09-05.