Logs on 2022-01-29 (liberachat/#haskell)
| 00:00:04 | → | Null_A joins (~null_a@c-98-210-133-39.hsd1.ca.comcast.net) |
| 00:02:19 | → | Erutuon joins (~Erutuon@user/erutuon) |
| 00:06:18 | × | shapr quits (~user@pool-100-36-247-68.washdc.fios.verizon.net) (Remote host closed the connection) |
| 00:07:04 | → | shapr joins (~user@pool-100-36-247-68.washdc.fios.verizon.net) |
| 00:08:06 | × | burnsidesLlama quits (~burnsides@dhcp168-033.wadham.ox.ac.uk) (Remote host closed the connection) |
| 00:08:38 | → | burnsidesLlama joins (~burnsides@client-8-87.eduroam.oxuni.org.uk) |
| 00:13:04 | × | burnsidesLlama quits (~burnsides@client-8-87.eduroam.oxuni.org.uk) (Ping timeout: 250 seconds) |
| 00:13:34 | ← | RMSBach parts (~user@cpe-76-177-52-136.natcky.res.rr.com) (ERC 5.4 (IRC client for GNU Emacs 28.0.90)) |
| 00:13:48 | × | Gurkenglas quits (~Gurkengla@dslb-090-186-104-244.090.186.pools.vodafone-ip.de) (Ping timeout: 256 seconds) |
| 00:26:29 | → | kaph joins (~kaph@net-2-47-208-144.cust.vodafonedsl.it) |
| 00:27:01 | → | wroathe joins (~wroathe@206-55-188-8.fttp.usinternet.com) |
| 00:27:01 | × | wroathe quits (~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host) |
| 00:27:01 | → | wroathe joins (~wroathe@user/wroathe) |
| 00:34:37 | × | alp quits (~alp@user/alp) (Ping timeout: 268 seconds) |
| 00:38:10 | × | mrmr quits (~mrmr@user/mrmr) (Quit: The Lounge - https://thelounge.chat) |
| 00:38:17 | × | jao quits (~jao@static-68-235-44-25.cust.tzulo.com) (Ping timeout: 240 seconds) |
| 00:38:50 | → | Everything joins (~Everythin@37.115.210.35) |
| 00:41:46 | × | Midjak quits (~Midjak@may53-1-78-226-116-92.fbx.proxad.net) (Quit: This computer has gone to sleep) |
| 00:42:08 | × | bontaq quits (~user@ool-45779fe5.dyn.optonline.net) (Ping timeout: 256 seconds) |
| 00:45:02 | × | dsrt^ quits (~dsrt@75-147-197-198-Atlanta.hfc.comcastbusiness.net) (Remote host closed the connection) |
| 00:46:00 | → | fef joins (~thedawn@user/thedawn) |
| 00:47:49 | × | jgeerds_ quits (~jgeerds@55d4a547.access.ecotel.net) (Ping timeout: 240 seconds) |
| 00:50:00 | × | Null_A quits (~null_a@c-98-210-133-39.hsd1.ca.comcast.net) (Remote host closed the connection) |
| 00:50:38 | × | madjestic quits (~madjestic@88-159-247-120.fixed.kpn.net) (Ping timeout: 256 seconds) |
| 00:56:12 | × | CiaoSen quits (~Jura@p200300c95737a2002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Ping timeout: 268 seconds) |
| 00:59:08 | × | _ht quits (~quassel@231-169-21-31.ftth.glasoperator.nl) (Ping timeout: 256 seconds) |
| 00:59:43 | → | _ht joins (~quassel@231-169-21-31.ftth.glasoperator.nl) |
| 01:06:08 | → | Null_A joins (~null_a@2601:645:8700:2290:8935:4edf:b32:6553) |
| 01:13:48 | → | zmt01 joins (~zmt00@user/zmt00) |
| 01:16:57 | × | zmt00 quits (~zmt00@user/zmt00) (Ping timeout: 240 seconds) |
| 01:19:37 | × | n3rdy1 quits (~n3rdy1@2600:1700:4570:3480:1b88:50f:dae0:9293) (Ping timeout: 240 seconds) |
| 01:21:17 | × | doyougnu quits (~doyougnu@cpe-67-249-83-190.twcny.res.rr.com) (Ping timeout: 240 seconds) |
| 01:23:33 | → | segfaultfizzbuzz joins (~rustisafu@2602:306:cd3c:9350:59e3:db49:aa0a:46e5) |
| 01:27:28 | × | tommd quits (~tommd@67-42-147-226.ptld.qwest.net) (Ping timeout: 256 seconds) |
| 01:28:42 | → | chenqisu1 joins (~chenqisu1@183.217.200.249) |
| 01:42:12 | → | [itchyjunk] joins (~itchyjunk@user/itchyjunk/x-7353470) |
| 01:46:52 | → | dsrt^ joins (~dsrt@75-147-197-198-Atlanta.hfc.comcastbusiness.net) |
| 01:52:57 | × | pieguy128 quits (~pieguy128@bas8-montreal02-65-93-195-202.dsl.bell.ca) (Ping timeout: 240 seconds) |
| 01:54:15 | → | wei2912 joins (~wei2912@138.75.71.147) |
| 01:54:15 | × | wei2912 quits (~wei2912@138.75.71.147) (Client Quit) |
| 01:57:13 | <EvanR> | what is going on in ghci when you run code which is a mix of stuff you defined and stuff from loaded libraries. Is it a mix of interpreted code and compiled code |
| 01:57:32 | <EvanR> | precompled entirely and run, or entirely interpreted |
| 01:58:56 | × | chele quits (~chele@user/chele) (Remote host closed the connection) |
| 01:59:37 | <Cale> | It's a mix of bytecode and native compiled code |
| 02:00:07 | <Cale> | I've never actually looked too carefully at the details of how that works though |
| 02:01:41 | <EvanR> | the interpreter functionality is interesting, is that a built-in function of ghc |
| 02:01:49 | <geekosaur> | I have to assume bytecode can call into compiled code or you wouldn't even have the Prelude |
| 02:02:18 | <geekosaur> | whether compiled code can call into bytecode is another question but eith higher order functions I must assume it can |
| 02:02:46 | <geekosaur> | EvanR, it's built in and used by runghc, ghci, and template haskell |
| 02:02:56 | → | pieguy128 joins (~pieguy128@bras-base-mtrlpq5031w-grc-37-70-24-250-178.dsl.bell.ca) |
| 02:02:59 | <geekosaur> | (note that ghci is just ghc --interactive) |
| 02:03:09 | <EvanR> | oh |
| 02:03:31 | <geekosaur> | also ghc -e |
| 02:10:24 | → | harveypwca joins (~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67) |
| 02:13:58 | → | tommd joins (~tommd@67-42-147-226.ptld.qwest.net) |
| 02:16:22 | → | merijn joins (~merijn@c-001-002-002.client.esciencecenter.eduvpn.nl) |
| 02:19:36 | × | neurocyte0917090 quits (~neurocyte@user/neurocyte) (Ping timeout: 256 seconds) |
| 02:20:55 | <ephemient> | if you run ghci -fobject-code, it'll compile everything it loads |
| 02:22:14 | <ephemient> | but otherwise, loaded source files are -fbyte-code just like expressions you enter in the repl |
| 02:24:45 | <Cale> | Also generally installed packages will be object code, and if there are .o and .hi files alongside your source code, it will generally load that |
| 02:26:28 | <EvanR> | ah haven't seen .o files in a while |
| 02:27:01 | <EvanR> | ghci -fobject-code sounds good, what about cabal repl |
| 02:27:31 | <geekosaur> | cabal repl is just a wrapper around ghci, iirc there's a way to pass ghci options which could include -fobject-code |
| 02:30:51 | <geekosaur> | --repl-options |
| 02:32:02 | <geekosaur> | and --repl-options=-fobject-code seems to work here |
| 02:33:01 | × | xff0x quits (~xff0x@2001:1a81:529b:5400:ae89:612e:5a81:4cf8) (Ping timeout: 240 seconds) |
| 02:35:07 | → | xff0x joins (~xff0x@2001:1a81:52b5:2e00:620f:6b65:415e:34ea) |
| 02:35:24 | <EvanR> | not only does that make everything a lot faster, but the repl loads a lot faster now |
| 02:41:06 | → | lavaman joins (~lavaman@98.38.249.169) |
| 02:42:34 | × | waleee quits (~waleee@2001:9b0:21d:fc00:398f:b003:b90d:acf4) (Ping timeout: 250 seconds) |
| 02:43:04 | <ephemient> | it's not just the .o files, ghc needs the .hi files to know what's in them. and the ghc docs say that ghci -fobject-code can potentially compile faster than ghc --make during reload because it keep those interfaces in memory |
| 02:45:22 | × | chexum quits (~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection) |
| 02:45:41 | → | chexum joins (~quassel@gateway/tor-sasl/chexum) |
| 02:49:33 | <EvanR> | fancy |
| 02:49:57 | × | merijn quits (~merijn@c-001-002-002.client.esciencecenter.eduvpn.nl) (Ping timeout: 240 seconds) |
| 02:51:29 | → | califax- joins (~califax@user/califx) |
| 02:52:28 | × | mon_aaraj quits (~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 256 seconds) |
| 02:54:20 | → | mon_aaraj joins (~MonAaraj@user/mon-aaraj/x-4416475) |
| 02:54:44 | <geekosaur> | you can also usefully use -O with -fobject-code (bytecode disables optimization) |
| 02:56:18 | × | califax quits (~califax@user/califx) (Ping timeout: 276 seconds) |
| 02:56:18 | califax- | is now known as califax |
| 03:04:44 | → | Techcable joins (~Techcable@168.235.93.147) |
| 03:07:17 | × | Maxdamantus quits (~Maxdamant@user/maxdamantus) (Quit: leaving) |
| 03:07:39 | → | Maxdamantus joins (~Maxdamant@124.197.32.108) |
| 03:10:07 | × | Maxdamantus quits (~Maxdamant@124.197.32.108) (Client Quit) |
| 03:10:13 | × | vysn quits (~vysn@user/vysn) (Ping timeout: 240 seconds) |
| 03:12:51 | → | finn_elija joins (~finn_elij@user/finn-elija/x-0085643) |
| 03:12:51 | × | FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija))) |
| 03:12:51 | finn_elija | is now known as FinnElija |
| 03:13:34 | → | Maxdamantus joins (~Maxdamant@user/maxdamantus) |
| 03:15:29 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 03:15:42 | → | lavaman joins (~lavaman@98.38.249.169) |
| 03:20:37 | × | jespada quits (~jespada@87.74.36.188) (Ping timeout: 240 seconds) |
| 03:23:56 | → | jespada joins (~jespada@87.74.36.188) |
| 03:36:58 | × | zaquest quits (~notzaques@5.130.79.72) (Remote host closed the connection) |
| 03:39:03 | → | RMSBach joins (~user@cpe-76-177-52-136.natcky.res.rr.com) |
| 03:40:14 | × | RMSBach quits (~user@cpe-76-177-52-136.natcky.res.rr.com) (Remote host closed the connection) |
| 03:42:29 | → | zaquest joins (~notzaques@5.130.79.72) |
| 03:48:57 | × | td_ quits (~td@94.134.91.203) (Ping timeout: 240 seconds) |
| 03:50:52 | → | td_ joins (~td@muedsl-82-207-238-224.citykom.de) |
| 03:51:06 | → | wei2912 joins (~wei2912@138.75.71.147) |
| 03:53:12 | × | cyphase_eviltwin quits (~cyphase@user/cyphase) (Ping timeout: 250 seconds) |
| 03:58:15 | → | cyphase joins (~cyphase@user/cyphase) |
| 04:07:48 | × | fef quits (~thedawn@user/thedawn) (Ping timeout: 276 seconds) |
| 04:08:07 | × | wroathe quits (~wroathe@user/wroathe) (Ping timeout: 250 seconds) |
| 04:09:02 | → | jinsun__ joins (~quassel@user/jinsun) |
| 04:09:04 | → | fef joins (~thedawn@user/thedawn) |
| 04:09:57 | × | jinsun quits (~quassel@user/jinsun) (Ping timeout: 240 seconds) |
| 04:15:49 | × | yahb quits (xsbot@user/mniip/bot/yahb) (Ping timeout: 240 seconds) |
| 04:16:43 | × | pretty_dumm_guy quits (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Quit: WeeChat 3.4) |
| 04:20:08 | → | yahb joins (xsbot@user/mniip/bot/yahb) |
| 04:34:03 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 04:34:20 | → | lavaman joins (~lavaman@98.38.249.169) |
| 04:34:27 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 04:34:42 | → | lavaman joins (~lavaman@98.38.249.169) |
| 04:34:48 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 04:35:03 | → | lavaman joins (~lavaman@98.38.249.169) |
| 04:35:11 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 04:35:25 | → | lavaman joins (~lavaman@98.38.249.169) |
| 04:35:32 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 04:35:37 | × | ProfSimm quits (~ProfSimm@87.227.196.109) (Remote host closed the connection) |
| 04:35:46 | → | lavaman joins (~lavaman@98.38.249.169) |
| 04:35:54 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 04:36:08 | → | lavaman joins (~lavaman@98.38.249.169) |
| 04:36:16 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 04:36:30 | → | lavaman joins (~lavaman@98.38.249.169) |
| 04:36:38 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 04:36:51 | → | lavaman joins (~lavaman@98.38.249.169) |
| 04:36:54 | × | Null_A quits (~null_a@2601:645:8700:2290:8935:4edf:b32:6553) (Remote host closed the connection) |
| 04:36:59 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 04:37:13 | → | lavaman joins (~lavaman@98.38.249.169) |
| 04:37:20 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 04:37:35 | → | lavaman joins (~lavaman@98.38.249.169) |
| 04:37:43 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 04:37:57 | → | lavaman joins (~lavaman@98.38.249.169) |
| 04:38:04 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 04:38:18 | → | lavaman joins (~lavaman@98.38.249.169) |
| 04:38:26 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 04:38:41 | → | lavaman joins (~lavaman@98.38.249.169) |
| 04:38:48 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 04:39:03 | → | lavaman joins (~lavaman@98.38.249.169) |
| 04:39:10 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 04:39:25 | → | lavaman joins (~lavaman@98.38.249.169) |
| 04:39:32 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 04:39:46 | → | lavaman joins (~lavaman@98.38.249.169) |
| 04:39:54 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 04:40:07 | → | lavaman joins (~lavaman@98.38.249.169) |
| 04:40:15 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 04:40:16 | → | bitdex joins (~bitdex@gateway/tor-sasl/bitdex) |
| 04:40:29 | → | lavaman joins (~lavaman@98.38.249.169) |
| 04:40:37 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 04:40:51 | → | lavaman joins (~lavaman@98.38.249.169) |
| 04:40:58 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 04:41:13 | → | lavaman joins (~lavaman@98.38.249.169) |
| 04:41:21 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 04:41:35 | → | lavaman joins (~lavaman@98.38.249.169) |
| 04:41:43 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 04:41:57 | → | lavaman joins (~lavaman@98.38.249.169) |
| 04:42:05 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 04:42:19 | → | lavaman joins (~lavaman@98.38.249.169) |
| 04:42:27 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 04:42:42 | → | lavaman joins (~lavaman@98.38.249.169) |
| 04:42:50 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 04:43:04 | → | lavaman joins (~lavaman@98.38.249.169) |
| 04:43:11 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 04:43:26 | → | lavaman joins (~lavaman@98.38.249.169) |
| 04:43:34 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 04:43:49 | → | lavaman joins (~lavaman@98.38.249.169) |
| 04:43:57 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 04:44:06 | × | [itchyjunk] quits (~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 256 seconds) |
| 04:44:12 | → | lavaman joins (~lavaman@98.38.249.169) |
| 04:44:19 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 04:44:33 | → | lavaman joins (~lavaman@98.38.249.169) |
| 04:44:41 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 04:44:55 | → | lavaman joins (~lavaman@98.38.249.169) |
| 04:45:03 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 04:45:18 | → | lavaman joins (~lavaman@98.38.249.169) |
| 04:45:26 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 04:48:38 | × | vglfr quits (~vglfr@46.96.133.112) (Ping timeout: 256 seconds) |
| 04:55:52 | → | zebrag joins (~chris@user/zebrag) |
| 04:59:17 | × | Erutuon quits (~Erutuon@user/erutuon) (Ping timeout: 240 seconds) |
| 05:02:36 | → | Erutuon joins (~Erutuon@user/erutuon) |
| 05:09:42 | × | little_mac quits (~little_ma@2601:410:4300:3ce0:a84a:183:2c1b:3735) (Remote host closed the connection) |
| 05:13:53 | → | little_mac joins (~little_ma@2601:410:4300:3ce0:a5db:5f46:eccb:4a78) |
| 05:14:02 | × | machinedgod quits (~machinedg@24.105.81.50) (Ping timeout: 240 seconds) |
| 05:15:58 | → | lavaman joins (~lavaman@98.38.249.169) |
| 05:18:30 | → | yauhsien joins (~yauhsien@61-231-37-18.dynamic-ip.hinet.net) |
| 05:20:18 | × | lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 250 seconds) |
| 05:22:04 | × | raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 256 seconds) |
| 05:22:37 | × | mon_aaraj quits (~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 240 seconds) |
| 05:22:57 | × | yauhsien quits (~yauhsien@61-231-37-18.dynamic-ip.hinet.net) (Ping timeout: 240 seconds) |
| 05:24:54 | → | mon_aaraj joins (~MonAaraj@user/mon-aaraj/x-4416475) |
| 05:25:15 | → | mbuf joins (~Shakthi@122.162.13.98) |
| 05:25:52 | × | azimut_ quits (~azimut@gateway/tor-sasl/azimut) (Remote host closed the connection) |
| 05:26:21 | → | azimut joins (~azimut@gateway/tor-sasl/azimut) |
| 05:29:45 | <segfaultfizzbuzz> | i just learned my first little bit of x86 assembly and noticed that a lot of the basic operations mutate the registers |
| 05:30:17 | × | slowButPresent quits (~slowButPr@user/slowbutpresent) (Quit: leaving) |
| 05:30:31 | <segfaultfizzbuzz> | so, i don't want to get in too far over my head here but,... does haskell de-mutate things then, or..? |
| 05:32:42 | → | wroathe joins (~wroathe@206-55-188-8.fttp.usinternet.com) |
| 05:32:42 | × | wroathe quits (~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host) |
| 05:32:42 | → | wroathe joins (~wroathe@user/wroathe) |
| 05:33:14 | <segfaultfizzbuzz> | and does that mean that a more immutability-friendly ISA would make sense to have...? |
| 05:34:18 | × | zebrag quits (~chris@user/zebrag) (Quit: Konversation terminated!) |
| 05:35:44 | × | raym quits (~raym@user/raym) (Quit: kernel update, rebooting...) |
| 05:42:17 | → | raym joins (~raym@user/raym) |
| 05:46:03 | <EvanR> | a lot of mutation goes on behind the scenes in haskell. For example, when a thunk is evaluated it's contents are overwritten with the answer, which can then be used again later |
| 05:46:12 | → | jao joins (~jao@68.235.43.13) |
| 05:46:55 | <EvanR> | ST programs can literally mutate variables and arrays in a type safe way |
| 05:46:57 | × | wroathe quits (~wroathe@user/wroathe) (Ping timeout: 240 seconds) |
| 05:47:10 | <EvanR> | even within a pure computation |
| 05:49:04 | → | lavaman joins (~lavaman@98.38.249.169) |
| 05:50:10 | → | georgy joins (~bc8147f2@cerf.good1.com) |
| 05:53:48 | × | lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 256 seconds) |
| 05:55:15 | <segfaultfizzbuzz> | hmm... bbl srry |
| 05:55:20 | <ephemient> | basically all our actual hardware is https://en.wikipedia.org/wiki/Von_Neumann_architecture |
| 05:56:09 | → | wroathe joins (~wroathe@206-55-188-8.fttp.usinternet.com) |
| 05:56:09 | × | wroathe quits (~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host) |
| 05:56:09 | → | wroathe joins (~wroathe@user/wroathe) |
| 05:57:08 | × | tommd quits (~tommd@67-42-147-226.ptld.qwest.net) (Ping timeout: 250 seconds) |
| 05:59:17 | × | segfaultfizzbuzz quits (~rustisafu@2602:306:cd3c:9350:59e3:db49:aa0a:46e5) (Ping timeout: 240 seconds) |
| 06:00:21 | → | deadmarshal joins (~deadmarsh@95.38.117.123) |
| 06:00:44 | → | curtis joins (~curtis@76.208.249.124) |
| 06:00:50 | × | wroathe quits (~wroathe@user/wroathe) (Ping timeout: 268 seconds) |
| 06:02:24 | → | Jing joins (~hedgehog@240e:390:7c53:a7e1:247f:ed9b:32f9:1faf) |
| 06:03:50 | × | little_mac quits (~little_ma@2601:410:4300:3ce0:a5db:5f46:eccb:4a78) (Remote host closed the connection) |
| 06:06:51 | × | curtis quits (~curtis@76.208.249.124) (Quit: leaving) |
| 06:17:09 | × | alMalsamo quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 276 seconds) |
| 06:19:34 | → | alMalsamo joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 06:24:57 | × | alMalsamo quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 276 seconds) |
| 06:25:08 | × | fef quits (~thedawn@user/thedawn) (Remote host closed the connection) |
| 06:28:20 | → | takuan joins (~takuan@178-116-218-225.access.telenet.be) |
| 06:30:04 | × | Erutuon quits (~Erutuon@user/erutuon) (Ping timeout: 250 seconds) |
| 06:32:53 | → | Erutuon joins (~Erutuon@user/erutuon) |
| 06:33:13 | × | phma quits (phma@2001:5b0:212a:9da8:6f5b:6926:b319:62a2) (Read error: Connection reset by peer) |
| 06:34:34 | → | phma joins (phma@2001:5b0:2172:8d38:d8c9:6275:aa70:e454) |
| 06:35:21 | × | nunggu quits (~q@user/nunggu) (Ping timeout: 276 seconds) |
| 06:41:40 | × | mcglk quits (~mcglk@131.191.49.120) (Read error: Connection reset by peer) |
| 06:44:31 | → | cynomys joins (~cynomys@user/cynomys) |
| 06:44:56 | → | mcglk joins (~mcglk@131.191.49.120) |
| 06:47:49 | → | thevishy joins (~Nishant@2405:201:f005:c007:60d1:4243:e46a:fb96) |
| 06:53:25 | → | merijn joins (~merijn@c-001-001-018.client.esciencecenter.eduvpn.nl) |
| 06:54:56 | → | JuanMiguel joins (~juanmi@72.red-79-158-14.dynamicip.rima-tde.net) |
| 06:56:13 | × | JuanMiguel quits (~juanmi@72.red-79-158-14.dynamicip.rima-tde.net) (Client Quit) |
| 07:01:44 | → | nunggu joins (~q@user/nunggu) |
| 07:13:49 | × | Erutuon quits (~Erutuon@user/erutuon) (Ping timeout: 240 seconds) |
| 07:17:18 | × | econo quits (uid147250@user/econo) (Quit: Connection closed for inactivity) |
| 07:20:14 | → | fef joins (~thedawn@user/thedawn) |
| 07:21:57 | × | zmt01 quits (~zmt00@user/zmt00) (Ping timeout: 240 seconds) |
| 07:26:47 | × | rembo10 quits (~rembo10@remulis.com) (Quit: ZNC 1.8.2 - https://znc.in) |
| 07:27:16 | × | merijn quits (~merijn@c-001-001-018.client.esciencecenter.eduvpn.nl) (Ping timeout: 250 seconds) |
| 07:27:40 | → | rembo10 joins (~rembo10@remulis.com) |
| 07:33:24 | → | alp joins (~alp@user/alp) |
| 07:35:37 | → | Feuermagier joins (~Feuermagi@user/feuermagier) |
| 07:36:12 | × | cynomys quits (~cynomys@user/cynomys) (Quit: Lost terminal) |
| 07:36:56 | × | jao quits (~jao@68.235.43.13) (Remote host closed the connection) |
| 07:38:16 | × | alp quits (~alp@user/alp) (Ping timeout: 268 seconds) |
| 07:40:11 | × | thevishy quits (~Nishant@2405:201:f005:c007:60d1:4243:e46a:fb96) (Quit: Leaving) |
| 07:44:33 | × | harveypwca quits (~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67) (Quit: Leaving) |
| 07:52:27 | → | max22- joins (~maxime@lfbn-ren-1-1026-62.w92-139.abo.wanadoo.fr) |
| 07:57:36 | × | Akiva quits (~Akiva@user/Akiva) (Ping timeout: 250 seconds) |
| 07:59:07 | × | geekosaur quits (~geekosaur@xmonad/geekosaur) (Remote host closed the connection) |
| 08:00:27 | × | fef quits (~thedawn@user/thedawn) (Remote host closed the connection) |
| 08:00:52 | → | fef joins (~thedawn@user/thedawn) |
| 08:01:20 | × | kaph quits (~kaph@net-2-47-208-144.cust.vodafonedsl.it) (Read error: Connection reset by peer) |
| 08:07:11 | → | mikoto-chan joins (~mikoto-ch@213.177.151.239) |
| 08:08:09 | × | Feuermagier quits (~Feuermagi@user/feuermagier) (Remote host closed the connection) |
| 08:08:47 | → | Feuermagier joins (~Feuermagi@user/feuermagier) |
| 08:09:36 | × | fef quits (~thedawn@user/thedawn) (Ping timeout: 276 seconds) |
| 08:12:30 | × | Feuermagier quits (~Feuermagi@user/feuermagier) (Remote host closed the connection) |
| 08:12:36 | → | geekosaur joins (~geekosaur@xmonad/geekosaur) |
| 08:14:19 | → | Feuermagier joins (~Feuermagi@user/feuermagier) |
| 08:16:00 | × | Feuermagier quits (~Feuermagi@user/feuermagier) (Remote host closed the connection) |
| 08:16:06 | → | Gurkenglas joins (~Gurkengla@dslb-090-186-104-244.090.186.pools.vodafone-ip.de) |
| 08:16:25 | → | Feuermagier joins (~Feuermagi@user/feuermagier) |
| 08:21:33 | × | Feuermagier quits (~Feuermagi@user/feuermagier) (Remote host closed the connection) |
| 08:26:48 | → | madjestic joins (~madjestic@88-159-247-120.fixed.kpn.net) |
| 08:27:22 | → | Feuermagier joins (~Feuermagi@user/feuermagier) |
| 08:29:46 | × | Feuermagier quits (~Feuermagi@user/feuermagier) (Remote host closed the connection) |
| 08:31:16 | × | Vajb quits (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer) |
| 08:32:41 | → | vysn joins (~vysn@user/vysn) |
| 08:33:31 | → | alMalsamo joins (~alMalsamo@gateway/tor-sasl/almalsamo) |
| 08:35:17 | × | max22- quits (~maxime@lfbn-ren-1-1026-62.w92-139.abo.wanadoo.fr) (Ping timeout: 250 seconds) |
| 08:35:25 | × | vysn quits (~vysn@user/vysn) (Client Quit) |
| 08:37:50 | → | Vajb joins (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) |
| 08:44:00 | × | bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection) |
| 08:44:48 | → | bitdex joins (~bitdex@gateway/tor-sasl/bitdex) |
| 08:47:09 | → | alp joins (~alp@user/alp) |
| 08:48:35 | × | FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection) |
| 08:48:55 | → | FinnElija joins (~finn_elij@user/finn-elija/x-0085643) |
| 08:54:48 | → | Feuermagier joins (~Feuermagi@user/feuermagier) |
| 08:56:26 | × | Feuermagier quits (~Feuermagi@user/feuermagier) (Remote host closed the connection) |
| 08:57:53 | → | Inst joins (~delicacie@2601:6c4:4080:3f80:89ce:900e:7230:cda2) |
| 08:59:50 | → | Erutuon joins (~Erutuon@user/erutuon) |
| 09:00:55 | → | merijn joins (~merijn@c-001-001-018.client.esciencecenter.eduvpn.nl) |
| 09:04:42 | × | megaTherion quits (~therion@unix.io) (Read error: Connection reset by peer) |
| 09:07:33 | × | alp quits (~alp@user/alp) (Ping timeout: 250 seconds) |
| 09:08:57 | × | mon_aaraj quits (~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 240 seconds) |
| 09:12:07 | → | lavaman joins (~lavaman@98.38.249.169) |
| 09:15:51 | → | Tuplanolla joins (~Tuplanoll@91-159-68-166.elisa-laajakaista.fi) |
| 09:16:32 | → | mon_aaraj joins (~MonAaraj@user/mon-aaraj/x-4416475) |
| 09:16:37 | → | mc47 joins (~mc47@xmonad/TheMC47) |
| 09:16:39 | × | lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 250 seconds) |
| 09:17:36 | × | geekosaur quits (~geekosaur@xmonad/geekosaur) (Remote host closed the connection) |
| 09:17:38 | → | allbery_b joins (~geekosaur@xmonad/geekosaur) |
| 09:17:41 | allbery_b | is now known as geekosaur |
| 09:19:59 | × | tzh quits (~tzh@c-24-21-73-154.hsd1.wa.comcast.net) (Quit: zzz) |
| 09:20:54 | → | gehmehgeh joins (~user@user/gehmehgeh) |
| 09:20:56 | × | eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
| 09:21:18 | → | max22- joins (~maxime@2a01cb0883359800ceae7201b4b629dd.ipv6.abo.wanadoo.fr) |
| 09:23:51 | → | Guest9864 joins (~Guest98@82.212.122.61) |
| 09:24:53 | × | mon_aaraj quits (~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 250 seconds) |
| 09:25:20 | <Guest9864> | Hi guys, I am trying to write a haskell website for fun using yesod but im running into an issue where I am trying to use System,random, it says its hidden, I try to add it to my .cabal file but whenever i try to save that file with random added in the build-depends, the added line literally dissappears |
| 09:25:50 | <Guest9864> | any thoughts on what this might me ? :) Thanks |
| 09:26:32 | <polyphem> | are you using hpack ? |
| 09:26:38 | <Guest9864> | i dont know what is |
| 09:26:50 | <Guest9864> | what that is** |
| 09:26:52 | → | mon_aaraj joins (~MonAaraj@user/mon-aaraj/x-4416475) |
| 09:27:51 | <polyphem> | it regenerates your .cabal file everytime you build , from a file called package.yaml , do you have package.yaml ? |
| 09:27:58 | <Guest9864> | let me check |
| 09:28:05 | <Guest9864> | yes i do |
| 09:29:22 | <polyphem> | i havent used hpack , but i think you either have to add your dependency to package.yaml , or delete(rename) package.yaml so your .cabal file won't get regenerated |
| 09:29:25 | <Guest9864> | I added there and it seems to be working, I have another error though so let me try to solve it |
| 09:37:16 | × | jespada quits (~jespada@87.74.36.188) (Ping timeout: 250 seconds) |
| 09:39:01 | × | Erutuon quits (~Erutuon@user/erutuon) (Ping timeout: 240 seconds) |
| 09:39:27 | → | jespada joins (~jespada@87.74.36.188) |
| 09:41:02 | → | yauhsien joins (~yauhsien@61-231-37-18.dynamic-ip.hinet.net) |
| 09:45:00 | <Guest9864> | Why is it saying that variable is not in scope for uniformR ? https://paste.tomsmeding.com/GsEG1xVQ |
| 09:45:12 | <Guest9864> | this is how it is used here :> https://hackage.haskell.org/package/random-1.2.1/docs/System-Random.html#v:uniformR |
| 09:45:37 | × | yauhsien quits (~yauhsien@61-231-37-18.dynamic-ip.hinet.net) (Ping timeout: 240 seconds) |
| 09:45:53 | <Rembane> | Guest9864: Is it pureGen that's not in scope? |
| 09:45:59 | <Guest9864> | nope, uniformR |
| 09:47:15 | <Guest9864> | exact error : https://paste.tomsmeding.com/JXwn2fkx |
| 09:47:18 | <Rembane> | Guest9864: Which version of random are you using? |
| 09:47:32 | <Guest9864> | I didnt specify |
| 09:48:09 | <Rembane> | Are you using a cabal project or stack or have you installed things in another way? |
| 09:48:23 | <Guest9864> | im using stack |
| 09:49:11 | <Rembane> | Which release are you using? |
| 09:49:26 | <Guest9864> | of stack ? the most recent one, just downloaded it a few days ago |
| 09:49:55 | <Guest9864> | 2.7.3 |
| 09:51:02 | <Rembane> | Sorry, I used the wrong word. Snapshot was the one I was looking for. LTS 18.23 is the latest snapshot, which one are you using? |
| 09:51:44 | <Rembane> | My hypothesis is that you are using a version of the package random that's older than 1.2. |
| 09:55:33 | <Guest9864> | i am |
| 09:55:35 | <Guest9864> | I am using 1.1 |
| 10:00:16 | × | jinsun__ quits (~quassel@user/jinsun) (Read error: Connection reset by peer) |
| 10:00:32 | → | Feuermagier joins (~Feuermagi@user/feuermagier) |
| 10:01:09 | <Rembane> | Guest9864: That explains why you don't have uniformR, uniformR is introduced in version 1.2. |
| 10:01:47 | → | jinsun joins (~quassel@user/jinsun) |
| 10:01:49 | <Rembane> | Guest9864: https://hackage.haskell.org/package/random-1.2.1/docs/System-Random.html#v:uniformR At the documentation for uniformR there's a small note about it. |
| 10:02:37 | <Guest9864> | I see |
| 10:02:38 | <Guest9864> | thanks |
| 10:03:19 | <Rembane> | No worries. :) |
| 10:04:25 | × | merijn quits (~merijn@c-001-001-018.client.esciencecenter.eduvpn.nl) (Ping timeout: 268 seconds) |
| 10:04:42 | → | cosimone joins (~user@2001:b07:ae5:db26:c24a:d20:4d91:1e20) |
| 10:05:00 | × | mon_aaraj quits (~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 250 seconds) |
| 10:05:57 | → | flipchan joins (~filip@188-169-255-31.dsl.utg.ge) |
| 10:07:02 | → | Midjak joins (~Midjak@may53-1-78-226-116-92.fbx.proxad.net) |
| 10:07:13 | → | mon_aaraj joins (~MonAaraj@user/mon-aaraj/x-4416475) |
| 10:21:20 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:2541:beac:9acd:61a8) |
| 10:22:34 | <Guest9864> | whats wrong here ? https://paste.tomsmeding.com/Rmub1shC I keep getting an error telling me to use a let in a do block |
| 10:23:01 | <Guest9864> | but my understanding is that i can use one let and write a bunch of statements on the same level of indentation |
| 10:23:16 | <Guest9864> | as long as its inside a do block |
| 10:23:32 | <ski> | indent the next line |
| 10:23:49 | <Guest9864> | which next line ? |
| 10:24:09 | <ski> | let pureGen = mkStdGen 137 |
| 10:24:11 | <ski> | (randNum, _) = randomR (1 :: Int, 5 :: Int) pureGen |
| 10:24:32 | <Guest9864> | shouldn't it be okay that they are on the same level of indentation since they are in a do block ?? |
| 10:24:52 | <Guest9864> | it worked but i dont understand why |
| 10:24:56 | <ski> | your definitions inside the `let' should all be on the same level of indentation, yes |
| 10:25:00 | → | coot joins (~coot@213.134.190.95) |
| 10:25:16 | <ski> | `pureGen = ...' should start in the same column as `(randNum, _) = ...' |
| 10:25:37 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:2541:beac:9acd:61a8) (Ping timeout: 240 seconds) |
| 10:26:32 | <ski> | you had `(randNum, _) = ...' on the same level as the `let' itself, which means that it was not inside the `let', it was at the level of the commands inside the `do' |
| 10:26:49 | <ski> | (and there's no `... = ...'-commands in a `do'-expression) |
| 10:27:54 | <ski> | btw, just so you know |
| 10:27:57 | <ski> | let |
| 10:28:01 | <ski> | pureGen = mkStdGen 137 |
| 10:28:06 | <ski> | (randNum, _) = randomR (1 :: Int, 5 :: Int) pureGen |
| 10:28:12 | <ski> | would have worked just as well |
| 10:28:26 | <ski> | (perhaps here you can more easily see that they're on the same level) |
| 10:28:46 | <Guest9864> | i guess i understand |
| 10:28:47 | <Guest9864> | thanks |
| 10:29:47 | × | Vajb quits (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer) |
| 10:29:58 | <ski> | oh, and i'd not use `mkStdGen' |
| 10:30:21 | <ski> | (unless you do want this to be deterministic) |
| 10:33:45 | → | dyeplexer joins (~dyeplexer@user/dyeplexer) |
| 10:33:53 | × | Everything quits (~Everythin@37.115.210.35) (Quit: leaving) |
| 10:36:12 | × | Inst quits (~delicacie@2601:6c4:4080:3f80:89ce:900e:7230:cda2) (Ping timeout: 250 seconds) |
| 10:36:43 | → | __monty__ joins (~toonn@user/toonn) |
| 10:37:23 | → | Inst joins (~delicacie@2601:6c4:4080:3f80:c4e7:d723:91db:1b9f) |
| 10:40:48 | × | Sgeo quits (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
| 10:43:56 | × | _ht quits (~quassel@231-169-21-31.ftth.glasoperator.nl) (Ping timeout: 256 seconds) |
| 10:44:10 | × | Inst quits (~delicacie@2601:6c4:4080:3f80:c4e7:d723:91db:1b9f) (Ping timeout: 260 seconds) |
| 10:44:17 | × | xff0x quits (~xff0x@2001:1a81:52b5:2e00:620f:6b65:415e:34ea) (Ping timeout: 240 seconds) |
| 10:44:26 | × | madjestic quits (~madjestic@88-159-247-120.fixed.kpn.net) (Ping timeout: 250 seconds) |
| 10:50:26 | → | Lord_of_Life_ joins (~Lord@user/lord-of-life/x-2819915) |
| 10:51:17 | × | Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 240 seconds) |
| 10:53:18 | Lord_of_Life_ | is now known as Lord_of_Life |
| 10:54:26 | × | Guest9864 quits (~Guest98@82.212.122.61) (Quit: Client closed) |
| 10:56:46 | → | xff0x joins (~xff0x@2001:1a81:52b5:2e00:620f:6b65:415e:34ea) |
| 11:05:29 | → | nightbreak joins (~nightbrea@victors-mbp.dyndns.rice.edu) |
| 11:08:40 | → | arjun joins (~arjun@user/arjun) |
| 11:08:46 | <arjun> | hi |
| 11:08:59 | <geekosaur> | o/ |
| 11:09:31 | <arjun> | any way i can tell ghci to load the language extensions in language pragmas from the file being loaded |
| 11:09:37 | <arjun> | o/ geekosaur |
| 11:09:41 | <geekosaur> | no |
| 11:10:12 | <geekosaur> | think about it, if you have multiple files loaded and switch between them, which pragmas if any should (not) be in effect? |
| 11:10:48 | <arjun> | automagic switching, wooosh :p |
| 11:11:18 | <arjun> | i get it. it's by design, thanks |
| 11:12:12 | <arjun> | btw, i did get those tabs working geekosaur |
| 11:12:44 | <arjun> | i know now what you meant by "they behave like titlebars" : p |
| 11:13:05 | <geekosaur> | my screenshot showed it on the right hand screen, even |
| 11:13:09 | → | Vajb joins (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) |
| 11:13:22 | <geekosaur> | that was a large opart of why I made the screenshot |
| 11:13:38 | <geekosaur> | someday we need a less hacky tab mechanism |
| 11:13:42 | <arjun> | i was hoping they'd switch like i3's |
| 11:13:51 | <arjun> | a tab allows it's own sublayout |
| 11:14:08 | <arjun> | and then you can switch between those |
| 11:14:21 | <arjun> | pretty handy |
| 11:14:47 | <geekosaur> | there's a module for that too, iirc |
| 11:14:55 | <arjun> | >.< |
| 11:15:02 | <arjun> | ofc there is : p |
| 11:15:31 | <arjun> | i still have some things i am struggling with. i'll see if you're around tonight |
| 11:15:36 | × | max22- quits (~maxime@2a01cb0883359800ceae7201b4b629dd.ipv6.abo.wanadoo.fr) (Remote host closed the connection) |
| 11:15:55 | <geekosaur> | https://hackage.haskell.org/package/xmonad-contrib-0.17.0/docs/XMonad-Layout-SubLayouts.html#v:subTabbed |
| 11:16:18 | <geekosaur> | also did you see liskin and myself discussing your dpms question? |
| 11:16:25 | → | max22- joins (~maxime@lfbn-ren-1-1026-62.w92-139.abo.wanadoo.fr) |
| 11:16:41 | <geekosaur> | you really need a scriptable acpid, you can't do it from xmonad or any other window manager |
| 11:17:10 | <geekosaur> | debianoids at least package a scriptable acpid and you could edit the scripts for lid open/close to reconfigure xrandr |
| 11:21:18 | → | schuelermine joins (~schuelerm@user/schuelermine) |
| 11:26:00 | × | Vajb quits (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer) |
| 11:26:28 | → | Vajb joins (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) |
| 11:27:59 | × | Vajb quits (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer) |
| 11:28:09 | → | Vajb joins (~Vajb@2001:999:274:c862:3b86:e1e1:5bff:355e) |
| 11:38:08 | × | nightbreak quits (~nightbrea@victors-mbp.dyndns.rice.edu) (Quit: Signing off for now...) |
| 11:41:40 | → | lavaman joins (~lavaman@98.38.249.169) |
| 11:46:46 | × | byorgey quits (~byorgey@155.138.238.211) (Quit: leaving) |
| 11:51:45 | → | byorgey joins (~byorgey@155.138.238.211) |
| 11:56:12 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 11:56:26 | → | lavaman joins (~lavaman@98.38.249.169) |
| 11:56:34 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 11:56:48 | → | lavaman joins (~lavaman@98.38.249.169) |
| 11:56:55 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 11:57:09 | → | lavaman joins (~lavaman@98.38.249.169) |
| 11:57:17 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 11:57:31 | <liskin> | also it's quite likely that something (probably upower) would emit a dbus signal when the lid is closed |
| 11:57:32 | → | lavaman joins (~lavaman@98.38.249.169) |
| 11:57:39 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 11:57:53 | → | lavaman joins (~lavaman@98.38.249.169) |
| 11:58:00 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 11:58:14 | → | lavaman joins (~lavaman@98.38.249.169) |
| 11:58:22 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 11:58:35 | → | lavaman joins (~lavaman@98.38.249.169) |
| 11:58:43 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 11:58:58 | → | lavaman joins (~lavaman@98.38.249.169) |
| 11:59:06 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 11:59:21 | → | lavaman joins (~lavaman@98.38.249.169) |
| 11:59:22 | <arjun> | liskin, i have upower |
| 11:59:28 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 11:59:41 | → | lavaman joins (~lavaman@98.38.249.169) |
| 11:59:49 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 11:59:50 | <liskin> | I kind of expected systemd-logind to emit a PropertyChanged as well, since there is a LidClosed property on /org/freedesktop/login1, but it doesn't :-/ |
| 12:00:03 | → | lavaman joins (~lavaman@98.38.249.169) |
| 12:00:05 | <geekosaur> | lavaman, you're bouncing |
| 12:00:11 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 12:00:18 | ChanServ | sets mode +o geekosaur |
| 12:00:25 | → | lavaman joins (~lavaman@98.38.249.169) |
| 12:00:33 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 12:00:34 | <arjun> | when i run gnome, this done exactly right (probably by gnome itself) |
| 12:00:47 | → | lavaman joins (~lavaman@98.38.249.169) |
| 12:00:49 | geekosaur | sets mode +b *!*@98.38.249.169 |
| 12:00:55 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 12:01:16 | geekosaur | sets mode -o geekosaur |
| 12:01:26 | <liskin> | (we should probably move this to #xmonad) |
| 12:03:07 | → | lionhairdino joins (~jacoo@121.131.39.82) |
| 12:03:16 | → | kaph joins (~kaph@net-2-47-208-144.cust.vodafonedsl.it) |
| 12:06:42 | → | boxscape_ joins (~boxscape_@p4ff0b9d5.dip0.t-ipconnect.de) |
| 12:08:22 | × | Gurkenglas quits (~Gurkengla@dslb-090-186-104-244.090.186.pools.vodafone-ip.de) (Ping timeout: 256 seconds) |
| 12:10:18 | <boxscape_> | Any idea what might drive GHC to produce this error? It seems nonsensical. https://paste.tomsmeding.com/LAGAbg5P |
| 12:10:19 | <boxscape_> | I'm hoping that someone has encountered a similar "Could not deduce x from context x" error and remembers why it ocurred. |
| 12:10:38 | × | arjun quits (~arjun@user/arjun) (Remote host closed the connection) |
| 12:11:03 | × | Feuermagier quits (~Feuermagi@user/feuermagier) (Remote host closed the connection) |
| 12:11:25 | → | Feuermagier joins (~Feuermagi@user/feuermagier) |
| 12:11:28 | <boxscape_> | oh hm I suppose probably the kinds are different somehow |
| 12:12:02 | <geekosaur> | hm, do you need ScopedTypeVariables for that second x to be in scope? |
| 12:12:32 | <geekosaur> | or is that automatic in instance definitions? I forget |
| 12:12:37 | <boxscape_> | I don't think I do, but I already had it enabled |
| 12:13:24 | <boxscape_> | I think adding a kind signature will help, if I can figure out what it should be. Though I suspect the kinds are need are only exported from hidden modules -.- |
| 12:13:39 | <boxscape_> | s/are/I |
| 12:14:40 | <boxscape_> | geekosaur turns out you do need ScopedTypeVariables for this after all, though it's not the cause of this particular error |
| 12:15:11 | × | schuelermine quits (~schuelerm@user/schuelermine) (Ping timeout: 250 seconds) |
| 12:15:47 | <geekosaur> | maybe a type signature on getField would help clarify which x? (you probably do need explicit forall there) |
| 12:16:01 | <geekosaur> | might require an extension |
| 12:17:06 | <geekosaur> | InstanceSigs? |
| 12:17:55 | <geekosaur> | apparently not |
| 12:18:07 | × | Feuermagier quits (~Feuermagi@user/feuermagier) (Remote host closed the connection) |
| 12:18:25 | → | Feuermagier joins (~Feuermagi@user/feuermagier) |
| 12:18:36 | <geekosaur> | actually yes, I just got my search wrong |
| 12:19:54 | × | Feuermagier quits (~Feuermagi@user/feuermagier) (Remote host closed the connection) |
| 12:20:49 | <boxscape_> | Adding an instance sig doesn't help, unfortunately. I think it knows what `x` it is, but wrapping it in `Name` introduces an additional kind variable that's currently likely filled with `Any`. I'll have to look at the FIR source to see what kind I'll need to give it. |
| 12:21:02 | ChanServ | sets mode +o litharge |
| 12:21:02 | litharge | sets mode -bo *!*@98.38.249.169 litharge |
| 12:21:15 | → | lavaman joins (~lavaman@98.38.249.169) |
| 12:21:20 | → | Feuermagier joins (~Feuermagi@user/feuermagier) |
| 12:21:21 | <geekosaur> | sigh |
| 12:21:23 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 12:21:25 | × | Feuermagier quits (~Feuermagi@user/feuermagier) (Remote host closed the connection) |
| 12:21:29 | ChanServ | sets mode +o geekosaur |
| 12:21:36 | → | lavaman joins (~lavaman@98.38.249.169) |
| 12:21:44 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 12:21:59 | → | lavaman joins (~lavaman@98.38.249.169) |
| 12:22:04 | geekosaur | sets mode +b *!*@98.38.249.169$##fix-your-connection |
| 12:22:06 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 12:25:27 | <boxscape_> | using -fprint-explicit-kinds helps and show that the kinds indeed don't match |
| 12:27:08 | → | Inst joins (~delicacie@c-98-208-218-119.hsd1.fl.comcast.net) |
| 12:28:10 | <boxscape_> | this code (same but added kind signature) works :) https://paste.tomsmeding.com/eJBmYiMs |
| 12:29:24 | geekosaur | sets mode -o geekosaur |
| 12:29:25 | × | mon_aaraj quits (~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 240 seconds) |
| 12:31:41 | → | mon_aaraj joins (~MonAaraj@user/mon-aaraj/x-4416475) |
| 12:33:36 | → | Andrew joins (andrew@andrewyu.org) |
| 12:35:42 | × | Vajb quits (~Vajb@2001:999:274:c862:3b86:e1e1:5bff:355e) (Read error: Connection reset by peer) |
| 12:35:55 | → | Vajb joins (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) |
| 12:42:20 | ChanServ | sets mode +o litharge |
| 12:42:21 | litharge | sets mode -bo *!*@98.38.249.169$##fix-your-connection litharge |
| 12:44:45 | × | deadmarshal quits (~deadmarsh@95.38.117.123) (Ping timeout: 268 seconds) |
| 12:46:13 | AlexNoo_ | is now known as AlexNoo |
| 13:05:42 | → | Gurkenglas joins (~Gurkengla@dslb-090-186-104-244.090.186.pools.vodafone-ip.de) |
| 13:06:06 | × | georgy quits (~bc8147f2@cerf.good1.com) (Quit: CGI:IRC (Session timeout)) |
| 13:08:11 | × | max22- quits (~maxime@lfbn-ren-1-1026-62.w92-139.abo.wanadoo.fr) (Ping timeout: 268 seconds) |
| 13:10:08 | × | Inst quits (~delicacie@c-98-208-218-119.hsd1.fl.comcast.net) (Ping timeout: 256 seconds) |
| 13:11:24 | <Andrew> | I've literally seen people writing in Haskell IMPERATIVELY, i.e. putting everything in IO() and do |
| 13:12:12 | × | kjak quits (~kjak@pool-108-45-56-21.washdc.fios.verizon.net) (Ping timeout: 250 seconds) |
| 13:12:17 | → | lavaman joins (~lavaman@98.38.249.169) |
| 13:12:26 | → | yauhsien_ joins (~yauhsien@61-231-37-18.dynamic-ip.hinet.net) |
| 13:12:27 | <boxscape_> | kinda doing that in the project I'm writing right now because every second line (might be hyperbole) is an FFI call to Vulkan |
| 13:12:28 | × | yauhsien_ quits (~yauhsien@61-231-37-18.dynamic-ip.hinet.net) (Remote host closed the connection) |
| 13:12:29 | <polyphem> | Andrew : sure |
| 13:12:51 | <Andrew> | I mean, I'm not sure if Haskell is the right language to do that in |
| 13:13:00 | → | yauhsien_ joins (~yauhsien@61-231-37-18.dynamic-ip.hinet.net) |
| 13:13:25 | <boxscape_> | I don't really see any disadvantages compared to doing it in a different language. Except for the part where Haskell is missing idris' !-notation. |
| 13:13:26 | <Andrew> | ~~there are no purely functional languages, as much as I like lambdas) |
| 13:13:41 | <Andrew> | True though |
| 13:13:56 | <Andrew> | Also, anyone knows of any alternative compilers? |
| 13:16:37 | × | lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 240 seconds) |
| 13:17:03 | → | machinedgod joins (~machinedg@24.105.81.50) |
| 13:17:37 | <polyphem> | Andrew: there have been other implementations/compilers for haskell , however i think only ghc is activly maintained |
| 13:17:58 | <Andrew> | Yeah I noticed that |
| 13:18:14 | <Andrew> | I'm pretty happy with GHC, except for that fact that compiling Hello World takes like a few seconds |
| 13:18:18 | <polyphem> | Andrew: there is also eta/frege targeting the jvw |
| 13:18:29 | <Andrew> | JVW? |
| 13:18:36 | <boxscape_> | jvm? |
| 13:18:38 | <polyphem> | jvm , sorry |
| 13:19:11 | <boxscape_> | I think among non-GHC haskell compilers Frege has had the most recent commit |
| 13:19:11 | Andrew | doesn't like Java, so that doesn't matter to him :D |
| 13:19:13 | <boxscape_> | in May last year |
| 13:21:10 | → | CHUD joins (~CHUD@host-80-41-89-108.as13285.net) |
| 13:22:02 | → | georgy joins (~bc8147f2@cerf.good1.com) |
| 13:23:08 | <polyphem> | Andrew: have you optimizatiions -O2 turned on , that increases compile time consideratly |
| 13:23:53 | <Andrew> | polyphem: Seems so lol |
| 13:23:56 | × | shailangsa quits (~shailangs@host86-185-98-37.range86-185.btcentralplus.com) (Remote host closed the connection) |
| 13:24:32 | <polyphem> | its almost never necessary to have it turned on, it increases compile time though |
| 13:24:42 | <georgy> | Andrew, it is common to use interpreter (ghci) when developing, and then compile a final product |
| 13:24:50 | <Andrew> | I'm used to that since I used gcc before |
| 13:24:58 | <Andrew> | georgy: Yes, that's what I do rn |
| 13:25:01 | <polyphem> | check out ghcid, it reduces compile time while developing to give fast feed back |
| 13:25:46 | <boxscape_> | though VS Code with HLS is a more popular solution these days I believe |
| 13:25:57 | <boxscape_> | (...or another editor with HLS) |
| 13:26:00 | Andrew | uses emacs instead of VS code |
| 13:26:03 | <Andrew> | let's see... |
| 13:26:37 | <polyphem> | HLS however doesnt support latest ghc though ... |
| 13:26:38 | <Andrew> | I do have haskell packages installed, but I haven't utilized it... i'm just opening vterms and running ghci there |
| 13:26:53 | <boxscape_> | polyphem it does since yesterday |
| 13:27:18 | <polyphem> | ok, then i am nnot up to date :) |
| 13:27:37 | <boxscape_> | (though of course if that's something that matters you'd face the same issue for a few months once 9.4 is released) |
| 13:27:40 | → | deadmarshal joins (~deadmarsh@95.38.117.123) |
| 13:29:45 | <polyphem> | Andrew: when you use vterms , ghcid is for you , also check out hdc : https://github.com/lazamar/haskell-docs-cli |
| 13:30:33 | <Andrew> | Nah, I'll check out haskell-mode and haskell-emacs, because using vterm to run ghc and other stuff seems silly, since I'll want my code in a file afterwards anyways, but I'll check those out |
| 13:31:00 | → | lavaman joins (~lavaman@98.38.249.169) |
| 13:34:18 | × | Gurkenglas quits (~Gurkengla@dslb-090-186-104-244.090.186.pools.vodafone-ip.de) (Ping timeout: 250 seconds) |
| 13:35:36 | × | lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 250 seconds) |
| 13:37:38 | <jackdk> | Andrew: I use dante with ghcid and am reasonably happy |
| 13:38:15 | <Andrew> | I used to yank and paste code from emacs into the repl, which is reasonably stupid |
| 13:38:52 | <polyphem> | Andrew: ghcid recompiles your file automatically upon file save |
| 13:39:14 | <polyphem> | Andrew: no need to copy paste |
| 13:39:35 | <Andrew> | polyphem: while true; do inotifywait -e close_write program.hs; make program; ./program; done |
| 13:40:37 | × | pooryorick quits (~pooryoric@87-119-174-173.tll.elisa.ee) (Ping timeout: 240 seconds) |
| 13:42:04 | <polyphem> | Andrew: yeah, but ghcid , also runs linter can handle stack and cabal and gives you errors ... |
| 13:44:00 | <Andrew> | that's nice |
| 13:47:47 | forell_ | is now known as forell |
| 13:48:17 | × | forell quits (~forell@host-178-216-90-220.sta.tvknaszapraca.pl) (Changing host) |
| 13:48:17 | → | forell joins (~forell@user/forell) |
| 13:51:58 | × | jespada quits (~jespada@87.74.36.188) (Ping timeout: 268 seconds) |
| 13:53:03 | → | jespada joins (~jespada@87.74.36.188) |
| 13:56:58 | → | max22- joins (~maxime@2a01cb088335980091c6fbcd4fea35f7.ipv6.abo.wanadoo.fr) |
| 14:00:02 | → | segfaultfizzbuzz joins (~rustisafu@2602:306:cd3c:9350:59e3:db49:aa0a:46e5) |
| 14:03:43 | → | bontaq joins (~user@ool-45779fe5.dyn.optonline.net) |
| 14:06:14 | × | mon_aaraj quits (~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 256 seconds) |
| 14:08:01 | → | mon_aaraj joins (~MonAaraj@user/mon-aaraj/x-4416475) |
| 14:08:58 | → | Codaraxis joins (~Codaraxis@user/codaraxis) |
| 14:08:59 | → | kuribas joins (~user@ptr-25vy0iaa493etjqvp1u.18120a2.ip6.access.telenet.be) |
| 14:09:16 | → | o-90 joins (~o-90@gateway/tor-sasl/o-90) |
| 14:12:51 | × | mestre quits (~mestre@191.177.181.194) (Quit: Lost terminal) |
| 14:17:09 | → | pwug joins (~pwug@user/pwug) |
| 14:26:33 | → | zer0bitz joins (~zer0bitz@2001:2003:f444:a000:ec86:7a91:dddd:e8c7) |
| 14:27:46 | × | juhp quits (~juhp@128.106.188.82) (Ping timeout: 256 seconds) |
| 14:31:15 | × | yauhsien_ quits (~yauhsien@61-231-37-18.dynamic-ip.hinet.net) (Remote host closed the connection) |
| 14:31:48 | × | o-90 quits (~o-90@gateway/tor-sasl/o-90) (Ping timeout: 276 seconds) |
| 14:32:44 | × | kimjetwav quits (~user@2607:fea8:2363:8f00:79e4:1253:5b58:4ecf) (Remote host closed the connection) |
| 14:34:34 | × | dyeplexer quits (~dyeplexer@user/dyeplexer) (Ping timeout: 256 seconds) |
| 14:42:05 | → | yauhsien_ joins (~yauhsien@61-231-37-18.dynamic-ip.hinet.net) |
| 14:42:10 | × | boxscape_ quits (~boxscape_@p4ff0b9d5.dip0.t-ipconnect.de) (Quit: Connection closed) |
| 14:47:02 | × | yauhsien_ quits (~yauhsien@61-231-37-18.dynamic-ip.hinet.net) (Ping timeout: 256 seconds) |
| 14:48:05 | × | deadmarshal quits (~deadmarsh@95.38.117.123) (Ping timeout: 268 seconds) |
| 14:49:29 | → | ph88 joins (~ph88@2a02:8109:9e00:71d0:48e1:be0c:b23c:dea9) |
| 14:49:37 | → | emad joins (~emad@156.214.92.21) |
| 14:49:59 | → | pretty_dumm_guy joins (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) |
| 15:01:20 | → | ProfSimm joins (~ProfSimm@87.227.196.109) |
| 15:03:04 | → | CiaoSen joins (~Jura@p200300c95737a2002a3a4dfffe84dbd5.dip0.t-ipconnect.de) |
| 15:03:12 | → | dyeplexer joins (~dyeplexer@user/dyeplexer) |
| 15:08:51 | → | Inst joins (~delicacie@c-98-208-218-119.hsd1.fl.comcast.net) |
| 15:14:24 | × | chenqisu1 quits (~chenqisu1@183.217.200.249) (Ping timeout: 250 seconds) |
| 15:15:56 | × | Inst quits (~delicacie@c-98-208-218-119.hsd1.fl.comcast.net) (Ping timeout: 256 seconds) |
| 15:17:47 | → | pooryorick joins (~pooryoric@87-119-174-173.tll.elisa.ee) |
| 15:17:57 | → | son0p joins (~ff@2800:484:1d81:b700:d40b:900:b387:320) |
| 15:18:27 | → | zmt01 joins (~zmt00@user/zmt00) |
| 15:22:37 | × | zmt01 quits (~zmt00@user/zmt00) (Ping timeout: 240 seconds) |
| 15:26:01 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:2541:beac:9acd:61a8) |
| 15:29:08 | <georgy> | hi |
| 15:29:33 | <georgy> | how can I pass haskell function as a callback to a C function that accepts function pointer as void*? |
| 15:30:17 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:2541:beac:9acd:61a8) (Ping timeout: 240 seconds) |
| 15:35:30 | × | califax quits (~califax@user/califx) (Ping timeout: 276 seconds) |
| 15:36:45 | × | coot quits (~coot@213.134.190.95) (Quit: coot) |
| 15:37:25 | <georgy> | ok, let me step back a bit, how would I pass haskell function to a C function that accepts function pointer? is this still up to date example/ |
| 15:37:28 | <georgy> | http://wiki.haskell.org/GHC/Using_the_FFI#Callbacks_into_Haskell_from_foreign_code |
| 15:37:36 | → | califax joins (~califax@user/califx) |
| 15:37:44 | <georgy> | I'm not sure I understand this: foreign import ccall "wrapper" wrap :: (CDouble -> CDouble) -> IO (FunPtr (CDouble -> CDouble)) |
| 15:38:10 | → | kjak joins (~kjak@pool-108-45-56-21.washdc.fios.verizon.net) |
| 15:38:51 | → | lbseale joins (~ep1ctetus@user/ep1ctetus) |
| 15:42:13 | × | lbseale quits (~ep1ctetus@user/ep1ctetus) (Client Quit) |
| 15:43:13 | <[exa]> | georgy: have to say the "wrapper" there isn't really documented |
| 15:44:42 | <[exa]> | it seems like it is the thing that adds the necessary bits into the haskell notion of function (closure data + recipe for evaluating them) to the void*; you get a void pointer that you can pass to C and call as if it was a plain old ccall, then you clean the wrapper with freeHsFunPtr |
| 15:46:51 | <geekosaur> | it's semi-documented in the language report |
| 15:47:25 | <geekosaur> | (which I just noticed has a bad example for a different case, it treats errno as an actual variable) |
| 15:48:12 | <[exa]> | oh here https://gitlab.haskell.org/ghc/ghc/-/wikis/commentary/rts/ffi#foreign-import-wrapper |
| 15:48:42 | <[exa]> | "adjustor thunk", wow. |
| 15:50:48 | <geekosaur> | that's what you get for looking in the commentary :) |
| 15:50:57 | × | pavonia quits (~user@user/siracusa) (Quit: Bye!) |
| 15:52:53 | <int-e> | geekosaur: well, if you don't like guts you shouldn't ask what the sausage is made of :) |
| 15:53:16 | <geekosaur> | that was more or less my point :) |
| 15:53:30 | <int-e> | oh |
| 15:53:54 | <int-e> | (I'm mixing up nicks as usual, [exa] would've be the correct target) |
| 15:54:25 | → | madjestic joins (~madjestic@88-159-247-120.fixed.kpn.net) |
| 15:54:54 | × | wei2912 quits (~wei2912@138.75.71.147) (Remote host closed the connection) |
| 16:00:11 | → | little_mac joins (~little_ma@2601:410:4300:3ce0:b1c1:7d23:9565:94df) |
| 16:03:06 | → | bob joins (~bob@pool-173-54-217-168.nwrknj.fios.verizon.net) |
| 16:05:01 | bob | is now known as soxen |
| 16:15:34 | × | soxen quits (~bob@pool-173-54-217-168.nwrknj.fios.verizon.net) (Quit: Leaving) |
| 16:16:13 | → | raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 16:18:25 | → | wombat875 joins (~wombat875@pool-72-89-24-154.nycmny.fios.verizon.net) |
| 16:19:03 | <georgy> | it took me 15 minutes to figure out why this failed to compile: ptr <- castUINTPtrToPtr (fromIntegral x) |
| 16:19:17 | × | georgy quits (~bc8147f2@cerf.good1.com) (Quit: CGI:IRC (Error)) |
| 16:19:23 | → | fef joins (~thedawn@user/thedawn) |
| 16:19:56 | → | georgy joins (~bc8147f2@83.167.180.121) |
| 16:20:01 | <georgy> | Couldn't match type 'Ptr' with 'IO' Expected type: IO () Actual type: Ptr () |
| 16:21:08 | → | zer0bitz_ joins (~zer0bitz@2001:2003:f444:a000:319a:8ff4:9a9c:6a36) |
| 16:21:21 | <ski> | yeh, you wanted `let ptr = ...' |
| 16:21:45 | <georgy> | yes |
| 16:22:00 | → | slowButPresent joins (~slowButPr@user/slowbutpresent) |
| 16:22:00 | <ski> | (also, is `UINT_PTR' in `Num' ?) |
| 16:22:03 | <Andrew> | Unsafe stuff |
| 16:22:31 | <ski> | the cast ? |
| 16:22:35 | <Andrew> | By the way, just curious, what are you trying to achieve with callbacks? |
| 16:22:48 | <Andrew> | Pointers are unsafe to me :) |
| 16:23:03 | × | kaph quits (~kaph@net-2-47-208-144.cust.vodafonedsl.it) (Read error: Connection reset by peer) |
| 16:23:18 | × | zer0bitz quits (~zer0bitz@2001:2003:f444:a000:ec86:7a91:dddd:e8c7) (Ping timeout: 250 seconds) |
| 16:23:20 | → | Morrow_ joins (~Morrow@bzq-110-168-31-106.red.bezeqint.net) |
| 16:23:30 | <geekosaur> | they're inevitable if you're doing FFI |
| 16:23:40 | <geekosaur> | one could of course argue the FFI is unsafe though |
| 16:23:50 | <georgy> | I am calling C function that accepts a callback, and it passes pointer to callback as integral value |
| 16:24:00 | <ski> | (is it `void *' or `void (*)()' ?) |
| 16:24:10 | <Andrew> | ~~everything not-purely-functional is unsafe, so all programs that do things are unsafe~~ |
| 16:24:26 | <georgy> | callback is a function pointer |
| 16:24:27 | <Andrew> | I'd argue that haskells that contain Monads feel a bit chunky |
| 16:24:52 | × | CHUD quits (~CHUD@host-80-41-89-108.as13285.net) (Ping timeout: 256 seconds) |
| 16:24:54 | × | gehmehgeh quits (~user@user/gehmehgeh) (Ping timeout: 276 seconds) |
| 16:25:55 | → | wroathe joins (~wroathe@206-55-188-8.fttp.usinternet.com) |
| 16:25:55 | × | wroathe quits (~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host) |
| 16:25:55 | → | wroathe joins (~wroathe@user/wroathe) |
| 16:26:23 | → | soxen joins (~bbrahms@pool-173-54-217-168.nwrknj.fios.verizon.net) |
| 16:26:31 | → | gehmehgeh joins (~user@user/gehmehgeh) |
| 16:26:46 | × | Morrow quits (~Morrow@bzq-110-168-31-106.red.bezeqint.net) (Ping timeout: 250 seconds) |
| 16:27:00 | <ski> | chunky ? |
| 16:27:20 | <Andrew> | Human feelings are weird and unsafe |
| 16:27:21 | <ski> | how're lists chunky ? |
| 16:27:23 | → | Morrow joins (~Morrow@bzq-110-168-31-106.red.bezeqint.net) |
| 16:27:30 | × | Morrow_ quits (~Morrow@bzq-110-168-31-106.red.bezeqint.net) (Read error: Connection reset by peer) |
| 16:28:03 | → | doyougnu joins (~doyougnu@cpe-67-249-83-190.twcny.res.rr.com) |
| 16:28:07 | <Andrew> | lists aren't chunky |
| 16:28:09 | → | zmt01 joins (~zmt00@user/zmt00) |
| 16:28:10 | <Andrew> | "do" is chunky |
| 16:28:11 | × | soxen quits (~bbrahms@pool-173-54-217-168.nwrknj.fios.verizon.net) (Client Quit) |
| 16:28:30 | ski | still has no idea what "chunky" is intended to mean |
| 16:29:00 | Andrew | cannot define it, either |
| 16:29:02 | → | random-jellyfish joins (~random-je@user/random-jellyfish) |
| 16:29:07 | <ski> | georgy : does it really accept a plain `void *' ("anonymous data pointer", not a function pointer) ? |
| 16:30:21 | → | soxen joins (~bbrahms@pool-173-54-217-168.nwrknj.fios.verizon.net) |
| 16:30:38 | → | yauhsien_ joins (~yauhsien@61-231-37-18.dynamic-ip.hinet.net) |
| 16:30:40 | <maerwald> | Andrew: you mean most programs are (>>) and thus don't really need the monad interface? |
| 16:30:49 | <Andrew> | maerwald: No? |
| 16:30:58 | → | Morrow_ joins (~Morrow@bzq-110-168-31-106.red.bezeqint.net) |
| 16:31:19 | <Andrew> | they're needed, but they're just not pure-feeling enough for me, maybe I'm a jerk |
| 16:31:23 | <random-jellyfish> | I'm trying to model a Discrete Event System Specification in Haskell https://en.wikipedia.org/wiki/DEVS, and I'm not sure whether to include the delta, ta and lambda functions as fields of the DEVS data type or to put them in a type class and then create and instance of that for DEVS, any thoughts on this? |
| 16:31:52 | → | shailangsa joins (~shailangs@host86-185-98-37.range86-185.btcentralplus.com) |
| 16:32:33 | <geekosaur> | Andrew, or maybe you'd prefer themathematical side to the CS side |
| 16:32:48 | <Andrew> | That's true |
| 16:32:59 | <random-jellyfish> | or as a more general question, when should have functions as fields of records and when should you have them in type classes? |
| 16:33:19 | × | mbuf quits (~Shakthi@122.162.13.98) (Quit: Leaving) |
| 16:34:02 | × | Morrow quits (~Morrow@bzq-110-168-31-106.red.bezeqint.net) (Ping timeout: 240 seconds) |
| 16:34:06 | <geekosaur> | random-jellyfish, type classes are for when you have conceptually similar operations on different types |
| 16:34:51 | <geekosaur> | if you have only the type DEVS to deal with, a typeclass is pointless and may slow things down |
| 16:35:54 | <random-jellyfish> | good point |
| 16:36:15 | ← | jakalx parts (~jakalx@base.jakalx.net) (Error from remote client) |
| 16:36:25 | <random-jellyfish> | I'll make them fields of DEVS then |
| 16:36:50 | × | cosimone quits (~user@2001:b07:ae5:db26:c24a:d20:4d91:1e20) (Remote host closed the connection) |
| 16:37:31 | → | cosimone joins (~user@2001:b07:ae5:db26:c24a:d20:4d91:1e20) |
| 16:39:06 | × | ProfSimm quits (~ProfSimm@87.227.196.109) (Remote host closed the connection) |
| 16:40:36 | × | fef quits (~thedawn@user/thedawn) (Quit: Leaving) |
| 16:40:48 | → | denbrahe joins (~denbrahe@2001:470:69fc:105::19c0) |
| 16:41:02 | → | jakalx joins (~jakalx@base.jakalx.net) |
| 16:43:17 | → | Gurkenglas joins (~Gurkengla@dslb-090-186-104-244.090.186.pools.vodafone-ip.de) |
| 16:43:40 | × | denbrahe quits (~denbrahe@2001:470:69fc:105::19c0) (Quit: Reconnecting) |
| 16:43:57 | → | denbrahe joins (~denbrahe@2001:470:69fc:105::19c0) |
| 16:48:20 | × | unmanbearpig quits (~unmanbear@user/unmanbearpig) (Quit: WeeChat 3.3) |
| 16:49:03 | → | fef joins (~thedawn@user/thedawn) |
| 16:50:16 | × | denbrahe quits (~denbrahe@2001:470:69fc:105::19c0) (Quit: Reconnecting) |
| 16:50:26 | <Andrew> | geekosaur: I'm actually quite new to haskell though |
| 16:50:39 | → | denbrahe joins (~denbrahe@2001:470:69fc:105::19c0) |
| 16:50:40 | <Andrew> | Barely scratched the surface of Monads |
| 16:51:23 | <ski> | monads are quite diverse |
| 16:51:56 | <geekosaur> | poke at the state monad for a simple example (and a demonstration that monads by themselves do not mean impurity) |
| 16:51:57 | <random-jellyfish> | I'd recommend to start with the list monad, that's where I first understood the power of monads |
| 16:52:08 | <geekosaur> | list would be next, yes |
| 16:52:11 | × | kuribas quits (~user@ptr-25vy0iaa493etjqvp1u.18120a2.ip6.access.telenet.be) (Quit: ERC (IRC client for Emacs 26.3)) |
| 16:52:20 | <geekosaur> | but state's easier to figure out if you're new |
| 16:52:37 | <geekosaur> | list will twist your brain a bit, but thereby show you what monads bring to the table |
| 16:53:03 | <ski> | (and `do'-notation is just some pretty syntactic sugar. to understand monads, you should get a feel for particular examples of monads, what they do / what they're about, how they work. how the basic operations `return' and `(>>=)' work for that monad) |
| 16:53:29 | <geekosaur> | (and IO barely uses monads tbh, it just does sequencing via them) |
| 16:53:37 | <ski> | `Maybe' might be a nice starting-point, before lists |
| 16:54:26 | <random-jellyfish> | I how to use StateT monad transformer from this example of 99 bottles of beer : https://www.99-bottles-of-beer.net/language-haskell-1360.html |
| 16:54:33 | <random-jellyfish> | I learned how to use StateT monad transformer from this example of 99 bottles of beer : https://www.99-bottles-of-beer.net/language-haskell-1360.html |
| 16:55:34 | <random-jellyfish> | I think intuitive examples are always good for learning |
| 16:56:04 | <Andrew> | Thanks |
| 16:56:26 | <Andrew> | I assume IO monads just use lambda nesting to achieve "sequences"? |
| 16:56:49 | <Andrew> | That's the only functional way of doing it that I can understand |
| 16:57:07 | <random-jellyfish> | they use the the bind operator, like all other monads |
| 16:57:26 | <ski> | before tackling monads, you should be comfortable with polymorphism, higher-order functions, `data' types (including parameterized ones), and type classes |
| 16:57:39 | Andrew | has 100MB of free memory running some homemade AI stuff in the background, he wonders if there are machine learning haskell libs |
| 16:58:08 | <Andrew> | Forgot the name, I think I'm okay with typeclasses and polymorphism thereof |
| 16:58:19 | <Andrew> | I tackled Lisp before, so higher-order is okay |
| 16:58:29 | <Andrew> | I'm not doing well in monoids and semigroups, so mehh |
| 16:58:38 | <Andrew> | Probably should review thhat first |
| 16:59:00 | <ski> | yea, it's probably a good idea to have some idea how those work. also functors |
| 16:59:12 | <Andrew> | That, I never touched |
| 16:59:33 | <random-jellyfish> | monoids are isomorphic to strings endowed with concatenation - that's all I need to know about monoids |
| 16:59:34 | <ski> | all monads are functors. but functors are simpler to understand, so you should cover those first |
| 17:00:03 | <random-jellyfish> | and I have no idea what semigroups are and what they do, are they important? |
| 17:00:16 | <Andrew> | I do know what semigroups are from math |
| 17:00:42 | <Andrew> | (I'm from China and 8th-grade math class doesn't include that, but people talk about group theory) |
| 17:00:45 | <ski> | > sortBy (comparing length <> compare) (words "The quick brown fox jumps over the lazy dog)" -- cute monoid example, effecting sorting primarily by length and secondarily by the usual lexicographic ordering (among words of the same length here) |
| 17:00:46 | <lambdabot> | <hint>:1:244: error: |
| 17:00:46 | <lambdabot> | parse error (possibly incorrect indentation or mismatched brackets) |
| 17:01:01 | <ski> | > sortBy (comparing length <> compare) (words "The quick brown fox jumps over the lazy dog)") -- eh, missing bracket :) |
| 17:01:02 | <lambdabot> | ["The","fox","the","dog)","lazy","over","brown","jumps","quick"] |
| 17:01:25 | <Andrew> | I might know what functors are without knowing (i.e. I don't know the name), but whatever, I'll learn on them, I don't think I know them |
| 17:01:30 | <ski> | ah, that's nice, Andrew |
| 17:01:34 | <Andrew> | thanks all! |
| 17:01:37 | × | madjestic quits (~madjestic@88-159-247-120.fixed.kpn.net) (Ping timeout: 240 seconds) |
| 17:02:48 | <ski> | semigroups and monoids are almost the same. both have a (binary) operation (which should be associative). monoids also have a "neutral element / identity / unit" (combining another element with the neutral element, using the binary operation, gives back the other element) |
| 17:03:48 | <ski> | and groups are monoids in which each element has an inverse (iow, you have a unary operation which gives the inverse of its operand), where the combination of an element and its inverse gives the neutral element |
| 17:03:50 | <random-jellyfish> | semigroupt don't have the unit? |
| 17:03:56 | <random-jellyfish> | semigroups* |
| 17:04:03 | <ski> | they don't need to |
| 17:04:17 | <ski> | (but all monoids are semigroups, so those do have unit) |
| 17:04:42 | <random-jellyfish> | are there any intuitive examples of semigroups? |
| 17:04:44 | → | burnsidesLlama joins (~burnsides@dhcp168-016.wadham.ox.ac.uk) |
| 17:04:48 | <ski> | the operation `(+)' with neutral element `0' and inverse `negate' is a group |
| 17:05:30 | <ski> | the operation `(*)' with neutral element `1' and inverse `recip' is a group .. if we discount non-invertible elements, like `0' |
| 17:05:44 | <ski> | the operation `(++)' with neutral element `[]' is a monoid |
| 17:05:56 | <ski> | the operation `max' is a semigroup, and so is `min' |
| 17:06:07 | → | froduck joins (~froduck@cpc101088-sgyl37-2-0-cust22.18-2.cable.virginm.net) |
| 17:06:18 | <ski> | > recip 2 |
| 17:06:19 | <lambdabot> | 0.5 |
| 17:06:24 | <ski> | (that's `1/2') |
| 17:06:52 | <geekosaur> | [29 16:56:26] <Andrew> I assume IO monads just use lambda nesting to achieve "sequences"? <-- it's the state monad with a minimal state token, thus setting up a trivial data dependency between calls enforcing a sequence |
| 17:07:10 | <ski> | `(&&)' with `True', and `(||)' with `False', are also monoids |
| 17:07:24 | <Andrew> | That sounds hacky |
| 17:07:31 | <ski> | hm, and `gcd' with `0', and `lcm' with `1' |
| 17:07:37 | <Andrew> | But I think I'm almost to the point on that one, yay |
| 17:07:51 | <Andrew> | *Why am I not in b ed yet* |
| 17:08:04 | × | CiaoSen quits (~Jura@p200300c95737a2002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Ping timeout: 268 seconds) |
| 17:08:22 | ski | . o O ( isn't it morning over there ? ) |
| 17:08:30 | <Andrew> | I think there are also closures, which are just binary operations that result in something inside the set |
| 17:08:39 | <Andrew> | 01:48 |
| 17:08:47 | <froduck> | maybe you folded your sheets wrong, and spacetime is preventing you from smoothing them or something |
| 17:08:51 | <ski> | ah, ok |
| 17:09:28 | → | SummerSonw joins (~The_viole@203.77.49.232) |
| 17:09:33 | <froduck> | probably if you had some gravity magnets to make your bed with... |
| 17:09:54 | <random-jellyfish> | I would assume all natural numbers >0 with addition form a semigroup? |
| 17:09:54 | × | yauhsien_ quits (~yauhsien@61-231-37-18.dynamic-ip.hinet.net) (Remote host closed the connection) |
| 17:10:04 | <ski> | yes |
| 17:10:40 | <random-jellyfish> | and could it be that is where the prefix semi comes from? because you're basically throwing away half the elements of a group to get a semigroup? |
| 17:10:56 | <ski> | hm .. never thought of that before |
| 17:11:03 | <ski> | i guess it could be plausible |
| 17:11:31 | <ski> | (usually i think of "semi-" as meaning roughly "not quite" or "somewhat less than") |
| 17:11:32 | × | soxen quits (~bbrahms@pool-173-54-217-168.nwrknj.fios.verizon.net) (Ping timeout: 240 seconds) |
| 17:11:54 | <froduck> | rndom-jellyfish: half the axioms |
| 17:12:19 | × | froduck quits (~froduck@cpc101088-sgyl37-2-0-cust22.18-2.cable.virginm.net) (Quit: Connection closed) |
| 17:12:23 | <random-jellyfish> | perfect, now I know what semigroups are |
| 17:12:30 | ski | . o O ( "Half would have been just right, said the girl who got triplets." ) |
| 17:12:42 | <random-jellyfish> | that's how I like to learn math, from examples |
| 17:13:03 | <random-jellyfish> | I trust the Phd folks with the proofs |
| 17:13:22 | <ski> | i guess maximum and minimum are my immediate go-to examples |
| 17:13:41 | <Andrew> | I like to learn stuff via examples, and think of a definition/proof through that |
| 17:13:46 | <Andrew> | Whatever, afk |
| 17:13:52 | → | ProfSimm joins (~ProfSimm@176-12-60-137.pon.spectrumnet.bg) |
| 17:15:09 | <random-jellyfish> | Andrew when you get to learning about lenses...just learn how to use them first |
| 17:16:05 | <random-jellyfish> | don't try to go down the rabbit hole with understanding what's behind them |
| 17:16:06 | → | romesrf joins (~romes@44.190.189.46.rev.vodafone.pt) |
| 17:16:13 | × | SummerSonw quits (~The_viole@203.77.49.232) (Quit: Leaving) |
| 17:16:17 | <random-jellyfish> | you'll risk your sanity |
| 17:16:48 | <random-jellyfish> | I'm joking of course...but I did find lenses to be very complicated |
| 17:17:59 | → | yauhsien_ joins (~yauhsien@61-231-37-18.dynamic-ip.hinet.net) |
| 17:18:29 | <lagash> | And whatever you do, do NOT use lenses under direct sunlight, it'll burn! |
| 17:20:08 | <romesrf> | random-jellyfish: there is a great talk by simon peyton jones on lenses |
| 17:20:15 | <romesrf> | it did it for me |
| 17:22:32 | × | yauhsien_ quits (~yauhsien@61-231-37-18.dynamic-ip.hinet.net) (Ping timeout: 240 seconds) |
| 17:23:43 | <random-jellyfish> | thanks, I'll put it on my watch later list |
| 17:24:05 | → | soxen joins (~bbrahms@pool-173-54-217-168.nwrknj.fios.verizon.net) |
| 17:30:25 | → | alt-romes joins (~romes@44.190.189.46.rev.vodafone.pt) |
| 17:30:39 | → | Inst joins (~delicacie@c-98-208-218-119.hsd1.fl.comcast.net) |
| 17:32:12 | × | romesrf quits (~romes@44.190.189.46.rev.vodafone.pt) (Ping timeout: 250 seconds) |
| 17:34:08 | → | lavaman joins (~lavaman@98.38.249.169) |
| 17:35:42 | → | emf_ joins (~emf@2620:10d:c090:400::5:29d7) |
| 17:35:45 | → | RFV joins (~Thunderbi@111.red-88-5-241.dynamicip.rima-tde.net) |
| 17:38:16 | × | lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 245 seconds) |
| 17:38:57 | × | emf quits (~emf@2601:602:9400:8f0:435:b386:5ad4:6eb2) (Ping timeout: 240 seconds) |
| 17:39:06 | × | Inst quits (~delicacie@c-98-208-218-119.hsd1.fl.comcast.net) (Ping timeout: 245 seconds) |
| 17:39:10 | × | RFV quits (~Thunderbi@111.red-88-5-241.dynamicip.rima-tde.net) (Client Quit) |
| 17:40:18 | × | alt-romes quits (~romes@44.190.189.46.rev.vodafone.pt) (Quit: WeeChat 3.4) |
| 17:41:10 | → | econo joins (uid147250@user/econo) |
| 17:42:44 | → | zer0bitz joins (~zer0bitz@2001:2003:f444:a000:f8f2:a6ee:f8f:27a0) |
| 17:44:08 | → | tzh joins (~tzh@c-24-21-73-154.hsd1.or.comcast.net) |
| 17:45:32 | × | wroathe quits (~wroathe@user/wroathe) (Ping timeout: 256 seconds) |
| 17:46:58 | × | zer0bitz_ quits (~zer0bitz@2001:2003:f444:a000:319a:8ff4:9a9c:6a36) (Ping timeout: 260 seconds) |
| 17:47:15 | → | RMSBach joins (~guygastin@137.184.131.156) |
| 17:47:19 | → | lavaman joins (~lavaman@98.38.249.169) |
| 17:47:44 | × | ProfSimm quits (~ProfSimm@176-12-60-137.pon.spectrumnet.bg) (Remote host closed the connection) |
| 17:48:04 | → | ProfSimm joins (~ProfSimm@176-12-60-137.pon.spectrumnet.bg) |
| 17:49:31 | → | zincy joins (~zincy@host86-151-99-97.range86-151.btcentralplus.com) |
| 17:49:47 | <EvanR> | if you think lens is complicated, you can read this instead which is simular http://conal.net/blog/posts/semantic-editor-combinators |
| 17:50:03 | × | bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 276 seconds) |
| 17:52:42 | × | ProfSimm quits (~ProfSimm@176-12-60-137.pon.spectrumnet.bg) (Ping timeout: 256 seconds) |
| 17:53:44 | → | bitdex joins (~bitdex@gateway/tor-sasl/bitdex) |
| 17:54:02 | × | zincy quits (~zincy@host86-151-99-97.range86-151.btcentralplus.com) (Ping timeout: 240 seconds) |
| 17:54:07 | → | wroathe joins (~wroathe@206-55-188-8.fttp.usinternet.com) |
| 17:54:08 | × | wroathe quits (~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host) |
| 17:54:08 | → | wroathe joins (~wroathe@user/wroathe) |
| 17:56:37 | × | kjak quits (~kjak@pool-108-45-56-21.washdc.fios.verizon.net) (Ping timeout: 240 seconds) |
| 17:56:49 | → | deadmarshal joins (~deadmarsh@95.38.117.123) |
| 17:57:50 | × | Vajb quits (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer) |
| 17:58:30 | <dolio> | I don't think there's anything that complicated about lenses. The complication is people explaining and relating different ways of implementing them. |
| 17:58:38 | × | wroathe quits (~wroathe@user/wroathe) (Ping timeout: 250 seconds) |
| 17:58:45 | → | coot joins (~coot@213.134.190.95) |
| 18:00:20 | <dolio> | And getting the type system to automatically accept various subtyping relationships based on the implementation details. |
| 18:00:50 | × | wombat875 quits (~wombat875@pool-72-89-24-154.nycmny.fios.verizon.net) (Ping timeout: 256 seconds) |
| 18:02:07 | → | zincy joins (~zincy@2a00:23c8:970c:4801:f0bc:c4cb:1665:1c67) |
| 18:02:10 | → | kaph joins (~kaph@net-2-47-208-144.cust.vodafonedsl.it) |
| 18:02:55 | → | wombat875 joins (~wombat875@pool-72-89-24-154.nycmny.fios.verizon.net) |
| 18:04:00 | → | ProfSimm joins (~ProfSimm@176-12-60-137.pon.spectrumnet.bg) |
| 18:08:11 | <random-jellyfish> | does ghc 8.6.5 support DuplicateRecordFields? |
| 18:10:16 | <random-jellyfish> | nvm found it, it's from 8.0.1 |
| 18:11:27 | × | Jing quits (~hedgehog@240e:390:7c53:a7e1:247f:ed9b:32f9:1faf) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 18:14:05 | × | soxen quits (~bbrahms@pool-173-54-217-168.nwrknj.fios.verizon.net) (Read error: Connection reset by peer) |
| 18:16:06 | → | Null_A joins (~null_a@2601:645:8700:2290:6509:ee11:ea28:47c) |
| 18:16:53 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:2541:beac:9acd:61a8) |
| 18:17:56 | × | orcus quits (~orcus@user/brprice) (Quit: ZNC 1.8.1 - https://znc.in) |
| 18:17:56 | × | dispater- quits (~dispater@user/brprice) (Quit: ZNC 1.8.1 - https://znc.in) |
| 18:19:11 | → | jao joins (~jao@66.63.167.119) |
| 18:20:17 | × | lionhairdino quits (~jacoo@121.131.39.82) (Ping timeout: 240 seconds) |
| 18:20:43 | → | dispater joins (~dispater@user/brprice) |
| 18:21:14 | → | orcus joins (~orcus@user/brprice) |
| 18:22:51 | → | alp joins (~alp@user/alp) |
| 18:25:02 | → | vglfr joins (~vglfr@88.155.52.56) |
| 18:25:20 | → | CiaoSen joins (~Jura@p200300c95737a2002a3a4dfffe84dbd5.dip0.t-ipconnect.de) |
| 18:28:35 | × | pwug quits (~pwug@user/pwug) (Quit: Leaving) |
| 18:29:27 | × | jao quits (~jao@66.63.167.119) (Ping timeout: 260 seconds) |
| 18:31:22 | → | jao joins (~jao@68.235.43.172) |
| 18:41:36 | × | beaky quits (~beaky@2a03:b0c0:0:1010::1e:a001) (Ping timeout: 245 seconds) |
| 18:42:29 | → | beaky joins (~beaky@2a03:b0c0:0:1010::1e:a001) |
| 18:44:04 | → | justsomeguy joins (~justsomeg@user/justsomeguy) |
| 18:47:10 | <justsomeguy> | In GHCi, why does alpha = ['a'..'z']; l [] = 0; l (_:xs) = 1 + l xs; l alpha; :sprint alpha result in l = _, but if I change the definitino of l to l t = case t of { [] -> 0; (_:xs) -> 1 + l xs }, then :sprint alpha prints alpha = "abcdefghijklmnopqrstuvwxyz"? |
| 18:47:14 | → | Vajb joins (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) |
| 18:48:19 | × | dyeplexer quits (~dyeplexer@user/dyeplexer) (Remote host closed the connection) |
| 18:49:00 | × | lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 256 seconds) |
| 18:50:32 | → | asivitz joins (uid178348@id-178348.tinside.irccloud.com) |
| 18:50:46 | <EvanR> | alpha resets to egg state if nothing is holding onto it |
| 18:50:59 | → | Sgeo joins (~Sgeo@user/sgeo) |
| 18:51:01 | <EvanR> | to avoid using a lot of memory when doing ghci stuff |
| 18:52:59 | <justsomeguy> | What is egg state? Do you mean a thunk? The part that confuses me is that the new definition of l forces evaluation of the values in alpha in the first place. I was expecting the same result of alpha = _. |
| 18:53:07 | <mrianbloom> | What is the most developed library for frontend gui development for Haskell on linux? |
| 18:53:14 | <EvanR> | the original thunk if you will, before it was evauated |
| 18:54:13 | <justsomeguy> | Before the figurative egg was cracked open :) |
| 18:54:13 | <geekosaur> | mrianbloom, gi-gtk probably |
| 18:54:23 | <geekosaur> | unless by "frontend" you mean web |
| 18:54:28 | × | random-jellyfish quits (~random-je@user/random-jellyfish) (Ping timeout: 256 seconds) |
| 18:54:48 | <monochrom> | I guess "linux" means not web. :) |
| 18:54:58 | <mrianbloom> | no I mean linux desktop |
| 18:55:16 | <EvanR> | that's my theory and it could be wrong, for instance, I don't know if resetting a thunk to egg state makes any sense. Because you can't really do it normally, even if that would be nice |
| 18:55:54 | <mrianbloom> | Could also mean windows etc, but right now it's just Ubuntu. |
| 18:56:00 | <EvanR> | but I know that printing out an infinite list in ghci doesn't use infinite memory |
| 18:56:01 | <geekosaur> | ghci does have special support for that, but supposedly those two definitions of `l` should be identical and in fact the simplifier should generate the second fromn the first |
| 18:56:21 | <EvanR> | (necessarily) |
| 18:56:25 | <polyphem> | mrianbloom: there is monomer , its new but interresting , and its multiplatform |
| 18:56:37 | → | random-jellyfish joins (~random-je@user/random-jellyfish) |
| 18:56:48 | <mrianbloom> | polyphem: cool I'll check that out |
| 18:57:42 | <monochrom> | I think previous explorations of :sprint reported in this channel already established that :sprint is way more hair-splitting than a reasonable (even realistic) lazy evaluation model. |
| 18:57:48 | <polyphem> | https://github.com/fjvallarino/monomer |
| 18:58:41 | <EvanR> | otoh if the original question was about "most developed" then no, probably GTK |
| 18:58:54 | <EvanR> | as cool as monomer looks |
| 19:00:32 | <mrianbloom> | I might have phrased it, most used or most popular. But honestly a good design (functional approach) is also attractive. |
| 19:01:34 | <EvanR> | most used, popular haskell GUI might either be a web browser or a fancy abuse of terminal xD |
| 19:01:40 | <monochrom> | This is why every question of the form "best X" "most ___ X" should never be taken seriously. |
| 19:02:31 | <monochrom> | The querents themselves aren't even honest perfectionists in the first place. |
| 19:02:41 | <mrianbloom> | Gosh |
| 19:02:54 | → | CHUD joins (~CHUD@host-80-41-89-108.as13285.net) |
| 19:03:00 | <EvanR> | back in the 90s basically *every* program written for windows had a GUI. today basically no haskell program has a GUI |
| 19:03:02 | <monochrom> | Do you really need the absolutely best Haskell textbook to learn Haskell? |
| 19:05:18 | × | FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection) |
| 19:05:43 | → | FinnElija joins (~finn_elij@user/finn-elija/x-0085643) |
| 19:06:53 | ski | . o O ( why settle for less than perfect ? ) |
| 19:07:14 | <maerwald> | because you won't settle |
| 19:07:30 | × | CHUD quits (~CHUD@host-80-41-89-108.as13285.net) (Ping timeout: 256 seconds) |
| 19:09:16 | × | justsomeguy quits (~justsomeg@user/justsomeguy) (Quit: WeeChat 3.4) |
| 19:12:27 | <mrianbloom> | Incidentally "Types And Programming Languages" is probably the best haskell textbook. No Haskell in there though ;) |
| 19:12:44 | × | deadmarshal quits (~deadmarsh@95.38.117.123) (Ping timeout: 250 seconds) |
| 19:13:12 | <monochrom> | It doesn't have lazy evaluation or non-strictness. |
| 19:13:21 | <random-jellyfish> | I found Real World Haskell to be straight to the point |
| 19:13:24 | <monochrom> | And it has infinite types which Haskell doesn't have. |
| 19:13:50 | <dolio> | What if PFPL is the best Haskell textbook? |
| 19:14:16 | <mrianbloom> | I'm just saying, I earned the most about Haskell there. |
| 19:14:27 | <mrianbloom> | *learned |
| 19:14:29 | <monochrom> | PFPL is even against lazy evaluation! |
| 19:14:39 | <dolio> | Right, that would make it very ironic. :) |
| 19:14:45 | <monochrom> | hahaha |
| 19:15:55 | → | mmalter joins (~mmalter@88.126.10.237) |
| 19:16:53 | <mrianbloom> | "Structure and Interpretation of Computer Programs" is my other favorite Haskell textbook. (Again no Haskell.) |
| 19:16:53 | × | orcus quits (~orcus@user/brprice) (Quit: ZNC 1.8.2 - https://znc.in) |
| 19:16:53 | × | dispater quits (~dispater@user/brprice) (Quit: ZNC 1.8.2 - https://znc.in) |
| 19:17:30 | × | coot quits (~coot@213.134.190.95) (Ping timeout: 250 seconds) |
| 19:17:56 | <mrianbloom> | It does have a lambda on the cover though. |
| 19:18:00 | <monochrom> | It lacks pattern matching for algebraic data types. The resulting clumsiness shows. |
| 19:18:05 | <ski> | @quote rules.of.go |
| 19:18:05 | <lambdabot> | sarah says: "But I don't _want_ functional programming!" -- Sarah Peyton Jones, age 11, upon hearing the rules of Go |
| 19:18:39 | → | dispater joins (~dispater@user/brprice) |
| 19:19:08 | × | ProfSimm quits (~ProfSimm@176-12-60-137.pon.spectrumnet.bg) (Remote host closed the connection) |
| 19:19:11 | → | orcus joins (~orcus@user/brprice) |
| 19:19:28 | → | ProfSimm joins (~ProfSimm@176-12-60-137.pon.spectrumnet.bg) |
| 19:20:06 | <EvanR> | yeah I still don't understand the rules of Go |
| 19:20:41 | <monochrom> | You can view my pickiness in a positive light. If those 3 issues are all I could raise of those 3 books, that just means I'm quietly acknowledge that they are pretty good in all other aspects. |
| 19:20:58 | <monochrom> | Every silver lining has tarnish. |
| 19:27:40 | <byorgey> | EvanR: if you don't understand the rules of Go you haven't tried very hard |
| 19:28:13 | <byorgey> | unless you're referring to the esoteric corner cases about different sorts of ko rules... |
| 19:28:13 | <EvanR> | I can place the pieces and stuff but the details keep slipping |
| 19:28:23 | <EvanR> | how to end the damn game |
| 19:28:25 | → | wroathe joins (~wroathe@206-55-188-8.fttp.usinternet.com) |
| 19:28:25 | × | wroathe quits (~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host) |
| 19:28:25 | → | wroathe joins (~wroathe@user/wroathe) |
| 19:29:03 | <EvanR> | you need game theory to figure out when to agree to end the game |
| 19:29:32 | <EvanR> | also no I haven't tried very hard |
| 19:29:38 | <johnw> | EvanR: just play to the bitter end (when you can't place any more pieces), and you'll find that there's a moment in the game when it's obvious that you'll never recover, sort of like in Monopoly. |
| 19:29:43 | <[exa]> | EvanR: you need to ensure free safe space defended by pieces of your color for your own folk, that's it |
| 19:29:53 | <EvanR> | I always play monopoly so long that I pass out |
| 19:29:54 | <[exa]> | EvanR: whoever has the most space at the end, wins |
| 19:30:27 | <[exa]> | accepting that you can't do much anymore is the end |
| 19:30:57 | byorgey | is also fond of https://senseis.xmp.net/?TrompTaylorRules , though no one uses those exact rules in practice |
| 19:31:46 | <mmalter> | Hello. Anyone has experience doing statistical modelling of time series in an ML inspired language? Any advice, pointer? |
| 19:32:09 | <mmalter> | The Haskell situation seem not too good, the OCaml situation looks horrible. |
| 19:33:01 | <[exa]> | mmalter: "statistical modeling of time series" is a pretty wide range of problems, anything specific? |
| 19:33:18 | <mmalter> | well i don't want to reimplement dickey fuller for example |
| 19:33:54 | <mmalter> | but something not too barebone for ARMA would be nice |
| 19:34:08 | <mmalter> | and I am not dreaming too much about multivariate analysis |
| 19:34:16 | <mmalter> | but I am ok doing things myself |
| 19:34:26 | <mmalter> | just dont want to reimplement box jenkins |
| 19:35:04 | <mmalter> | Tbh, I am pretty sure many implementations are out there. Maybe just not published |
| 19:36:26 | <[exa]> | like, this is probably not a welcome advice but isn't there a R package that does exactly that? |
| 19:36:41 | <mmalter> | well, you guessed where I am coming from :D |
| 19:36:51 | <[exa]> | haha okay. :D |
| 19:36:53 | <geekosaur> | sometimes the right tool for the job is a thing |
| 19:37:14 | <[exa]> | R is underrated. |
| 19:37:16 | <mmalter> | Well, I guess I'll just have to get to work then... |
| 19:37:49 | <[exa]> | I had luck with writing the R package authors directly, if something didn't work or seemed cryptic |
| 19:38:04 | <[exa]> | the whole ecosystem there is kinda proud of the status that they solve the problems |
| 19:38:17 | × | Techcable quits (~Techcable@168.235.93.147) (Ping timeout: 240 seconds) |
| 19:38:40 | <mmalter> | Meh most people use Matlab or python nowadays. It's a bit distasteful. |
| 19:38:45 | <mmalter> | Not to sound snobby |
| 19:38:51 | <[exa]> | you probably expected pointers to haskell packages but, well, I'm sorry, not aware of any of this |
| 19:39:03 | <mmalter> | that would have been great |
| 19:39:17 | <mmalter> | No but I am beggining to think it does not exist |
| 19:39:29 | <mmalter> | There is hmatrix so it's not like I am completely naked |
| 19:39:41 | <[exa]> | maybe idle for some time, there's 7 hundred people who might have tried the same |
| 19:41:47 | <[exa]> | btw check out julia folks, they might have interesting stuff (for me often if R fails and there's not even a package for the problem in javas and parseltongues, julia has surprisingly cool libraries) |
| 19:44:24 | <mmalter> | I might try that, all the cool kids talk about it. It's just that I really prefer having one general language that solves (sometimes awkwardly) all my problems. I think I'll just write something not too ambitious in Haskell. |
| 19:44:37 | <mmalter> | idk I might get rich and famous doing so |
| 19:46:58 | → | coot joins (~coot@213.134.190.95) |
| 19:51:24 | → | tfeb joins (~tfb@88.98.95.237) |
| 19:52:17 | → | waleee joins (~waleee@2001:9b0:21d:fc00:398f:b003:b90d:acf4) |
| 19:52:30 | <EvanR> | a silver hammer, or something |
| 19:53:00 | <EvanR> | one size fits all problems solution |
| 19:53:36 | <geekosaur> | every language has its turing tarpit |
| 19:54:07 | <monochrom> | a gold hammer has a better chance of fitting more holes because gold is softer >:) |
| 19:54:27 | <EvanR> | if all you have is a gold hammer, every problem looks like an iron hole |
| 19:54:38 | <monochrom> | hee hee |
| 19:56:25 | → | Codaraxis_ joins (~Codaraxis@user/codaraxis) |
| 19:56:38 | <EvanR> | I was so waiting to see how thor could fit into haskell somehow |
| 19:57:04 | <mmalter> | Or the reverse. |
| 19:57:06 | <mmalter> | Sorry |
| 19:57:40 | <monochrom> | Haskell could be good at what Matlab and R are good at. Just needs someone to do library bindings. Note that it is not like Matlab and R really cares about destructive updates. (They happily clone a whole matrix and then GC the old one.) |
| 19:58:54 | <mmalter> | Honnestly I can see why it's not there. It's just not fun to code. |
| 19:59:01 | <EvanR> | particular algorithms can benefit from a local use of destructive updates |
| 19:59:19 | <mmalter> | Well in that case most algo |
| 19:59:33 | <mmalter> | But anyway, everybody do these algo in fortran |
| 19:59:48 | <EvanR> | in before a haskell to fortran DSL |
| 19:59:56 | <mmalter> | he |
| 19:59:57 | × | Codaraxis quits (~Codaraxis@user/codaraxis) (Ping timeout: 240 seconds) |
| 20:00:35 | <EvanR> | or perhaps a corresponding decompiler to turn fortran into haskell code (which can be sent back to fortran 1 to 1, like a lens) |
| 20:00:57 | × | wroathe quits (~wroathe@user/wroathe) (Ping timeout: 240 seconds) |
| 20:01:08 | <EvanR> | fortran lens |
| 20:01:34 | <EvanR> | put your haskell goggles on |
| 20:02:30 | → | vicfred joins (~vicfred@user/vicfred) |
| 20:04:19 | × | Codaraxis_ quits (~Codaraxis@user/codaraxis) (Quit: Leaving) |
| 20:04:26 | × | tfeb quits (~tfb@88.98.95.237) (Quit: died) |
| 20:04:56 | × | wombat875 quits (~wombat875@pool-72-89-24-154.nycmny.fios.verizon.net) (Ping timeout: 256 seconds) |
| 20:06:31 | → | wombat875 joins (~wombat875@pool-72-89-24-154.nycmny.fios.verizon.net) |
| 20:06:51 | <segfaultfizzbuzz> | monochrom: actually i've done some high performance matlab programming. you're right that if you are doing a crap paper napkin calculation you do GC but if you are doing any kind of even somewhat performance sensitive calculation you annotate which matrices are references to avoid allocation/deallocation |
| 20:07:04 | <segfaultfizzbuzz> | if the matrices are large that is |
| 20:07:22 | <random-jellyfish> | I just realized I never wrote anything useful in Haskell in my entire life...only small experiments and unfinished work...so embarrassing |
| 20:07:56 | <polyphem> | mmalter: haven't used it but perhaps : https://tweag.github.io/HaskellR/ |
| 20:08:30 | × | fef quits (~thedawn@user/thedawn) (Ping timeout: 276 seconds) |
| 20:09:16 | → | wroathe joins (~wroathe@206-55-188-8.fttp.usinternet.com) |
| 20:09:16 | × | wroathe quits (~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host) |
| 20:09:16 | → | wroathe joins (~wroathe@user/wroathe) |
| 20:10:50 | <mmalter> | polyphem: damn, I don't know how I missed it. Thanks a lot, really helpful |
| 20:14:00 | × | wroathe quits (~wroathe@user/wroathe) (Ping timeout: 256 seconds) |
| 20:14:10 | × | Null_A quits (~null_a@2601:645:8700:2290:6509:ee11:ea28:47c) (Remote host closed the connection) |
| 20:17:58 | × | wombat875 quits (~wombat875@pool-72-89-24-154.nycmny.fios.verizon.net) (Ping timeout: 256 seconds) |
| 20:18:01 | → | madjestic joins (~madjestic@88-159-247-120.fixed.kpn.net) |
| 20:18:45 | × | coot quits (~coot@213.134.190.95) (Quit: coot) |
| 20:18:47 | × | CiaoSen quits (~Jura@p200300c95737a2002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Ping timeout: 250 seconds) |
| 20:22:00 | <polyphem> | mmalter: np |
| 20:24:26 | × | bendo quits (~bendo@ip5f5bebbb.dynamic.kabel-deutschland.de) (Quit: leaving) |
| 20:29:39 | <sm> | random-jellyfish: good, time to fix that! |
| 20:29:43 | × | alp quits (~alp@user/alp) (Ping timeout: 268 seconds) |
| 20:33:20 | × | zincy quits (~zincy@2a00:23c8:970c:4801:f0bc:c4cb:1665:1c67) (Remote host closed the connection) |
| 20:33:23 | × | ProfSimm quits (~ProfSimm@176-12-60-137.pon.spectrumnet.bg) (Remote host closed the connection) |
| 20:33:43 | → | ProfSimm joins (~ProfSimm@176-12-60-137.pon.spectrumnet.bg) |
| 20:40:26 | × | ProfSimm quits (~ProfSimm@176-12-60-137.pon.spectrumnet.bg) (Ping timeout: 256 seconds) |
| 20:45:45 | × | werneta quits (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 268 seconds) |
| 20:45:51 | <sm> | make a script that lists your haskell projects and their status |
| 20:47:22 | → | werneta joins (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) |
| 20:47:34 | <sm> | with a Map k a, I'm not finding a way to get the k if I have an a. I guess that's not normally done. Is there a standard way to "invert" a map, to get Map a k ? |
| 20:47:34 | → | kjak joins (~kjak@pool-108-45-56-21.washdc.fios.verizon.net) |
| 20:48:17 | <dsal> | :t Map.fromList . fmap swap . Map.assocs |
| 20:48:18 | <lambdabot> | error: |
| 20:48:18 | <lambdabot> | Not in scope: ‘Map.fromList’ |
| 20:48:18 | <lambdabot> | Perhaps you meant one of these: |
| 20:48:24 | <dsal> | :t M.fromList . fmap swap . M.assocs |
| 20:48:25 | <lambdabot> | Ord k => M.Map a k -> M.Map k a |
| 20:48:31 | <geekosaur> | maybe you want a bimap? |
| 20:48:49 | → | ProfSimm joins (~ProfSimm@87.227.196.109) |
| 20:49:12 | <sm> | cool, thanks both |
| 20:49:35 | → | pavonia joins (~user@user/siracusa) |
| 20:49:55 | <EvanR> | it would be at least Map a [k] |
| 20:50:07 | <EvanR> | rather, Map a (NonEmpty k) if you are fancy |
| 20:50:34 | <sm> | I have actually Map k [a], which I think Bimap won't handle well |
| 20:50:52 | <sm> | to go from a to k. I should hand roll it I think |
| 20:50:56 | <ski> | a binary relation ? |
| 20:51:02 | <EvanR> | I was going to say this is a poor man's SQL add index, but now you went full relational |
| 20:51:49 | <EvanR> | Rel k a |
| 20:51:53 | → | MatthiasG2 joins (~matthias@i6DFA01BB.versanet.de) |
| 20:51:58 | × | johnw quits (~johnw@2607:f6f0:3004:1:c8b4:50ff:fef8:6bf0) (Ping timeout: 250 seconds) |
| 20:52:11 | <monochrom> | For full relational, just use [(k, a)] and do exhaustive search by list comprehension :) |
| 20:52:43 | <EvanR> | it's sad that often SQL does just that |
| 20:52:51 | <ski> | depends on which modes you plan to use |
| 20:53:33 | → | Null_A joins (~null_a@2601:645:8700:2290:6509:ee11:ea28:47c) |
| 20:53:37 | ski | . o O ( magic sets ) |
| 20:55:09 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:2541:beac:9acd:61a8) (Remote host closed the connection) |
| 20:57:41 | × | justGhost quits (~justache@user/justache) (Remote host closed the connection) |
| 20:58:40 | → | justGhost joins (~justache@user/justache) |
| 20:58:41 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:2541:beac:9acd:61a8) |
| 20:58:48 | <sm> | hmm, let me make this concrete. I have accountsbytype :: Map AccountType [AccountName], and I want a accounttypebyn :: Map AccountName AccountType, or a lookupaccounttype :: AccountName -> Maybe AccountType. accountsbytype's AccountName values are disjoint (every account has only one type) but a Map doesn't make that apparent. |
| 20:59:21 | <sm> | which is making it a bit harder to reverse, I think |
| 20:59:59 | → | Erutuon joins (~Erutuon@user/erutuon) |
| 21:01:17 | → | lavaman joins (~lavaman@98.38.249.169) |
| 21:02:33 | <Clint> | i'd say you could use ixset-typed, but that's undermaintained |
| 21:02:34 | <byorgey> | sm: yeah, if I were you I would just handroll my own custom data type that stores both a Map AccountType [AccountName] and a Map AccountName AccountType, and provide operations which automatically keep them in sync |
| 21:04:00 | <georgy> | @hoogle [a] -> Maybe a |
| 21:04:01 | <lambdabot> | Data.Maybe listToMaybe :: [a] -> Maybe a |
| 21:04:01 | <lambdabot> | Test.Framework.Providers.API listToMaybeLast :: [a] -> Maybe a |
| 21:04:01 | <lambdabot> | Distribution.Compat.Prelude.Internal listToMaybe :: [a] -> Maybe a |
| 21:04:10 | <georgy> | hmm, I don't have listToMaybe? |
| 21:04:24 | <geekosaur> | import Data.Maybe |
| 21:04:28 | <georgy> | I did |
| 21:04:35 | <geekosaur> | uh |
| 21:04:38 | <sm> | thanks |
| 21:04:46 | <geekosaur> | it's been there since at least 6.6, pretty sure |
| 21:05:10 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 21:05:24 | → | lavaman joins (~lavaman@98.38.249.169) |
| 21:05:31 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 21:05:45 | → | lavaman joins (~lavaman@98.38.249.169) |
| 21:05:46 | <geekosaur> | % :i listToMaybe |
| 21:05:47 | <yahb> | geekosaur: listToMaybe :: [a] -> Maybe a -- Defined in `Data.Maybe' |
| 21:05:52 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 21:06:08 | → | lavaman joins (~lavaman@98.38.249.169) |
| 21:06:15 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 21:06:23 | <georgy> | ok I figured it out. if there's an error, ghci won't have functions included in the file it loaded |
| 21:08:45 | <EvanR> | yeah it's a bit annoying the ghci reload isn't "transactional" and puts you back in a safe zone if reload files |
| 21:08:47 | <EvanR> | fails |
| 21:10:02 | → | Inst joins (~delicacie@c-98-208-218-119.hsd1.fl.comcast.net) |
| 21:10:50 | <EvanR> | though if your file is now broken, there's in some sense nothing to go back to |
| 21:13:11 | × | xff0x quits (~xff0x@2001:1a81:52b5:2e00:620f:6b65:415e:34ea) (Ping timeout: 250 seconds) |
| 21:13:58 | → | xff0x joins (~xff0x@2001:1a81:52b5:2e00:330a:176:fd58:7823) |
| 21:21:38 | × | zer0bitz quits (~zer0bitz@2001:2003:f444:a000:f8f2:a6ee:f8f:27a0) (Ping timeout: 260 seconds) |
| 21:24:12 | → | jgeerds_ joins (~jgeerds@55d4a547.access.ecotel.net) |
| 21:30:57 | × | mikoto-chan quits (~mikoto-ch@213.177.151.239) (Ping timeout: 240 seconds) |
| 21:36:31 | × | Null_A quits (~null_a@2601:645:8700:2290:6509:ee11:ea28:47c) (Remote host closed the connection) |
| 21:36:46 | → | lavaman joins (~lavaman@98.38.249.169) |
| 21:37:58 | × | notzmv quits (~zmv@user/notzmv) (Ping timeout: 260 seconds) |
| 21:42:13 | × | lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 240 seconds) |
| 21:45:56 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:2541:beac:9acd:61a8) (Remote host closed the connection) |
| 21:54:49 | × | machinedgod quits (~machinedg@24.105.81.50) (Ping timeout: 268 seconds) |
| 21:57:57 | × | bontaq quits (~user@ool-45779fe5.dyn.optonline.net) (Ping timeout: 240 seconds) |
| 21:58:06 | × | vicfred quits (~vicfred@user/vicfred) (Quit: Leaving) |
| 21:58:15 | × | xff0x quits (~xff0x@2001:1a81:52b5:2e00:330a:176:fd58:7823) (Ping timeout: 250 seconds) |
| 21:59:03 | → | Guest25 joins (~Guest25@187.17.40.22) |
| 21:59:09 | → | xff0x joins (~xff0x@2001:1a81:52b5:2e00:a456:ec27:982:79c1) |
| 22:06:24 | → | Topsi joins (~Tobias@dyndsl-095-033-090-071.ewe-ip-backbone.de) |
| 22:10:41 | × | gehmehgeh quits (~user@user/gehmehgeh) (Quit: Leaving) |
| 22:12:57 | → | yauhsien_ joins (~yauhsien@61-231-37-18.dynamic-ip.hinet.net) |
| 22:15:49 | × | whatsupdoc quits (uid509081@id-509081.hampstead.irccloud.com) (Quit: Connection closed for inactivity) |
| 22:16:37 | × | Inst quits (~delicacie@c-98-208-218-119.hsd1.fl.comcast.net) (Ping timeout: 240 seconds) |
| 22:17:03 | × | emad quits (~emad@156.214.92.21) (Quit: Leaving) |
| 22:17:32 | × | yauhsien_ quits (~yauhsien@61-231-37-18.dynamic-ip.hinet.net) (Ping timeout: 256 seconds) |
| 22:19:42 | × | Guest25 quits (~Guest25@187.17.40.22) (Quit: Client closed) |
| 22:22:49 | → | merijn joins (~merijn@c-001-001-018.client.esciencecenter.eduvpn.nl) |
| 22:25:08 | → | eggplantade joins (~Eggplanta@2600:1700:bef1:5e10:2541:beac:9acd:61a8) |
| 22:27:07 | × | geekosaur quits (~geekosaur@xmonad/geekosaur) (Remote host closed the connection) |
| 22:27:28 | → | geekosaur joins (~geekosaur@xmonad/geekosaur) |
| 22:28:07 | × | madjestic quits (~madjestic@88-159-247-120.fixed.kpn.net) (Ping timeout: 268 seconds) |
| 22:28:19 | → | madjestic joins (~madjestic@88-159-247-120.fixed.kpn.net) |
| 22:31:12 | × | Erutuon quits (~Erutuon@user/erutuon) (Ping timeout: 250 seconds) |
| 22:31:31 | × | burnsidesLlama quits (~burnsides@dhcp168-016.wadham.ox.ac.uk) (Remote host closed the connection) |
| 22:32:03 | → | burnsidesLlama joins (~burnsides@dhcp168-016.wadham.ox.ac.uk) |
| 22:32:53 | → | Techcable joins (~Techcable@168.235.93.147) |
| 22:33:22 | × | takuan quits (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection) |
| 22:33:47 | → | perrierjouet joins (~perrier-j@modemcable012.251-130-66.mc.videotron.ca) |
| 22:34:15 | → | Erutuon joins (~Erutuon@user/erutuon) |
| 22:36:14 | × | burnsidesLlama quits (~burnsides@dhcp168-016.wadham.ox.ac.uk) (Ping timeout: 256 seconds) |
| 22:46:06 | → | kaskal joins (~kaskal@213-147-165-60.nat.highway.webapn.at) |
| 22:46:22 | × | kaskal quits (~kaskal@213-147-165-60.nat.highway.webapn.at) (Client Quit) |
| 22:46:38 | → | kaskal joins (~kaskal@2001:4bb8:2cc:5073:e1cf:a3ef:264a:1e80) |
| 22:47:12 | × | tromp quits (~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 22:50:14 | × | perrierjouet quits (~perrier-j@modemcable012.251-130-66.mc.videotron.ca) (Quit: WeeChat 3.4) |
| 22:51:20 | → | deadmarshal joins (~deadmarsh@95.38.113.75) |
| 22:52:40 | × | merijn quits (~merijn@c-001-001-018.client.esciencecenter.eduvpn.nl) (Ping timeout: 256 seconds) |
| 22:55:37 | × | deadmarshal quits (~deadmarsh@95.38.113.75) (Ping timeout: 240 seconds) |
| 23:09:28 | × | random-jellyfish quits (~random-je@user/random-jellyfish) (Ping timeout: 256 seconds) |
| 23:09:55 | × | mc47 quits (~mc47@xmonad/TheMC47) (Remote host closed the connection) |
| 23:10:30 | → | burnsidesLlama joins (~burnsides@dhcp168-016.wadham.ox.ac.uk) |
| 23:13:45 | × | Erutuon quits (~Erutuon@user/erutuon) (Ping timeout: 268 seconds) |
| 23:14:36 | → | pretty_d1 joins (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) |
| 23:14:39 | × | pretty_d1 quits (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Client Quit) |
| 23:15:46 | → | pretty_d1 joins (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) |
| 23:15:57 | × | pretty_d1 quits (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Client Quit) |
| 23:16:14 | → | pretty_d1 joins (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) |
| 23:16:26 | × | pretty_d1 quits (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Client Quit) |
| 23:17:02 | × | pretty_dumm_guy quits (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Ping timeout: 256 seconds) |
| 23:20:37 | × | burnsidesLlama quits (~burnsides@dhcp168-016.wadham.ox.ac.uk) (Ping timeout: 240 seconds) |
| 23:30:41 | → | soxen joins (~bbrahms@pool-173-54-217-168.nwrknj.fios.verizon.net) |
| 23:30:44 | × | __monty__ quits (~toonn@user/toonn) (Quit: leaving) |
| 23:33:36 | × | cosimone quits (~user@2001:b07:ae5:db26:c24a:d20:4d91:1e20) (Ping timeout: 250 seconds) |
| 23:39:09 | → | burnsidesLlama joins (~burnsides@dhcp168-016.wadham.ox.ac.uk) |
| 23:40:12 | × | max22- quits (~maxime@2a01cb088335980091c6fbcd4fea35f7.ipv6.abo.wanadoo.fr) (Remote host closed the connection) |
| 23:43:40 | × | burnsidesLlama quits (~burnsides@dhcp168-016.wadham.ox.ac.uk) (Ping timeout: 256 seconds) |
| 23:44:52 | × | madjestic quits (~madjestic@88-159-247-120.fixed.kpn.net) (Ping timeout: 250 seconds) |
| 23:45:05 | → | madjestic joins (~madjestic@88-159-247-120.fixed.kpn.net) |
| 23:47:14 | × | slowButPresent quits (~slowButPr@user/slowbutpresent) (Quit: leaving) |
| 23:47:15 | → | burnsidesLlama joins (~burnsides@dhcp168-016.wadham.ox.ac.uk) |
| 23:48:38 | × | burnsidesLlama quits (~burnsides@dhcp168-016.wadham.ox.ac.uk) (Remote host closed the connection) |
| 23:49:05 | → | burnsidesLlama joins (~burnsides@dhcp168-016.wadham.ox.ac.uk) |
| 23:49:20 | → | slowButPresent joins (~slowButPr@user/slowbutpresent) |
| 23:50:48 | → | notzmv joins (~zmv@user/notzmv) |
| 23:52:45 | × | alMalsamo quits (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 276 seconds) |
| 23:53:50 | × | burnsidesLlama quits (~burnsides@dhcp168-016.wadham.ox.ac.uk) (Ping timeout: 268 seconds) |
| 23:55:11 | × | eggplantade quits (~Eggplanta@2600:1700:bef1:5e10:2541:beac:9acd:61a8) (Remote host closed the connection) |
| 23:59:26 | → | CHUD joins (~CHUD@host-80-41-89-108.as13285.net) |
All times are in UTC on 2022-01-29.