Logs on 2021-07-18 (liberachat/#haskell)
| 00:07:33 | × | MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Read error: Connection reset by peer) |
| 00:09:40 | → | spruit11 joins (~quassel@2a02:a467:ccd6:1:b030:6032:2190:671b) |
| 00:11:43 | → | MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
| 00:14:06 | × | spruit11 quits (~quassel@2a02:a467:ccd6:1:b030:6032:2190:671b) (Ping timeout: 255 seconds) |
| 00:16:05 | × | derelict quits (~derelict@user/derelict) (Ping timeout: 255 seconds) |
| 00:20:07 | → | mrus joins (~mrus@2001:19f0:5:3fd4:5400:3ff:fe48:1820) |
| 00:20:15 | × | img quits (~img@user/img) (Quit: ZNC 1.8.2 - https://znc.in) |
| 00:20:58 | × | waleee quits (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Quit: WeeChat 3.2) |
| 00:23:40 | → | waleee joins (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) |
| 00:31:48 | → | derelict joins (~derelict@user/derelict) |
| 00:32:12 | × | Null_A quits (~null_a@2601:645:8700:2290:b55a:33c2:1e1d:f229) (Remote host closed the connection) |
| 00:35:43 | → | img joins (~img@user/img) |
| 00:38:30 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 00:44:42 | → | spruit11 joins (~quassel@2a02:a467:ccd6:1:b030:6032:2190:671b) |
| 00:45:18 | × | eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
| 00:45:20 | × | waleee quits (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 255 seconds) |
| 00:45:47 | → | kilolympus joins (~kilolympu@cpc92710-cmbg20-2-0-cust265.5-4.cable.virginm.net) |
| 00:45:49 | → | enemeth79 joins (uid309041@id-309041.tooting.irccloud.com) |
| 00:48:52 | × | alphabeta quits (~kilolympu@cpc92710-cmbg20-2-0-cust265.5-4.cable.virginm.net) (Ping timeout: 268 seconds) |
| 00:49:13 | × | spruit11 quits (~quassel@2a02:a467:ccd6:1:b030:6032:2190:671b) (Ping timeout: 246 seconds) |
| 01:00:27 | → | _xor joins (~xor@74.215.232.67) |
| 01:00:41 | → | nate1 joins (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) |
| 01:00:43 | × | _xor quits (~xor@74.215.232.67) (Client Quit) |
| 01:01:14 | → | _xor joins (~xor@74.215.232.67) |
| 01:01:53 | → | spruit11 joins (~quassel@2a02:a467:ccd6:1:b030:6032:2190:671b) |
| 01:03:01 | × | derelict quits (~derelict@user/derelict) (Quit: WeeChat 3.2) |
| 01:06:08 | × | Maxdamantus quits (~Maxdamant@user/maxdamantus) (Ping timeout: 268 seconds) |
| 01:06:13 | × | Deide quits (~Deide@user/deide) (Quit: Seeee yaaaa) |
| 01:07:36 | × | mcglk quits (~mcglk@131.191.49.120) (Quit: (seeya)) |
| 01:08:07 | → | mcglk joins (~mcglk@131.191.49.120) |
| 01:08:36 | × | _xor quits (~xor@74.215.232.67) (Quit: WeeChat 3.2) |
| 01:10:05 | × | spruit11 quits (~quassel@2a02:a467:ccd6:1:b030:6032:2190:671b) (Ping timeout: 255 seconds) |
| 01:10:06 | → | lavaman joins (~lavaman@98.38.249.169) |
| 01:11:39 | × | albet70 quits (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
| 01:12:12 | × | Atum_ quits (~IRC@user/atum/x-2392232) (Quit: Atum_) |
| 01:12:46 | → | albet70 joins (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
| 01:13:01 | × | Erutuon quits (~Erutuon@user/erutuon) (Ping timeout: 246 seconds) |
| 01:15:47 | → | _xor joins (~xor@74.215.232.67) |
| 01:17:35 | → | Null_A joins (~null_a@2601:645:8700:2290:b55a:33c2:1e1d:f229) |
| 01:17:42 | → | eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
| 01:21:42 | → | xff0x_ joins (~xff0x@2001:1a81:525b:ea00:2ecf:bd12:9251:d3e) |
| 01:24:09 | → | Erutuon joins (~Erutuon@user/erutuon) |
| 01:24:28 | → | vicfred_ joins (~vicfred@206.217.205.37) |
| 01:24:55 | × | xff0x quits (~xff0x@port-92-193-131-10.dynamic.as20676.net) (Ping timeout: 250 seconds) |
| 01:28:20 | × | vicfred quits (~vicfred@user/vicfred) (Ping timeout: 268 seconds) |
| 01:30:54 | → | mcfrdy- joins (~mcfrdy@45.67.96.175) |
| 01:31:30 | × | mcfrdy quits (~mcfrdy@user/mcfrdy) (Ping timeout: 255 seconds) |
| 01:31:39 | → | chris_ joins (~chris@81.96.113.213) |
| 01:36:06 | → | neurocyte0 joins (~neurocyte@92.119.8.106) |
| 01:36:06 | × | neurocyte0 quits (~neurocyte@92.119.8.106) (Changing host) |
| 01:36:06 | → | neurocyte0 joins (~neurocyte@user/neurocyte) |
| 01:39:06 | → | spruit11 joins (~quassel@2a02:a467:ccd6:1:b030:6032:2190:671b) |
| 01:39:26 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 01:39:58 | × | neurocyte quits (~neurocyte@user/neurocyte) (Ping timeout: 252 seconds) |
| 01:39:58 | neurocyte0 | is now known as neurocyte |
| 01:40:57 | × | favonia quits (~favonia@user/favonia) (Ping timeout: 255 seconds) |
| 01:42:39 | → | favonia joins (~favonia@user/favonia) |
| 01:43:23 | × | ph88 quits (~ph88@2a02:8109:9e00:7e5c:f938:d06a:9ad7:b39c) (Ping timeout: 255 seconds) |
| 01:43:49 | × | spruit11 quits (~quassel@2a02:a467:ccd6:1:b030:6032:2190:671b) (Ping timeout: 246 seconds) |
| 01:46:32 | × | Erutuon quits (~Erutuon@user/erutuon) (Ping timeout: 255 seconds) |
| 01:47:22 | × | hololeap quits (~hololeap@user/hololeap) (Ping timeout: 244 seconds) |
| 01:48:09 | <davean> | I find most mathematical objects I deal with in practice to be "some set construction, with laws" |
| 01:56:48 | → | falafel joins (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) |
| 01:57:07 | × | falafel quits (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) (Read error: Connection reset by peer) |
| 01:58:55 | × | zebrag quits (~chris@user/zebrag) (Quit: Konversation terminated!) |
| 02:05:54 | → | Maxdamantus joins (~Maxdamant@user/maxdamantus) |
| 02:05:54 | × | MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Read error: Connection reset by peer) |
| 02:07:00 | → | MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
| 02:12:32 | → | Erutuon joins (~Erutuon@user/erutuon) |
| 02:13:36 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 258 seconds) |
| 02:13:59 | × | td_ quits (~td@muedsl-82-207-238-255.citykom.de) (Ping timeout: 258 seconds) |
| 02:14:42 | × | favonia quits (~favonia@user/favonia) (Ping timeout: 255 seconds) |
| 02:15:07 | → | machinedgod joins (~machinedg@24.105.81.50) |
| 02:15:38 | → | td_ joins (~td@muedsl-82-207-238-204.citykom.de) |
| 02:15:44 | → | finn_elija joins (~finn_elij@user/finn-elija/x-0085643) |
| 02:15:44 | FinnElija | is now known as Guest7485 |
| 02:15:44 | × | Guest7485 quits (~finn_elij@user/finn-elija/x-0085643) (Killed (sodium.libera.chat (Nickname regained by services))) |
| 02:15:45 | finn_elija | is now known as FinnElija |
| 02:17:13 | → | favonia joins (~favonia@user/favonia) |
| 02:18:20 | → | norias joins (~jaredm@c-98-219-195-163.hsd1.pa.comcast.net) |
| 02:20:05 | → | alphabeta joins (~kilolympu@cpc92710-cmbg20-2-0-cust265.5-4.cable.virginm.net) |
| 02:21:49 | × | kilolympus quits (~kilolympu@cpc92710-cmbg20-2-0-cust265.5-4.cable.virginm.net) (Ping timeout: 265 seconds) |
| 02:24:21 | × | smichel17 quits (~smichel17@2601:193:8300:4b9::600) (Quit: smichel17) |
| 02:36:14 | → | peterhil joins (~peterhil@dsl-hkibng32-54f849-252.dhcp.inet.fi) |
| 02:37:16 | → | ph88 joins (~ph88@2a02:8109:9e00:7e5c:f938:d06a:9ad7:b39c) |
| 02:39:57 | → | h98 joins (~h98@187.83.249.216.dyn.smithville.net) |
| 02:39:59 | → | spruit11 joins (~quassel@2a02:a467:ccd6:1:b030:6032:2190:671b) |
| 02:44:51 | × | spruit11 quits (~quassel@2a02:a467:ccd6:1:b030:6032:2190:671b) (Ping timeout: 255 seconds) |
| 02:52:45 | → | fef joins (~thedawn@user/thedawn) |
| 02:53:08 | × | aman quits (~aman@user/aman) (Ping timeout: 255 seconds) |
| 02:53:38 | → | agua joins (~agua@2804:18:44:17a3:1:0:2cdf:1514) |
| 02:54:24 | × | h98 quits (~h98@187.83.249.216.dyn.smithville.net) (Quit: Client closed) |
| 02:54:59 | × | enemeth79 quits (uid309041@id-309041.tooting.irccloud.com) (Quit: Connection closed for inactivity) |
| 02:55:01 | × | vicfred_ quits (~vicfred@206.217.205.37) (Quit: Leaving) |
| 02:55:13 | → | vicfred joins (~vicfred@user/vicfred) |
| 02:56:33 | × | Core5124 quits (~agua@2804:14c:8793:8e2f:642c:be4c:c775:de87) (Ping timeout: 255 seconds) |
| 02:59:13 | × | machinedgod quits (~machinedg@24.105.81.50) (Ping timeout: 258 seconds) |
| 03:02:28 | × | shapr quits (~user@pool-100-36-247-68.washdc.fios.verizon.net) (Ping timeout: 252 seconds) |
| 03:02:45 | × | johnw quits (~johnw@76-234-69-149.lightspeed.frokca.sbcglobal.net) (Quit: ZNC - http://znc.in) |
| 03:05:06 | × | myShoggoth quits (~myShoggot@97-120-70-214.ptld.qwest.net) (Ping timeout: 255 seconds) |
| 03:06:08 | → | myShoggoth joins (~myShoggot@97-120-70-214.ptld.qwest.net) |
| 03:06:26 | → | matsurago joins (~matsurago@p0125707-vcngn.tkyo.nt.ngn.ppp.ocn.ne.jp) |
| 03:08:35 | → | spruit11 joins (~quassel@2a02:a467:ccd6:1:b030:6032:2190:671b) |
| 03:09:29 | → | keutoi joins (~keutoi@157.47.111.203) |
| 03:12:18 | × | jao quits (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Ping timeout: 240 seconds) |
| 03:13:45 | → | desophos joins (~desophos@2601:249:1680:a570:f1ba:fb0d:59f:a0b5) |
| 03:14:36 | → | pesada joins (~agua@191.177.175.57) |
| 03:16:38 | → | Core1864 joins (~agua@2804:18:44:17a3:1:0:2cdf:1514) |
| 03:16:46 | × | agua quits (~agua@2804:18:44:17a3:1:0:2cdf:1514) (Read error: Connection reset by peer) |
| 03:17:02 | × | pesada quits (~agua@191.177.175.57) (Read error: Connection reset by peer) |
| 03:17:12 | → | agua joins (~agua@2804:14c:8793:8e2f:642c:be4c:c775:de87) |
| 03:20:46 | × | Core1864 quits (~agua@2804:18:44:17a3:1:0:2cdf:1514) (Ping timeout: 246 seconds) |
| 03:23:06 | × | raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 240 seconds) |
| 03:23:58 | → | jushur joins (~human@user/jushur) |
| 03:29:30 | → | mcfrdy joins (~mcfrdy@45.67.96.175) |
| 03:29:30 | × | mcfrdy quits (~mcfrdy@45.67.96.175) (Changing host) |
| 03:29:31 | → | mcfrdy joins (~mcfrdy@user/mcfrdy) |
| 03:30:27 | × | mcfrdy- quits (~mcfrdy@45.67.96.175) (Ping timeout: 265 seconds) |
| 03:30:46 | × | img quits (~img@user/img) (Quit: ZNC 1.8.2 - https://znc.in) |
| 03:33:11 | × | matsurago quits (~matsurago@p0125707-vcngn.tkyo.nt.ngn.ppp.ocn.ne.jp) (Quit: Leaving) |
| 03:36:26 | → | vysn joins (~vysn@user/vysn) |
| 03:38:54 | × | _xor quits (~xor@74.215.232.67) (Quit: brb) |
| 03:39:53 | → | _xor joins (~xor@74.215.232.67) |
| 03:42:50 | <guest61> | about IO socket, if peer closed the connection, will get -1, what about they just went off the network without sent disconnect signal, how to handle that? |
| 03:44:04 | <geekosaur> | you get an exception which you must catch |
| 03:44:33 | <geekosaur> | see the Control.Exception module |
| 03:44:37 | <guest61> | how we handle that without exception? |
| 03:44:50 | × | Erutuon quits (~Erutuon@user/erutuon) (Ping timeout: 258 seconds) |
| 03:45:04 | <guest61> | what about C langauage, it doesnt have exception, how it handle that? |
| 03:45:14 | → | img joins (~img@user/img) |
| 03:45:24 | <guest61> | Either cant handle this IO exception? |
| 03:45:37 | → | lars8 joins (~bc817c21@217.29.117.252) |
| 03:45:39 | <geekosaur> | C returns -1 with an error code, vs. 0; it doesn;t have exceptions |
| 03:45:41 | <c_wraith> | in C, you look at return values and check ERRNO and hope nothing concurrent changed it |
| 03:45:49 | <geekosaur> | Either can;t handle this kind of exception |
| 03:48:27 | <lars8> | guest61, article makes a good argument why exceptions are prefered in IO over Either. https://www.fpcomplete.com/blog/2016/11/exceptions-best-practices-haskell/ |
| 03:48:29 | <guest61> | if there're multiple IO at the same time, one of them just did this, check ERRNO will work? |
| 03:48:32 | <lars8> | +this |
| 03:48:45 | <nitrix> | c_wraith, errno is thread-local for POSIX systems. |
| 03:49:28 | <guest61> | I thought that try-catch is typical OOP stuff |
| 03:49:46 | <geekosaur> | try-catch is not particularly OOP |
| 03:49:49 | <guest61> | FP has try-catch is weird |
| 03:50:21 | <nitrix> | For Haskell, Either/Maybe is a good way to do error-handling, then you also have nicer monad (transformers) like EitherT to do your exceptions. |
| 03:50:33 | × | favonia quits (~favonia@user/favonia) (Ping timeout: 255 seconds) |
| 03:50:54 | <lars8> | but then you force callers to handle errors in two ways, via either, and exceptions |
| 03:50:57 | <guest61> | yes, but there're exception and run-time exception |
| 03:51:13 | <guest61> | Either cant handle run-time exception |
| 03:51:23 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 03:51:25 | → | favonia joins (~favonia@user/favonia) |
| 03:51:38 | → | ubert joins (~Thunderbi@p2e5a50e5.dip0.t-ipconnect.de) |
| 03:51:50 | × | ubert quits (~Thunderbi@p2e5a50e5.dip0.t-ipconnect.de) (Client Quit) |
| 03:52:06 | → | ubert joins (~Thunderbi@p2e5a50e5.dip0.t-ipconnect.de) |
| 03:52:45 | × | ubert quits (~Thunderbi@p2e5a50e5.dip0.t-ipconnect.de) (Client Quit) |
| 03:53:01 | → | ubert joins (~Thunderbi@p2e5a50e5.dip0.t-ipconnect.de) |
| 03:54:46 | × | ubert quits (~Thunderbi@p2e5a50e5.dip0.t-ipconnect.de) (Client Quit) |
| 03:55:35 | <guest61> | how other languages without try-catch to handle run-time exceptions? |
| 03:57:10 | <xsperry> | probably more of a #programming question |
| 03:59:54 | × | _xor quits (~xor@74.215.232.67) (Quit: brb) |
| 04:01:01 | → | _xor joins (~xor@74.215.232.67) |
| 04:02:01 | → | johnw joins (~johnw@2600:1700:cf00:db0:4c55:69bc:4e4d:1c90) |
| 04:06:31 | → | wei2912 joins (~wei2912@112.199.250.21) |
| 04:06:45 | → | soft-warm joins (~soft-warm@2600:8801:db01:8f0:67c1:e7b7:4e84:318d) |
| 04:10:03 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 04:14:24 | × | favonia quits (~favonia@user/favonia) (Ping timeout: 255 seconds) |
| 04:16:46 | → | favonia joins (~favonia@user/favonia) |
| 04:20:33 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 04:21:43 | <lars8> | guest61, Either can handle runtime errors, just return Left instead of throwing an exception. but, any IO code can throw exceptions other than the one you considered throwing, but are not returning (async exceptions, out of memory exceptions, etc), and encoding every possible exception in the type would be pretty tedious. java tried something similar with checked exceptions, and they are nearly universally hated |
| 04:21:54 | <lars8> | s/not/now |
| 04:22:14 | × | Maxdamantus quits (~Maxdamant@user/maxdamantus) (Ping timeout: 268 seconds) |
| 04:23:52 | → | Maxdamantus joins (~Maxdamant@user/maxdamantus) |
| 04:24:18 | × | favonia quits (~favonia@user/favonia) (Ping timeout: 255 seconds) |
| 04:26:45 | → | favonia joins (~favonia@user/favonia) |
| 04:27:11 | × | mcfrdy quits (~mcfrdy@user/mcfrdy) (Ping timeout: 255 seconds) |
| 04:27:53 | → | falafel joins (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) |
| 04:28:14 | <c_wraith> | in some sense, Either is the same as checked exceptions. Except that the tools for working with them are a lot more pleasant |
| 04:28:40 | × | bgamari_ quits (~bgamari@72.65.101.148) (Ping timeout: 246 seconds) |
| 04:28:51 | → | bgamari joins (~bgamari@72.65.102.182) |
| 04:34:43 | × | chris_ quits (~chris@81.96.113.213) (Remote host closed the connection) |
| 04:40:57 | × | ph88 quits (~ph88@2a02:8109:9e00:7e5c:f938:d06a:9ad7:b39c) (Ping timeout: 255 seconds) |
| 04:44:26 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds) |
| 04:46:32 | × | norias quits (~jaredm@c-98-219-195-163.hsd1.pa.comcast.net) (Ping timeout: 255 seconds) |
| 04:46:50 | → | Ananta-shesha joins (~pjetcetal@128-71-13-182.broadband.corbina.ru) |
| 04:50:17 | <monochrom> | try-catch traces all the way back to a David Parnas 1970s paper. Way before OO. |
| 04:50:41 | <monochrom> | OO only added "the Exception type can have user-defined subtypes" |
| 04:51:17 | → | lavaman joins (~lavaman@98.38.249.169) |
| 04:51:21 | <monochrom> | SML also has had exceptions for a long time. |
| 04:51:31 | <monochrom> | and SML's predecessors |
| 04:54:59 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 258 seconds) |
| 04:55:12 | <monochrom> | Theorem provers written in *ML used this heavily for backtracking proof search. So it was not just I/O even. |
| 04:55:48 | × | lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 255 seconds) |
| 04:56:52 | <monochrom> | To be sure, in that use case, we now know that it should be Either/Maybe and MonadPlus. But writing theorem provers in *ML was a long long time ago. |
| 05:00:18 | × | favonia quits (~favonia@user/favonia) (Ping timeout: 255 seconds) |
| 05:00:22 | <c_wraith> | and if you worry about performance of constructing/matching all those data types, you might CPS-transform the Either, at which point... you're basically back at exceptions anyway. Except without an extra language construct. |
| 05:01:40 | → | lavaman joins (~lavaman@98.38.249.169) |
| 05:02:46 | → | favonia joins (~favonia@user/favonia) |
| 05:11:00 | × | favonia quits (~favonia@user/favonia) (Remote host closed the connection) |
| 05:11:49 | → | favonia joins (~favonia@user/favonia) |
| 05:11:58 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 05:16:40 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 252 seconds) |
| 05:17:37 | → | Erutuon joins (~Erutuon@user/erutuon) |
| 05:31:59 | × | mrus quits (~mrus@2001:19f0:5:3fd4:5400:3ff:fe48:1820) (Ping timeout: 255 seconds) |
| 05:32:06 | × | jmorris quits (uid433911@id-433911.stonehaven.irccloud.com) (Quit: Connection closed for inactivity) |
| 05:33:46 | × | retroid_ quits (~retro@97e2ba5d.skybroadband.com) (Ping timeout: 268 seconds) |
| 05:37:12 | → | ph88 joins (~ph88@2a02:8109:9e00:7e5c:f938:d06a:9ad7:b39c) |
| 05:37:58 | × | soft-warm quits (~soft-warm@2600:8801:db01:8f0:67c1:e7b7:4e84:318d) (Ping timeout: 246 seconds) |
| 05:52:23 | → | mnrmnaugh joins (~mnrmnaugh@pool-96-252-87-182.bstnma.fios.verizon.net) |
| 05:56:05 | → | Maxdaman1us joins (~Maxdamant@user/maxdamantus) |
| 05:56:10 | × | alphabeta quits (~kilolympu@cpc92710-cmbg20-2-0-cust265.5-4.cable.virginm.net) (Quit: Quitting IRC :() |
| 05:56:16 | × | Maxdamantus quits (~Maxdamant@user/maxdamantus) (Ping timeout: 252 seconds) |
| 05:56:31 | → | kilolympus joins (~kilolympu@cpc92710-cmbg20-2-0-cust265.5-4.cable.virginm.net) |
| 05:59:00 | × | nate1 quits (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 258 seconds) |
| 06:00:02 | → | takuan joins (~takuan@178-116-218-225.access.telenet.be) |
| 06:18:09 | × | Null_A quits (~null_a@2601:645:8700:2290:b55a:33c2:1e1d:f229) (Ping timeout: 255 seconds) |
| 06:24:27 | × | zmt00 quits (~zmt00@user/zmt00) (Ping timeout: 255 seconds) |
| 06:26:10 | × | hyiltiz quits (~quassel@31.220.5.250) (Ping timeout: 256 seconds) |
| 06:27:22 | → | hyiltiz joins (~quassel@31.220.5.250) |
| 06:31:32 | Maxdaman1us | is now known as Maxdamantus |
| 06:41:01 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 06:41:02 | → | jmorris joins (uid433911@id-433911.stonehaven.irccloud.com) |
| 06:42:47 | × | slowButPresent quits (~slowButPr@user/slowbutpresent) (Quit: leaving) |
| 06:45:55 | × | myShoggoth quits (~myShoggot@97-120-70-214.ptld.qwest.net) (Ping timeout: 268 seconds) |
| 06:48:23 | × | falafel quits (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) (Ping timeout: 268 seconds) |
| 06:48:33 | → | PinealGlandOptic joins (~PinealGla@37.115.210.35) |
| 06:52:07 | → | Guest9 joins (~Guest9@103.250.137.213) |
| 06:58:01 | × | desophos quits (~desophos@2601:249:1680:a570:f1ba:fb0d:59f:a0b5) (Quit: Leaving) |
| 06:59:30 | → | mcfrdy_ joins (uid507892@user/mcfrdy) |
| 07:03:11 | → | _ht joins (~quassel@82-169-194-8.biz.kpn.net) |
| 07:05:52 | <guest61> | update message is Nothing |
| 07:05:53 | <guest61> | update message is Nothing |
| 07:10:24 | × | kilolympus quits (~kilolympu@cpc92710-cmbg20-2-0-cust265.5-4.cable.virginm.net) (Read error: Connection reset by peer) |
| 07:15:17 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 258 seconds) |
| 07:15:40 | × | Guest18 quits (~Guest18@2603-8080-6d0d-35bb-0000-0000-0000-0004.res6.spectrum.com) (Quit: Client closed) |
| 07:22:48 | × | _xor quits (~xor@74.215.232.67) (Quit: WeeChat 3.2) |
| 07:28:57 | × | trufas quits (~trufas@177.240.218.218) (Ping timeout: 276 seconds) |
| 07:28:58 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 07:29:49 | → | trufas joins (~trufas@177.240.218.218) |
| 07:32:14 | → | lavaman joins (~lavaman@98.38.249.169) |
| 07:35:01 | → | burnsidesLlama joins (~burnsides@dhcp168-011.wadham.ox.ac.uk) |
| 07:40:57 | × | ph88 quits (~ph88@2a02:8109:9e00:7e5c:f938:d06a:9ad7:b39c) (Ping timeout: 255 seconds) |
| 07:43:01 | → | chris_ joins (~chris@81.96.113.213) |
| 07:43:06 | × | pavonia quits (~user@user/siracusa) (Quit: Bye!) |
| 07:44:17 | × | bontaq quits (~user@ool-18e47f8d.dyn.optonline.net) (Ping timeout: 245 seconds) |
| 07:46:13 | × | burnsidesLlama quits (~burnsides@dhcp168-011.wadham.ox.ac.uk) (Remote host closed the connection) |
| 07:46:15 | → | Tuplanolla joins (~Tuplanoll@91-159-68-239.elisa-laajakaista.fi) |
| 07:50:21 | × | tzh quits (~tzh@c-24-21-73-154.hsd1.or.comcast.net) (Quit: zzz) |
| 07:53:06 | × | Erutuon quits (~Erutuon@user/erutuon) (Ping timeout: 255 seconds) |
| 07:53:56 | × | Guest9 quits (~Guest9@103.250.137.213) (Quit: Connection closed) |
| 07:56:37 | → | Feuermagier joins (~Feuermagi@user/feuermagier) |
| 08:00:00 | → | acidjnk joins (~acidjnk@p200300d0c72b9505d437a5269bf657ec.dip0.t-ipconnect.de) |
| 08:00:28 | → | burnsidesLlama joins (~burnsides@dhcp168-011.wadham.ox.ac.uk) |
| 08:07:01 | → | hendursa1 joins (~weechat@user/hendursaga) |
| 08:09:11 | × | hendursaga quits (~weechat@user/hendursaga) (Ping timeout: 244 seconds) |
| 08:09:56 | × | MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 255 seconds) |
| 08:10:51 | → | smtnet3 joins (~asdfasdfa@202.36.244.28) |
| 08:12:38 | → | MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
| 08:13:29 | → | Feuermagier_ joins (~Feuermagi@213.178.26.41) |
| 08:17:16 | <smtnet3> | yoyo |
| 08:17:44 | × | geekosaur quits (~geekosaur@xmonad/geekosaur) (Killed (NickServ (GHOST command used by allbery_b))) |
| 08:17:48 | → | geekosaur joins (~geekosaur@xmonad/geekosaur) |
| 08:23:37 | → | mikoto-chan joins (~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be) |
| 08:24:02 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 08:25:13 | adamse_ | is now known as adamse |
| 08:27:21 | → | Lord_of_Life_ joins (~Lord@user/lord-of-life/x-2819915) |
| 08:30:00 | × | MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 255 seconds) |
| 08:30:11 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 08:30:36 | × | Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 265 seconds) |
| 08:30:38 | Lord_of_Life_ | is now known as Lord_of_Life |
| 08:31:49 | → | zeenk joins (~zeenk@2a02:2f04:a106:9600:82fb:aed9:ca9:38d3) |
| 08:32:47 | × | hnOsmium0001 quits (uid453710@id-453710.stonehaven.irccloud.com) (Quit: Connection closed for inactivity) |
| 08:33:57 | → | fendor joins (~fendor@178.165.167.65.wireless.dyn.drei.com) |
| 08:33:59 | → | MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
| 08:34:14 | × | xff0x_ quits (~xff0x@2001:1a81:525b:ea00:2ecf:bd12:9251:d3e) (Ping timeout: 255 seconds) |
| 08:34:52 | → | xff0x_ joins (~xff0x@2001:1a81:525b:ea00:61de:d55d:7965:91a3) |
| 08:41:11 | peutri_ | is now known as peutri |
| 08:41:12 | → | anandprabhu joins (~anandprab@94.202.243.198) |
| 08:46:22 | × | azeem quits (~azeem@dynamic-adsl-94-34-31-95.clienti.tiscali.it) (Read error: Connection reset by peer) |
| 08:47:13 | → | benin0369 joins (~benin@183.82.204.23) |
| 08:48:09 | → | azeem joins (~azeem@176.201.37.153) |
| 08:50:47 | → | lavaman joins (~lavaman@98.38.249.169) |
| 08:50:51 | × | lavaman quits (~lavaman@98.38.249.169) (Remote host closed the connection) |
| 08:51:23 | → | lavaman joins (~lavaman@98.38.249.169) |
| 08:52:50 | × | azeem quits (~azeem@176.201.37.153) (Ping timeout: 265 seconds) |
| 08:53:50 | → | azeem joins (~azeem@176.201.37.153) |
| 08:56:13 | × | lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 265 seconds) |
| 09:01:03 | × | azeem quits (~azeem@176.201.37.153) (Ping timeout: 265 seconds) |
| 09:01:12 | × | econo quits (uid147250@user/econo) (Quit: Connection closed for inactivity) |
| 09:01:35 | → | azeem joins (~azeem@dynamic-adsl-94-34-31-95.clienti.tiscali.it) |
| 09:07:45 | × | eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
| 09:12:26 | × | azeem quits (~azeem@dynamic-adsl-94-34-31-95.clienti.tiscali.it) (Ping timeout: 252 seconds) |
| 09:15:52 | → | _xor joins (~xor@74.215.232.67) |
| 09:17:42 | × | Feuermagier_ quits (~Feuermagi@213.178.26.41) (Quit: Leaving) |
| 09:21:13 | → | ru0mad joins (~ru0mad@176.187.215.241) |
| 09:26:57 | × | ru0mad quits (~ru0mad@176.187.215.241) (Remote host closed the connection) |
| 09:28:37 | → | ru0mad joins (~ru0mad@176.187.215.241) |
| 09:31:59 | → | gehmehgeh joins (~user@user/gehmehgeh) |
| 09:32:01 | × | lars8 quits (~bc817c21@217.29.117.252) (Quit: http://www.okay.uz/ (Session timeout)) |
| 09:33:26 | × | ru0mad quits (~ru0mad@176.187.215.241) (Ping timeout: 265 seconds) |
| 09:33:54 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 255 seconds) |
| 09:36:44 | × | geekosaur quits (~geekosaur@xmonad/geekosaur) (Remote host closed the connection) |
| 09:37:05 | → | geekosaur joins (~geekosaur@xmonad/geekosaur) |
| 09:37:28 | → | ph88 joins (~ph88@2a02:8109:9e00:7e5c:f938:d06a:9ad7:b39c) |
| 09:38:05 | → | Guest77 joins (~Guest77@2402:e280:2117:297:ecf8:f374:8704:f843) |
| 09:40:59 | × | gehmehgeh quits (~user@user/gehmehgeh) (Quit: Leaving) |
| 09:43:52 | → | ru0mad joins (~ru0mad@176.187.215.241) |
| 09:44:40 | × | albet70 quits (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
| 09:45:47 | → | albet70 joins (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
| 09:46:37 | × | mcfrdy_ quits (uid507892@user/mcfrdy) (Quit: Connection closed for inactivity) |
| 09:54:37 | × | ru0mad quits (~ru0mad@176.187.215.241) (Ping timeout: 268 seconds) |
| 09:56:21 | × | Sgeo quits (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
| 10:01:32 | × | chomwitt quits (~Pitsikoko@athedsl-32487.home.otenet.gr) (Ping timeout: 255 seconds) |
| 10:04:36 | → | jippiedoe joins (~david@2a02-a44c-e14e-1-a3df-4b90-dd0e-5377.fixed6.kpn.net) |
| 10:06:09 | → | ru0mad joins (~ru0mad@176.187.215.241) |
| 10:08:16 | → | eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
| 10:08:52 | × | jippiedoe quits (~david@2a02-a44c-e14e-1-a3df-4b90-dd0e-5377.fixed6.kpn.net) (Ping timeout: 246 seconds) |
| 10:09:26 | → | frdy joins (~mcfrdy@user/mcfrdy) |
| 10:10:51 | × | ru0mad quits (~ru0mad@176.187.215.241) (Ping timeout: 258 seconds) |
| 10:12:46 | × | eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 258 seconds) |
| 10:18:57 | × | wei2912 quits (~wei2912@112.199.250.21) (Remote host closed the connection) |
| 10:22:59 | → | wei2912 joins (~wei2912@112.199.250.21) |
| 10:32:17 | → | lavaman joins (~lavaman@98.38.249.169) |
| 10:33:16 | × | Vajb quits (~Vajb@hag-jnsbng11-58c3a1-224.dhcp.inet.fi) (Read error: Connection reset by peer) |
| 10:34:20 | → | Vajb joins (~Vajb@hag-jnsbng11-58c3a1-224.dhcp.inet.fi) |
| 10:34:35 | × | zaquest quits (~notzaques@5.128.210.178) (Remote host closed the connection) |
| 10:35:26 | → | azeem joins (~azeem@176.201.37.153) |
| 10:35:47 | × | azeem quits (~azeem@176.201.37.153) (Read error: Connection reset by peer) |
| 10:36:00 | → | azeem joins (~azeem@dynamic-adsl-84-220-239-18.clienti.tiscali.it) |
| 10:36:54 | × | lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 255 seconds) |
| 10:39:43 | × | Vajb quits (~Vajb@hag-jnsbng11-58c3a1-224.dhcp.inet.fi) (Read error: Connection reset by peer) |
| 10:39:53 | → | Vajb joins (~Vajb@hag-jnsbng11-58c3a1-224.dhcp.inet.fi) |
| 10:39:59 | → | zaquest joins (~notzaques@5.128.210.178) |
| 10:44:41 | × | albet70 quits (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
| 10:45:47 | → | albet70 joins (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
| 10:46:40 | × | Gurkenglas quits (~Gurkengla@dslb-002-203-144-156.002.203.pools.vodafone-ip.de) (Ping timeout: 252 seconds) |
| 10:46:41 | × | albet70 quits (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
| 10:47:48 | → | jumper149 joins (~jumper149@80.240.31.34) |
| 10:47:48 | → | albet70 joins (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
| 10:57:05 | → | Guest9 joins (~Guest9@103.250.137.212) |
| 11:07:44 | → | Pickchea joins (~private@user/pickchea) |
| 11:08:00 | × | mikoto-chan quits (~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be) (Ping timeout: 268 seconds) |
| 11:09:08 | → | mikoto-chan joins (~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be) |
| 11:09:11 | → | ghais joins (uid508683@id-508683.tinside.irccloud.com) |
| 11:09:53 | → | eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
| 11:14:12 | → | hseg joins (~gesh@185.120.126.10) |
| 11:14:14 | → | jippiedoe joins (~david@2a02-a44c-e14e-1-8d88-9bbd-c50a-c552.fixed6.kpn.net) |
| 11:14:47 | × | eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 268 seconds) |
| 11:15:41 | → | smichel17 joins (~smichel17@c-73-68-217-18.hsd1.ma.comcast.net) |
| 11:16:26 | ghais | is now known as Ghais |
| 11:19:58 | <hseg> | has this idea been offered to solve the orphan instance problem: extend overlapping rules so that non-orphan instances are considered more specific than orphan instances |
| 11:20:41 | <hseg> | at first blush, it would seem to provide a mechanism for adoptable orphans -- just mark your instance OVERLAPPABLE, and petition upstream to pull it in |
| 11:20:55 | Ghais | is now known as _0x47 |
| 11:22:16 | × | Guest9 quits (~Guest9@103.250.137.212) (Quit: Connection closed) |
| 11:22:44 | <hseg> | you'd just want to extract the orphans from your package so you don't have multiple orphans first |
| 11:25:42 | × | albet70 quits (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
| 11:26:48 | → | albet70 joins (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
| 11:27:48 | × | hseg quits (~gesh@185.120.126.10) (Quit: WeeChat 3.2) |
| 11:29:30 | → | hseg joins (~gesh@185.120.126.10) |
| 11:30:18 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 11:40:30 | × | Codaraxis quits (~Codaraxis@user/codaraxis) (Remote host closed the connection) |
| 11:40:53 | → | Codaraxis joins (~Codaraxis@user/codaraxis) |
| 11:40:55 | × | ph88 quits (~ph88@2a02:8109:9e00:7e5c:f938:d06a:9ad7:b39c) (Ping timeout: 246 seconds) |
| 11:44:11 | × | burnsidesLlama quits (~burnsides@dhcp168-011.wadham.ox.ac.uk) (Remote host closed the connection) |
| 11:45:45 | × | jippiedoe quits (~david@2a02-a44c-e14e-1-8d88-9bbd-c50a-c552.fixed6.kpn.net) (Ping timeout: 255 seconds) |
| 11:56:25 | → | drd joins (~drd@93-39-151-19.ip76.fastwebnet.it) |
| 11:59:19 | × | ishutin_ quits (~ishutin@85-238-93-30.pool.digikabel.hu) (Remote host closed the connection) |
| 12:04:01 | → | pesada joins (~agua@2804:18:44:17a3:1:0:2cdf:1514) |
| 12:04:43 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds) |
| 12:05:48 | × | hexfive quits (~eric@50.35.83.177) (Quit: WeeChat 3.0) |
| 12:06:49 | × | agua quits (~agua@2804:14c:8793:8e2f:642c:be4c:c775:de87) (Ping timeout: 246 seconds) |
| 12:08:15 | × | xff0x_ quits (~xff0x@2001:1a81:525b:ea00:61de:d55d:7965:91a3) (Ping timeout: 255 seconds) |
| 12:08:33 | → | xff0x_ joins (~xff0x@185.65.135.235) |
| 12:09:04 | <hseg> | no takers? to recall my question was whether considering non-orphan instances more specific than orphans for overlap resolution was ever considered as a solution for the orphan instance problem |
| 12:14:53 | → | soft-warm joins (~soft-warm@2600:8801:db01:8f0:b50e:8cc8:c702:8b1f) |
| 12:18:42 | → | fendor_ joins (~fendor@178.165.167.65.wireless.dyn.drei.com) |
| 12:21:02 | → | fendor__ joins (~fendor@212095005147.public.telering.at) |
| 12:21:07 | → | turlando_ joins (~turlando@93-42-250-112.ip89.fastwebnet.it) |
| 12:21:24 | × | turlando quits (~turlando@user/turlando) (Remote host closed the connection) |
| 12:21:24 | × | fendor quits (~fendor@178.165.167.65.wireless.dyn.drei.com) (Read error: Connection reset by peer) |
| 12:22:58 | → | fendor joins (~fendor@178.165.167.65.wireless.dyn.drei.com) |
| 12:23:16 | × | fendor_ quits (~fendor@178.165.167.65.wireless.dyn.drei.com) (Ping timeout: 246 seconds) |
| 12:23:19 | × | fendor quits (~fendor@178.165.167.65.wireless.dyn.drei.com) (Read error: Connection reset by peer) |
| 12:23:46 | → | fendor joins (~fendor@178.165.167.65.wireless.dyn.drei.com) |
| 12:25:01 | × | soft-warm quits (~soft-warm@2600:8801:db01:8f0:b50e:8cc8:c702:8b1f) (Ping timeout: 246 seconds) |
| 12:26:46 | × | xff0x_ quits (~xff0x@185.65.135.235) (Ping timeout: 252 seconds) |
| 12:28:46 | → | xff0x_ joins (~xff0x@2001:1a81:525b:ea00:8ac3:8abd:f864:c680) |
| 12:30:14 | fendor__ | is now known as fendor_ |
| 12:32:06 | × | jmorris quits (uid433911@id-433911.stonehaven.irccloud.com) (Quit: Connection closed for inactivity) |
| 12:33:41 | → | lavaman joins (~lavaman@98.38.249.169) |
| 12:37:05 | → | awth13 joins (~user@user/awth13) |
| 12:37:34 | → | ph88 joins (~ph88@2a02:8109:9e00:7e5c:f938:d06a:9ad7:b39c) |
| 12:38:34 | × | lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 265 seconds) |
| 12:38:36 | × | adanwan quits (~adanwan@gateway/tor-sasl/adanwan) (Remote host closed the connection) |
| 12:38:49 | → | adanwan joins (~adanwan@gateway/tor-sasl/adanwan) |
| 12:41:06 | × | Pickchea quits (~private@user/pickchea) (Ping timeout: 255 seconds) |
| 12:46:44 | <guest61> | update message is Nothing |
| 12:48:23 | <[exa]> | no update, good update |
| 12:48:31 | × | Feuermagier quits (~Feuermagi@user/feuermagier) (Ping timeout: 268 seconds) |
| 12:50:07 | → | burnsidesLlama joins (~burnsides@dhcp168-011.wadham.ox.ac.uk) |
| 12:52:27 | <tom__> | Are stochastic processes better modelled as comonads or monads? |
| 12:53:07 | → | jao joins (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) |
| 12:53:42 | × | albet70 quits (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
| 12:54:50 | → | albet70 joins (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
| 12:55:26 | <[exa]> | tom__: depends |
| 12:55:27 | × | Vajb quits (~Vajb@hag-jnsbng11-58c3a1-224.dhcp.inet.fi) (Read error: Connection reset by peer) |
| 12:55:30 | × | burnsidesLlama quits (~burnsides@dhcp168-011.wadham.ox.ac.uk) (Ping timeout: 255 seconds) |
| 12:55:45 | <[exa]> | tom__: comonads are great for representing a "cache" of stuff, may be interesting for e.g. precomputed distributions |
| 12:56:28 | <[exa]> | tom__: monads are great for representing the "actual background context" that you only somehow manipulate using (say) an EDSL |
| 12:56:33 | <tom__> | Its for brownian motion/wiener process |
| 12:56:39 | → | Vajb joins (~Vajb@hag-jnsbng11-58c3a1-224.dhcp.inet.fi) |
| 12:57:01 | × | Raito_Bezarius quits (~Raito@wireguard/tunneler/raito-bezarius) (Quit: free()) |
| 12:57:02 | → | lbseale joins (~lbseale@user/ep1ctetus) |
| 12:57:11 | <[exa]> | so you have a state of X particles moving around and hitting each other? |
| 12:57:34 | <tom__> | Well, modelling a stock price |
| 12:57:49 | → | Raito_Bezarius joins (~Raito@wireguard/tunneler/raito-bezarius) |
| 12:57:52 | <tom__> | So just a time series |
| 12:58:13 | → | burnsidesLlama joins (~burnsides@dhcp168-011.wadham.ox.ac.uk) |
| 12:58:35 | <[exa]> | ok so there's some "actual state", and some "history" that you may as well forget, right? |
| 12:59:23 | <tom__> | Yeah since its a martingale the process computes the next step from the last step only |
| 12:59:58 | <tom__> | but the last step has some extra state which is the delta of the brownian motion itself which obviously has a random component |
| 13:00:33 | <tom__> | Forgetting history when computing the next step feels comonadic to me |
| 13:05:29 | × | mikoto-chan quits (~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be) (Quit: mikoto-chan) |
| 13:05:43 | <[exa]> | yeah that would work |
| 13:05:44 | → | mikoto-chan joins (~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be) |
| 13:06:01 | <[exa]> | otoh it might be much simpler because you really don't need to reach for the history there |
| 13:11:25 | → | burnside_ joins (~burnsides@dhcp168-011.wadham.ox.ac.uk) |
| 13:11:25 | × | burnsidesLlama quits (~burnsides@dhcp168-011.wadham.ox.ac.uk) (Read error: Connection reset by peer) |
| 13:13:52 | → | fendor__ joins (~fendor@178.165.167.65.wireless.dyn.drei.com) |
| 13:15:57 | → | mthvedt joins (uid501949@id-501949.stonehaven.irccloud.com) |
| 13:15:59 | × | burnside_ quits (~burnsides@dhcp168-011.wadham.ox.ac.uk) (Read error: Connection reset by peer) |
| 13:16:05 | <tom__> | awesome thanks! |
| 13:16:06 | → | burnsidesLlama joins (~burnsides@dhcp168-011.wadham.ox.ac.uk) |
| 13:17:00 | × | fendor_ quits (~fendor@212095005147.public.telering.at) (Ping timeout: 252 seconds) |
| 13:17:00 | <guest61> | update message is Nothing |
| 13:20:52 | → | raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 13:22:44 | × | chexum quits (~chexum@gateway/tor-sasl/chexum) (Quit: -) |
| 13:23:38 | → | retroid_ joins (~retro@97e2ba5d.skybroadband.com) |
| 13:26:41 | → | hseg_ joins (~gesh@185.120.126.10) |
| 13:27:28 | × | burnsidesLlama quits (~burnsides@dhcp168-011.wadham.ox.ac.uk) (Remote host closed the connection) |
| 13:29:48 | × | hseg quits (~gesh@185.120.126.10) (Ping timeout: 258 seconds) |
| 13:30:42 | → | chomwitt joins (~Pitsikoko@athedsl-32487.home.otenet.gr) |
| 13:33:43 | × | albet70 quits (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
| 13:34:49 | → | albet70 joins (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
| 13:39:00 | → | chexum joins (~chexum@gateway/tor-sasl/chexum) |
| 13:39:00 | × | chexum quits (~chexum@gateway/tor-sasl/chexum) (Client Quit) |
| 13:45:29 | → | amahl joins (~amahl@dsl-jklbng12-54fbca-64.dhcp.inet.fi) |
| 13:49:20 | <Boarders> | Is there a convenient way to see every type defined in base? |
| 13:49:41 | → | haritz joins (~hrtz@2a02:8010:65b5:0:6009:6384:e3cb:2220) |
| 13:49:41 | × | haritz quits (~hrtz@2a02:8010:65b5:0:6009:6384:e3cb:2220) (Changing host) |
| 13:49:41 | → | haritz joins (~hrtz@user/haritz) |
| 13:52:29 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 13:55:20 | × | anandprabhu quits (~anandprab@94.202.243.198) (Quit: Leaving) |
| 14:00:30 | → | burnsidesLlama joins (~burnsides@dhcp168-011.wadham.ox.ac.uk) |
| 14:00:33 | <[exa]> | Boarders: in ghci, you can do something like Prelude.[2x tab] |
| 14:01:05 | <[exa]> | types will be nicely together starting with capitals |
| 14:01:06 | → | chexum joins (~quassel@gateway/tor-sasl/chexum) |
| 14:01:20 | <[exa]> | but that ain't too systematic, right |
| 14:01:37 | <Boarders> | Still useful to know :) |
| 14:01:43 | × | albet70 quits (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
| 14:02:27 | × | chexum quits (~quassel@gateway/tor-sasl/chexum) (Client Quit) |
| 14:02:36 | → | chexum joins (~quassel@gateway/tor-sasl/chexum) |
| 14:02:50 | → | albet70 joins (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
| 14:03:06 | → | zebrag joins (~chris@user/zebrag) |
| 14:03:22 | × | acidjnk quits (~acidjnk@p200300d0c72b9505d437a5269bf657ec.dip0.t-ipconnect.de) (Ping timeout: 246 seconds) |
| 14:05:02 | × | burnsidesLlama quits (~burnsides@dhcp168-011.wadham.ox.ac.uk) (Ping timeout: 252 seconds) |
| 14:06:06 | → | _73 joins (~user@pool-96-252-123-136.bstnma.fios.verizon.net) |
| 14:06:36 | × | Katarushisu quits (~Katarushi@cpc152083-finc20-2-0-cust170.4-2.cable.virginm.net) (Ping timeout: 255 seconds) |
| 14:07:03 | × | raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 255 seconds) |
| 14:09:08 | → | raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 14:12:05 | × | amahl quits (~amahl@dsl-jklbng12-54fbca-64.dhcp.inet.fi) (Read error: Connection reset by peer) |
| 14:12:13 | → | eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
| 14:12:19 | → | amahl joins (~amahl@dsl-jklbng12-54fbca-64.dhcp.inet.fi) |
| 14:12:22 | × | zeenk quits (~zeenk@2a02:2f04:a106:9600:82fb:aed9:ca9:38d3) (Quit: Konversation terminated!) |
| 14:15:29 | → | nate1 joins (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) |
| 14:15:45 | ← | _73 parts (~user@pool-96-252-123-136.bstnma.fios.verizon.net) (ERC (IRC client for Emacs 27.2)) |
| 14:16:42 | × | eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 268 seconds) |
| 14:17:51 | × | keutoi quits (~keutoi@157.47.111.203) (Ping timeout: 255 seconds) |
| 14:19:47 | → | keutoi joins (~keutoi@106.208.22.182) |
| 14:20:04 | × | nate1 quits (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 252 seconds) |
| 14:20:11 | × | immae quits (~immae@2a01:4f8:141:53e7::) (Quit: WeeChat 2.9) |
| 14:20:37 | → | immae joins (~immae@2a01:4f8:141:53e7::) |
| 14:26:35 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 255 seconds) |
| 14:30:16 | × | peterhil quits (~peterhil@dsl-hkibng32-54f849-252.dhcp.inet.fi) (Ping timeout: 268 seconds) |
| 14:30:44 | × | albet70 quits (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
| 14:31:51 | → | albet70 joins (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
| 14:34:06 | × | bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 244 seconds) |
| 14:36:25 | → | bitdex joins (~bitdex@gateway/tor-sasl/bitdex) |
| 14:37:15 | → | Topsi joins (~Tobias@dyndsl-095-033-088-035.ewe-ip-backbone.de) |
| 14:39:45 | → | burnsidesLlama joins (~burnsides@dhcp168-011.wadham.ox.ac.uk) |
| 14:40:57 | × | ph88 quits (~ph88@2a02:8109:9e00:7e5c:f938:d06a:9ad7:b39c) (Ping timeout: 250 seconds) |
| 14:44:42 | × | keutoi quits (~keutoi@106.208.22.182) (Ping timeout: 265 seconds) |
| 14:45:19 | × | burnsidesLlama quits (~burnsides@dhcp168-011.wadham.ox.ac.uk) (Ping timeout: 258 seconds) |
| 14:45:44 | × | albet70 quits (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
| 14:46:51 | → | albet70 joins (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
| 14:47:44 | × | albet70 quits (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
| 14:47:45 | → | slowButPresent joins (~slowButPr@user/slowbutpresent) |
| 14:48:51 | → | albet70 joins (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
| 14:49:40 | × | lbseale quits (~lbseale@user/ep1ctetus) (Read error: Connection reset by peer) |
| 14:52:43 | × | azeem quits (~azeem@dynamic-adsl-84-220-239-18.clienti.tiscali.it) (Ping timeout: 246 seconds) |
| 14:58:17 | → | afotgkmnzj7asv3r joins (~afotgkmnz@2001:470:69fc:105::c24b) |
| 14:58:30 | → | Atum_ joins (~IRC@user/atum/x-2392232) |
| 15:01:01 | → | Gurkenglas joins (~Gurkengla@dslb-002-203-144-156.002.203.pools.vodafone-ip.de) |
| 15:02:48 | × | zebrag quits (~chris@user/zebrag) (Quit: Konversation terminated!) |
| 15:08:21 | → | burnsidesLlama joins (~burnsides@dhcp168-011.wadham.ox.ac.uk) |
| 15:08:28 | → | yauhsien joins (~yauhsien@61-231-25-245.dynamic-ip.hinet.net) |
| 15:08:50 | × | oso quits (~oso@2601:58c:c080:a950:e67d:b4e2:c5be:433f) (Quit: Client closed) |
| 15:09:39 | → | Null_A joins (~null_a@2601:645:8700:2290:a961:38e5:e25d:7cd0) |
| 15:11:02 | → | myShoggoth joins (~myShoggot@97-120-70-214.ptld.qwest.net) |
| 15:18:30 | <davean> | hseg_: I feel you've missed what we value about instances |
| 15:19:04 | <hseg_> | oh? |
| 15:19:10 | hseg_ | is now known as hseg |
| 15:19:30 | × | drd quits (~drd@93-39-151-19.ip76.fastwebnet.it) (Ping timeout: 255 seconds) |
| 15:20:42 | <davean> | hseg: your approach makes it vary by what you import. |
| 15:20:45 | × | albet70 quits (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
| 15:21:21 | × | MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 258 seconds) |
| 15:21:47 | <hseg> | except it already does -- if you ever have overlapping instances, whether the more specific instance is imported will affect which instance gets chosen |
| 15:21:55 | → | albet70 joins (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
| 15:21:58 | <davean> | yes, thats the problem |
| 15:21:59 | <hseg> | true, that isn't common practice |
| 15:22:45 | × | albet70 quits (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Read error: Connection reset by peer) |
| 15:23:01 | <hseg> | the idea would be that this would be used to provide instances until upstream does, not to try and override upstream's instances |
| 15:23:50 | → | Pickchea joins (~private@user/pickchea) |
| 15:23:52 | → | albet70 joins (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
| 15:25:34 | → | isekaijin joins (~pyon@user/pyon) |
| 15:27:07 | → | MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
| 15:28:46 | × | albet70 quits (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
| 15:29:52 | → | albet70 joins (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
| 15:29:54 | → | azeem joins (~azeem@dynamic-adsl-94-34-39-251.clienti.tiscali.it) |
| 15:30:04 | → | nate1 joins (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) |
| 15:30:54 | → | gehmehgeh joins (~user@user/gehmehgeh) |
| 15:31:56 | × | MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 268 seconds) |
| 15:32:58 | → | peterhil joins (~peterhil@dsl-hkibng32-54f849-252.dhcp.inet.fi) |
| 15:33:47 | × | myShoggoth quits (~myShoggot@97-120-70-214.ptld.qwest.net) (Ping timeout: 268 seconds) |
| 15:34:31 | → | machinedgod joins (~machinedg@24.105.81.50) |
| 15:34:55 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 15:34:58 | × | nate1 quits (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 265 seconds) |
| 15:35:11 | → | MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
| 15:35:52 | → | Deide joins (~Deide@217.155.19.23) |
| 15:35:52 | × | Deide quits (~Deide@217.155.19.23) (Changing host) |
| 15:35:52 | → | Deide joins (~Deide@user/deide) |
| 15:36:19 | → | Guest9 joins (~Guest9@103.240.169.111) |
| 15:36:52 | RemiYuko | is now known as AkechiShiro |
| 15:37:17 | → | ph88 joins (~ph88@2a02:8109:9e00:7e5c:f938:d06a:9ad7:b39c) |
| 15:37:37 | × | wei2912 quits (~wei2912@112.199.250.21) (Quit: Lost terminal) |
| 15:41:31 | → | keutoi joins (~keutoi@223.237.21.130) |
| 15:42:05 | → | zmt00 joins (~zmt00@user/zmt00) |
| 15:43:39 | × | cheater quits (~Username@user/cheater) (Ping timeout: 268 seconds) |
| 15:43:50 | → | cheater joins (~Username@user/cheater) |
| 15:48:46 | × | albet70 quits (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
| 15:48:56 | × | xff0x_ quits (~xff0x@2001:1a81:525b:ea00:8ac3:8abd:f864:c680) (Ping timeout: 255 seconds) |
| 15:49:23 | → | zcombinator joins (~zcombinat@host-79-33-75-218.retail.telecomitalia.it) |
| 15:49:53 | → | albet70 joins (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
| 15:49:58 | → | xff0x_ joins (~xff0x@2001:1a81:525b:ea00:e4bc:612d:f531:cac7) |
| 15:53:28 | × | keutoi quits (~keutoi@223.237.21.130) (Quit: leaving) |
| 15:53:29 | → | hololeap joins (~hololeap@user/hololeap) |
| 15:54:09 | × | NieDzejkob quits (~quassel@195.149.98.3) (Quit: No Ping reply in 180 seconds.) |
| 15:55:28 | → | NieDzejkob joins (~quassel@195.149.98.3) |
| 15:55:28 | × | chomwitt quits (~Pitsikoko@athedsl-32487.home.otenet.gr) (Ping timeout: 258 seconds) |
| 15:57:26 | × | zcombinator quits (~zcombinat@host-79-33-75-218.retail.telecomitalia.it) (Quit: WeeChat 3.2) |
| 15:59:10 | → | burnside_ joins (~burnsides@dhcp168-011.wadham.ox.ac.uk) |
| 15:59:10 | × | burnsidesLlama quits (~burnsides@dhcp168-011.wadham.ox.ac.uk) (Read error: Connection reset by peer) |
| 16:00:58 | → | Tisoxin joins (~ikosit@user/ikosit) |
| 16:01:19 | → | waleee joins (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) |
| 16:02:34 | → | niemand joins (~niemand@p2e52f785.dip0.t-ipconnect.de) |
| 16:03:49 | → | slycelote_ joins (~slycelote@user/slycelote) |
| 16:03:54 | × | Guest9 quits (~Guest9@103.240.169.111) (Ping timeout: 258 seconds) |
| 16:04:30 | × | slycelote quits (~slycelote@user/slycelote) (Ping timeout: 255 seconds) |
| 16:04:32 | × | niemand quits (~niemand@p2e52f785.dip0.t-ipconnect.de) (Client Quit) |
| 16:04:55 | × | burnside_ quits (~burnsides@dhcp168-011.wadham.ox.ac.uk) (Remote host closed the connection) |
| 16:05:30 | → | burnsidesLlama joins (~burnsides@dhcp168-011.wadham.ox.ac.uk) |
| 16:10:15 | × | burnsidesLlama quits (~burnsides@dhcp168-011.wadham.ox.ac.uk) (Ping timeout: 265 seconds) |
| 16:11:04 | → | econo joins (uid147250@user/econo) |
| 16:12:47 | × | albet70 quits (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
| 16:13:23 | → | TranquilEcho joins (~grom@user/tranquilecho) |
| 16:13:44 | × | hseg quits (~gesh@185.120.126.10) (Ping timeout: 252 seconds) |
| 16:13:52 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 258 seconds) |
| 16:13:54 | → | albet70 joins (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
| 16:13:57 | → | eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
| 16:14:08 | × | Pickchea quits (~private@user/pickchea) (Ping timeout: 255 seconds) |
| 16:15:17 | → | nate1 joins (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) |
| 16:15:43 | × | machinedgod quits (~machinedg@24.105.81.50) (Ping timeout: 268 seconds) |
| 16:17:03 | → | falafel joins (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) |
| 16:18:10 | → | ph88^ joins (~ph88@ip5f5af6fd.dynamic.kabel-deutschland.de) |
| 16:18:44 | → | hnOsmium0001 joins (uid453710@id-453710.stonehaven.irccloud.com) |
| 16:18:48 | × | eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 268 seconds) |
| 16:19:36 | × | nate1 quits (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 252 seconds) |
| 16:22:02 | → | eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
| 16:22:03 | × | ph88 quits (~ph88@2a02:8109:9e00:7e5c:f938:d06a:9ad7:b39c) (Ping timeout: 255 seconds) |
| 16:22:26 | → | Guest9 joins (~Guest9@103.250.139.40) |
| 16:23:05 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 16:24:17 | × | dajoer quits (~david@user/gvx) (Quit: leaving) |
| 16:26:12 | × | geekosaur quits (~geekosaur@xmonad/geekosaur) (Ping timeout: 268 seconds) |
| 16:27:06 | → | geekosaur joins (~geekosaur@xmonad/geekosaur) |
| 16:30:20 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 16:30:31 | × | falafel quits (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) (Ping timeout: 268 seconds) |
| 16:31:25 | → | Guest31 joins (~Guest31@76-236-222-208.lightspeed.tukrga.sbcglobal.net) |
| 16:32:19 | <Guest31> | can someone help me understand how case works? |
| 16:32:24 | <Guest31> | myTakeWhileFold condition xs = foldr step [] xs |
| 16:32:24 | <Guest31> | where step x y = case condition y of |
| 16:32:25 | <Guest31> | True -> x ++ y |
| 16:32:25 | <Guest31> | False -> x |
| 16:33:32 | → | tzh joins (~tzh@c-24-21-73-154.hsd1.or.comcast.net) |
| 16:33:50 | <Guest31> | I thought this would work, butI get an error at True |
| 16:34:39 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 255 seconds) |
| 16:35:02 | <davean> | well you need to give us a type signature or we have no idea what "condition" or "xs" are |
| 16:35:02 | → | lavaman joins (~lavaman@98.38.249.169) |
| 16:35:11 | <davean> | and you didn't give us the error |
| 16:36:11 | <Guest31> | myTakeWhileFold :: (a -> Bool) -> [a] -> [a] |
| 16:36:18 | <Guest31> | error: parse error on input ‘True’ |
| 16:36:30 | <davean> | I expect you have an indentation error |
| 16:37:32 | <Guest31> | OK Ill check it out thanks |
| 16:39:06 | × | chris_ quits (~chris@81.96.113.213) (Remote host closed the connection) |
| 16:39:46 | × | lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 268 seconds) |
| 16:41:23 | → | falafel joins (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) |
| 16:42:24 | → | chris_ joins (~chris@81.96.113.213) |
| 16:42:47 | × | albet70 quits (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
| 16:43:53 | → | albet70 joins (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
| 16:44:47 | × | albet70 quits (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
| 16:45:54 | → | albet70 joins (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
| 16:46:08 | <Guest31> | that was it thanks davean |
| 16:46:28 | → | burnsidesLlama joins (~burnsides@dhcp168-011.wadham.ox.ac.uk) |
| 16:46:43 | × | Null_A quits (~null_a@2601:645:8700:2290:a961:38e5:e25d:7cd0) (Read error: Connection reset by peer) |
| 16:47:17 | → | Null_A joins (~null_a@2601:645:8700:2290:a961:38e5:e25d:7cd0) |
| 16:47:25 | <monochrom> | This is why the line of "where" should contain nothing else. |
| 16:47:41 | <geekosaur> | it needs to be more indented than "step" with NonDecreasingIndentation, or than "case" without it, I think |
| 16:47:51 | × | burnsidesLlama quits (~burnsides@dhcp168-011.wadham.ox.ac.uk) (Remote host closed the connection) |
| 16:48:24 | → | burnsidesLlama joins (~burnsides@dhcp168-011.wadham.ox.ac.uk) |
| 16:48:36 | → | agua joins (~agua@2804:14c:8793:8e2f:642c:be4c:c775:de87) |
| 16:49:12 | <monochrom> | The grammar is flexible in styles but some styles are misleading. |
| 16:50:39 | <davean> | I've never really gotten that where style |
| 16:51:18 | × | falafel quits (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) (Ping timeout: 255 seconds) |
| 16:51:18 | × | pesada quits (~agua@2804:18:44:17a3:1:0:2cdf:1514) (Ping timeout: 255 seconds) |
| 16:52:36 | × | burnsidesLlama quits (~burnsides@dhcp168-011.wadham.ox.ac.uk) (Ping timeout: 252 seconds) |
| 16:56:13 | → | chomwitt joins (~Pitsikoko@athedsl-32487.home.otenet.gr) |
| 16:57:11 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 258 seconds) |
| 16:58:06 | <Guest31> | What would be an example of good style with Where monochrom? |
| 16:58:15 | <Guest31> | in your opinion |
| 16:58:20 | → | drd joins (~drd@93-39-151-19.ip76.fastwebnet.it) |
| 16:59:37 | <monochrom> | <monochrom> This is why the line of "where" should contain nothing else. |
| 16:59:47 | × | chris_ quits (~chris@81.96.113.213) (Remote host closed the connection) |
| 17:01:23 | <c_wraith> | I've been working hard recently to style my haskell code such that no indentation depends on any token length |
| 17:01:54 | → | chris_ joins (~chris@81.96.113.213) |
| 17:01:57 | <c_wraith> | It's awkward in some places, but it's got huge advantages |
| 17:03:22 | <monochrom> | Yeah, "f x | x>0 = ..." is fairly natural, to always split it takes way too much discipline. |
| 17:04:11 | <monochrom> | Furthermore if you split at both | and = it looks ugly for short code. (But makes perfect sense for long code.) |
| 17:04:48 | × | albet70 quits (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
| 17:05:55 | → | albet70 joins (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
| 17:06:09 | × | chris_ quits (~chris@81.96.113.213) (Ping timeout: 255 seconds) |
| 17:09:48 | <dsal> | I might have to start using oumolu which, as tweag says in their blog post: ormolu: format haskell code like never before (except they did that in all caps) |
| 17:10:34 | → | falafel joins (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) |
| 17:12:07 | <Franciman> | I personally try to shy away from any tool |
| 17:12:10 | <Franciman> | i use just ghc |
| 17:12:25 | <Franciman> | ghc --make |
| 17:12:27 | <Franciman> | is all I need |
| 17:12:32 | <Franciman> | oh and ghcup |
| 17:12:37 | <Franciman> | ghcup is unvaluable |
| 17:12:52 | <davean> | I still haven't used ghcup |
| 17:12:57 | <dsal> | If you're not the first member on an established team, they might be upset with you if you decided to ignore all their ways. |
| 17:13:34 | <davean> | I'd be upset to end up with the mess that is oumolu how ever it happened :-p |
| 17:13:58 | <dsal> | :( Yeah. That's the biggest downside I'm facing. |
| 17:14:22 | <davean> | oumolu has no concept of the code its formating |
| 17:14:29 | <davean> | it can only consider syntax, not content |
| 17:14:42 | <davean> | so every human element is thrown out the window |
| 17:14:43 | <dsal> | They took a lot from elm which prioritized reading diffs over reading code. |
| 17:14:49 | × | albet70 quits (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
| 17:15:35 | <dsal> | IMO, fixing the stuff that renders diffs would be a saner approach than making all the code harder to read. |
| 17:15:55 | → | albet70 joins (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
| 17:16:14 | → | oso joins (~oso@2601:58c:c080:a950:e67d:b4e2:c5be:433f) |
| 17:18:23 | <geekosaur> | --make hasn't been needed for a while now (since ghc 6.12 iirc) |
| 17:19:03 | <dsal> | I lose most of my excitement about elm, dhall, etc... when I have to do things their One True Way™. I passed a thing I wrote in elm through their standard formatter and got this: https://www.irccloud.com/pastebin/lIpmTDCu/format.elm |
| 17:19:14 | <geekosaur> | I'm a little surprised it hasn't been deprecated |
| 17:19:32 | <dsal> | I've not used ormolu much myself, but I expect I'll be seeing more such doublings where I can't read a function on my screen anymore. |
| 17:21:13 | → | burnsidesLlama joins (~burnsides@dhcp168-011.wadham.ox.ac.uk) |
| 17:22:06 | <monochrom> | In comp.lang.functional there was once a detractor who praised imperative programming for "one thing at a time, one concept per line" and attacked functional programming for the opposite. |
| 17:22:29 | <monochrom> | You have just shown an answer similar to mine :) |
| 17:22:55 | <davean> | lol. I've seen a lot of mixed concerns in imperative programming |
| 17:23:30 | <maerwald> | if you do imperative programming with shared mutability tamed, then that is workable |
| 17:24:09 | × | Null_A quits (~null_a@2601:645:8700:2290:a961:38e5:e25d:7cd0) (Ping timeout: 255 seconds) |
| 17:25:03 | <monochrom> | My reverse thinking is that whoever imposed that oversplitting style must have been an imperative bonehead who couldn't even understand in C "x = cos(t); y = sin(t);" if I wrote that as one line. |
| 17:25:24 | <geekosaur> | or a Python programmer |
| 17:25:29 | × | fef quits (~thedawn@user/thedawn) (Remote host closed the connection) |
| 17:25:54 | <dsal> | monochrom: please state your variable names in the form of complete sentences. |
| 17:26:12 | <monochrom> | haha yikes |
| 17:26:27 | <davean> | the_variable_x |
| 17:26:29 | <geekosaur> | I haven't programmed cobol in decades |
| 17:26:29 | <dsal> | I got in an argument with someone who said he had some kind of neurodivergence and couldn't possible comprehend code that used such short variable names. |
| 17:26:30 | <davean> | Done? |
| 17:26:45 | <monochrom> | COMPUTE COSINE OF T INTO X |
| 17:26:51 | × | burnsidesLlama quits (~burnsides@dhcp168-011.wadham.ox.ac.uk) (Ping timeout: 255 seconds) |
| 17:26:55 | <monochrom> | (let's go COBOL for complete sentences) |
| 17:26:58 | → | P1RATEZ joins (piratez@user/p1ratez) |
| 17:28:23 | <monochrom> | COMPUTE COSINE OF T INTO THE_VAR_THAT_WOULD_BE_COSINE_OF_T |
| 17:28:35 | × | hendursa1 quits (~weechat@user/hendursaga) (Quit: hendursa1) |
| 17:28:37 | <monochrom> | (inspired by the movie name "the kid that would be king" :) ) |
| 17:29:05 | <monochrom> | "lady of the trig functions, please return the cosine of t" |
| 17:29:11 | <monochrom> | OK I'll stop. |
| 17:29:11 | <oso> | needs more "Please" |
| 17:29:23 | → | hendursaga joins (~weechat@user/hendursaga) |
| 17:29:25 | <davean> | no, should be worded must |
| 17:29:29 | <davean> | we want to have confidence in it |
| 17:30:03 | <oso> | i was referencing INTERCAL, which wouldn't compile if you didn't say "please" enough but also wouldn't compile if you said it too much because you were being a suckup |
| 17:30:51 | <davean> | Yes but a function like "please_compute_the_cosine_of_t" might not |
| 17:30:56 | <davean> | you can't rely on your code being agreeable! |
| 17:31:26 | <oso> | true; on the contrary, i find my code to be most disagreeable |
| 17:33:00 | × | falafel quits (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) (Remote host closed the connection) |
| 17:33:23 | → | falafel joins (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) |
| 17:37:38 | × | mnrmnaugh quits (~mnrmnaugh@pool-96-252-87-182.bstnma.fios.verizon.net) (Quit: Leaving) |
| 17:40:04 | <dsal> | In go, we use Must as a prefix for things that will panic if they don't work. |
| 17:40:34 | <davean> | Ugh, like usuall go gets it wrong |
| 17:40:45 | <davean> | "must" should make it a total function that matches the specification |
| 17:40:53 | × | ph88^ quits (~ph88@ip5f5af6fd.dynamic.kabel-deutschland.de) (Ping timeout: 258 seconds) |
| 17:41:05 | <davean> | What part of "must" did they understand? |
| 17:41:18 | <monochrom> | mustHead (x:xs) = x \∩/ |
| 17:42:00 | <davean> | monochrom: thats exactly the sort of thing "must" must fix! |
| 17:42:20 | <monochrom> | mustFix f = let x = f x in x |
| 17:42:40 | × | azeem quits (~azeem@dynamic-adsl-94-34-39-251.clienti.tiscali.it) (Ping timeout: 268 seconds) |
| 17:43:01 | × | neurocyte quits (~neurocyte@user/neurocyte) (Quit: The Lounge - https://thelounge.chat) |
| 17:43:21 | → | azeem joins (~azeem@176.200.195.170) |
| 17:43:49 | × | albet70 quits (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
| 17:43:52 | × | oso quits (~oso@2601:58c:c080:a950:e67d:b4e2:c5be:433f) (Ping timeout: 246 seconds) |
| 17:44:14 | <monochrom> | OTOH perhaps "if they don't work" means "you can assume it works, only a system bug would be a reason why it doesn't, which is not your responsibility" |
| 17:44:57 | → | albet70 joins (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
| 17:45:42 | <davean> | lets just always assume it works. |
| 17:45:43 | <monochrom> | OTOOH under multiple-world non-determinism and the convention "ignore those worlds that don't survive", the function works in all surviving worlds, so the modal quantifier "must" is right. |
| 17:45:57 | <davean> | Yah, now you're getting it |
| 17:46:03 | <monochrom> | :) |
| 17:46:53 | → | lavaman joins (~lavaman@98.38.249.169) |
| 17:47:11 | <davean> | mustSort = randomizeOrder |
| 17:47:47 | <dsal> | must sort eventually |
| 17:48:06 | <davean> | dsal: No, quantum bogosort sorts in O(n) |
| 17:48:39 | <dsal> | I've been meaning to get a new computer for a while. Might as well be a quantum one. |
| 17:48:52 | → | h98 joins (~h98@187.83.249.216.dyn.smithville.net) |
| 17:49:13 | <davean> | So, launch missiles is in IO, whats the monad of universes? |
| 17:49:43 | <monochrom> | [] |
| 17:50:22 | <monochrom> | Dr. Strange and the LogicT monad transformer of madness |
| 17:50:22 | × | falafel quits (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) (Remote host closed the connection) |
| 17:50:28 | → | machinedgod joins (~machinedg@24.105.81.50) |
| 17:51:08 | <h98> | dumb question, is there a way to avoid the inner parentheses in the type application "@(f (g a b))"? something like @(f $ g a b) on the type-level? |
| 17:51:19 | → | __monty__ joins (~toonn@user/toonn) |
| 17:51:44 | <monochrom> | No. |
| 17:52:24 | × | turlando_ quits (~turlando@93-42-250-112.ip89.fastwebnet.it) (Quit: Leaving) |
| 17:52:33 | <dmj`> | type Foo f g a b = f (g a b) -- @(Foo f g a b) ... maybe? |
| 17:52:37 | → | oso joins (~oso@2601:58c:c080:a950:e67d:b4e2:c5be:433f) |
| 17:52:37 | → | turlando_ joins (~turlando@93-42-250-112.ip89.fastwebnet.it) |
| 17:54:21 | <h98> | oooh |
| 17:54:39 | <davean> | I guess the Haskellish form would be "sort = must (\xs -> all id . map (\(x,y) -> x <= y) . zip xs $ tail xs) randomizeOrder |
| 17:54:40 | <h98> | yes duh, that works...thanks |
| 17:55:10 | → | Sgeo joins (~Sgeo@user/sgeo) |
| 17:56:16 | × | qrpnxz quits (~qrpnxz@user/qrpnxz) (Ping timeout: 272 seconds) |
| 17:57:35 | → | burnsidesLlama joins (~burnsides@dhcp168-011.wadham.ox.ac.uk) |
| 17:59:50 | × | albet70 quits (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
| 18:00:33 | × | azeem quits (~azeem@176.200.195.170) (Ping timeout: 268 seconds) |
| 18:00:56 | → | albet70 joins (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
| 18:02:24 | × | burnsidesLlama quits (~burnsides@dhcp168-011.wadham.ox.ac.uk) (Ping timeout: 268 seconds) |
| 18:03:38 | <guest61> | update message is Nothing |
| 18:03:45 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 18:05:23 | <h98> | I can't get over that trick by the way davean, no more nested parentheses in any of my type expressions! |
| 18:05:35 | <guest61> | update message is Nothing |
| 18:05:36 | <davean> | Yu mean dmj`? |
| 18:05:55 | <h98> | sorry yes, dmj` hah |
| 18:06:06 | <davean> | *I'd* nest the parens because its less indirection :-p |
| 18:06:22 | × | Guest77 quits (~Guest77@2402:e280:2117:297:ecf8:f374:8704:f843) (Quit: Client closed) |
| 18:06:35 | <dmj`> | "One weird trick to remove your parentheses... lisp programmers *hate* him" |
| 18:06:36 | <davean> | (Not if the alias had semantics weight of its own though) |
| 18:09:49 | × | Guest31 quits (~Guest31@76-236-222-208.lightspeed.tukrga.sbcglobal.net) (Quit: Client closed) |
| 18:10:42 | → | qrpnxz joins (~qrpnxz@user/qrpnxz) |
| 18:10:50 | × | albet70 quits (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
| 18:11:57 | → | albet70 joins (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
| 18:15:10 | → | azeem joins (~azeem@dynamic-adsl-94-34-39-251.clienti.tiscali.it) |
| 18:15:54 | → | Lycurgus joins (~juan@cpe-45-46-140-49.buffalo.res.rr.com) |
| 18:21:57 | × | Atum_ quits (~IRC@user/atum/x-2392232) (Ping timeout: 250 seconds) |
| 18:24:54 | → | burnsidesLlama joins (~burnsides@dhcp168-011.wadham.ox.ac.uk) |
| 18:25:56 | → | lbseale joins (~lbseale@user/ep1ctetus) |
| 18:26:22 | → | burnside_ joins (~burnsides@client-8-82.eduroam.oxuni.org.uk) |
| 18:27:24 | × | burnside_ quits (~burnsides@client-8-82.eduroam.oxuni.org.uk) (Remote host closed the connection) |
| 18:29:27 | × | burnsidesLlama quits (~burnsides@dhcp168-011.wadham.ox.ac.uk) (Ping timeout: 265 seconds) |
| 18:31:30 | → | burnsidesLlama joins (~burnsides@client-8-82.eduroam.oxuni.org.uk) |
| 18:34:52 | → | chris_ joins (~chris@81.96.113.213) |
| 18:36:19 | × | burnsidesLlama quits (~burnsides@client-8-82.eduroam.oxuni.org.uk) (Ping timeout: 268 seconds) |
| 18:37:34 | → | ph88^ joins (~ph88@2a02:8109:9e00:7e5c:f938:d06a:9ad7:b39c) |
| 18:40:14 | × | lbseale quits (~lbseale@user/ep1ctetus) (Remote host closed the connection) |
| 18:40:37 | → | lbseale joins (~lbseale@user/ep1ctetus) |
| 18:47:25 | × | machinedgod quits (~machinedg@24.105.81.50) (Ping timeout: 268 seconds) |
| 18:49:11 | × | h98 quits (~h98@187.83.249.216.dyn.smithville.net) (Quit: Client closed) |
| 18:49:45 | × | lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 265 seconds) |
| 18:53:41 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 18:54:44 | × | mjs2600 quits (~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net) (Read error: Connection reset by peer) |
| 18:55:12 | → | mjs2600 joins (~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net) |
| 18:58:45 | → | falafel joins (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) |
| 18:58:52 | <guest61> | update message is Nothing |
| 19:03:47 | <monochrom> | guest61: What is all that about? |
| 19:04:12 | <guest61> | update message is Nothing |
| 19:04:17 | ChanServ | sets mode +o monochrom |
| 19:04:23 | monochrom | sets mode +b *!*@47.245.54.240 |
| 19:04:23 | guest61 | is kicked by monochrom (guest61) |
| 19:04:36 | monochrom | sets mode -o monochrom |
| 19:05:49 | → | Pickchea joins (~private@user/pickchea) |
| 19:05:53 | → | Null_A joins (~null_a@2601:645:8700:2290:a961:38e5:e25d:7cd0) |
| 19:07:08 | × | peterhil quits (~peterhil@dsl-hkibng32-54f849-252.dhcp.inet.fi) (Ping timeout: 258 seconds) |
| 19:09:49 | → | Atum_ joins (~IRC@user/atum/x-2392232) |
| 19:12:25 | <tom__> | So if you are modelling a stochastic process as a comonad how do you get the randomness for each step if IO is a monad |
| 19:13:08 | × | Guest9 quits (~Guest9@103.250.139.40) (Quit: Connection closed) |
| 19:13:09 | <dsal> | Guest9: update message is (Just Quit) |
| 19:13:32 | dsal | is too late and missed |
| 19:13:51 | → | nate1 joins (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) |
| 19:14:33 | × | lbseale quits (~lbseale@user/ep1ctetus) (Ping timeout: 268 seconds) |
| 19:17:29 | → | burnsidesLlama joins (~burnsides@dhcp168-011.wadham.ox.ac.uk) |
| 19:18:07 | <davean> | tom__: or randomness is a source for the cell |
| 19:19:17 | <tom__> | davean: Right but you can't product a cell without being in IO then? |
| 19:19:20 | <tom__> | produce |
| 19:20:11 | <davean> | tom__: I mean, you don't need to be in IO to step a pseudo random function |
| 19:20:30 | <davean> | You can do all sorts of things |
| 19:20:48 | <davean> | the particular one I'd start with is taking one seed value, and splitting a prf to all the "cells" |
| 19:21:10 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 246 seconds) |
| 19:22:59 | <dsal> | > randomRs (1, 11) $ mkStdGen 42 |
| 19:23:00 | <lambdabot> | [1,8,1,3,2,8,5,3,6,10,9,3,10,11,9,2,1,11,3,3,9,3,3,9,1,7,9,8,6,7,4,2,7,1,3,2... |
| 19:25:31 | × | nate1 quits (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 265 seconds) |
| 19:27:44 | → | shapr joins (~user@pool-100-36-247-68.washdc.fios.verizon.net) |
| 19:28:07 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds) |
| 19:28:18 | <tom__> | Does the Random package allow sampling from a normal distribution? |
| 19:28:53 | <geekosaur> | yes, as of 1.2 |
| 19:29:02 | <tom__> | thanks |
| 19:29:19 | <davean> | tom__: I mean it provides random numbers, sampling from is a way to *use* randomness |
| 19:29:19 | <tom__> | Does "Constructs a StdGen deterministically." mean - not randomly? |
| 19:29:58 | <davean> | Uh, the construction is never random persay |
| 19:29:59 | <geekosaur> | if the input you give it is deterministic then yes |
| 19:30:00 | <dsal> | > randomRs (1, 11) $ mkStdGen 42 -- tom__ yes, it means it'll reproduce the same sequence |
| 19:30:01 | <lambdabot> | [1,8,1,3,2,8,5,3,6,10,9,3,10,11,9,2,1,11,3,3,9,3,3,9,1,7,9,8,6,7,4,2,7,1,3,2... |
| 19:30:11 | → | peterhil joins (~peterhil@dsl-hkibng32-54f849-252.dhcp.inet.fi) |
| 19:30:20 | × | MorrowM quits (~Morrow@bzq-110-168-31-106.red.bezeqint.net) (Ping timeout: 255 seconds) |
| 19:31:16 | → | Morrow joins (~Morrow@bzq-110-168-31-106.red.bezeqint.net) |
| 19:31:21 | <tom__> | Ah ok so mkStdGen enables "decoupling" between IO and your computation |
| 19:31:23 | → | mdunnio joins (~textual@205.178.28.97) |
| 19:31:47 | <dsal> | Yes. There are MonadIO variants in there as well. |
| 19:31:58 | <geekosaur> | you can also get a randomly generated seed from IO and do the rest purely |
| 19:32:11 | <tom__> | aha thanks |
| 19:32:47 | <tom__> | by purely do you mean - not with IO? |
| 19:32:48 | <davean> | Note there are plenty of monadic forms that aren't IO also, for prfs |
| 19:33:22 | <geekosaur> | yes |
| 19:33:27 | × | Atum_ quits (~IRC@user/atum/x-2392232) (Ping timeout: 250 seconds) |
| 19:33:52 | <davean> | I'm not really a fan of the 1.2 changes :/ |
| 19:34:21 | <davean> | tom__: if you want good sampling, see random-fu and such BTW |
| 19:34:31 | <davean> | distributions is seperate from random numbers |
| 19:34:57 | <geekosaur> | on the one hand it cleaned up my use of the mersenne twister a bit; on the other I found 1.1 much easier |
| 19:35:15 | × | Sgeo quits (~Sgeo@user/sgeo) (Quit: Leaving) |
| 19:35:17 | <geekosaur> | gripping hand I didn't have to fake normal distributions any more |
| 19:35:31 | <davean> | geekosaur: I don't think the 1.2 design is valid :/ I think theres some actual contradictions in its design, but thats far too long a discussion for here and now |
| 19:36:13 | <davean> | I'm actually rather upset about 1.2 |
| 19:36:27 | <davean> | Not that 1.1 was great |
| 19:36:34 | × | mdunnio quits (~textual@205.178.28.97) (Quit: Textual IRC Client: www.textualapp.com) |
| 19:37:25 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 19:37:50 | → | mdunnio joins (~textual@205.178.28.97) |
| 19:38:13 | → | Sgeo joins (~Sgeo@user/sgeo) |
| 19:38:50 | <tom__> | I'm using MWC-probability |
| 19:39:05 | → | Erutuon joins (~Erutuon@user/erutuon) |
| 19:39:53 | <mdunnio> | hello! is anyone aware of any up-to-date guides on how to use LLVM backend with GHC? I'm looking to utilize GHC 8.10.5's first class support for M1, but I'm not exactly sure where to get started. |
| 19:40:14 | → | Atum_ joins (~IRC@user/atum/x-2392232) |
| 19:41:18 | <geekosaur> | using it is just doing "ghc-options: -fllvm" in the cabal file. but I think 8.10.5 is known buggy |
| 19:41:44 | <mdunnio> | oh interesting. ok |
| 19:42:12 | <mdunnio> | I'll try that out |
| 19:42:24 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 258 seconds) |
| 19:42:26 | <geekosaur> | and true first class (-fasm) support is supposed to come in 9.2.1 |
| 19:42:45 | × | falafel quits (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) (Ping timeout: 255 seconds) |
| 19:42:55 | <geekosaur> | there's a prerelease available in ghcup but it has some known bugs |
| 19:43:22 | <davean> | Yah, on one hand llvm is kinda first class, on the other, LLVM isn't a general system and we don't fit its preconception of being C |
| 19:43:30 | <davean> | So it'll never be quite right to use LLVM |
| 19:43:48 | <davean> | You'll always eat a penalty of LLVM not being a general system |
| 19:44:22 | × | Erutuon quits (~Erutuon@user/erutuon) (Ping timeout: 265 seconds) |
| 19:44:33 | × | chris_ quits (~chris@81.96.113.213) (Remote host closed the connection) |
| 19:44:42 | <mdunnio> | penalty as in performance, or just support generally? |
| 19:44:56 | <geekosaur> | both |
| 19:44:57 | <davean> | More the former, but there CAN be a few issues with the later |
| 19:45:07 | <davean> | LLVM is very much a C IR |
| 19:45:20 | <davean> | It claims to be general, but frankly, thats wishful thinking |
| 19:45:22 | <geekosaur> | llvm doesn't understand the cps-encoded code ghc emits and pessimizes it |
| 19:45:26 | <davean> | it has a ton of assumptions baked in at hte bottom |
| 19:45:37 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 19:45:43 | <Rembane> | So every language that looks like C if you squint works for LLVM? |
| 19:45:57 | <davean> | Rembane: Close, and LLVM works more generally than that, just not well |
| 19:46:10 | <davean> | LLVM can't think some normal thoughts, and never will be able to |
| 19:46:13 | <mdunnio> | I see |
| 19:46:25 | <Rembane> | davean: Got it. Doesn't sound too bad if your needs are C et al |
| 19:46:26 | <davean> | Theres ways to make them "work" because the turing tarpit, but that doesn't mean they work well |
| 19:46:37 | <davean> | Rembane: Yah, its actually great for that |
| 19:46:48 | <davean> | Rembane: I mean you make sometihng better for one thing, usually you make it worse for another |
| 19:46:58 | <davean> | the only issue I see here is the claim that its general, which it just clearly isn't |
| 19:47:16 | <davean> | but! It works pretty well for GHC for most thing |
| 19:47:22 | <davean> | so, go use it |
| 19:47:31 | <davean> | Its actually the best option for a few specific cases |
| 19:47:38 | <davean> | and you can do funky stuff to use it only where it is the best ... |
| 19:48:05 | <davean> | So like, its good to have, I'm not trying to bash it, just explain what one might feel about "first class ness" |
| 19:48:32 | × | shailangsa quits (~shailangs@host86-186-196-229.range86-186.btcentralplus.com) (Ping timeout: 258 seconds) |
| 19:48:36 | <mdunnio> | yeah, to be fair, I have a pretty broad interpretation of what "first class support" even means |
| 19:48:58 | <Rembane> | davean: Totally, it's trade offs all the way down. |
| 19:49:07 | <mdunnio> | at this point, I'm willing to take "does it work at all?" |
| 19:49:14 | <davean> | mdunnio: ok! |
| 19:49:16 | <davean> | so, it does work! |
| 19:49:32 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Client Quit) |
| 19:50:14 | <davean> | mdunnio: So my understanding is that the nix stuff is still the best option |
| 19:50:39 | → | niemand joins (~niemand@p2e52f785.dip0.t-ipconnect.de) |
| 19:50:43 | ← | niemand parts (~niemand@p2e52f785.dip0.t-ipconnect.de) () |
| 19:50:57 | × | econo quits (uid147250@user/econo) (Quit: Connection closed for inactivity) |
| 19:51:02 | <davean> | (I uh, keep an arms length from Apple, I just uh, make sure we have CI for it) |
| 19:51:56 | <davean> | Talking of which, yah rossetta, uh, don't run a ton of x86 binaries. |
| 19:53:05 | <mdunnio> | fair |
| 19:53:10 | <mdunnio> | yeah, that's the plan |
| 19:53:38 | <davean> | yah, its a problem (I don't know if you know, but it doesn't clear the cache, so you'll run out of disk space and be stuck unless you disable SIP) |
| 19:53:46 | <mdunnio> | I haven't actually worked much with nix yet, might be time to experiment |
| 19:54:01 | × | Maxdamantus quits (~Maxdamant@user/maxdamantus) (Ping timeout: 268 seconds) |
| 19:54:19 | <davean> | mdunnio: So, I'm not sure they want me to refer you, but the bigest expert I know in this area is moritz angermann |
| 19:54:31 | <davean> | I think we're due for a writeup on the state of M1 stuff |
| 19:54:42 | <davean> | It would be a public service |
| 19:55:26 | <mdunnio> | I recall moritz wrote up a bunch about cross-compiling for ARM. I did some rpi work back a year or so ago |
| 19:56:01 | <davean> | I'll admit I was taking care of a lot of the mac stuff and then moritz stepped in and not being a mac user I disowned it as fast as possible |
| 19:56:23 | <mdunnio> | seems like the appropriate time to pass the torch |
| 19:56:51 | <mdunnio> | ok, I'm going to experiment a little bit and see if I can get somewhere. I appreciate the help |
| 19:56:53 | × | P1RATEZ quits (piratez@user/p1ratez) (Remote host closed the connection) |
| 19:57:02 | <davean> | Someone needed to do it, but better it be someone who loves it and has base skills for it |
| 19:57:10 | × | mdunnio quits (~textual@205.178.28.97) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 19:58:41 | → | myShoggoth joins (~myShoggot@97-120-70-214.ptld.qwest.net) |
| 19:58:44 | → | yauhsien_ joins (~yauhsien@61-231-35-149.dynamic-ip.hinet.net) |
| 19:59:01 | <davean> | Hum, I failed to full say what I should have above - which is that the CI config is where that knowlege should be accessible |
| 19:59:04 | <davean> | well I'm a bad helper |
| 19:59:34 | × | yauhsien quits (~yauhsien@61-231-25-245.dynamic-ip.hinet.net) (Ping timeout: 268 seconds) |
| 20:00:56 | × | peterhil quits (~peterhil@dsl-hkibng32-54f849-252.dhcp.inet.fi) (Ping timeout: 255 seconds) |
| 20:05:07 | × | juhp quits (~juhp@128.106.188.66) (Ping timeout: 268 seconds) |
| 20:05:31 | × | Lycurgus quits (~juan@cpe-45-46-140-49.buffalo.res.rr.com) (Quit: Exeunt) |
| 20:06:54 | × | zmt00 quits (~zmt00@user/zmt00) (Quit: Gone.) |
| 20:07:20 | → | juhp joins (~juhp@128.106.188.66) |
| 20:09:14 | × | drd quits (~drd@93-39-151-19.ip76.fastwebnet.it) (Ping timeout: 258 seconds) |
| 20:10:19 | × | eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
| 20:11:25 | × | _ht quits (~quassel@82-169-194-8.biz.kpn.net) (Remote host closed the connection) |
| 20:19:32 | → | shailangsa joins (~shailangs@host86-145-14-107.range86-145.btcentralplus.com) |
| 20:19:56 | × | Atum_ quits (~IRC@user/atum/x-2392232) (Quit: Atum_) |
| 20:19:59 | → | drd joins (~drd@93-39-151-19.ip76.fastwebnet.it) |
| 20:21:54 | × | burnsidesLlama quits (~burnsides@dhcp168-011.wadham.ox.ac.uk) (Remote host closed the connection) |
| 20:22:21 | → | burnsidesLlama joins (~burnsides@dhcp168-011.wadham.ox.ac.uk) |
| 20:22:32 | × | shailangsa quits (~shailangs@host86-145-14-107.range86-145.btcentralplus.com) () |
| 20:22:34 | → | peterhil joins (~peterhil@dsl-hkibng32-54f849-252.dhcp.inet.fi) |
| 20:24:37 | → | zangi joins (~zangi@103.154.230.230) |
| 20:26:44 | × | burnsidesLlama quits (~burnsides@dhcp168-011.wadham.ox.ac.uk) (Ping timeout: 252 seconds) |
| 20:29:07 | sm | wonders why the above thread jumped tracks from LLVM to apple .. do these go together ? |
| 20:29:38 | → | chris_ joins (~chris@81.96.113.213) |
| 20:29:43 | <sm> | and , #ghc is also a good source of info |
| 20:30:24 | × | MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 268 seconds) |
| 20:31:47 | <davean> | sm: it was about Apple |
| 20:31:49 | <geekosaur> | sm: M1 == Apple Silicon |
| 20:31:55 | <davean> | the point of LLVM there was to get M1 support |
| 20:32:08 | <davean> | which we get via LLVM or the native code gen, the native code gen isn't until 9.2 tohugh |
| 20:32:30 | → | MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
| 20:32:35 | <zangi> | does laziness consume more memory than strict evaluation? |
| 20:32:42 | × | Topsi quits (~Tobias@dyndsl-095-033-088-035.ewe-ip-backbone.de) (Read error: Connection reset by peer) |
| 20:32:45 | <davean> | zangi: no, sometimes far less |
| 20:32:46 | <dminuoso> | Yes. No. |
| 20:33:38 | → | Atum_ joins (~IRC@user/atum/x-2392232) |
| 20:33:40 | <zangi> | what about the thunks? |
| 20:33:42 | <dminuoso> | zangi: In order to provide lazyness, the lazy expression has to have some kind of memory representation. That costs allocation and indirection. |
| 20:33:44 | <davean> | zangi: Theres a few cases where it uses more, the main one is special cased in the GC |
| 20:34:07 | <davean> | zangi: whats smaller, the infinite list, or the thunk [1..]? |
| 20:34:11 | <dminuoso> | zangi: But this is usually offset having low residency when working on large data. |
| 20:34:17 | → | jneira_ joins (~jneira_@28.red-80-28-169.staticip.rima-tde.net) |
| 20:34:33 | × | takuan quits (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection) |
| 20:34:45 | <dminuoso> | I think the fundamental problem is that "memory consumption" is not something you can put as a single number metric. |
| 20:37:37 | Hecate_ | is now known as Hecate |
| 20:37:44 | <dminuoso> | For instance: Your program might process a 20TiB data set but have only 50MiB of memory residency at any given time. |
| 20:37:47 | × | Hecate quits (~mariposa@163.172.211.189) (Changing host) |
| 20:37:47 | → | Hecate joins (~mariposa@user/hecate) |
| 20:38:21 | × | slep quits (~slep@cpc150002-brnt4-2-0-cust437.4-2.cable.virginm.net) (Read error: Connection reset by peer) |
| 20:38:39 | <dminuoso> | But this could still have a lot of allocations internally |
| 20:38:52 | → | slep joins (~slep@cpc150002-brnt4-2-0-cust437.4-2.cable.virginm.net) |
| 20:39:22 | <dminuoso> | Lazyness also produces a level of indirection, which might hurt locality |
| 20:39:37 | × | Pickchea quits (~private@user/pickchea) (Quit: Leaving) |
| 20:40:10 | <davean> | or it can create locality |
| 20:40:46 | <lechner> | Hi, why are the dolla signs needed in these two lines, please? https://dpaste.org/41S0#L94,95 |
| 20:40:59 | × | ph88^ quits (~ph88@2a02:8109:9e00:7e5c:f938:d06a:9ad7:b39c) (Ping timeout: 255 seconds) |
| 20:41:03 | <dminuoso> | lechner: They are not needed. |
| 20:41:17 | <dminuoso> | lechner: You can also use parens to associate the right hand side of it. |
| 20:41:31 | <dminuoso> | host $ scheduler config is equivalent to: host (schedular config) |
| 20:41:42 | <lechner> | can i use map, too? |
| 20:43:12 | → | burnsidesLlama joins (~burnsides@dhcp168-011.wadham.ox.ac.uk) |
| 20:43:47 | <lechner> | dminuoso: I get the following errors when I take out the dollar signs https://dpaste.org/mM0q |
| 20:44:10 | <dminuoso> | lechner: Like I said. |
| 20:44:16 | <dsal> | Does anyone know how to do something interesting with Control.Monad.Trans.Select ? There doesn't seem to be much written about it. |
| 20:44:21 | <dminuoso> | `host $ scheduler config` is equivalent to `host (scheduler config) |
| 20:44:35 | × | renzhi quits (~xp@2607:fa49:655f:a700::8b9f) (Ping timeout: 255 seconds) |
| 20:44:50 | <lechner> | okay, why are the parentheses needed, please? |
| 20:44:56 | <davean> | lechner: to parse it |
| 20:45:08 | <geekosaur> | $ is "backwards parentheses |
| 20:45:15 | <lechner> | that i know |
| 20:45:35 | <lechner> | i think it's a (slightly) higher level question |
| 20:45:39 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 20:45:40 | <davean> | lechner: so things (sorta) group to the left by default |
| 20:45:42 | <geekosaur> | so if you remove a $ you usually have to insert the parenheses it was replacing. here, for (scheduler config) |
| 20:45:52 | <davean> | lechner: you need to put it into the grammer as a group, not seperate things |
| 20:46:03 | <lechner> | my JSON declarations are not strict |
| 20:46:22 | <davean> | WHo said anything about strictness? |
| 20:46:53 | <davean> | This is about grammar |
| 20:47:04 | <monochrom> | The computer is not telepathic. You can't just write "f g h" and "t x y" and have the computer guess "oh you mean (f g) h and t (x y)". |
| 20:47:37 | <lechner> | not even when asking for a final result (printf) ? |
| 20:47:55 | <monochrom> | But there is a little bit of left associativity so "f g h" means "(f g) h". |
| 20:48:24 | <lechner> | why is that evaluated in my case, though? |
| 20:48:34 | → | nate1 joins (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) |
| 20:48:44 | × | amahl quits (~amahl@dsl-jklbng12-54fbca-64.dhcp.inet.fi) (Ping timeout: 252 seconds) |
| 20:48:56 | → | acidjnk joins (~acidjnk@p200300d0c72b9531605cd8043a67e221.dip0.t-ipconnect.de) |
| 20:49:09 | → | ph88^ joins (~ph88@2a02:8109:9e00:7e5c:f938:d06a:9ad7:b39c) |
| 20:52:20 | <nf> | you usually have to evaluate things in order to print them |
| 20:52:28 | → | shailangsa joins (~shailangs@host86-145-14-107.range86-145.btcentralplus.com) |
| 20:53:32 | <davean> | lechner: it doesn't know printf is your final result even |
| 20:53:34 | × | ph88^ quits (~ph88@2a02:8109:9e00:7e5c:f938:d06a:9ad7:b39c) (Ping timeout: 246 seconds) |
| 20:53:36 | <lechner> | but is that done inside the parentheses around the argument to printf? |
| 20:53:44 | <davean> | Its not "done inside" |
| 20:53:51 | <davean> | you're saying what is applied to what |
| 20:54:38 | <lechner> | i think i misunderstood partial application |
| 20:56:00 | → | lbseale joins (~lbseale@user/ep1ctetus) |
| 20:57:54 | → | slack1256 joins (~slack1256@191.125.28.13) |
| 20:58:39 | × | geekosaur quits (~geekosaur@xmonad/geekosaur) (Remote host closed the connection) |
| 20:59:03 | → | geekosaur joins (~geekosaur@xmonad/geekosaur) |
| 21:02:28 | × | lbseale quits (~lbseale@user/ep1ctetus) (Ping timeout: 268 seconds) |
| 21:02:30 | <davean> | Definition is not execution |
| 21:02:52 | <davean> | lechner: consider the option of doign that like with (.) |
| 21:02:58 | <davean> | *line |
| 21:03:46 | × | MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 252 seconds) |
| 21:04:47 | <maerwald> | monochrom: wingman can guess what you mean, haha |
| 21:05:02 | <maerwald> | if your types are correct, that is |
| 21:06:36 | <maerwald> | now you just need something to guess the types for you |
| 21:07:16 | <maerwald> | and then something that guesses what the program should do |
| 21:07:26 | <maerwald> | we'll have no engineering problems to solve anymore |
| 21:07:43 | maerwald | goes packing |
| 21:07:46 | → | wallymathieu joins (~wallymath@81-234-151-21-no94.tbcn.telia.com) |
| 21:07:58 | → | eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
| 21:08:24 | <dexterfoo> | can I convert a 'Text' value directly into an Int? |
| 21:08:27 | → | MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
| 21:09:05 | → | Guest31 joins (~Guest31@76-236-222-208.lightspeed.tukrga.sbcglobal.net) |
| 21:11:07 | <Hecate> | % import Data.Text.Read |
| 21:11:08 | <yahb> | Hecate: |
| 21:11:12 | <Hecate> | % decimal "3" |
| 21:11:13 | <yahb> | Hecate: ; <interactive>:223:1: error:; Ambiguous occurrence `decimal'; It could refer to; either `Data.Text.Read.decimal', imported from `Data.Text.Read'; or `Numeric.Lens.decimal', imported from `Numeric.Lens' |
| 21:11:20 | <Hecate> | fair enough |
| 21:11:20 | <Hecate> | so |
| 21:11:25 | × | oso quits (~oso@2601:58c:c080:a950:e67d:b4e2:c5be:433f) (Ping timeout: 246 seconds) |
| 21:11:30 | <monochrom> | fib :: Int -> Int -> Int -> Int -> Int let wingman guess what I want! |
| 21:11:32 | <Hecate> | Data.Text.Read.decimal "3" |
| 21:11:35 | <Hecate> | % Data.Text.Read.decimal "3" |
| 21:11:35 | <yahb> | Hecate: ; <interactive>:224:24: error:; * Couldn't match type `[Char]' with `Data.Text.Internal.Text'; Expected: Data.Text.Internal.Text; Actual: GHC.Base.String; * In the first argument of `Data.Text.Read.decimal', namely `"3"'; In the expression: Data.Text.Read.decimal "3"; In an equation for `it': it = Data.Text.Read.decimal "3" |
| 21:11:39 | <Hecate> | curse |
| 21:11:46 | <Hecate> | % import qualified Data.Text as T |
| 21:11:46 | <yahb> | Hecate: |
| 21:11:52 | <Hecate> | % Data.Text.Read.decimal (T.pack "3") |
| 21:11:53 | <yahb> | Hecate: Right (3,"") |
| 21:11:57 | <Hecate> | % Data.Text.Read.decimal (T.pack "3x") |
| 21:11:57 | <yahb> | Hecate: Right (3,"x") |
| 21:12:08 | <Hecate> | dexterfoo: check this ^ |
| 21:13:53 | <lechner> | davean: how do i use . in that line, please? |
| 21:15:08 | <maerwald> | sometimes I wonder why I even write documentation... all it does is confuse me 2 weeks later |
| 21:15:39 | <maerwald> | "I tried to figure out what this does, but didn't manage. But I wrote down my crippled thought regardless" |
| 21:15:45 | <dexterfoo> | Hecate: thanks! |
| 21:16:28 | <Hecate> | maerwald: because you don't know how to talk to yourself yet :P |
| 21:16:34 | <Hecate> | dexterfoo: you're welcome :) |
| 21:16:40 | × | MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 246 seconds) |
| 21:16:44 | <maerwald> | Hecate: preciousssss |
| 21:17:48 | → | MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
| 21:18:40 | → | oso joins (~oso@2601:58c:c080:a950:e67d:b4e2:c5be:433f) |
| 21:20:32 | <lechner> | Hi, in printf "%s:%d" $ map ($ struct) [stringAccessor intAccessor] does map work only when the return types are the same? |
| 21:20:55 | <lechner> | actually, there is a comma in there |
| 21:21:05 | <geekosaur> | all elements of a list must have the same type, yes |
| 21:22:27 | <lechner> | thanks. i could prosumably use 'show' |
| 21:23:05 | <geekosaur> | that's the usual way to do it, yes |
| 21:23:14 | <geekosaur> | don't forget to change the %d to %s |
| 21:24:18 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 21:24:18 | <lechner> | at some point, that tips the scale toward putStrLn |
| 21:24:30 | <geekosaur> | yes |
| 21:25:05 | × | smtnet3 quits (~asdfasdfa@202.36.244.28) (Read error: Connection reset by peer) |
| 21:26:05 | × | Vajb quits (~Vajb@hag-jnsbng11-58c3a1-224.dhcp.inet.fi) (Remote host closed the connection) |
| 21:26:17 | → | Vajb joins (~Vajb@hag-jnsbng11-58c3a1-224.dhcp.inet.fi) |
| 21:26:31 | → | smtnet3 joins (~asdfasdfa@202.36.244.28) |
| 21:27:08 | × | MQ-17J quits (~MQ-17J@d14-69-206-129.try.wideopenwest.com) (Ping timeout: 268 seconds) |
| 21:27:08 | × | Gurkenglas quits (~Gurkengla@dslb-002-203-144-156.002.203.pools.vodafone-ip.de) (Ping timeout: 268 seconds) |
| 21:27:28 | <dsal> | lechner: You could make a function that does the "%s:%d" part pretty easily and NamedFieldPuns or RecordWildCards would make it fairly short. |
| 21:28:16 | → | aegon joins (~mike@174.127.249.180) |
| 21:28:22 | × | mikoto-chan quits (~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be) (Ping timeout: 268 seconds) |
| 21:29:28 | <lechner> | dsal: that sounds like a great idea! let's do that in one minute please. |
| 21:30:04 | <lechner> | meanwhile i am learning. why doesn't that work: printf "Expecting scheduler on %s:%s.\n" $ map ($ scheduler config) [Connection.host, show . Connection.listen_port] |
| 21:31:42 | → | MQ-17J joins (~MQ-17J@d14-69-206-129.try.wideopenwest.com) |
| 21:31:55 | <lechner> | the point here is the partial application of 'show' |
| 21:32:01 | <[exa]> | lechner: what's the error? |
| 21:32:06 | × | myShoggoth quits (~myShoggot@97-120-70-214.ptld.qwest.net) (Ping timeout: 255 seconds) |
| 21:32:32 | <lechner> | https://paste.debian.net/1204829/ |
| 21:32:44 | <geekosaur> | I think you have multiple problems there |
| 21:33:12 | <geekosaur> | for one, a list is not a collection of applications |
| 21:33:16 | <dsal> | lechner: A list isn't two arguments. |
| 21:33:26 | <dsal> | Or phrased how geekosaur said it. |
| 21:33:55 | <[exa]> | lechner: why still keep printf? (just curious) |
| 21:34:19 | <lechner> | just chewing on other things :) |
| 21:34:54 | <lechner> | [exa]: i am not so fond of ++ "[" ++ exa ++ "]" ++ .... |
| 21:35:14 | <geekosaur> | there is concat |
| 21:35:15 | <oso> | `concat`? |
| 21:35:43 | <dsal> | I don't use ++ in general, but I do use fold for logging. |
| 21:36:04 | <monochrom> | $ kills printf type inference. Seriously. Just don't use $. |
| 21:36:05 | → | royo joins (~royo@user/royo) |
| 21:36:42 | <[exa]> | lechner: `concat [all, this, stuff]` is a widely used pattern. Esp good when combined with `intercalate` |
| 21:37:01 | <lechner> | monochrom: for some reason it seemed i needed $ |
| 21:37:37 | → | ph88^ joins (~ph88@2a02:8109:9e00:7e5c:f938:d06a:9ad7:b39c) |
| 21:37:40 | <dsal> | lechner: does it work with $ ? |
| 21:37:43 | <monochrom> | Sure, "map ($ x) [f, g, h]" has just cause. I am referring to "printf fmt $ ..." |
| 21:37:57 | <lechner> | okay, i'll change that but why is my partial application wrong. could someone please restate? |
| 21:37:57 | <dsal> | :t ($) |
| 21:37:58 | <lambdabot> | (a -> b) -> a -> b |
| 21:38:17 | <geekosaur> | lechner, you are attempting to use a list as two applications |
| 21:38:17 | <lechner> | monochrom: i meant that one |
| 21:38:25 | <[exa]> | lechner: the partial application is right (at least so it seems to me), the problem is that you're giving printf 1 argument and specify 2 in format |
| 21:38:37 | <dsal> | lechner: If it doesn't work, then it's not fair to say that you needed it. |
| 21:38:43 | <geekosaur> | one list is one application, not two |
| 21:39:17 | <dsal> | > (+) $ 1 $ 2 |
| 21:39:18 | <lambdabot> | error: |
| 21:39:18 | <lambdabot> | • Could not deduce (Num t0) |
| 21:39:18 | <lambdabot> | from the context: (Num a, Num t, Num (t -> a)) |
| 21:39:55 | <dsal> | $ isn't a syntactic feature. It's just a function. And it will break your applications if effective arity is > 1 |
| 21:40:01 | <lechner> | [exa]: https://paste.debian.net/1204830/ |
| 21:40:35 | × | slack1256 quits (~slack1256@191.125.28.13) (Remote host closed the connection) |
| 21:40:39 | → | pavonia joins (~user@user/siracusa) |
| 21:40:44 | <[exa]> | dsal: you'd need -XChurchNumerals |
| 21:40:48 | <dsal> | You might try breaking that into different statements to understand it better. |
| 21:41:16 | <geekosaur> | lechner, contemplate this: |
| 21:41:25 | <geekosaur> | > (+) [1,2] |
| 21:41:27 | <lambdabot> | error: |
| 21:41:27 | <lambdabot> | • No instance for (Num [Integer]) arising from a use of ‘e_112’ |
| 21:41:27 | <lambdabot> | • In the expression: e_112 |
| 21:41:43 | <geekosaur> | hm, (+) is not the best example there |
| 21:41:54 | <monochrom> | (&&) [False, False] |
| 21:41:57 | <[exa]> | lechner: yeah there printf uses `map` as the first argument, likely not very printable |
| 21:41:57 | <geekosaur> | > (++) ["a","b"] |
| 21:42:00 | <lambdabot> | <[[Char]] -> [[Char]]> |
| 21:42:03 | <lechner> | geekosaur: isn't that here four applications? https://salsa.debian.org/lintian/kickoff/-/blob/master/Collect.hs#L68 |
| 21:42:40 | <lechner> | [exa]: yeah, that part i get now |
| 21:42:40 | <monochrom> | one single list. |
| 21:42:46 | <geekosaur> | lechner, no, it is a 4-element list |
| 21:42:56 | <dsal> | :t map |
| 21:42:57 | <lambdabot> | (a -> b) -> [a] -> [b] |
| 21:43:06 | <geekosaur> | thisis not lisp, a list is not a group of applications |
| 21:43:23 | <dsal> | map takes a function and applies it to each element inside a list. One list in, one list out. |
| 21:44:39 | <lechner> | that's what i am looking for, except one member (of all partially or unapplied functions) is specified as a . b |
| 21:45:19 | <dsal> | You're doing several things at once. You will likely have more success if you break them down a bit. |
| 21:45:53 | <lechner> | dsal: let's go with your approach. i am reading up on puns |
| 21:45:53 | × | azeem quits (~azeem@dynamic-adsl-94-34-39-251.clienti.tiscali.it) (Read error: Connection reset by peer) |
| 21:45:54 | <dsal> | A list is one thing, but it's not what your printf wants. So to work backwards, you'll have to figure out how to make what your printf wants. |
| 21:46:03 | <lechner> | yes |
| 21:46:14 | <lechner> | let's chuck printf |
| 21:46:16 | × | burnsidesLlama quits (~burnsides@dhcp168-011.wadham.ox.ac.uk) (Remote host closed the connection) |
| 21:46:17 | <dsal> | My approach is to make a function that formats your connection string. |
| 21:46:29 | → | azeem joins (~azeem@dynamic-adsl-94-34-39-251.clienti.tiscali.it) |
| 21:46:43 | → | burnsidesLlama joins (~burnsides@dhcp168-011.wadham.ox.ac.uk) |
| 21:47:12 | <dsal> | In MonadLogger, you can call that ToLogStr, but that's the opposite direction from "do less stuff" :) |
| 21:48:42 | × | wallymathieu quits (~wallymath@81-234-151-21-no94.tbcn.telia.com) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 21:51:29 | × | burnsidesLlama quits (~burnsides@dhcp168-011.wadham.ox.ac.uk) (Ping timeout: 265 seconds) |
| 21:52:42 | × | __monty__ quits (~toonn@user/toonn) (Quit: leaving) |
| 21:53:07 | → | __monty__ joins (~toonn@user/toonn) |
| 21:53:19 | × | __monty__ quits (~toonn@user/toonn) (Client Quit) |
| 21:54:50 | <lechner> | can i define an instance of 'show' to return the string host ++ ":" ++ listen_port for a type that has both? |
| 21:55:05 | <geekosaur> | you can but you shouldn't |
| 21:55:20 | <lechner> | why not, please? |
| 21:55:47 | <geekosaur> | an instance of Show should match an instance of Read and ideally be a fragment of Haskell source that will reproduce a value of the type within ghc / ghci |
| 21:56:37 | <geekosaur> | otherwise you run into issues Show-ing or Read-ing structures that contain values of that type |
| 21:56:39 | <lechner> | could i add both? |
| 21:56:50 | × | fendor__ quits (~fendor@178.165.167.65.wireless.dyn.drei.com) (Remote host closed the connection) |
| 21:57:38 | <geekosaur> | what do you mean? |
| 21:58:00 | <lechner> | Show and Read |
| 21:58:35 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 268 seconds) |
| 21:58:41 | <dsal> | lechner: That's not what show is for. This is why MonadLogger defines ToLogStr. You can make your own. |
| 21:59:47 | <dminuoso> | geekosaur: Strictly speaking, that is only requires for deriving generated instances. This notion that they "should" seems to be based in rumour or just an observation of established practice. |
| 21:59:47 | <dsal> | You *can* define your own Show and Read if you're pretty sure you can encapsulate all of the structure you want. It's not definitely the wrong idea all the time, but it's not easier than making something specific for logging and having your logger log with it. |
| 22:00:39 | <dsal> | I think it's the date/time stuff that has fancy Show instances that just make life miserable when you have them in data structures. |
| 22:01:08 | <lechner> | i should not use UTCTime in JSON decls? |
| 22:01:13 | <pavonia> | Custom Show instances are a PITA if you have to debug things. Just don't do it |
| 22:01:22 | <lechner> | okay |
| 22:01:42 | <monochrom> | Established practice is still something to respect. Of course, "respect" allows exceptions. OK I'm on a fence, I'll stop now. |
| 22:02:04 | <lechner> | i'm just learning |
| 22:02:13 | × | geekosaur quits (~geekosaur@xmonad/geekosaur) (Remote host closed the connection) |
| 22:02:33 | → | jmorris joins (uid433911@id-433911.stonehaven.irccloud.com) |
| 22:02:35 | × | fendor quits (~fendor@178.165.167.65.wireless.dyn.drei.com) (Remote host closed the connection) |
| 22:03:08 | × | Tuplanolla quits (~Tuplanoll@91-159-68-239.elisa-laajakaista.fi) (Quit: Leaving.) |
| 22:03:26 | × | jumper149 quits (~jumper149@80.240.31.34) (Quit: WeeChat 3.2) |
| 22:04:01 | <sm> | for learning, do whatever you like :) |
| 22:04:34 | × | yauhsien_ quits (~yauhsien@61-231-35-149.dynamic-ip.hinet.net) (Remote host closed the connection) |
| 22:04:58 | <exarkun> | Where's the Haskell implementation of https://en.wikipedia.org/wiki/Turtle_graphics ? |
| 22:05:04 | → | geekosaur joins (~geekosaur@xmonad/geekosaur) |
| 22:05:22 | × | nate1 quits (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 268 seconds) |
| 22:05:52 | <lechner> | what's the precedence between $ and ++ please? |
| 22:06:55 | <dminuoso> | %i ($) |
| 22:07:05 | <dminuoso> | % :i ($) |
| 22:07:05 | <yahb> | dminuoso: ($) :: (a -> b) -> a -> b -- Defined in `GHC.Base'; infixr 0 $ |
| 22:07:07 | <dminuoso> | % :i (++) |
| 22:07:08 | <yahb> | dminuoso: (++) :: [a] -> [a] -> [a] -- Defined in `GHC.Base'; infixr 5 ++ |
| 22:07:18 | <dminuoso> | lechner: ^- See the fixity declarations? |
| 22:08:05 | <dminuoso> | The number is the precedence level |
| 22:08:09 | <dsal> | % :i (<>) |
| 22:08:09 | <yahb> | dsal: type GHC.Base.Semigroup :: * -> Constraint; class GHC.Base.Semigroup a where; (<>) :: a -> a -> a; ...; -- Defined in `GHC.Base'; infixr 6 <> |
| 22:08:17 | <dsal> | That's interesting. |
| 22:08:20 | <dminuoso> | And the `r` in infixr means its right-associative. We also have infixl for left associative |
| 22:08:28 | × | waleee quits (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 246 seconds) |
| 22:09:02 | × | gehmehgeh quits (~user@user/gehmehgeh) (Quit: Leaving) |
| 22:09:23 | <dminuoso> | If no fixity is declared, an operator defaults to infixl 9. |
| 22:09:33 | <lechner> | dsal: ++ binds more tightly than $ right? |
| 22:09:41 | <dminuoso> | Yes. |
| 22:10:01 | <monochrom> | What do "0" and "5" tell you? |
| 22:10:18 | × | _xor quits (~xor@74.215.232.67) (Ping timeout: 268 seconds) |
| 22:10:32 | <lechner> | a relative ordering |
| 22:10:35 | <dsal> | I don't ever use ++. I just never considered ++ was lower than <> |
| 22:10:44 | → | waleee joins (~waleee@h-98-128-228-119.NA.cust.bahnhof.se) |
| 22:11:06 | <lechner> | what is <> please? i have only seen that in purescript |
| 22:11:14 | <dsal> | :t (<>) |
| 22:11:16 | <lambdabot> | Semigroup a => a -> a -> a |
| 22:11:17 | <dsal> | :t (++) |
| 22:11:19 | <lambdabot> | [a] -> [a] -> [a] |
| 22:11:35 | <dsal> | ++ only works for lists. <> is like ++ but works for many other types. |
| 22:11:39 | <xsperry> | lechner, you can think of it as a more general ++. it works with more than just lists |
| 22:12:02 | <lechner> | dsal: should is stick to concat instead of ++? |
| 22:12:29 | <dsal> | :t concat |
| 22:12:30 | <lambdabot> | Foldable t => t [a] -> [a] |
| 22:12:31 | → | Erutuon joins (~Erutuon@user/erutuon) |
| 22:12:37 | <dsal> | :t fold |
| 22:12:39 | <lambdabot> | (Foldable t, Monoid m) => t m -> m |
| 22:12:51 | <dsal> | That doesn't do the same thing, but depending on what you're doing, it might be better. |
| 22:13:18 | <dsal> | I use <> often, I just don't use ++. You can use ++ if you like. I was just commenting on the precedence. |
| 22:14:41 | <dsal> | I've got logging functions like `logErrorL, logInfoL, logDbgL :: (Foldable f, MonadLogger m) => f T.Text-> m ()` which are helpful when I want to log a list of Texts. e.g., `logInfoL = logInfoN . fold` |
| 22:19:55 | → | hexfive joins (~eric@50.35.83.177) |
| 22:19:55 | × | zangi quits (~zangi@103.154.230.230) (Read error: Connection reset by peer) |
| 22:21:23 | × | Guest31 quits (~Guest31@76-236-222-208.lightspeed.tukrga.sbcglobal.net) (Quit: Client closed) |
| 22:27:12 | <lechner> | are those two lines acceptable for a newbie? https://dpaste.org/sqiW#L96,97 |
| 22:27:33 | × | ph88^ quits (~ph88@2a02:8109:9e00:7e5c:f938:d06a:9ad7:b39c) (Read error: Connection reset by peer) |
| 22:27:56 | → | ph88^ joins (~ph88@ip5f5af6fd.dynamic.kabel-deutschland.de) |
| 22:28:48 | <dminuoso> | Looks fine. |
| 22:29:12 | <lechner> | thanks to everyone for your help! |
| 22:29:22 | <dminuoso> | The `nice 19` looks dubious though. |
| 22:29:48 | <lechner> | what should it look like? |
| 22:30:48 | → | nate1 joins (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) |
| 22:31:08 | <lechner> | I'm trying to do this: https://salsa.debian.org/lintian/kickoff/-/blob/master/runner#L57 |
| 22:31:36 | × | Vajb quits (~Vajb@hag-jnsbng11-58c3a1-224.dhcp.inet.fi) (Read error: Connection reset by peer) |
| 22:31:50 | → | Vajb joins (~Vajb@2001:999:62:1d53:26b1:6c9b:c1ed:9c01) |
| 22:34:05 | × | hololeap quits (~hololeap@user/hololeap) (Ping timeout: 244 seconds) |
| 22:34:46 | → | falafel joins (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) |
| 22:35:03 | → | yauhsien joins (~yauhsien@61-231-35-149.dynamic-ip.hinet.net) |
| 22:35:40 | × | nate1 quits (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 258 seconds) |
| 22:37:34 | × | azeem quits (~azeem@dynamic-adsl-94-34-39-251.clienti.tiscali.it) (Remote host closed the connection) |
| 22:37:44 | → | azeem joins (~azeem@dynamic-adsl-94-34-39-251.clienti.tiscali.it) |
| 22:44:29 | × | yauhsien quits (~yauhsien@61-231-35-149.dynamic-ip.hinet.net) (Ping timeout: 258 seconds) |
| 22:44:34 | → | machinedgod joins (~machinedg@24.105.81.50) |
| 22:45:55 | → | lavaman joins (~lavaman@98.38.249.169) |
| 22:47:27 | → | nate1 joins (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) |
| 22:48:54 | × | chomwitt quits (~Pitsikoko@athedsl-32487.home.otenet.gr) (Quit: Leaving) |
| 22:49:07 | → | chomwitt joins (~chomwitt@2a02:587:dc04:b400:12c3:7bff:fe6d:d374) |
| 22:51:00 | × | lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 268 seconds) |
| 22:52:55 | × | falafel quits (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) (Ping timeout: 258 seconds) |
| 22:54:15 | ← | chomwitt parts (~chomwitt@2a02:587:dc04:b400:12c3:7bff:fe6d:d374) (Leaving) |
| 22:56:54 | × | acidjnk quits (~acidjnk@p200300d0c72b9531605cd8043a67e221.dip0.t-ipconnect.de) (Read error: Connection reset by peer) |
| 22:57:09 | × | machinedgod quits (~machinedg@24.105.81.50) (Ping timeout: 255 seconds) |
| 22:57:18 | → | acidjnk joins (~acidjnk@p200300d0c72b9531605cd8043a67e221.dip0.t-ipconnect.de) |
| 22:57:24 | × | vysn quits (~vysn@user/vysn) (Quit: WeeChat 3.0.1) |
| 22:58:14 | → | vysn joins (~vysn@user/vysn) |
| 22:58:38 | × | vysn quits (~vysn@user/vysn) (Client Quit) |
| 22:58:44 | × | acid quits (~acid@user/acid) (Read error: Connection reset by peer) |
| 22:58:52 | → | acid joins (~acid@2a01:4f9:c010:898a::1) |
| 22:59:07 | → | econo joins (uid147250@user/econo) |
| 22:59:15 | acid | is now known as Guest152 |
| 23:03:14 | smichel17[m] | is now known as silly17[m] |
| 23:05:32 | <lechner> | why do ++ and concat not do the same thing, please? |
| 23:05:51 | <int-e> | they have different types? |
| 23:06:39 | <geekosaur> | what do you mean by "not do the same thing"? |
| 23:06:45 | <geekosaur> | :t (++) |
| 23:06:46 | <lambdabot> | [a] -> [a] -> [a] |
| 23:06:46 | <int-e> | concat takes a list of lists (well, a traversable of lists, but let's simplify) and appends those; ++ takes two lists and appends them |
| 23:06:58 | × | cheater quits (~Username@user/cheater) (Ping timeout: 252 seconds) |
| 23:06:58 | <geekosaur> | :t concat |
| 23:06:59 | <lambdabot> | Foldable t => t [a] -> [a] |
| 23:07:04 | <int-e> | foldable, my bad |
| 23:07:14 | <int-e> | Why do we use "t" for a Foldable. |
| 23:07:27 | → | cheater joins (~Username@user/cheater) |
| 23:07:47 | <lechner> | are they different when used with String? |
| 23:07:55 | <int-e> | (That's what misled me, though it shouldn't have.) |
| 23:07:58 | <geekosaur> | I think this may be ghc inferring a type and calling it "t" because that's the default |
| 23:08:07 | <int-e> | > concat ["a","b","c"] |
| 23:08:09 | <lambdabot> | "abc" |
| 23:08:09 | <geekosaur> | lechner, a String is just a list of Char |
| 23:08:11 | <int-e> | > "a" ++ "b" |
| 23:08:12 | <lambdabot> | "ab" |
| 23:08:19 | <int-e> | it's still a completely different type |
| 23:08:37 | <dsal> | Two things and a list of two things are not the same type. |
| 23:08:58 | <int-e> | You can rewrite xs ++ ys as concat [xs,ys] if you like. |
| 23:09:22 | <lechner> | that's what i meant. thanks! |
| 23:09:27 | <int-e> | (it may come at a small performance penalty) |
| 23:09:34 | <int-e> | (I haven't checked) |
| 23:10:22 | <lechner> | performance is a binary event here atm |
| 23:11:55 | <int-e> | Checked, evidently concat [xs, ys] gets rewritten to xs ++ ys, so there's no difference. |
| 23:12:10 | <int-e> | (when compiling with ghc with optimizations enabled) |
| 23:12:46 | → | falafel joins (~falafel@pool-96-255-70-50.washdc.fios.verizon.net) |
| 23:13:41 | <int-e> | I don't know what "binary event" means. |
| 23:13:44 | <arahael> | The joy of a bit of early-morning haskell before work. :D |
| 23:14:08 | <beaky> | hello does ghc do whole program optimization like mlton |
| 23:14:24 | <arahael> | It's _remarkable_ how one can get by with sloppy code in haskell: You can trivially and painlessly refactor it. So nice. |
| 23:15:18 | <int-e> | beaky: no, it compiles modules separately, though there's inlining across modules for small functions. |
| 23:17:27 | <arahael> | int-e: There was this last year, though: https://www.patreon.com/posts/introducing-ghc-38173710 Has anything happened in that space since then or has it fizzled out? |
| 23:18:45 | <int-e> | I don't really know. I saw that there was some discussion on GRIN on here 2 hours ago... |
| 23:19:43 | <geekosaur> | there is apparently still some ongoing work but it hasn't been upstreamed and isn't yet usable in production |
| 23:19:54 | → | cjb joins (~cjb@user/cjb) |
| 23:21:12 | silly17[m] | is now known as smichel17[m] |
| 23:21:49 | <int-e> | Or is that 26 hours ago, my client has no dates in the timestamp, and my feeling for time is all messed up |
| 23:22:39 | <arahael> | I'm personally a bit torn between thinking that that research is awesome - and or wishing that compilation took way less memory, even though memory doesn't seem to affect me because I never have less than 16 GB of RAM these days. |
| 23:23:25 | <geekosaur> | 26 hours ago more likely |
| 23:23:37 | <geekosaur> | was when I was in the discussion at least |
| 23:24:18 | <int-e> | cf. https://paste.debian.net/hidden/d3d82af6/ |
| 23:25:17 | <int-e> | Yes, it was 26 hours ago. I still don't know whether it's related to that patreon thing. The topic clearly overlaps heavily. |
| 23:26:10 | <int-e> | (don't bookmark that paste, I set it to expire in 24h) |
| 23:27:15 | <geekosaur> | people can get it from ircbrowse if they want it :) |
| 23:27:40 | <geekosaur> | admittedly it'd help if it were searchable, but can't have everything |
| 23:29:29 | <geekosaur> | that was the one I was talking about, at least. don't know with 100% certainty it was the one dmj` intended, but it seemed to match up |
| 23:33:57 | × | Erutuon quits (~Erutuon@user/erutuon) (Ping timeout: 265 seconds) |
| 23:34:41 | × | acidjnk quits (~acidjnk@p200300d0c72b9531605cd8043a67e221.dip0.t-ipconnect.de) (Ping timeout: 255 seconds) |
| 23:36:07 | × | caubert quits (~caubert@136.244.111.235) (Quit: WeeChat 3.1) |
| 23:38:48 | → | caubert joins (~caubert@136.244.111.235) |
| 23:39:44 | × | eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
| 23:41:13 | × | ph88^ quits (~ph88@ip5f5af6fd.dynamic.kabel-deutschland.de) (Ping timeout: 258 seconds) |
| 23:42:43 | → | ph88^ joins (~ph88@2a02:8109:9e00:7e5c:f938:d06a:9ad7:b39c) |
| 23:42:47 | × | shapr quits (~user@pool-100-36-247-68.washdc.fios.verizon.net) (Ping timeout: 255 seconds) |
| 23:48:22 | × | caubert quits (~caubert@136.244.111.235) (Quit: WeeChat 3.2) |
| 23:50:01 | → | caubert joins (~caubert@136.244.111.235) |
| 23:50:43 | → | dajoer joins (~david@user/gvx) |
| 23:54:57 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 23:55:03 | × | phma quits (phma@2001:5b0:211f:63f8:7d7f:3315:17e4:ee3e) (Read error: Connection reset by peer) |
| 23:55:31 | → | _xor joins (~xor@74.215.232.67) |
| 23:58:15 | → | phma joins (phma@2001:0:c38c:c38c:3cee:b989:bcd3:2f3d) |
All times are in UTC on 2021-07-18.