Logs: freenode/#haskell
| 2020-11-04 10:30:10 | <dminuoso> | daydaynatation: In principle you can get away without data families, you could just create data types manually and them use tyfams or mptc+fundeps |
| 2020-11-04 10:30:49 | × | mananamenos quits (~mananamen@84.122.202.215.dyn.user.ono.com) (Ping timeout: 264 seconds) |
| 2020-11-04 10:31:12 | → | brodie joins (~brodie@207.53.253.137) |
| 2020-11-04 10:31:52 | <dminuoso> | daydaynatation: Think of it as an open GADT, perhaps. |
| 2020-11-04 10:32:04 | <dminuoso> | (Or similar to it) |
| 2020-11-04 10:32:41 | <bqv> | ugh. i figured out the issue |
| 2020-11-04 10:32:59 | <bqv> | it's https://github.com/haskell/cabal/issues/7082 |
| 2020-11-04 10:33:18 | × | mmohammadi9812 quits (~mmohammad@2.178.222.196) (Ping timeout: 260 seconds) |
| 2020-11-04 10:33:35 | → | mmohammadi9812 joins (~mmohammad@2.178.217.171) |
| 2020-11-04 10:34:22 | <daydaynatation> | dminuoso: I might not be using these techniques myself but when reading existing code, there are everywhere |
| 2020-11-04 10:34:30 | → | vfaronov joins (~vfaronov@broadband-95-84-210-78.ip.moscow.rt.ru) |
| 2020-11-04 10:35:49 | × | vfaronov quits (~vfaronov@broadband-95-84-210-78.ip.moscow.rt.ru) (Client Quit) |
| 2020-11-04 10:35:55 | → | vk3wtf joins (~doc@203.221.224.44) |
| 2020-11-04 10:36:06 | → | vfaronov joins (~vfaronov@broadband-95-84-210-78.ip.moscow.rt.ru) |
| 2020-11-04 10:36:08 | <bqv> | dminuoso: heh |
| 2020-11-04 10:38:30 | → | DavidEichmann joins (~david@43.240.198.146.dyn.plus.net) |
| 2020-11-04 10:38:35 | × | bliminse quits (~bliminse@host109-156-197-211.range109-156.btcentralplus.com) (Ping timeout: 265 seconds) |
| 2020-11-04 10:38:52 | × | mananamenos_ quits (~mananamen@84.122.202.215.dyn.user.ono.com) (Read error: Connection reset by peer) |
| 2020-11-04 10:39:11 | → | bliminse joins (~bliminse@host109-156-197-211.range109-156.btcentralplus.com) |
| 2020-11-04 10:41:43 | → | supercoven_ joins (~Supercove@dsl-hkibng32-54fb54-166.dhcp.inet.fi) |
| 2020-11-04 10:41:44 | × | supercoven_ quits (~Supercove@dsl-hkibng32-54fb54-166.dhcp.inet.fi) (Max SendQ exceeded) |
| 2020-11-04 10:41:58 | → | supercoven_ joins (~Supercove@dsl-hkibng32-54fb54-166.dhcp.inet.fi) |
| 2020-11-04 10:41:59 | × | supercoven_ quits (~Supercove@dsl-hkibng32-54fb54-166.dhcp.inet.fi) (Max SendQ exceeded) |
| 2020-11-04 10:42:13 | → | supercoven_ joins (~Supercove@dsl-hkibng32-54fb54-166.dhcp.inet.fi) |
| 2020-11-04 10:42:14 | × | supercoven_ quits (~Supercove@dsl-hkibng32-54fb54-166.dhcp.inet.fi) (Max SendQ exceeded) |
| 2020-11-04 10:42:28 | → | supercoven_ joins (~Supercove@dsl-hkibng32-54fb54-166.dhcp.inet.fi) |
| 2020-11-04 10:42:29 | × | supercoven_ quits (~Supercove@dsl-hkibng32-54fb54-166.dhcp.inet.fi) (Max SendQ exceeded) |
| 2020-11-04 10:42:43 | → | supercoven_ joins (~Supercove@dsl-hkibng32-54fb54-166.dhcp.inet.fi) |
| 2020-11-04 10:42:44 | × | supercoven_ quits (~Supercove@dsl-hkibng32-54fb54-166.dhcp.inet.fi) (Max SendQ exceeded) |
| 2020-11-04 10:42:44 | × | supercoven quits (~Supercove@dsl-hkibng32-54fb54-166.dhcp.inet.fi) (K-Lined) |
| 2020-11-04 10:47:17 | → | heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) |
| 2020-11-04 10:47:19 | × | brodie quits (~brodie@207.53.253.137) (Quit: brodie) |
| 2020-11-04 10:48:32 | → | acidjnk_new2 joins (~acidjnk@p200300d0c718f665213d210801ac68e4.dip0.t-ipconnect.de) |
| 2020-11-04 10:51:49 | × | heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 264 seconds) |
| 2020-11-04 10:51:57 | × | shatriff quits (~vitaliish@176.52.219.10) (Remote host closed the connection) |
| 2020-11-04 10:52:13 | → | shatriff joins (~vitaliish@176.52.219.10) |
| 2020-11-04 10:57:18 | × | wwwww quits (~wwwww@unaffiliated/wwwww) (Ping timeout: 258 seconds) |
| 2020-11-04 10:57:29 | × | alp quits (~alp@2a01:e0a:58b:4920:3d11:8aac:3a15:f482) (Ping timeout: 272 seconds) |
| 2020-11-04 10:59:37 | × | xerox_ quits (~xerox@unaffiliated/xerox) (Ping timeout: 264 seconds) |
| 2020-11-04 11:00:09 | → | alp joins (~alp@2a01:e0a:58b:4920:fc19:3d56:9382:4c56) |
| 2020-11-04 11:02:01 | × | todda7 quits (~torstein@ppp-2-84-30-242.home.otenet.gr) (Ping timeout: 264 seconds) |
| 2020-11-04 11:07:10 | → | xerox_ joins (~xerox@unaffiliated/xerox) |
| 2020-11-04 11:10:19 | → | avdb joins (~avdb@ip-62-235-73-30.dsl.scarlet.be) |
| 2020-11-04 11:11:45 | → | wwwww joins (~wwwww@unaffiliated/wwwww) |
| 2020-11-04 11:12:35 | × | britva quits (~britva@2a02:aa13:7240:2980:292a:d07d:3ab9:26ba) (Quit: Leaving) |
| 2020-11-04 11:17:11 | → | ahmr88 joins (~ahmr88@cpc85006-haye22-2-0-cust131.17-4.cable.virginm.net) |
| 2020-11-04 11:17:55 | → | nbloomf joins (~nbloomf@2600:1700:ad14:3020:fc37:ff3f:9c12:2922) |
| 2020-11-04 11:20:17 | × | alp quits (~alp@2a01:e0a:58b:4920:fc19:3d56:9382:4c56) (Ping timeout: 272 seconds) |
| 2020-11-04 11:21:18 | → | todda7 joins (~torstein@ppp-2-84-30-242.home.otenet.gr) |
| 2020-11-04 11:23:22 | × | daydaynatation quits (~user@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Ping timeout: 258 seconds) |
| 2020-11-04 11:25:48 | → | knupfer joins (~Thunderbi@dynamic-046-114-148-101.46.114.pool.telefonica.de) |
| 2020-11-04 11:26:18 | × | vfaronov quits (~vfaronov@broadband-95-84-210-78.ip.moscow.rt.ru) (Quit: vfaronov) |
| 2020-11-04 11:26:31 | → | vfaronov joins (~vfaronov@broadband-95-84-210-78.ip.moscow.rt.ru) |
| 2020-11-04 11:27:00 | hackage | servant-blaze 0.9.1 - Blaze-html support for servant https://hackage.haskell.org/package/servant-blaze-0.9.1 (maksbotan) |
| 2020-11-04 11:27:42 | × | zfnmxt quits (~zfnmxt@unaffiliated/zfnmxt) (Quit: Bye!) |
| 2020-11-04 11:27:45 | × | ahmr88 quits (~ahmr88@cpc85006-haye22-2-0-cust131.17-4.cable.virginm.net) (Remote host closed the connection) |
| 2020-11-04 11:28:43 | × | wwwww quits (~wwwww@unaffiliated/wwwww) (Ping timeout: 260 seconds) |
| 2020-11-04 11:29:11 | × | vfaronov quits (~vfaronov@broadband-95-84-210-78.ip.moscow.rt.ru) (Client Quit) |
| 2020-11-04 11:29:27 | → | akad_ joins (~akad@2a02:a317:223a:2080:c10f:451d:6994:f626) |
| 2020-11-04 11:29:46 | → | zfnmxt joins (~zfnmxt@unaffiliated/zfnmxt) |
| 2020-11-04 11:32:07 | → | alp joins (~alp@2a01:e0a:58b:4920:6c97:b844:18cb:28a7) |
| 2020-11-04 11:37:22 | × | alp quits (~alp@2a01:e0a:58b:4920:6c97:b844:18cb:28a7) (Remote host closed the connection) |
| 2020-11-04 11:37:41 | → | alp joins (~alp@2a01:e0a:58b:4920:1dd3:df8f:e85c:9a7d) |
| 2020-11-04 11:38:00 | × | knupfer quits (~Thunderbi@dynamic-046-114-148-101.46.114.pool.telefonica.de) (Read error: Connection reset by peer) |
| 2020-11-04 11:39:01 | → | ensyde joins (~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) |
| 2020-11-04 11:40:56 | × | olligobber quits (olligobber@gateway/vpn/privateinternetaccess/olligobber) (Ping timeout: 265 seconds) |
| 2020-11-04 11:41:27 | × | zfnmxt quits (~zfnmxt@unaffiliated/zfnmxt) (Quit: Bye!) |
| 2020-11-04 11:42:51 | <bqv> | i feel like toEnum . fromEnum should be provided by default somewhere |
| 2020-11-04 11:43:07 | <bqv> | perhaps not. |
| 2020-11-04 11:43:34 | × | ensyde quits (~ensyde@99-185-235-117.lightspeed.chrlnc.sbcglobal.net) (Ping timeout: 246 seconds) |
| 2020-11-04 11:44:10 | → | britva joins (~britva@31-10-157-156.cgn.dynamic.upc.ch) |
| 2020-11-04 11:47:26 | → | cfricke joins (~cfricke@unaffiliated/cfricke) |
| 2020-11-04 11:48:06 | → | zfnmxt joins (~zfnmxt@unaffiliated/zfnmxt) |
| 2020-11-04 11:50:09 | → | Deide joins (~Deide@217.155.19.23) |
| 2020-11-04 11:50:46 | → | wwwww joins (~wwwww@unaffiliated/wwwww) |
| 2020-11-04 11:51:28 | × | akad_ quits (~akad@2a02:a317:223a:2080:c10f:451d:6994:f626) (Quit: Leaving) |
| 2020-11-04 11:52:37 | × | chaosmasttter quits (~chaosmast@p200300c4a7117c01215e340256877fbe.dip0.t-ipconnect.de) (Ping timeout: 260 seconds) |
| 2020-11-04 11:52:56 | <tomsmeding> | it feels like a dangerously general operation |
| 2020-11-04 11:54:13 | <dminuoso> | Id argue Enum in general is dangerous |
| 2020-11-04 11:54:17 | <dminuoso> | % :t fromEnum |
| 2020-11-04 11:54:17 | <yahb> | dminuoso: Enum a => a -> Int |
| 2020-11-04 11:54:20 | <dminuoso> | Err |
| 2020-11-04 11:54:23 | <dminuoso> | % :t toEnum |
| 2020-11-04 11:54:23 | <yahb> | dminuoso: Enum a => Int -> a |
| 2020-11-04 11:54:30 | <dminuoso> | This lacks MonadFail :( |
| 2020-11-04 11:55:03 | <tomsmeding> | not sure whether MonadFail is the right thing here, but yes partial function :p |
| 2020-11-04 11:55:39 | → | GUEST1604490921 joins (~GUEST1604@124.123.107.91) |
| 2020-11-04 11:56:20 | <bqv> | is it realistic to avoid partial functions entirely, in a project of any substantial size? |
| 2020-11-04 11:57:19 | <idnar> | http://hackage.haskell.org/package/relude-0.7.0.0/docs/Relude-Extra-Enum.html#v:safeToEnum |
| 2020-11-04 11:57:36 | <tomsmeding> | possible, yes, realistic I think no, unless you want to admit a proliferation of data types |
| 2020-11-04 11:57:54 | → | linker_ joins (~linker@185.12.21.77) |
| 2020-11-04 11:58:04 | <tomsmeding> | if you have a sum type with a number of constructors, and your application gets big enough, you'll have situations where only certain of those constructors are valid in a particular place |
| 2020-11-04 11:58:05 | × | GUEST1604490921 quits (~GUEST1604@124.123.107.91) (Read error: Connection reset by peer) |
| 2020-11-04 11:58:20 | × | linker quits (~linker@185.12.21.77) (Ping timeout: 265 seconds) |
| 2020-11-04 11:58:54 | → | GUEST1604491118 joins (~GUEST1604@124.123.107.91) |
| 2020-11-04 11:59:02 | <tomsmeding> | you could make it all total by either adding a new datatype with the constructor subset and converting when the domain restriction happens, or by moving the restrictions to the type level with some GADT trickery |
| 2020-11-04 11:59:14 | <bqv> | i wonder if that relude function would even work for me. my enum instances are mostly written for me by c2hs now :| |
| 2020-11-04 11:59:17 | <tomsmeding> | both can work on a small scale but at some point it hurts readability/understandability I think |
| 2020-11-04 11:59:27 | <bqv> | yeah, agreed |
| 2020-11-04 11:59:54 | × | GUEST1604491118 quits (~GUEST1604@124.123.107.91) (Read error: Connection reset by peer) |
All times are in UTC.