2022-04-13 00:01:31 +0200 | yauhsien | (~yauhsien@61-231-36-20.dynamic-ip.hinet.net) (Ping timeout: 256 seconds) |
2022-04-13 00:03:50 +0200 | sloorush | (~sloorush@2401:4900:2346:16f0:2ddf:524c:16d9:9ed2) |
2022-04-13 00:03:52 +0200 | sloorush | (~sloorush@2401:4900:2346:16f0:2ddf:524c:16d9:9ed2) (Client Quit) |
2022-04-13 00:04:54 +0200 | juri_ | (~juri@178.63.35.222) (Ping timeout: 272 seconds) |
2022-04-13 00:05:02 +0200 | merijn | (~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) |
2022-04-13 00:07:15 +0200 | ec | (~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds) |
2022-04-13 00:09:48 +0200 | notzmv | (~zmv@user/notzmv) (Ping timeout: 240 seconds) |
2022-04-13 00:10:28 +0200 | goepsilongo | (~chacho@2603-7000-ab00-62ed-0000-0000-0000-0bd0.res6.spectrum.com) (Quit: Konversation terminated!) |
2022-04-13 00:12:13 +0200 | machinedgod | (~machinedg@24.105.81.50) |
2022-04-13 00:19:10 +0200 | slack1256 | (~slack1256@186.11.41.244) (Ping timeout: 250 seconds) |
2022-04-13 00:21:38 +0200 | sagax | (~sagax_nb@user/sagax) (Quit: Konversation terminated!) |
2022-04-13 00:23:04 +0200 | kimjetwav | (~user@2607:fea8:2363:8f00:db41:6ba5:4d54:8708) |
2022-04-13 00:25:36 +0200 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) |
2022-04-13 00:26:12 +0200 | michalz | (~michalz@185.246.204.107) (Remote host closed the connection) |
2022-04-13 00:31:02 +0200 | juri_ | (~juri@178.63.35.222) |
2022-04-13 00:33:06 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
2022-04-13 00:33:47 +0200 | xaotuk | (~sasha@cable-178-148-235-107.dynamic.sbb.rs) (Quit: xaotuk) |
2022-04-13 00:37:22 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 250 seconds) |
2022-04-13 00:38:05 +0200 | whatsupdoc | (uid509081@id-509081.hampstead.irccloud.com) (Quit: Connection closed for inactivity) |
2022-04-13 00:39:44 +0200 | merijn | (~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) (Ping timeout: 272 seconds) |
2022-04-13 00:40:09 +0200 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) |
2022-04-13 00:42:46 +0200 | goepsilongo | (~chacho@2603-7000-ab00-62ed-0000-0000-0000-0bd0.res6.spectrum.com) |
2022-04-13 00:44:51 +0200 | Pickchea | (~private@user/pickchea) (Ping timeout: 246 seconds) |
2022-04-13 00:56:00 +0200 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) (Ping timeout: 250 seconds) |
2022-04-13 01:00:15 +0200 | mud | (~mud@user/kadoban) |
2022-04-13 01:04:52 +0200 | vicfred | (~vicfred@user/vicfred) |
2022-04-13 01:05:52 +0200 | anomal | (~anomal@87.227.196.109) (Remote host closed the connection) |
2022-04-13 01:06:59 +0200 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) |
2022-04-13 01:08:40 +0200 | fjmorazan | (~quassel@user/fjmorazan) (Quit: fjmorazan) |
2022-04-13 01:08:54 +0200 | fjmorazan | (~quassel@user/fjmorazan) |
2022-04-13 01:08:57 +0200 | seydar | (~seydar@154-27-113-252.starry-inc.net) (Ping timeout: 256 seconds) |
2022-04-13 01:13:25 +0200 | fjmorazan | (~quassel@user/fjmorazan) (Client Quit) |
2022-04-13 01:13:56 +0200 | fjmorazan | (~quassel@user/fjmorazan) |
2022-04-13 01:14:26 +0200 | seydar | (~seydar@154-27-113-252.starry-inc.net) |
2022-04-13 01:18:48 +0200 | seydar | (~seydar@154-27-113-252.starry-inc.net) (Ping timeout: 246 seconds) |
2022-04-13 01:26:01 +0200 | Nahra | (~user@static.161.95.99.88.clients.your-server.de) (Remote host closed the connection) |
2022-04-13 01:27:16 +0200 | epolanski | (uid312403@id-312403.helmsley.irccloud.com) (Quit: Connection closed for inactivity) |
2022-04-13 01:33:49 +0200 | greyrat_ | (~greyrat@ip202.ip-51-178-215.eu) (Ping timeout: 240 seconds) |
2022-04-13 01:36:37 +0200 | kaph | (~kaph@dynamic-adsl-78-12-162-98.clienti.tiscali.it) (Read error: Connection reset by peer) |
2022-04-13 01:39:01 +0200 | seydar | (~seydar@154-27-113-252.starry-inc.net) |
2022-04-13 01:39:19 +0200 | gehmehgeh | (~user@user/gehmehgeh) (Quit: Leaving) |
2022-04-13 01:41:10 +0200 | machinedgod | (~machinedg@24.105.81.50) (Ping timeout: 272 seconds) |
2022-04-13 01:43:21 +0200 | alp__ | (~alp@user/alp) (Ping timeout: 248 seconds) |
2022-04-13 01:43:27 +0200 | seydar | (~seydar@154-27-113-252.starry-inc.net) (Ping timeout: 240 seconds) |
2022-04-13 01:45:58 +0200 | finn_elija | (~finn_elij@user/finn-elija/x-0085643) |
2022-04-13 01:45:58 +0200 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija))) |
2022-04-13 01:45:59 +0200 | finn_elija | FinnElija |
2022-04-13 01:49:11 +0200 | seydar | (~seydar@154-27-113-252.starry-inc.net) |
2022-04-13 01:52:28 +0200 | chenqisu1 | (~chenqisu1@183.217.200.38) |
2022-04-13 01:53:38 +0200 | seydar | (~seydar@154-27-113-252.starry-inc.net) (Ping timeout: 250 seconds) |
2022-04-13 01:54:42 +0200 | <dons> | morning all |
2022-04-13 01:55:07 +0200 | <dons> | nice one shapr |
2022-04-13 01:55:18 +0200 | <shapr> | yay! |
2022-04-13 01:57:41 +0200 | mon_aaraj | (~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 256 seconds) |
2022-04-13 01:58:07 +0200 | <geekosaur> | o/ |
2022-04-13 01:59:28 +0200 | mon_aaraj | (~MonAaraj@user/mon-aaraj/x-4416475) |
2022-04-13 02:01:14 +0200 | califax | (~califax@user/califx) (Remote host closed the connection) |
2022-04-13 02:02:14 +0200 | califax | (~califax@user/califx) |
2022-04-13 02:02:22 +0200 | asthasr | (~asthasr@208.80.78.154) (Quit: asthasr) |
2022-04-13 02:02:23 +0200 | <sm> | g'day dons |
2022-04-13 02:02:42 +0200 | wroathe | (~wroathe@206-55-188-8.fttp.usinternet.com) |
2022-04-13 02:02:42 +0200 | wroathe | (~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host) |
2022-04-13 02:02:42 +0200 | wroathe | (~wroathe@user/wroathe) |
2022-04-13 02:03:16 +0200 | seydar | (~seydar@154-27-113-252.starry-inc.net) |
2022-04-13 02:05:34 +0200 | <dons> | I'm writing Angle all day today. It's typed datalog, with sums and products. It's like talking to a database via an SMT solver, where the performance model is based on table indexes. |
2022-04-13 02:05:41 +0200 | <dons> | really fun programming model |
2022-04-13 02:05:56 +0200 | <dons> | reminds me a bit of NDP. |
2022-04-13 02:06:02 +0200 | <dons> | all the bulk operations |
2022-04-13 02:07:22 +0200 | <dons> | worked out how to do fmap over a Maybe type :) https://github.com/donsbot/Glean/commit/edb1fe60a164373608daf74735686be109e0737b#diff-dd773c64bb12… in case you're curious what it looks like |
2022-04-13 02:07:56 +0200 | seydar | (~seydar@154-27-113-252.starry-inc.net) (Ping timeout: 250 seconds) |
2022-04-13 02:12:40 +0200 | mon_aaraj | (~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 248 seconds) |
2022-04-13 02:14:39 +0200 | <Axman6> | can you write a higher order fmap for maybe? |
2022-04-13 02:19:24 +0200 | <dons> | not enough of a type system i think. no type parameters. |
2022-04-13 02:20:45 +0200 | <dons> | its basically a glue language for talking to rocksdb, so closer to some sort of SSD-optimized SQL model, but with this weird feature that you can lookup things by using structured types as keys (records, tuples etc) |
2022-04-13 02:20:59 +0200 | seydar | (~seydar@154-27-113-252.starry-inc.net) |
2022-04-13 02:21:44 +0200 | vicfred | (~vicfred@user/vicfred) (Quit: Leaving) |
2022-04-13 02:26:07 +0200 | seydar | (~seydar@154-27-113-252.starry-inc.net) (Ping timeout: 240 seconds) |
2022-04-13 02:26:45 +0200 | vysn | (~vysn@user/vysn) |
2022-04-13 02:28:02 +0200 | xff0x | (~xff0x@i121-117-52-147.s41.a013.ap.plala.or.jp) (Ping timeout: 272 seconds) |
2022-04-13 02:30:15 +0200 | seydar | (~seydar@154-27-113-252.starry-inc.net) |
2022-04-13 02:30:47 +0200 | <Axman6> | fair enough - is Angel a Glean specific thing? |
2022-04-13 02:31:44 +0200 | <dons> | its the "SQL" of Glean, yeah. programming language for query / table layout in glean over rocksdb. |
2022-04-13 02:32:10 +0200 | <dons> | datalog-style queries for facts, DAG traversals |
2022-04-13 02:32:32 +0200 | <Axman6> | shapr: is there some more background to this article? You haven't really stated what problem you're trying to solve in the first couple of sections |
2022-04-13 02:35:35 +0200 | merijn | (~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) |
2022-04-13 02:35:36 +0200 | notzmv | (~zmv@user/notzmv) |
2022-04-13 02:38:08 +0200 | abhixec | (~abhixec@c-67-169-139-16.hsd1.ca.comcast.net) |
2022-04-13 02:40:20 +0200 | kimjetwav | (~user@2607:fea8:2363:8f00:db41:6ba5:4d54:8708) (Quit: ERC 5.4.1 (IRC client for GNU Emacs 29.0.50)) |
2022-04-13 02:45:51 +0200 | gurkenglas | (~gurkengla@dslb-178-012-018-212.178.012.pools.vodafone-ip.de) (Ping timeout: 256 seconds) |
2022-04-13 02:50:23 +0200 | zeenk | (~zeenk@2a02:2f04:a313:d600:8d26:ec9f:3ff6:fc94) (Quit: Konversation terminated!) |
2022-04-13 02:50:34 +0200 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) (Remote host closed the connection) |
2022-04-13 02:50:52 +0200 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) |
2022-04-13 02:50:58 +0200 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) (Remote host closed the connection) |
2022-04-13 02:52:08 +0200 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 250 seconds) |
2022-04-13 02:56:17 +0200 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) |
2022-04-13 03:06:20 +0200 | xff0x | (~xff0x@125x102x200x106.ap125.ftth.ucom.ne.jp) |
2022-04-13 03:10:28 +0200 | merijn | (~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) (Ping timeout: 272 seconds) |
2022-04-13 03:10:54 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
2022-04-13 03:17:01 +0200 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
2022-04-13 03:17:17 +0200 | pretty_dumm_guy | (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Quit: WeeChat 3.5) |
2022-04-13 03:28:57 +0200 | redb | (~nmh@136.49.49.211) (Ping timeout: 248 seconds) |
2022-04-13 03:33:55 +0200 | andrey__ | (~andrey@p200300dbcf07c100b04d34d7ed81db16.dip0.t-ipconnect.de) |
2022-04-13 03:35:49 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
2022-04-13 03:36:24 +0200 | andrey_ | (~andrey@p200300dbcf112f00ea6a6fd122b4be68.dip0.t-ipconnect.de) (Ping timeout: 248 seconds) |
2022-04-13 03:36:35 +0200 | deadmarshal_ | (~deadmarsh@95.38.117.55) |
2022-04-13 03:38:20 +0200 | seydar | (~seydar@154-27-113-252.starry-inc.net) (Ping timeout: 272 seconds) |
2022-04-13 03:38:29 +0200 | abastro | (~abab9579@143.248.229.192) |
2022-04-13 03:40:27 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 260 seconds) |
2022-04-13 03:41:06 +0200 | deadmarshal_ | (~deadmarsh@95.38.117.55) (Ping timeout: 250 seconds) |
2022-04-13 03:44:22 +0200 | seydar | (~seydar@154-27-113-252.starry-inc.net) |
2022-04-13 03:44:33 +0200 | yauhsien | (~yauhsien@61-231-36-20.dynamic-ip.hinet.net) |
2022-04-13 03:45:36 +0200 | Akiva | (~Akiva@user/Akiva) (Quit: WeeChat 3.5) |
2022-04-13 03:47:12 +0200 | raehik1 | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 272 seconds) |
2022-04-13 03:49:11 +0200 | seydar | (~seydar@154-27-113-252.starry-inc.net) (Ping timeout: 256 seconds) |
2022-04-13 03:52:12 +0200 | kanin_ | (~kanin_@2001:da8:d800:196:888d:5adb:9959:8fba) |
2022-04-13 03:52:55 +0200 | szkl | (uid110435@id-110435.uxbridge.irccloud.com) (Quit: Connection closed for inactivity) |
2022-04-13 03:53:09 +0200 | kanin_ | (~kanin_@2001:da8:d800:196:888d:5adb:9959:8fba) (Read error: Connection reset by peer) |
2022-04-13 03:53:38 +0200 | redb | (~nmh@136.49.49.211) |
2022-04-13 03:53:53 +0200 | seydar | (~seydar@154-27-113-252.starry-inc.net) |
2022-04-13 03:54:43 +0200 | sammelweis_ | (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Remote host closed the connection) |
2022-04-13 03:55:32 +0200 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) |
2022-04-13 03:55:38 +0200 | sammelweis | (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) |
2022-04-13 03:58:11 +0200 | redb | (~nmh@136.49.49.211) (Ping timeout: 260 seconds) |
2022-04-13 03:58:39 +0200 | seydar | (~seydar@154-27-113-252.starry-inc.net) (Ping timeout: 260 seconds) |
2022-04-13 03:59:06 +0200 | hsw | (~hsw@2001-b030-2303-0104-0172-0025-0012-0132.hinet-ip6.hinet.net) |
2022-04-13 04:01:46 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
2022-04-13 04:04:14 +0200 | mc47 | (~mc47@xmonad/TheMC47) (Remote host closed the connection) |
2022-04-13 04:09:15 +0200 | jao | (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Ping timeout: 246 seconds) |
2022-04-13 04:10:29 +0200 | redb | (~nmh@136.49.49.211) |
2022-04-13 04:10:30 +0200 | Sgeo | (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
2022-04-13 04:11:22 +0200 | seydar | (~seydar@154-27-113-252.starry-inc.net) |
2022-04-13 04:15:15 +0200 | redb | (~nmh@136.49.49.211) (Ping timeout: 256 seconds) |
2022-04-13 04:15:44 +0200 | Sgeo | (~Sgeo@user/sgeo) |
2022-04-13 04:19:18 +0200 | frost | (~frost@user/frost) |
2022-04-13 04:20:34 +0200 | kaph | (~kaph@dynamic-adsl-78-12-162-98.clienti.tiscali.it) |
2022-04-13 04:27:16 +0200 | redb | (~nmh@136.49.49.211) |
2022-04-13 04:27:54 +0200 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) (Ping timeout: 250 seconds) |
2022-04-13 04:29:41 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
2022-04-13 04:30:02 +0200 | <Axman6> | I'm currently learning about Rust modules, and they seem ... complex isn't the right word, but it feels like a lot of hoops to jump through. The only time I've really wanted as much control as (in Haskell) it gives you is when I want to export things so that tests can use them, but others can't, and usually that just means using a .Internal module |
2022-04-13 04:31:20 +0200 | redb | (~nmh@136.49.49.211) (Ping timeout: 248 seconds) |
2022-04-13 04:31:42 +0200 | <zero> | , |
2022-04-13 04:32:03 +0200 | <Axman6> | oh no, zero has fallen into a comma! |
2022-04-13 04:34:30 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
2022-04-13 04:36:52 +0200 | <zero> | a -> b -> (a,b) |
2022-04-13 04:39:24 +0200 | <abastro> | Well, one of the gripes of haskell is the namespace things |
2022-04-13 04:39:46 +0200 | <abastro> | What does rust module system allow? |
2022-04-13 04:39:58 +0200 | <abastro> | allow control? |
2022-04-13 04:42:09 +0200 | <Axman6> | you can read the chapter in the book if you like: https://doc.rust-lang.org/book/ch07-00-managing-growing-projects-with-packages-crates-and-modules.… |
2022-04-13 04:43:11 +0200 | terrorjack | (~terrorjac@2a01:4f8:1c1e:509a::1) (Quit: The Lounge - https://thelounge.chat) |
2022-04-13 04:43:26 +0200 | <Axman6> | I find it odd that you can define a module as not public, and then a module inside it as public. also specifying whether individual struct fiends can be public feels weird to me, though languages with mutability often do/need to do things like that I guess |
2022-04-13 04:44:19 +0200 | <Axman6> | It is interesting seeing how many features of Rust appear to have come directly from Haskell, occasionally you read something and realise you already understand it |
2022-04-13 04:44:25 +0200 | terrorjack | (~terrorjac@2a01:4f8:1c1e:509a::1) |
2022-04-13 04:45:24 +0200 | <Axman6> | Something I've wanted in Haskell for a while is the ability to rename things on import, like module Data.HashMap (HashMap as Map) or something |
2022-04-13 04:48:39 +0200 | Henson | (~kvirc@107-179-133-201.cpe.teksavvy.com) |
2022-04-13 04:50:01 +0200 | <abastro> | Directly from haskell? |
2022-04-13 04:50:22 +0200 | <abastro> | Well yea I also want the ability to rename, but I heard that it would require breaking change :/ |
2022-04-13 04:50:25 +0200 | yauhsien | (~yauhsien@61-231-36-20.dynamic-ip.hinet.net) (Remote host closed the connection) |
2022-04-13 04:50:46 +0200 | <abastro> | Accessibility control is for encapsulation I think, rather than for mutation |
2022-04-13 04:51:01 +0200 | <abastro> | Fine-grained encapsulation |
2022-04-13 04:52:26 +0200 | redb | (~nmh@136.49.49.211) |
2022-04-13 04:53:04 +0200 | yauhsien | (~yauhsien@61-231-36-20.dynamic-ip.hinet.net) |
2022-04-13 04:53:31 +0200 | <abastro> | I guess in corporate settings, you don't want to grant usage access of code portion for those who are not counted responsible for that code section |
2022-04-13 04:55:26 +0200 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) |
2022-04-13 04:56:33 +0200 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija))) |
2022-04-13 04:56:33 +0200 | finn_elija | (~finn_elij@user/finn-elija/x-0085643) |
2022-04-13 04:56:33 +0200 | finn_elija | FinnElija |
2022-04-13 04:56:56 +0200 | redb | (~nmh@136.49.49.211) (Ping timeout: 250 seconds) |
2022-04-13 04:58:14 +0200 | yauhsien | (~yauhsien@61-231-36-20.dynamic-ip.hinet.net) (Ping timeout: 250 seconds) |
2022-04-13 05:04:03 +0200 | russruss | (~russruss@my.russellmcc.com) |
2022-04-13 05:07:04 +0200 | mikoto-chan | (~mikoto-ch@213.177.151.239) (Ping timeout: 248 seconds) |
2022-04-13 05:09:20 +0200 | lbseale | (~ep1ctetus@user/ep1ctetus) (Read error: Connection reset by peer) |
2022-04-13 05:11:12 +0200 | merijn | (~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) |
2022-04-13 05:18:48 +0200 | seydar | (~seydar@154-27-113-252.starry-inc.net) (Read error: Connection reset by peer) |
2022-04-13 05:18:55 +0200 | euandreh | (~euandreh@2804:14c:33:9fe5:f1f:1f2:988a:6dea) (Ping timeout: 260 seconds) |
2022-04-13 05:19:49 +0200 | euandreh | (~euandreh@2804:14c:33:9fe5:2b05:e929:4a1b:5380) |
2022-04-13 05:20:58 +0200 | cdman | (~dcm@user/dmc/x-4369397) |
2022-04-13 05:23:47 +0200 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) (Ping timeout: 240 seconds) |
2022-04-13 05:25:09 +0200 | z0k | (~z0k@39.40.5.37) |
2022-04-13 05:25:53 +0200 | redb | (~nmh@136.49.49.211) |
2022-04-13 05:27:16 +0200 | abastro | (~abab9579@143.248.229.192) (Ping timeout: 250 seconds) |
2022-04-13 05:28:26 +0200 | seydar | (~seydar@154-27-113-252.starry-inc.net) |
2022-04-13 05:31:09 +0200 | redb | (~nmh@136.49.49.211) (Ping timeout: 246 seconds) |
2022-04-13 05:32:08 +0200 | redb | (~nmh@136.49.49.211) |
2022-04-13 05:32:54 +0200 | seydar | (~seydar@154-27-113-252.starry-inc.net) (Ping timeout: 246 seconds) |
2022-04-13 05:34:21 +0200 | cdman | (~dcm@user/dmc/x-4369397) (Quit: Leaving) |
2022-04-13 05:34:35 +0200 | z0k | (~z0k@39.40.5.37) (Ping timeout: 256 seconds) |
2022-04-13 05:36:24 +0200 | redb | (~nmh@136.49.49.211) (Ping timeout: 246 seconds) |
2022-04-13 05:38:15 +0200 | redb | (~nmh@136.49.49.211) |
2022-04-13 05:40:07 +0200 | merijn | (~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) (Ping timeout: 240 seconds) |
2022-04-13 05:40:56 +0200 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) (Remote host closed the connection) |
2022-04-13 05:41:28 +0200 | z0k | (~z0k@39.40.97.184) |
2022-04-13 05:42:21 +0200 | redb | (~nmh@136.49.49.211) (Ping timeout: 246 seconds) |
2022-04-13 05:48:07 +0200 | waleee | (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) (Ping timeout: 240 seconds) |
2022-04-13 05:48:28 +0200 | cdman | (~dcm@27.2.216.167) |
2022-04-13 05:48:29 +0200 | cdman | (~dcm@27.2.216.167) (Changing host) |
2022-04-13 05:48:29 +0200 | cdman | (~dcm@user/dmc/x-4369397) |
2022-04-13 05:51:41 +0200 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) |
2022-04-13 05:54:03 +0200 | axeman | (~quassel@2a02:8109:a380:78:e9e7:400a:2ff3:71f1) |
2022-04-13 05:55:26 +0200 | yauhsien | (~yauhsien@61-231-36-20.dynamic-ip.hinet.net) |
2022-04-13 05:56:41 +0200 | BlackboardN | (~Blackboar@user/BlackboardN) (Ping timeout: 248 seconds) |
2022-04-13 05:59:46 +0200 | wroathe | (~wroathe@user/wroathe) (Ping timeout: 250 seconds) |
2022-04-13 06:00:07 +0200 | yauhsien | (~yauhsien@61-231-36-20.dynamic-ip.hinet.net) (Ping timeout: 240 seconds) |
2022-04-13 06:07:35 +0200 | Henson | (~kvirc@107-179-133-201.cpe.teksavvy.com) (Quit: KVIrc 5.0.0 Aria http://www.kvirc.net/) |
2022-04-13 06:08:33 +0200 | seydar | (~seydar@154-27-113-252.starry-inc.net) |
2022-04-13 06:09:13 +0200 | cdman | (~dcm@user/dmc/x-4369397) (Quit: Leaving) |
2022-04-13 06:10:27 +0200 | redb | (~nmh@136.49.49.211) |
2022-04-13 06:11:52 +0200 | vicfred | (~vicfred@user/vicfred) |
2022-04-13 06:13:12 +0200 | seydar | (~seydar@154-27-113-252.starry-inc.net) (Ping timeout: 250 seconds) |
2022-04-13 06:14:28 +0200 | goepsilongo | (~chacho@2603-7000-ab00-62ed-0000-0000-0000-0bd0.res6.spectrum.com) (Quit: Konversation terminated!) |
2022-04-13 06:14:35 +0200 | mbuf | (~Shakthi@223.184.55.97) |
2022-04-13 06:14:56 +0200 | redb | (~nmh@136.49.49.211) (Ping timeout: 250 seconds) |
2022-04-13 06:16:07 +0200 | z0k | (~z0k@39.40.97.184) (Ping timeout: 240 seconds) |
2022-04-13 06:19:48 +0200 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) (Ping timeout: 246 seconds) |
2022-04-13 06:26:23 +0200 | yauhsien | (~yauhsien@61-231-36-20.dynamic-ip.hinet.net) |
2022-04-13 06:29:11 +0200 | bahamas | (~lucian@84.232.140.158) |
2022-04-13 06:35:07 +0200 | redb | (~nmh@136.49.49.211) |
2022-04-13 06:36:11 +0200 | bgt32 | (~keutoi@223.182.17.205) |
2022-04-13 06:37:49 +0200 | deadmarshal_ | (~deadmarsh@95.38.117.55) |
2022-04-13 06:38:31 +0200 | z0k | (~z0k@39.40.127.26) |
2022-04-13 06:39:20 +0200 | redb | (~nmh@136.49.49.211) (Ping timeout: 248 seconds) |
2022-04-13 06:43:30 +0200 | zebrag | (~chris@user/zebrag) (Quit: Konversation terminated!) |
2022-04-13 06:44:12 +0200 | <bgt32> | In Data.Ix we have index :: (a, a) -> a -> Int; is there an inverse for it? f :: (a, a) -> Int -> a , that gives nth element of that range. I could use range (a, b) !! n, but that seems in efficient. |
2022-04-13 06:44:26 +0200 | vicfred | (~vicfred@user/vicfred) (Quit: Leaving) |
2022-04-13 06:46:43 +0200 | redb | (~nmh@136.49.49.211) |
2022-04-13 06:49:29 +0200 | axeman | (~quassel@2a02:8109:a380:78:e9e7:400a:2ff3:71f1) (Ping timeout: 248 seconds) |
2022-04-13 07:02:46 +0200 | king_gs | (~Thunderbi@2806:103e:29:1de5:8bc8:f08f:4d70:424) |
2022-04-13 07:03:33 +0200 | bahamas | (~lucian@84.232.140.158) (Ping timeout: 256 seconds) |
2022-04-13 07:07:35 +0200 | seydar | (~seydar@154-27-113-252.starry-inc.net) |
2022-04-13 07:10:41 +0200 | axeman | (~quassel@2a02:8109:a380:78:87db:6d2e:f3e4:fc07) |
2022-04-13 07:11:11 +0200 | cdman | (~dcm@user/dmc/x-4369397) |
2022-04-13 07:11:52 +0200 | deadmarshal_ | (~deadmarsh@95.38.117.55) (Ping timeout: 248 seconds) |
2022-04-13 07:17:41 +0200 | cdman | (~dcm@user/dmc/x-4369397) (Remote host closed the connection) |
2022-04-13 07:19:44 +0200 | cdman | (~dcm@27.2.216.167) |
2022-04-13 07:19:44 +0200 | cdman | (~dcm@27.2.216.167) (Changing host) |
2022-04-13 07:19:44 +0200 | cdman | (~dcm@user/dmc/x-4369397) |
2022-04-13 07:21:14 +0200 | axeman | (~quassel@2a02:8109:a380:78:87db:6d2e:f3e4:fc07) (Ping timeout: 250 seconds) |
2022-04-13 07:23:06 +0200 | xkuru | (~xkuru@user/xkuru) (Read error: Connection reset by peer) |
2022-04-13 07:30:53 +0200 | bahamas | (~lucian@84.232.140.158) |
2022-04-13 07:31:05 +0200 | zyklotomic | (~ethan@res380d-128-61-83-53.res.gatech.edu) (Ping timeout: 248 seconds) |
2022-04-13 07:32:14 +0200 | kenran | (~kenran@200116b82b0a340003754354c85ff367.dip.versatel-1u1.de) |
2022-04-13 07:33:20 +0200 | zyklotomic | (~ethan@res388d-128-61-89-14.res.gatech.edu) |
2022-04-13 07:35:17 +0200 | bahamas | (~lucian@84.232.140.158) (Ping timeout: 256 seconds) |
2022-04-13 07:35:55 +0200 | axeman | (~quassel@2a02:8109:a380:78:de22:d343:c0cd:4b29) |
2022-04-13 07:37:07 +0200 | son0p | (~ff@181.136.122.143) (Ping timeout: 256 seconds) |
2022-04-13 07:37:51 +0200 | michalz | (~michalz@185.246.204.125) |
2022-04-13 07:39:02 +0200 | tomku | (~tomku@user/tomku) (Remote host closed the connection) |
2022-04-13 07:39:08 +0200 | tomku|two | (~tomku@user/tomku) |
2022-04-13 07:40:26 +0200 | <Axman6> | iIlI1| |
2022-04-13 07:40:38 +0200 | <Axman6> | uh, didn't mean to send that. Enjoy your free font test |
2022-04-13 07:40:49 +0200 | benin | (~benin@183.82.204.110) |
2022-04-13 07:41:07 +0200 | seydar | (~seydar@154-27-113-252.starry-inc.net) (Ping timeout: 240 seconds) |
2022-04-13 07:41:51 +0200 | ss- | (~ss-@187.83.249.216.dyn.smithville.net) |
2022-04-13 07:41:52 +0200 | merijn | (~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) |
2022-04-13 07:43:33 +0200 | <jackdk> | you're not the boss of me Axman6 |
2022-04-13 07:43:47 +0200 | tomku|two | (~tomku@user/tomku) (Ping timeout: 240 seconds) |
2022-04-13 07:44:44 +0200 | tomku | (~tomku@user/tomku) |
2022-04-13 07:44:47 +0200 | axeman | (~quassel@2a02:8109:a380:78:de22:d343:c0cd:4b29) (Ping timeout: 240 seconds) |
2022-04-13 07:44:53 +0200 | deadmarshal_ | (~deadmarsh@95.38.117.55) |
2022-04-13 07:47:07 +0200 | seydar | (~seydar@154-27-113-252.starry-inc.net) |
2022-04-13 07:47:52 +0200 | JimL | (~quassel@89-162-2-132.fiber.signal.no) (Ping timeout: 272 seconds) |
2022-04-13 07:50:01 +0200 | bgt32 | (~keutoi@223.182.17.205) (Ping timeout: 256 seconds) |
2022-04-13 07:51:24 +0200 | <zero> | Axman6: are those not 2 Is ? |
2022-04-13 07:51:27 +0200 | seydar | (~seydar@154-27-113-252.starry-inc.net) (Ping timeout: 240 seconds) |
2022-04-13 07:52:02 +0200 | <Axman6> | yeah was supposed to be iIlL1| |
2022-04-13 07:54:05 +0200 | JimL | (~quassel@89-162-2-132.fiber.signal.no) |
2022-04-13 07:57:23 +0200 | tomku | (~tomku@user/tomku) (Ping timeout: 256 seconds) |
2022-04-13 07:57:49 +0200 | tomku | (~tomku@user/tomku) |
2022-04-13 07:57:55 +0200 | stiell_ | (~stiell@gateway/tor-sasl/stiell) (Ping timeout: 240 seconds) |
2022-04-13 07:58:31 +0200 | kmein | (~weechat@user/kmein) (Quit: ciao kakao) |
2022-04-13 07:58:50 +0200 | kmein | (~weechat@user/kmein) |
2022-04-13 08:00:17 +0200 | Sgeo | (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
2022-04-13 08:00:44 +0200 | yauhsien | (~yauhsien@61-231-36-20.dynamic-ip.hinet.net) (Remote host closed the connection) |
2022-04-13 08:01:18 +0200 | yauhsien | (~yauhsien@61-231-36-20.dynamic-ip.hinet.net) |
2022-04-13 08:03:37 +0200 | tomku | (~tomku@user/tomku) (Ping timeout: 256 seconds) |
2022-04-13 08:04:00 +0200 | tomku | (~tomku@user/tomku) |
2022-04-13 08:04:12 +0200 | <tdammers> | weird, it renders as 27 snowmen and a vomit face for me |
2022-04-13 08:06:11 +0200 | coot | (~coot@213.134.190.95) |
2022-04-13 08:06:12 +0200 | yauhsien | (~yauhsien@61-231-36-20.dynamic-ip.hinet.net) (Ping timeout: 246 seconds) |
2022-04-13 08:06:26 +0200 | <Axman6> | I think you might need to take your font into the shop and get that checked out |
2022-04-13 08:07:27 +0200 | bahamas | (~lucian@84.232.140.158) |
2022-04-13 08:07:35 +0200 | z0k | (~z0k@39.40.127.26) (Ping timeout: 256 seconds) |
2022-04-13 08:09:10 +0200 | z0k | (~z0k@39.40.107.216) |
2022-04-13 08:09:31 +0200 | shriekingnoise | (~shrieking@201.231.16.156) (Quit: Quit) |
2022-04-13 08:11:04 +0200 | merijn | (~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) (Ping timeout: 248 seconds) |
2022-04-13 08:11:52 +0200 | stiell_ | (~stiell@gateway/tor-sasl/stiell) |
2022-04-13 08:15:42 +0200 | yauhsien | (~yauhsien@61-231-36-20.dynamic-ip.hinet.net) |
2022-04-13 08:15:50 +0200 | bahamas | (~lucian@84.232.140.158) (Ping timeout: 250 seconds) |
2022-04-13 08:17:30 +0200 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) |
2022-04-13 08:19:46 +0200 | zmt00 | (~zmt00@user/zmt00) (Quit: Leaving) |
2022-04-13 08:20:37 +0200 | benin | (~benin@183.82.204.110) (Ping timeout: 256 seconds) |
2022-04-13 08:20:51 +0200 | yauhsien | (~yauhsien@61-231-36-20.dynamic-ip.hinet.net) (Remote host closed the connection) |
2022-04-13 08:21:29 +0200 | yauhsien | (~yauhsien@61-231-36-20.dynamic-ip.hinet.net) |
2022-04-13 08:23:07 +0200 | gaff | (~gaff@49.207.227.93) |
2022-04-13 08:23:08 +0200 | benin | (~benin@183.82.204.110) |
2022-04-13 08:23:12 +0200 | gaff | (~gaff@49.207.227.93) (Client Quit) |
2022-04-13 08:23:53 +0200 | zmt00 | (~zmt00@user/zmt00) |
2022-04-13 08:26:51 +0200 | yauhsien | (~yauhsien@61-231-36-20.dynamic-ip.hinet.net) (Ping timeout: 256 seconds) |
2022-04-13 08:29:03 +0200 | _ht | (~quassel@231-169-21-31.ftth.glasoperator.nl) |
2022-04-13 08:29:35 +0200 | axeman | (~quassel@2a02:8109:a380:78:b030:2e2d:7f87:c8e6) |
2022-04-13 08:30:22 +0200 | acidjnk_new | (~acidjnk@p200300d0c722df650d0cc85cc0f432cb.dip0.t-ipconnect.de) |
2022-04-13 08:30:23 +0200 | odnes | (~odnes@5-203-221-3.pat.nym.cosmote.net) |
2022-04-13 08:36:09 +0200 | coot | (~coot@213.134.190.95) (Quit: coot) |
2022-04-13 08:39:09 +0200 | bgt32 | (~keutoi@223.182.17.205) |
2022-04-13 08:39:11 +0200 | anomal | (~anomal@87.227.196.109) |
2022-04-13 08:39:26 +0200 | ss- | (~ss-@187.83.249.216.dyn.smithville.net) (Quit: Client closed) |
2022-04-13 08:40:13 +0200 | alp__ | (~alp@user/alp) |
2022-04-13 08:43:31 +0200 | fendor | (~fendor@91.141.45.157.wireless.dyn.drei.com) |
2022-04-13 08:46:16 +0200 | axeman | (~quassel@2a02:8109:a380:78:b030:2e2d:7f87:c8e6) (Ping timeout: 248 seconds) |
2022-04-13 08:46:54 +0200 | <jackdk> | bgt32: Not to my knowledge, which seems like maybe an oversight? |
2022-04-13 08:47:27 +0200 | deadmarshal_ | (~deadmarsh@95.38.117.55) (Ping timeout: 240 seconds) |
2022-04-13 08:48:22 +0200 | cfricke | (~cfricke@user/cfricke) |
2022-04-13 08:50:44 +0200 | biberu | (~biberu@user/biberu) (Read error: Connection reset by peer) |
2022-04-13 08:52:29 +0200 | neurocyte8614492 | (~neurocyte@IP-185117068183.dynamic.medianet-world.de) |
2022-04-13 08:52:29 +0200 | neurocyte8614492 | (~neurocyte@IP-185117068183.dynamic.medianet-world.de) (Changing host) |
2022-04-13 08:52:29 +0200 | neurocyte8614492 | (~neurocyte@user/neurocyte) |
2022-04-13 08:56:47 +0200 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) (Ping timeout: 240 seconds) |
2022-04-13 09:00:13 +0200 | mattil | (~mattil@helsinki.portalify.com) |
2022-04-13 09:03:07 +0200 | jonathanx_ | (~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) (Ping timeout: 240 seconds) |
2022-04-13 09:03:26 +0200 | tcard | (~tcard@p2878075-ipngn18701hodogaya.kanagawa.ocn.ne.jp) (Quit: Leaving) |
2022-04-13 09:06:26 +0200 | abastro | (~abab9579@143.248.229.195) |
2022-04-13 09:06:32 +0200 | lortabac | (~lortabac@2a01:e0a:541:b8f0:1bbe:d06f:b37f:2998) |
2022-04-13 09:07:04 +0200 | dschrempf | (~dominik@92-249-159-213.pool.digikabel.hu) |
2022-04-13 09:07:39 +0200 | redb | (~nmh@136.49.49.211) (Ping timeout: 256 seconds) |
2022-04-13 09:07:47 +0200 | chenqisu1 | (~chenqisu1@183.217.200.38) (Remote host closed the connection) |
2022-04-13 09:08:07 +0200 | chenqisu1 | (~chenqisu1@183.217.200.38) |
2022-04-13 09:11:38 +0200 | biberu | (~biberu@user/biberu) |
2022-04-13 09:12:55 +0200 | CiaoSen | (~Jura@p200300c9572d40002a3a4dfffe84dbd5.dip0.t-ipconnect.de) |
2022-04-13 09:13:22 +0200 | anomal | (~anomal@87.227.196.109) (Remote host closed the connection) |
2022-04-13 09:14:46 +0200 | _ht | (~quassel@231-169-21-31.ftth.glasoperator.nl) (Remote host closed the connection) |
2022-04-13 09:16:43 +0200 | dschrempf | (~dominik@92-249-159-213.pool.digikabel.hu) (Ping timeout: 256 seconds) |
2022-04-13 09:16:57 +0200 | bahamas | (~lucian@84.232.140.158) |
2022-04-13 09:17:01 +0200 | merijn | (~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) |
2022-04-13 09:22:30 +0200 | bahamas | (~lucian@84.232.140.158) (Ping timeout: 246 seconds) |
2022-04-13 09:23:38 +0200 | InstX1 | (~Liam@2601:6c4:4080:3f80:e90d:eced:aa0c:bcb3) |
2022-04-13 09:23:48 +0200 | InstX1_ | (~Liam@2601:6c4:4080:3f80:1d4a:af44:f702:f9c0) (Ping timeout: 240 seconds) |
2022-04-13 09:26:50 +0200 | redb | (~nmh@136.49.49.211) |
2022-04-13 09:26:55 +0200 | littlebobeep | (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
2022-04-13 09:28:35 +0200 | InstX1_ | (~Liam@2601:6c4:4080:3f80:5940:980:e666:cc89) |
2022-04-13 09:29:29 +0200 | CiaoSen | (~Jura@p200300c9572d40002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Ping timeout: 248 seconds) |
2022-04-13 09:30:02 +0200 | dhouthoo | (~dhouthoo@178-117-36-167.access.telenet.be) |
2022-04-13 09:30:22 +0200 | InstX1 | (~Liam@2601:6c4:4080:3f80:e90d:eced:aa0c:bcb3) (Ping timeout: 250 seconds) |
2022-04-13 09:32:07 +0200 | alp__ | (~alp@user/alp) (Remote host closed the connection) |
2022-04-13 09:32:23 +0200 | alp_ | (~alp@user/alp) |
2022-04-13 09:41:07 +0200 | Midjak | (~Midjak@82.66.147.146) |
2022-04-13 09:46:22 +0200 | king_gs | (~Thunderbi@2806:103e:29:1de5:8bc8:f08f:4d70:424) (Quit: king_gs) |
2022-04-13 09:46:54 +0200 | akegalj | (~akegalj@93-138-88-178.adsl.net.t-com.hr) |
2022-04-13 09:47:23 +0200 | king_gs | (~Thunderbi@2806:103e:29:1de5:8bc8:f08f:4d70:424) |
2022-04-13 09:48:07 +0200 | machinedgod | (~machinedg@24.105.81.50) |
2022-04-13 09:48:17 +0200 | seydar | (~seydar@154-27-113-252.starry-inc.net) |
2022-04-13 09:49:26 +0200 | son0p | (~ff@181.136.122.143) |
2022-04-13 09:49:35 +0200 | odnes | (~odnes@5-203-221-3.pat.nym.cosmote.net) (Remote host closed the connection) |
2022-04-13 09:49:52 +0200 | odnes | (~odnes@5-203-221-3.pat.nym.cosmote.net) |
2022-04-13 09:51:31 +0200 | tzh | (~tzh@c-24-21-73-154.hsd1.wa.comcast.net) (Quit: zzz) |
2022-04-13 09:55:30 +0200 | seydar | (~seydar@154-27-113-252.starry-inc.net) (Ping timeout: 250 seconds) |
2022-04-13 10:01:06 +0200 | seydar | (~seydar@154-27-113-252.starry-inc.net) |
2022-04-13 10:03:06 +0200 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) |
2022-04-13 10:03:54 +0200 | gehmehgeh | (~user@user/gehmehgeh) |
2022-04-13 10:04:07 +0200 | jackson99 | (~bc8147f2@cerf.good1.com) |
2022-04-13 10:05:35 +0200 | chele | (~chele@user/chele) |
2022-04-13 10:06:01 +0200 | seydar | (~seydar@154-27-113-252.starry-inc.net) (Ping timeout: 256 seconds) |
2022-04-13 10:06:32 +0200 | abastro | (~abab9579@143.248.229.195) (Remote host closed the connection) |
2022-04-13 10:07:39 +0200 | Pickchea | (~private@user/pickchea) |
2022-04-13 10:15:07 +0200 | elkcl | (~elkcl@broadband-37-110-156-162.ip.moscow.rt.ru) (Ping timeout: 240 seconds) |
2022-04-13 10:16:01 +0200 | thiross | (~igloo@173.242.113.143.16clouds.com) |
2022-04-13 10:16:49 +0200 | abastro | (~abab9579@143.248.229.195) |
2022-04-13 10:17:21 +0200 | thiross | (~igloo@173.242.113.143.16clouds.com) (Remote host closed the connection) |
2022-04-13 10:19:47 +0200 | bgt32 | (~keutoi@223.182.17.205) (Ping timeout: 240 seconds) |
2022-04-13 10:20:24 +0200 | cosimone | (~user@93-47-228-79.ip115.fastwebnet.it) (Quit: ERC 5.4 (IRC client for GNU Emacs 28.1)) |
2022-04-13 10:20:45 +0200 | CiaoSen | (~Jura@p200300c9572d40002a3a4dfffe84dbd5.dip0.t-ipconnect.de) |
2022-04-13 10:22:11 +0200 | bgt32 | (~keutoi@223.182.21.148) |
2022-04-13 10:25:53 +0200 | ccntrq | (~Thunderbi@2a01:e34:eccb:b060:bc3e:467d:7ac2:fff6) |
2022-04-13 10:37:12 +0200 | Pickchea | (~private@user/pickchea) (Ping timeout: 248 seconds) |
2022-04-13 10:37:58 +0200 | InstX1_ | (~Liam@2601:6c4:4080:3f80:5940:980:e666:cc89) (Ping timeout: 250 seconds) |
2022-04-13 10:38:44 +0200 | jackson100 | (~bc8147f2@cerf.good1.com) |
2022-04-13 10:38:51 +0200 | fef | (~thedawn@user/thedawn) |
2022-04-13 10:38:57 +0200 | InstX1_ | (~Liam@2601:6c4:4080:3f80:19e5:15a0:708a:70c0) |
2022-04-13 10:38:58 +0200 | anomal | (~anomal@87.227.196.109) |
2022-04-13 10:41:28 +0200 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) (Ping timeout: 248 seconds) |
2022-04-13 10:43:05 +0200 | chenqisu1 | (~chenqisu1@183.217.200.38) (Remote host closed the connection) |
2022-04-13 10:43:13 +0200 | jackson99 | (~bc8147f2@cerf.good1.com) (Quit: CGI:IRC (Ping timeout)) |
2022-04-13 10:43:37 +0200 | _________ | (~nobody@user/noodly) (Ping timeout: 248 seconds) |
2022-04-13 10:44:13 +0200 | gurkenglas | (~gurkengla@dslb-178-012-018-212.178.012.pools.vodafone-ip.de) |
2022-04-13 10:45:43 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer) |
2022-04-13 10:46:02 +0200 | Vajb | (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) |
2022-04-13 10:46:37 +0200 | mattil | (~mattil@helsinki.portalify.com) (Read error: Connection reset by peer) |
2022-04-13 10:47:39 +0200 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) (Quit: Laa shay'a waqi'un moutlaq bale kouloun moumkine) |
2022-04-13 10:47:59 +0200 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) |
2022-04-13 10:50:28 +0200 | jackson100 | jackson99 |
2022-04-13 10:53:09 +0200 | ubert | (~Thunderbi@p200300ecdf1588a3ccf7a828925c2eab.dip0.t-ipconnect.de) |
2022-04-13 10:53:32 +0200 | dschrempf | (~dominik@92-249-159-213.pool.digikabel.hu) |
2022-04-13 10:55:25 +0200 | abastro | (~abab9579@143.248.229.195) (Remote host closed the connection) |
2022-04-13 10:57:04 +0200 | ubert1 | (~Thunderbi@p200300ecdf1588a34b361c912f36e7d5.dip0.t-ipconnect.de) |
2022-04-13 10:58:05 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
2022-04-13 11:02:40 +0200 | Pickchea | (~private@user/pickchea) |
2022-04-13 11:04:23 +0200 | fockerized | (~nut@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Quit: WeeChat 3.3) |
2022-04-13 11:05:20 +0200 | awpr | (uid446117@id-446117.lymington.irccloud.com) (Quit: Connection closed for inactivity) |
2022-04-13 11:21:00 +0200 | yauhsien | (~yauhsien@61-231-36-20.dynamic-ip.hinet.net) |
2022-04-13 11:24:28 +0200 | littlebobeep | (~alMalsamo@gateway/tor-sasl/almalsamo) |
2022-04-13 11:25:20 +0200 | dschrempf | (~dominik@92-249-159-213.pool.digikabel.hu) (Quit: WeeChat 3.4.1) |
2022-04-13 11:27:46 +0200 | jonathanx | (~jonathan@dyn-5-sc.cdg.chalmers.se) |
2022-04-13 11:32:39 +0200 | jstolarek | (~jstolarek@staticline-31-183-186-36.toya.net.pl) |
2022-04-13 11:32:45 +0200 | anomal | (~anomal@87.227.196.109) (Remote host closed the connection) |
2022-04-13 11:33:05 +0200 | anomal | (~anomal@87.227.196.109) |
2022-04-13 11:33:47 +0200 | deadmarshal_ | (~deadmarsh@95.38.117.55) |
2022-04-13 11:34:43 +0200 | jakalx | (~jakalx@base.jakalx.net) () |
2022-04-13 11:35:06 +0200 | <jstolarek> | how do I force recompilation of a project without rebuilding dependencies using cabal? |
2022-04-13 11:38:12 +0200 | king_gs | (~Thunderbi@2806:103e:29:1de5:8bc8:f08f:4d70:424) (Ping timeout: 250 seconds) |
2022-04-13 11:40:30 +0200 | frost | (~frost@user/frost) (Quit: Client closed) |
2022-04-13 11:41:11 +0200 | robosexual1 | (~robosexua@77.223.90.202) |
2022-04-13 11:43:31 +0200 | jgeerds | (~jgeerds@d5364b87.access.ecotel.net) (Remote host closed the connection) |
2022-04-13 11:43:48 +0200 | jgeerds | (~jgeerds@d5364b87.access.ecotel.net) |
2022-04-13 11:44:58 +0200 | anomal | (~anomal@87.227.196.109) (Remote host closed the connection) |
2022-04-13 11:45:17 +0200 | frost | (~frost@user/frost) |
2022-04-13 11:45:33 +0200 | jakalx | (~jakalx@base.jakalx.net) |
2022-04-13 11:45:51 +0200 | coot | (~coot@213.134.190.95) |
2022-04-13 11:51:25 +0200 | ub | (~Thunderbi@p548c8d44.dip0.t-ipconnect.de) |
2022-04-13 11:51:51 +0200 | ubert | (~Thunderbi@p200300ecdf1588a3ccf7a828925c2eab.dip0.t-ipconnect.de) (Ping timeout: 260 seconds) |
2022-04-13 11:51:52 +0200 | ub | ubert |
2022-04-13 11:51:52 +0200 | ubert | 080AAA3P4 |
2022-04-13 11:51:52 +0200 | ubert1 | ubert |
2022-04-13 11:57:27 +0200 | xff0x | (~xff0x@125x102x200x106.ap125.ftth.ucom.ne.jp) (Ping timeout: 260 seconds) |
2022-04-13 11:58:14 +0200 | mattil | (~mattil@helsinki.portalify.com) |
2022-04-13 11:58:48 +0200 | gurkenglas | (~gurkengla@dslb-178-012-018-212.178.012.pools.vodafone-ip.de) (Ping timeout: 248 seconds) |
2022-04-13 11:58:48 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
2022-04-13 11:59:13 +0200 | akegalj | (~akegalj@93-138-88-178.adsl.net.t-com.hr) (Quit: leaving) |
2022-04-13 11:59:34 +0200 | abastro | (~abab9579@143.248.229.195) |
2022-04-13 12:01:03 +0200 | deadmarshal_ | (~deadmarsh@95.38.117.55) (Ping timeout: 246 seconds) |
2022-04-13 12:02:15 +0200 | seydar | (~seydar@154-27-113-252.starry-inc.net) |
2022-04-13 12:03:19 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 256 seconds) |
2022-04-13 12:03:35 +0200 | Natch | (~natch@c-67bae255.014-297-73746f25.bbcust.telenor.se) (Remote host closed the connection) |
2022-04-13 12:06:31 +0200 | <tomsmeding> | jstolarek: `cabal clean` first, or `rm -r dist-newstyle`? |
2022-04-13 12:07:10 +0200 | <tomsmeding> | that shouldn't rebuild dependencies, unless you mean git repo dependencies in a cabal.project |
2022-04-13 12:07:41 +0200 | econo | (uid147250@user/econo) (Quit: Connection closed for inactivity) |
2022-04-13 12:07:48 +0200 | <tomsmeding> | (source-repository-package that is, forgot the keyword) |
2022-04-13 12:08:58 +0200 | Natch | (~natch@c-67bae255.014-297-73746f25.bbcust.telenor.se) |
2022-04-13 12:09:26 +0200 | <jstolarek> | yes, I mean git-repo dependencies that take like 30-40 minutes to rebui;d |
2022-04-13 12:10:07 +0200 | seydar | (~seydar@154-27-113-252.starry-inc.net) (Ping timeout: 256 seconds) |
2022-04-13 12:10:18 +0200 | <jstolarek> | for now I'm just using `find src -name "*.hs" | xargs touch` but I thought there's probably a better way |
2022-04-13 12:10:36 +0200 | CiaoSen | (~Jura@p200300c9572d40002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Ping timeout: 240 seconds) |
2022-04-13 12:10:41 +0200 | merijn | (~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) (Ping timeout: 256 seconds) |
2022-04-13 12:10:42 +0200 | redb | (~nmh@136.49.49.211) (Ping timeout: 250 seconds) |
2022-04-13 12:10:57 +0200 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija))) |
2022-04-13 12:10:57 +0200 | finn_elija | (~finn_elij@user/finn-elija/x-0085643) |
2022-04-13 12:10:57 +0200 | finn_elija | FinnElija |
2022-04-13 12:13:51 +0200 | epolanski | (uid312403@id-312403.helmsley.irccloud.com) |
2022-04-13 12:14:16 +0200 | acidjnk_new | (~acidjnk@p200300d0c722df650d0cc85cc0f432cb.dip0.t-ipconnect.de) (Ping timeout: 248 seconds) |
2022-04-13 12:15:34 +0200 | seydar | (~seydar@154-27-113-252.starry-inc.net) |
2022-04-13 12:16:24 +0200 | odnes | (~odnes@5-203-221-3.pat.nym.cosmote.net) (Ping timeout: 248 seconds) |
2022-04-13 12:16:27 +0200 | Pickchea | (~private@user/pickchea) (Ping timeout: 240 seconds) |
2022-04-13 12:20:14 +0200 | seydar | (~seydar@154-27-113-252.starry-inc.net) (Ping timeout: 250 seconds) |
2022-04-13 12:20:31 +0200 | coot | (~coot@213.134.190.95) (Quit: coot) |
2022-04-13 12:22:04 +0200 | zmt01 | (~zmt00@user/zmt00) |
2022-04-13 12:22:50 +0200 | zmt00 | (~zmt00@user/zmt00) (Ping timeout: 250 seconds) |
2022-04-13 12:23:13 +0200 | odnes | (~odnes@5-203-221-3.pat.nym.cosmote.net) |
2022-04-13 12:25:44 +0200 | seydar | (~seydar@154-27-113-252.starry-inc.net) |
2022-04-13 12:26:34 +0200 | yauhsien | (~yauhsien@61-231-36-20.dynamic-ip.hinet.net) (Remote host closed the connection) |
2022-04-13 12:27:35 +0200 | yauhsien | (~yauhsien@61-231-36-20.dynamic-ip.hinet.net) |
2022-04-13 12:27:44 +0200 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija))) |
2022-04-13 12:27:45 +0200 | finn_elija | (~finn_elij@user/finn-elija/x-0085643) |
2022-04-13 12:27:45 +0200 | finn_elija | FinnElija |
2022-04-13 12:29:08 +0200 | xff0x | (~xff0x@i121-117-52-147.s41.a013.ap.plala.or.jp) |
2022-04-13 12:30:16 +0200 | seydar | (~seydar@154-27-113-252.starry-inc.net) (Ping timeout: 248 seconds) |
2022-04-13 12:31:47 +0200 | yauhsien | (~yauhsien@61-231-36-20.dynamic-ip.hinet.net) (Ping timeout: 240 seconds) |
2022-04-13 12:33:26 +0200 | coot | (~coot@213.134.190.95) |
2022-04-13 12:35:53 +0200 | seydar | (~seydar@154-27-113-252.starry-inc.net) |
2022-04-13 12:37:00 +0200 | gehmehgeh_ | (~user@user/gehmehgeh) |
2022-04-13 12:38:15 +0200 | gehmehgeh | (~user@user/gehmehgeh) (Ping timeout: 240 seconds) |
2022-04-13 12:39:10 +0200 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) |
2022-04-13 12:40:32 +0200 | redb | (~nmh@136.49.49.211) |
2022-04-13 12:40:43 +0200 | seydar | (~seydar@154-27-113-252.starry-inc.net) (Ping timeout: 256 seconds) |
2022-04-13 12:42:15 +0200 | jpds | (~jpds@gateway/tor-sasl/jpds) (Ping timeout: 240 seconds) |
2022-04-13 12:43:38 +0200 | Maxdamantus | (~Maxdamant@user/maxdamantus) (Ping timeout: 272 seconds) |
2022-04-13 12:43:55 +0200 | Maxdamantus | (~Maxdamant@user/maxdamantus) |
2022-04-13 12:44:22 +0200 | jpds | (~jpds@gateway/tor-sasl/jpds) |
2022-04-13 12:44:40 +0200 | redb | (~nmh@136.49.49.211) (Ping timeout: 248 seconds) |
2022-04-13 12:45:05 +0200 | Pickchea | (~private@user/pickchea) |
2022-04-13 12:45:17 +0200 | Guest|66 | (~Guest|66@87.247.98.234) |
2022-04-13 12:46:03 +0200 | seydar | (~seydar@154-27-113-252.starry-inc.net) |
2022-04-13 12:46:44 +0200 | Guest|66 | (~Guest|66@87.247.98.234) (Client Quit) |
2022-04-13 12:49:17 +0200 | mattil | (~mattil@helsinki.portalify.com) (Remote host closed the connection) |
2022-04-13 12:50:07 +0200 | abastro | (~abab9579@143.248.229.195) (Ping timeout: 240 seconds) |
2022-04-13 12:50:32 +0200 | seydar | (~seydar@154-27-113-252.starry-inc.net) (Ping timeout: 248 seconds) |
2022-04-13 12:53:02 +0200 | elkcl | (~elkcl@broadband-37-110-156-162.ip.moscow.rt.ru) |
2022-04-13 12:53:05 +0200 | jstolarek | (~jstolarek@staticline-31-183-186-36.toya.net.pl) (Quit: leaving) |
2022-04-13 12:54:00 +0200 | abastro | (~abab9579@192.249.26.196) |
2022-04-13 12:55:52 +0200 | InstX1_ | (~Liam@2601:6c4:4080:3f80:19e5:15a0:708a:70c0) (Ping timeout: 248 seconds) |
2022-04-13 12:59:40 +0200 | redb | (~nmh@136.49.49.211) |
2022-04-13 12:59:47 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
2022-04-13 13:01:38 +0200 | mattil | (~mattil@helsinki.portalify.com) |
2022-04-13 13:04:00 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 250 seconds) |
2022-04-13 13:04:00 +0200 | Pickchea | (~private@user/pickchea) (Ping timeout: 250 seconds) |
2022-04-13 13:04:35 +0200 | <shapr> | Axman6: that's a good point, I thought the writing might be a bit thin |
2022-04-13 13:05:05 +0200 | redb | (~nmh@136.49.49.211) (Ping timeout: 256 seconds) |
2022-04-13 13:05:11 +0200 | <shapr> | I'll expand on the intro paragraph |
2022-04-13 13:05:13 +0200 | jabra | (~jabra11@p200300f76f02d600e2d55efffe270715.dip0.t-ipconnect.de) |
2022-04-13 13:10:50 +0200 | Inst | (~Liam@c-98-208-218-119.hsd1.fl.comcast.net) |
2022-04-13 13:11:02 +0200 | redb | (~nmh@136.49.49.211) |
2022-04-13 13:11:19 +0200 | elkcl | (~elkcl@broadband-37-110-156-162.ip.moscow.rt.ru) (Ping timeout: 256 seconds) |
2022-04-13 13:11:57 +0200 | swistak | (~swistak@185.21.216.141) (Ping timeout: 252 seconds) |
2022-04-13 13:14:49 +0200 | gurkenglas | (~gurkengla@dslb-178-012-018-212.178.012.pools.vodafone-ip.de) |
2022-04-13 13:16:10 +0200 | CiaoSen | (~Jura@p200300c9572d40002a3a4dfffe84dbd5.dip0.t-ipconnect.de) |
2022-04-13 13:16:34 +0200 | z0k | (~z0k@39.40.107.216) (Ping timeout: 250 seconds) |
2022-04-13 13:17:12 +0200 | redb | (~nmh@136.49.49.211) (Ping timeout: 272 seconds) |
2022-04-13 13:19:40 +0200 | cosimone | (~user@2001:b07:ae5:db26:c24a:d20:4d91:1e20) |
2022-04-13 13:22:07 +0200 | Inst | (~Liam@c-98-208-218-119.hsd1.fl.comcast.net) (Ping timeout: 240 seconds) |
2022-04-13 13:22:38 +0200 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) (Ping timeout: 250 seconds) |
2022-04-13 13:25:15 +0200 | merijn | (~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) |
2022-04-13 13:25:38 +0200 | jabra | (~jabra11@p200300f76f02d600e2d55efffe270715.dip0.t-ipconnect.de) (Quit: WeeChat 3.5) |
2022-04-13 13:26:34 +0200 | cosimone | (~user@2001:b07:ae5:db26:c24a:d20:4d91:1e20) (Quit: ERC 5.4 (IRC client for GNU Emacs 28.1)) |
2022-04-13 13:29:44 +0200 | thiross | (~thiross@173.242.113.143.16clouds.com) |
2022-04-13 13:30:21 +0200 | joo-_ | (~joo-_@fsf/member/joo--) (Quit: Lost terminal) |
2022-04-13 13:32:56 +0200 | Pickchea | (~private@user/pickchea) |
2022-04-13 13:35:38 +0200 | mc47 | (~mc47@xmonad/TheMC47) |
2022-04-13 13:37:01 +0200 | redb | (~nmh@136.49.49.211) |
2022-04-13 13:38:25 +0200 | fef | (~thedawn@user/thedawn) (Quit: Leaving) |
2022-04-13 13:39:42 +0200 | odnes | (~odnes@5-203-221-3.pat.nym.cosmote.net) (Quit: Leaving) |
2022-04-13 13:41:09 +0200 | swistak | (~swistak@185.21.216.141) |
2022-04-13 13:41:12 +0200 | joo-_ | (~joo-_@80-62-116-147-mobile.dk.customer.tdc.net) |
2022-04-13 13:41:12 +0200 | joo-_ | (~joo-_@80-62-116-147-mobile.dk.customer.tdc.net) (Changing host) |
2022-04-13 13:41:12 +0200 | joo-_ | (~joo-_@fsf/member/joo--) |
2022-04-13 13:42:07 +0200 | redb | (~nmh@136.49.49.211) (Ping timeout: 240 seconds) |
2022-04-13 13:43:04 +0200 | redb | (~nmh@136.49.49.211) |
2022-04-13 13:44:21 +0200 | joo-_ | (~joo-_@fsf/member/joo--) (Client Quit) |
2022-04-13 13:44:44 +0200 | joo-_ | (~joo-_@80-62-116-147-mobile.dk.customer.tdc.net) |
2022-04-13 13:44:44 +0200 | joo-_ | (~joo-_@80-62-116-147-mobile.dk.customer.tdc.net) (Changing host) |
2022-04-13 13:44:44 +0200 | joo-_ | (~joo-_@fsf/member/joo--) |
2022-04-13 13:48:56 +0200 | raehik1 | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
2022-04-13 13:48:56 +0200 | mattil | (~mattil@helsinki.portalify.com) (Read error: Connection reset by peer) |
2022-04-13 13:49:30 +0200 | bgt32 | (~keutoi@223.182.21.148) (Ping timeout: 272 seconds) |
2022-04-13 13:51:19 +0200 | thiross | (~thiross@173.242.113.143.16clouds.com) (Quit: Client closed) |
2022-04-13 13:51:47 +0200 | thiross | (~thiross@183.156.113.134) |
2022-04-13 13:51:55 +0200 | akegalj | (~akegalj@95.168.118.21) |
2022-04-13 13:53:19 +0200 | seydar | (~seydar@154-27-113-252.starry-inc.net) |
2022-04-13 13:53:19 +0200 | seydar | (~seydar@154-27-113-252.starry-inc.net) (Client Quit) |
2022-04-13 13:53:29 +0200 | yauhsien | (~yauhsien@61-231-36-20.dynamic-ip.hinet.net) |
2022-04-13 13:54:23 +0200 | merijn | (~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) (Ping timeout: 256 seconds) |
2022-04-13 13:59:34 +0200 | anomal | (~anomal@87.227.196.109) |
2022-04-13 14:00:28 +0200 | anomal | (~anomal@87.227.196.109) (Remote host closed the connection) |
2022-04-13 14:01:44 +0200 | <thiross> | @type map |
2022-04-13 14:01:46 +0200 | <lambdabot> | (a -> b) -> [a] -> [b] |
2022-04-13 14:04:49 +0200 | akegalj | (~akegalj@95.168.118.21) (Quit: leaving) |
2022-04-13 14:04:53 +0200 | thiross | (~thiross@183.156.113.134) (Quit: Client closed) |
2022-04-13 14:06:00 +0200 | frost | (~frost@user/frost) (Quit: Client closed) |
2022-04-13 14:06:20 +0200 | <cdman> | is there anyone use gedit? |
2022-04-13 14:07:24 +0200 | Pickchea | (~private@user/pickchea) (Quit: Leaving) |
2022-04-13 14:12:34 +0200 | <geekosaur> | I used to, but it's too heavy for little things and too underpowered for serious editing IMO |
2022-04-13 14:15:03 +0200 | z0k | (~z0k@39.40.107.216) |
2022-04-13 14:15:49 +0200 | yauhsien | (~yauhsien@61-231-36-20.dynamic-ip.hinet.net) (Remote host closed the connection) |
2022-04-13 14:18:02 +0200 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) (Quit: = "") |
2022-04-13 14:18:58 +0200 | gehmehgeh_ | gehmehgeh |
2022-04-13 14:22:09 +0200 | redb | (~nmh@136.49.49.211) (Ping timeout: 256 seconds) |
2022-04-13 14:24:12 +0200 | thiross | (~user@183.156.113.134) |
2022-04-13 14:33:58 +0200 | <albet70> | except zipWith, is there other "fmap" can apply a binary function on two list? |
2022-04-13 14:34:19 +0200 | thiross | (~user@183.156.113.134) (ERC (IRC client for Emacs 27.1)) |
2022-04-13 14:34:22 +0200 | <albet70> | ap? |
2022-04-13 14:35:26 +0200 | z0k | (~z0k@39.40.107.216) (Ping timeout: 250 seconds) |
2022-04-13 14:39:29 +0200 | <abastro> | <del>zipWithM</del> |
2022-04-13 14:43:14 +0200 | <Zemyla> | zipWith and ap encompass the two ways of combining two lists of different types. |
2022-04-13 14:43:30 +0200 | elkcl | (~elkcl@broadband-37-110-156-162.ip.moscow.rt.ru) |
2022-04-13 14:43:37 +0200 | wroathe | (~wroathe@206-55-188-8.fttp.usinternet.com) |
2022-04-13 14:43:37 +0200 | wroathe | (~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host) |
2022-04-13 14:43:37 +0200 | wroathe | (~wroathe@user/wroathe) |
2022-04-13 14:44:24 +0200 | <geekosaur> | what are you actually trying to do? there might be a better way to approach it |
2022-04-13 14:44:41 +0200 | deadmarshal_ | (~deadmarsh@95.38.117.55) |
2022-04-13 14:46:04 +0200 | pavonia | (~user@user/siracusa) (Quit: Bye!) |
2022-04-13 14:46:29 +0200 | mc47 | (~mc47@xmonad/TheMC47) (Remote host closed the connection) |
2022-04-13 14:46:49 +0200 | mc47 | (~mc47@xmonad/TheMC47) |
2022-04-13 14:47:02 +0200 | mc47 | (~mc47@xmonad/TheMC47) (Client Quit) |
2022-04-13 14:49:03 +0200 | deadmarshal_ | (~deadmarsh@95.38.117.55) (Ping timeout: 246 seconds) |
2022-04-13 14:50:49 +0200 | robosexual1 | (~robosexua@77.223.90.202) (Quit: WeeChat 3.4) |
2022-04-13 14:51:17 +0200 | redb | (~nmh@136.49.49.211) |
2022-04-13 14:53:26 +0200 | <albet70> | get a new list from a list, with the next element minus the previous one |
2022-04-13 14:53:59 +0200 | <albet70> | zipWith (-) (tail a) $ a |
2022-04-13 14:56:00 +0200 | redb | (~nmh@136.49.49.211) (Ping timeout: 272 seconds) |
2022-04-13 14:57:31 +0200 | <abastro> | Looks fine to me |
2022-04-13 14:57:38 +0200 | z0k | (~z0k@39.40.62.192) |
2022-04-13 14:59:02 +0200 | <geekosaur> | aside from the $ being unnecessary and what happens if the list doesn't have at least two elements |
2022-04-13 14:59:26 +0200 | <geekosaur> | hm |
2022-04-13 14:59:30 +0200 | <geekosaur> | > tail [] |
2022-04-13 14:59:31 +0200 | <lambdabot> | *Exception: Prelude.tail: empty list |
2022-04-13 14:59:54 +0200 | <geekosaur> | one element is probably okay, the zipWith will just produce [] |
2022-04-13 15:00:17 +0200 | deadmarshal_ | (~deadmarsh@95.38.117.55) |
2022-04-13 15:00:18 +0200 | <albet70> | I just wonder if this can be done with ap? |
2022-04-13 15:00:58 +0200 | <geekosaur> | ap aka <*> is something different |
2022-04-13 15:01:06 +0200 | zaquest | (~notzaques@5.130.79.72) (Remote host closed the connection) |
2022-04-13 15:01:51 +0200 | <abastro> | Yea, empty case would be different |
2022-04-13 15:01:56 +0200 | <abastro> | :t ap |
2022-04-13 15:01:57 +0200 | <lambdabot> | Monad m => m (a -> b) -> m a -> m b |
2022-04-13 15:02:13 +0200 | <abastro> | Oh, so ap is what you call <*> |
2022-04-13 15:02:24 +0200 | <albet70> | > ap zip tail $ [0..90] |
2022-04-13 15:02:25 +0200 | <lambdabot> | [(0,1),(1,2),(2,3),(3,4),(4,5),(5,6),(6,7),(7,8),(8,9),(9,10),(10,11),(11,12... |
2022-04-13 15:03:18 +0200 | <albet70> | :t zip |
2022-04-13 15:03:19 +0200 | <geekosaur> | well, it's a historical thing |
2022-04-13 15:03:19 +0200 | <lambdabot> | [a] -> [b] -> [(a, b)] |
2022-04-13 15:03:30 +0200 | <geekosaur> | Applicative is still fairly "new" as Haskell goes |
2022-04-13 15:03:45 +0200 | <geekosaur> | so we spelled <$> `liftM` and <*> `ap` |
2022-04-13 15:04:30 +0200 | Flow | (~none@gentoo/developer/flow) |
2022-04-13 15:04:37 +0200 | <geekosaur> | and there are still a lot of programs that retrofitted Applicative instances by doing `instance Applicative Foo where <*> = ap` because every Monad is an Applicative |
2022-04-13 15:05:05 +0200 | <geekosaur> | so `ap` has to remain as it is |
2022-04-13 15:05:29 +0200 | <albet70> | a little confused here, tail [0..90] will get [1..90] and what ap zip [1..90] do? zip need two list |
2022-04-13 15:06:02 +0200 | <geekosaur> | :t ap zip tail |
2022-04-13 15:06:04 +0200 | <lambdabot> | [a] -> [(a, a)] |
2022-04-13 15:06:10 +0200 | <geekosaur> | :t ap zip |
2022-04-13 15:06:11 +0200 | <lambdabot> | ([a] -> [b]) -> [a] -> [(a, b)] |
2022-04-13 15:06:47 +0200 | <geekosaur> | bleh, that was less than helpful |
2022-04-13 15:06:50 +0200 | <geekosaur> | :t ap |
2022-04-13 15:06:51 +0200 | <lambdabot> | Monad m => m (a -> b) -> m a -> m b |
2022-04-13 15:08:26 +0200 | jgeerds | (~jgeerds@d5364b87.access.ecotel.net) (Remote host closed the connection) |
2022-04-13 15:09:04 +0200 | yauhsien | (~yauhsien@61-231-36-20.dynamic-ip.hinet.net) |
2022-04-13 15:10:09 +0200 | <geekosaur> | % :t ap @[] |
2022-04-13 15:10:09 +0200 | <yahb> | geekosaur: [a -> b] -> [a] -> [b] |
2022-04-13 15:10:11 +0200 | jgeerds | (~jgeerds@d5364b87.access.ecotel.net) |
2022-04-13 15:10:18 +0200 | <abastro> | I wonder.. |
2022-04-13 15:10:19 +0200 | <geekosaur> | wrong one, sorry |
2022-04-13 15:10:28 +0200 | <abastro> | % :t ap @((->) _) |
2022-04-13 15:10:28 +0200 | <yahb> | abastro: (w -> (a -> b)) -> (w -> a) -> w -> b |
2022-04-13 15:10:39 +0200 | <abastro> | % :t ap zip |
2022-04-13 15:10:39 +0200 | <yahb> | abastro: ([a] -> [b]) -> [a] -> [(a, b)] |
2022-04-13 15:10:45 +0200 | <abastro> | Oh Interesting |
2022-04-13 15:11:09 +0200 | <abastro> | % :t ap zip tail |
2022-04-13 15:11:09 +0200 | <yahb> | abastro: [a] -> [(a, a)] |
2022-04-13 15:11:23 +0200 | <abastro> | Now this is point-free style right |
2022-04-13 15:12:10 +0200 | zaquest | (~notzaques@5.130.79.72) |
2022-04-13 15:12:17 +0200 | frost | (~frost@user/frost) |
2022-04-13 15:12:55 +0200 | acidjnk_new | (~acidjnk@p200300d0c722df65bc11ed8127f1571b.dip0.t-ipconnect.de) |
2022-04-13 15:13:07 +0200 | <geekosaur> | @quote ap.zip |
2022-04-13 15:13:07 +0200 | <lambdabot> | No quotes match. You untyped fool! |
2022-04-13 15:13:12 +0200 | <geekosaur> | oh |
2022-04-13 15:13:18 +0200 | <geekosaur> | @quote zip.ap |
2022-04-13 15:13:18 +0200 | <lambdabot> | quicksilver says: zip`ap`tail - the Aztec god of consecutive numbers |
2022-04-13 15:13:37 +0200 | <geekosaur> | not that that helps either :) |
2022-04-13 15:14:06 +0200 | <geekosaur> | anyway I get lost around here, I still haven't quite figured all of Applicative. need to sit down at some point and work out what's going on |
2022-04-13 15:14:18 +0200 | <albet70> | more confused |
2022-04-13 15:14:18 +0200 | <geekosaur> | but ap / <*> is not quite fmap |
2022-04-13 15:14:51 +0200 | wroathe | (~wroathe@user/wroathe) (Ping timeout: 256 seconds) |
2022-04-13 15:14:58 +0200 | <albet70> | :t ap zip tail |
2022-04-13 15:14:59 +0200 | <lambdabot> | [a] -> [(a, a)] |
2022-04-13 15:15:27 +0200 | <abastro> | geekosaur well if you say that you are lost.. what about us :/ |
2022-04-13 15:17:31 +0200 | <geekosaur> | I told you I'm far fromexpert |
2022-04-13 15:17:56 +0200 | <geekosaur> | doesn't help that Applicative came in while I was all but offline |
2022-04-13 15:18:17 +0200 | <albet70> | f xs = zip xs (tail xs) |
2022-04-13 15:18:33 +0200 | <albet70> | f = ap zip tail |
2022-04-13 15:19:57 +0200 | <geekosaur> | that is more or less the ap "pattern" |
2022-04-13 15:20:02 +0200 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) |
2022-04-13 15:20:04 +0200 | deadmarshal_ | (~deadmarsh@95.38.117.55) (Ping timeout: 272 seconds) |
2022-04-13 15:21:39 +0200 | gurkenglas | (~gurkengla@dslb-178-012-018-212.178.012.pools.vodafone-ip.de) (Ping timeout: 256 seconds) |
2022-04-13 15:23:19 +0200 | redb | (~nmh@136.49.49.211) |
2022-04-13 15:24:46 +0200 | <albet70> | when m~ (->) e is always weird |
2022-04-13 15:25:19 +0200 | jgeerds | (~jgeerds@d5364b87.access.ecotel.net) (Remote host closed the connection) |
2022-04-13 15:26:57 +0200 | <albet70> | : t zip (>>=) tail |
2022-04-13 15:27:27 +0200 | redb | (~nmh@136.49.49.211) (Ping timeout: 240 seconds) |
2022-04-13 15:27:31 +0200 | <albet70> | :t zip (>>=) tail |
2022-04-13 15:27:32 +0200 | <lambdabot> | error: |
2022-04-13 15:27:32 +0200 | <lambdabot> | • Couldn't match expected type ‘[a]’ |
2022-04-13 15:27:32 +0200 | <lambdabot> | with actual type ‘m0 a0 -> (a0 -> m0 b0) -> m0 b0’ |
2022-04-13 15:28:26 +0200 | jgeerds | (~jgeerds@d5364b87.access.ecotel.net) |
2022-04-13 15:29:11 +0200 | zeenk | (~zeenk@2a02:2f04:a313:d600:8d26:ec9f:3ff6:fc94) |
2022-04-13 15:31:29 +0200 | <abastro> | You mean this? |
2022-04-13 15:31:32 +0200 | <abastro> | :t zip >>= tail |
2022-04-13 15:31:33 +0200 | <lambdabot> | error: |
2022-04-13 15:31:33 +0200 | <lambdabot> | • Couldn't match expected type ‘[[b]]’ |
2022-04-13 15:31:33 +0200 | <lambdabot> | with actual type ‘[a0] -> [b0] -> [(a0, b0)]’ |
2022-04-13 15:31:59 +0200 | <abastro> | Still not working hm |
2022-04-13 15:32:59 +0200 | kaph | (~kaph@dynamic-adsl-78-12-162-98.clienti.tiscali.it) (Ping timeout: 256 seconds) |
2022-04-13 15:35:44 +0200 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) |
2022-04-13 15:37:07 +0200 | coot | (~coot@213.134.190.95) (Quit: coot) |
2022-04-13 15:40:23 +0200 | bliminse | (~bliminse@host86-185-253-73.range86-185.btcentralplus.com) (Quit: leaving) |
2022-04-13 15:43:26 +0200 | geekosaur | (~geekosaur@xmonad/geekosaur) (Remote host closed the connection) |
2022-04-13 15:45:06 +0200 | geekosaur | (~geekosaur@xmonad/geekosaur) |
2022-04-13 15:47:24 +0200 | Inst | (~Liam@c-98-208-218-119.hsd1.fl.comcast.net) |
2022-04-13 15:47:32 +0200 | jao | (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) |
2022-04-13 15:50:09 +0200 | <Zemyla> | @let import Data.Profunctor.Mapping -- int-e |
2022-04-13 15:50:11 +0200 | <lambdabot> | <no location info>: error: |
2022-04-13 15:50:11 +0200 | <lambdabot> | The package (distributive-0.6.2) is required to be trusted but it isn't! |
2022-04-13 15:51:21 +0200 | cfricke | (~cfricke@user/cfricke) (Read error: Connection reset by peer) |
2022-04-13 15:53:08 +0200 | merijn | (~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) |
2022-04-13 15:54:10 +0200 | redb | (~nmh@136.49.49.211) |
2022-04-13 15:54:13 +0200 | Everything | (~Everythin@37.115.210.35) |
2022-04-13 15:58:21 +0200 | redb | (~nmh@136.49.49.211) (Ping timeout: 246 seconds) |
2022-04-13 16:02:48 +0200 | frost | (~frost@user/frost) (Quit: Client closed) |
2022-04-13 16:03:46 +0200 | Sgeo | (~Sgeo@user/sgeo) |
2022-04-13 16:04:22 +0200 | bliminse | (~bliminse@host86-185-253-73.range86-185.btcentralplus.com) |
2022-04-13 16:06:03 +0200 | justsomeguy | (~justsomeg@user/justsomeguy) |
2022-04-13 16:07:33 +0200 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) (Ping timeout: 256 seconds) |
2022-04-13 16:08:08 +0200 | cfricke | (~cfricke@user/cfricke) |
2022-04-13 16:11:12 +0200 | redb | (~nmh@136.49.49.211) |
2022-04-13 16:11:20 +0200 | d34df00d | (~d34df00d@2600:1700:8c60:3a10::46) (Remote host closed the connection) |
2022-04-13 16:13:13 +0200 | notzmv | (~zmv@user/notzmv) (Ping timeout: 248 seconds) |
2022-04-13 16:13:43 +0200 | deadmarshal_ | (~deadmarsh@95.38.117.55) |
2022-04-13 16:15:48 +0200 | redb | (~nmh@136.49.49.211) (Ping timeout: 272 seconds) |
2022-04-13 16:16:28 +0200 | <abastro> | When doing haskell is quite fun, so I cannot be hired doing haskell :P |
2022-04-13 16:18:08 +0200 | deadmarshal_ | (~deadmarsh@95.38.117.55) (Ping timeout: 250 seconds) |
2022-04-13 16:19:26 +0200 | lambdabot | (~lambdabot@haskell/bot/lambdabot) (Quit: meh) |
2022-04-13 16:19:34 +0200 | lambdabot | (~lambdabot@silicon.int-e.eu) |
2022-04-13 16:19:35 +0200 | lambdabot | (~lambdabot@silicon.int-e.eu) (Changing host) |
2022-04-13 16:19:35 +0200 | lambdabot | (~lambdabot@haskell/bot/lambdabot) |
2022-04-13 16:20:01 +0200 | m1dnight | (~christoph@78-22-9-5.access.telenet.be) (Quit: WeeChat 3.5) |
2022-04-13 16:20:03 +0200 | <int-e> | @let import Data.Profunctor.Mapping |
2022-04-13 16:20:10 +0200 | <lambdabot> | Defined. |
2022-04-13 16:21:08 +0200 | <int-e> | (all this because import Data.Coerce <-- this module isn't trusted) |
2022-04-13 16:21:24 +0200 | m1dnight | (~christoph@78-22-9-5.access.telenet.be) |
2022-04-13 16:22:42 +0200 | hpc | (~juzz@ip98-169-35-13.dc.dc.cox.net) (Ping timeout: 260 seconds) |
2022-04-13 16:23:38 +0200 | <abastro> | Not trusted for a reason right? |
2022-04-13 16:24:23 +0200 | hpc | (~juzz@ip98-169-35-13.dc.dc.cox.net) |
2022-04-13 16:25:09 +0200 | <geekosaur> | actually Data.Coerce should be fine |
2022-04-13 16:25:18 +0200 | merijn | (~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) (Ping timeout: 246 seconds) |
2022-04-13 16:25:20 +0200 | <int-e> | geekosaur: I know. |
2022-04-13 16:25:28 +0200 | <geekosaur> | it uses unsafeCoerce under the hood, but the typechecker ensures it's always safe |
2022-04-13 16:25:39 +0200 | <geekosaur> | right, I meant abastro |
2022-04-13 16:26:43 +0200 | hololeap | (~hololeap@user/hololeap) (Remote host closed the connection) |
2022-04-13 16:26:59 +0200 | ph88 | (~ph88@ip5f5af71f.dynamic.kabel-deutschland.de) |
2022-04-13 16:27:34 +0200 | <abastro> | I heard that newtype could still be problematic |
2022-04-13 16:27:43 +0200 | <int-e> | Well it's baked into the Core language, and then gets erased (just like unsafeCoerce) when going to Stg, I think. |
2022-04-13 16:27:49 +0200 | <abastro> | Somewhere I heard that GeneralizedNewtypeDeriving was deemed unsafe at least |
2022-04-13 16:27:59 +0200 | <geekosaur> | that was why Coercible exists |
2022-04-13 16:28:00 +0200 | <abastro> | I guess `coerce` would have similar reason |
2022-04-13 16:28:02 +0200 | <int-e> | GND is *much* safer these days |
2022-04-13 16:28:03 +0200 | hololeap | (~hololeap@user/hololeap) |
2022-04-13 16:28:04 +0200 | <geekosaur> | go look at type roles |
2022-04-13 16:28:42 +0200 | <abastro> | Oh, I guess it deemed unsafe was legacy then |
2022-04-13 16:28:57 +0200 | <geekosaur> | yes. type roles fixed GND |
2022-04-13 16:29:00 +0200 | <albet70> | why tail >>= tail is wrong? |
2022-04-13 16:29:06 +0200 | cfricke | (~cfricke@user/cfricke) (Ping timeout: 272 seconds) |
2022-04-13 16:29:13 +0200 | <abastro> | Ohh, I see |
2022-04-13 16:29:28 +0200 | <int-e> | Yes, it used to be totally unsafe because it blindly applied unsafeCoerce under the hood. Now it blindly applies coerce under the hood and benefits from the safety guarantees that comes with. |
2022-04-13 16:29:30 +0200 | <abastro> | What do you expect `tail >>= tail` to do? |
2022-04-13 16:29:35 +0200 | <albet70> | >>= g f = \x -> f (g x) |
2022-04-13 16:29:41 +0200 | <abastro> | Unless you mean `tail >=> tail` |
2022-04-13 16:29:59 +0200 | <int-e> | :t tail >>= tail |
2022-04-13 16:30:01 +0200 | <lambdabot> | error: |
2022-04-13 16:30:01 +0200 | <lambdabot> | • Couldn't match expected type ‘[[b]]’ |
2022-04-13 16:30:01 +0200 | <lambdabot> | with actual type ‘[a0] -> [a0]’ |
2022-04-13 16:30:26 +0200 | abastro | (~abab9579@192.249.26.196) (Remote host closed the connection) |
2022-04-13 16:30:29 +0200 | <albet70> | g is an unary function, f is a binary function |
2022-04-13 16:30:33 +0200 | <int-e> | :t tail >=> tail |
2022-04-13 16:30:35 +0200 | <lambdabot> | [[c]] -> [c] |
2022-04-13 16:30:38 +0200 | <int-e> | :t tail . tail |
2022-04-13 16:30:40 +0200 | <lambdabot> | [a] -> [a] |
2022-04-13 16:31:08 +0200 | <int-e> | (the last one seems most likely, really) |
2022-04-13 16:32:21 +0200 | Everything | (~Everythin@37.115.210.35) (Quit: leaving) |
2022-04-13 16:32:31 +0200 | lagash | (lagash@lagash.shelltalk.net) (Remote host closed the connection) |
2022-04-13 16:32:44 +0200 | <albet70> | tail >=> tail that limit m to [] |
2022-04-13 16:33:43 +0200 | <abastro[m]> | Hm but why tho |
2022-04-13 16:34:31 +0200 | <albet70> | what about tail >>= zip? |
2022-04-13 16:34:45 +0200 | <albet70> | :t tail (>>=) zip |
2022-04-13 16:34:46 +0200 | <lambdabot> | error: |
2022-04-13 16:34:46 +0200 | <lambdabot> | • Couldn't match expected type ‘([a2] -> [b1] -> [(a2, b1)]) -> t’ |
2022-04-13 16:34:46 +0200 | <lambdabot> | with actual type ‘[a1]’ |
2022-04-13 16:35:05 +0200 | <albet70> | :t tail |
2022-04-13 16:35:07 +0200 | <lambdabot> | [a] -> [a] |
2022-04-13 16:35:09 +0200 | <albet70> | :t zip |
2022-04-13 16:35:11 +0200 | <lambdabot> | [a] -> [b] -> [(a, b)] |
2022-04-13 16:35:15 +0200 | lagash | (lagash@lagash.shelltalk.net) |
2022-04-13 16:35:21 +0200 | <albet70> | :t (>>=) |
2022-04-13 16:35:22 +0200 | <lambdabot> | Monad m => m a -> (a -> m b) -> m b |
2022-04-13 16:35:48 +0200 | dextaa | (~dextaa@user/dextaa) |
2022-04-13 16:35:51 +0200 | dextaa | (~dextaa@user/dextaa) (Remote host closed the connection) |
2022-04-13 16:36:01 +0200 | justsomeguy | (~justsomeg@user/justsomeguy) (Quit: WeeChat 3.4) |
2022-04-13 16:36:20 +0200 | bontaq | (~user@ool-45779fe5.dyn.optonline.net) |
2022-04-13 16:36:52 +0200 | <abastro[m]> | `tail (>>=)` does not make sense |
2022-04-13 16:37:27 +0200 | <abastro[m]> | >>= is not a list |
2022-04-13 16:37:51 +0200 | <albet70> | :t zip <*> tail |
2022-04-13 16:37:52 +0200 | <lambdabot> | [a] -> [(a, a)] |
2022-04-13 16:38:08 +0200 | mikoto-chan | (~mikoto-ch@213.177.151.239) |
2022-04-13 16:38:38 +0200 | <albet70> | tail (>>=) m is (->)_? |
2022-04-13 16:40:17 +0200 | gurkenglas | (~gurkengla@dslb-178-012-018-212.178.012.pools.vodafone-ip.de) |
2022-04-13 16:42:02 +0200 | <abastro[m]> | I don't see a way where `tail (>>=)` would make sense |
2022-04-13 16:43:17 +0200 | redb | (~nmh@136.49.49.211) |
2022-04-13 16:43:51 +0200 | maroloccio | (~marolocci@213.99.23.106) |
2022-04-13 16:44:14 +0200 | mmhat | (~mmh@55d42e6b.access.ecotel.net) |
2022-04-13 16:44:23 +0200 | mikoto-chan | (~mikoto-ch@213.177.151.239) (Ping timeout: 256 seconds) |
2022-04-13 16:45:01 +0200 | <geekosaur> | albet70, `tail (>>=)` is tail applied to the operator (>>=). this can't make sense. what are you really trying to say? or do? |
2022-04-13 16:46:29 +0200 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) |
2022-04-13 16:47:52 +0200 | redb | (~nmh@136.49.49.211) (Ping timeout: 248 seconds) |
2022-04-13 16:48:08 +0200 | <abastro[m]> | % :t tail |
2022-04-13 16:48:08 +0200 | <yahb> | abastro[m]: [a] -> [a] |
2022-04-13 16:48:10 +0200 | <albet70> | nothing to do, just wonder why it can not? |
2022-04-13 16:48:28 +0200 | shriekingnoise | (~shrieking@201.231.16.156) |
2022-04-13 16:49:12 +0200 | jackson99 | (~bc8147f2@cerf.good1.com) (Quit: CGI:IRC (Session timeout)) |
2022-04-13 16:49:28 +0200 | notzmv | (~zmv@user/notzmv) |
2022-04-13 16:50:20 +0200 | <geekosaur> | because tail operates on lists, not functions |
2022-04-13 16:50:34 +0200 | <geekosaur> | and `tail >>=` is something different from `tail (>>=)` |
2022-04-13 16:50:53 +0200 | <albet70> | "geekosaur :and `tail >>=` is something different from `tail (>>=)`", how so? |
2022-04-13 16:51:18 +0200 | <abastro[m]> | Operator section is hard |
2022-04-13 16:51:22 +0200 | <geekosaur> | you wrap an operator in parentheses to turn it into a (prefix) function |
2022-04-13 16:51:34 +0200 | <geekosaur> | :t + --this is an error |
2022-04-13 16:51:35 +0200 | <lambdabot> | error: parse error on input ‘+’ |
2022-04-13 16:51:38 +0200 | <abastro[m]> | Ye haskell has too much sugar |
2022-04-13 16:51:48 +0200 | <geekosaur> | :t (+) -- this is operator `+` turned into a function |
2022-04-13 16:51:49 +0200 | <lambdabot> | Num a => a -> a -> a |
2022-04-13 16:52:41 +0200 | CiaoSen | (~Jura@p200300c9572d40002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Ping timeout: 248 seconds) |
2022-04-13 16:52:50 +0200 | <albet70> | what about tail >=> tail? |
2022-04-13 16:53:02 +0200 | <abastro[m]> | > ([] `tail`) |
2022-04-13 16:53:04 +0200 | <lambdabot> | *Exception: Prelude.tail: empty list |
2022-04-13 16:53:13 +0200 | <abastro[m]> | Hehe |
2022-04-13 16:53:24 +0200 | <abastro[m]> | :t (>=>) |
2022-04-13 16:53:25 +0200 | <lambdabot> | Monad m => (a -> m b) -> (b -> m c) -> a -> m c |
2022-04-13 16:53:37 +0200 | <geekosaur> | that composes two monads, the monad in question being the list monad |
2022-04-13 16:53:48 +0200 | <geekosaur> | it's like function composition but for monads |
2022-04-13 16:53:50 +0200 | <abastro[m]> | It is monadic composition |
2022-04-13 16:53:56 +0200 | <geekosaur> | :t (>=>) |
2022-04-13 16:53:57 +0200 | <lambdabot> | Monad m => (a -> m b) -> (b -> m c) -> a -> m c |
2022-04-13 16:54:06 +0200 | <geekosaur> | :t (>>>) -- flipped (.) |
2022-04-13 16:54:08 +0200 | <lambdabot> | forall k (cat :: k -> k -> *) (a :: k) (b :: k) (c :: k). Category cat => cat a b -> cat b c -> cat a c |
2022-04-13 16:54:13 +0200 | <geekosaur> | oh crap |
2022-04-13 16:54:18 +0200 | <geekosaur> | thanks lambdabot :/ |
2022-04-13 16:54:31 +0200 | <albet70> | wait a sec, what the m is? e-> or []? |
2022-04-13 16:54:45 +0200 | <abastro[m]> | Haha |
2022-04-13 16:55:17 +0200 | <abastro[m]> | % :k Category |
2022-04-13 16:55:17 +0200 | <yahb> | abastro[m]: (k -> k -> *) -> Constraint |
2022-04-13 16:55:28 +0200 | <geekosaur> | the monad here is [] because that's what tail produces |
2022-04-13 16:56:08 +0200 | jgeerds_ | (~jgeerds@d5364b87.access.ecotel.net) |
2022-04-13 16:56:41 +0200 | <albet70> | how to express it? >>= or >=> limit or concrete the m by its value? |
2022-04-13 16:57:03 +0200 | <geekosaur> | neither of those limit m, they have to operate on any Monad m |
2022-04-13 16:57:18 +0200 | <geekosaur> | the type of `tail` picks m to be [] |
2022-04-13 16:58:31 +0200 | coot | (~coot@213.134.190.95) |
2022-04-13 16:58:56 +0200 | <albet70> | but its value limit m? |
2022-04-13 16:59:12 +0200 | <albet70> | its parameter |
2022-04-13 16:59:30 +0200 | jgeerds | (~jgeerds@d5364b87.access.ecotel.net) (Ping timeout: 272 seconds) |
2022-04-13 16:59:53 +0200 | <abastro[m]> | Type parameter |
2022-04-13 17:00:05 +0200 | <albet70> | f >>= g, if f is [a] then m is limited to [] |
2022-04-13 17:00:23 +0200 | <albet70> | if f is e-> a then m is limited to e-> |
2022-04-13 17:00:56 +0200 | bahamas | (~lucian@84.232.140.158) |
2022-04-13 17:01:45 +0200 | lortabac | (~lortabac@2a01:e0a:541:b8f0:1bbe:d06f:b37f:2998) (Quit: WeeChat 2.8) |
2022-04-13 17:02:12 +0200 | <albet70> | :t fmap |
2022-04-13 17:02:13 +0200 | <lambdabot> | Functor f => (a -> b) -> f a -> f b |
2022-04-13 17:02:22 +0200 | jgeerds_ | (~jgeerds@d5364b87.access.ecotel.net) (Ping timeout: 260 seconds) |
2022-04-13 17:03:08 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
2022-04-13 17:03:54 +0200 | <albet70> | mapFuc f g = \x -> f (g x) |
2022-04-13 17:06:03 +0200 | <albet70> | mapList f (x:xs) = (f x):xs |
2022-04-13 17:07:27 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 240 seconds) |
2022-04-13 17:08:34 +0200 | <geekosaur> | % :t fmap @((->) _) |
2022-04-13 17:08:34 +0200 | <yahb> | geekosaur: (a -> b) -> (w -> a) -> w -> b |
2022-04-13 17:08:45 +0200 | <geekosaur> | % :t fmap @[] |
2022-04-13 17:08:45 +0200 | <yahb> | geekosaur: (a -> b) -> [a] -> [b] |
2022-04-13 17:08:48 +0200 | acidjnk_new | (~acidjnk@p200300d0c722df65bc11ed8127f1571b.dip0.t-ipconnect.de) (Read error: Connection reset by peer) |
2022-04-13 17:09:19 +0200 | <geekosaur> | something unclear here is that first one is really (a -> b) -> (w -> a) -> (w -> b) |
2022-04-13 17:09:39 +0200 | <geekosaur> | but :t strips "unnecessary" parentheses |
2022-04-13 17:11:01 +0200 | _________ | (~nobody@user/noodly) |
2022-04-13 17:11:02 +0200 | cdman | (~dcm@user/dmc/x-4369397) (Quit: Leaving) |
2022-04-13 17:11:57 +0200 | awpr | (uid446117@id-446117.lymington.irccloud.com) |
2022-04-13 17:12:03 +0200 | <albet70> | :t tail >=> |
2022-04-13 17:12:04 +0200 | <lambdabot> | error: |
2022-04-13 17:12:04 +0200 | <lambdabot> | parse error (possibly incorrect indentation or mismatched brackets) |
2022-04-13 17:12:29 +0200 | <albet70> | :t (>=>) tail |
2022-04-13 17:12:30 +0200 | <lambdabot> | (b -> [c]) -> [b] -> [c] |
2022-04-13 17:12:32 +0200 | <abastro[m]> | Well, you could: |
2022-04-13 17:12:33 +0200 | <abastro[m]> | :t (tail >=>) |
2022-04-13 17:12:35 +0200 | <lambdabot> | (b -> [c]) -> [b] -> [c] |
2022-04-13 17:13:08 +0200 | <abastro[m]> | When parens change meaning..wait |
2022-04-13 17:14:31 +0200 | redb | (~nmh@136.49.49.211) |
2022-04-13 17:14:36 +0200 | <albet70> | so could I say tail limited the m to [] in (>=>) tail? |
2022-04-13 17:14:55 +0200 | jakalx | (~jakalx@base.jakalx.net) (Error from remote client) |
2022-04-13 17:15:24 +0200 | <albet70> | but could [a]-> as m? |
2022-04-13 17:16:01 +0200 | <albet70> | [] could be m, e-> could be m, [e]-> could be m? |
2022-04-13 17:16:25 +0200 | <geekosaur> | yes. the third is just a special case of the second |
2022-04-13 17:16:53 +0200 | <albet70> | if a unary function f, (>=>) f would limited m to e->, right? |
2022-04-13 17:17:03 +0200 | <geekosaur> | it's e-> where e is [e'] for some e' |
2022-04-13 17:17:27 +0200 | <abastro[m]> | Fun thing: |
2022-04-13 17:17:36 +0200 | <geekosaur> | and yuou're still trying to treat (op) and op as the same thing |
2022-04-13 17:17:37 +0200 | <abastro[m]> | :t (tai >=>) |
2022-04-13 17:17:38 +0200 | <lambdabot> | error: |
2022-04-13 17:17:39 +0200 | <lambdabot> | • Variable not in scope: tai :: a -> m b |
2022-04-13 17:17:39 +0200 | <lambdabot> | • Perhaps you meant one of these: |
2022-04-13 17:17:42 +0200 | <abastro[m]> | :t (tail >=>) |
2022-04-13 17:17:43 +0200 | <geekosaur> | consider this: |
2022-04-13 17:17:44 +0200 | <lambdabot> | (b -> [c]) -> [b] -> [c] |
2022-04-13 17:17:53 +0200 | <abastro[m]> | :t (>=> tail) |
2022-04-13 17:17:54 +0200 | <lambdabot> | (a -> [[c]]) -> a -> [c] |
2022-04-13 17:17:57 +0200 | <geekosaur> | > fmap (+) z [a,b,c] |
2022-04-13 17:17:59 +0200 | <lambdabot> | error: |
2022-04-13 17:17:59 +0200 | <lambdabot> | • Couldn't match expected type ‘[Expr] -> a’ |
2022-04-13 17:17:59 +0200 | <lambdabot> | with actual type ‘Expr’ |
2022-04-13 17:18:00 +0200 | <abastro[m]> | Oops.. matrix bridge pls |
2022-04-13 17:18:04 +0200 | <geekosaur> | whoops |
2022-04-13 17:18:23 +0200 | <albet70> | then again why (>>=) tail make no sense |
2022-04-13 17:18:32 +0200 | <geekosaur> | > fmap (+) z [a,b,c] :: FromExpr f => [f] |
2022-04-13 17:18:34 +0200 | <lambdabot> | error: |
2022-04-13 17:18:34 +0200 | <lambdabot> | • Couldn't match type ‘a0 -> a0’ with ‘[f1]’ |
2022-04-13 17:18:34 +0200 | <lambdabot> | Expected type: [Expr] -> [f1] |
2022-04-13 17:18:35 +0200 | <albet70> | when m is [e]-> |
2022-04-13 17:18:50 +0200 | <geekosaur> | again, yyou are treating (>>=) and >>=mas the same. they are not |
2022-04-13 17:18:52 +0200 | <abastro[m]> | `(>>=) tail` makes sense. |
2022-04-13 17:18:52 +0200 | <abastro[m]> | `tail (>>=)` doesn't. |
2022-04-13 17:18:57 +0200 | redb | (~nmh@136.49.49.211) (Ping timeout: 256 seconds) |
2022-04-13 17:19:19 +0200 | <albet70> | :t (>>=) tail |
2022-04-13 17:19:21 +0200 | <lambdabot> | ([a] -> [a] -> b) -> [a] -> b |
2022-04-13 17:19:54 +0200 | jakalx | (~jakalx@base.jakalx.net) |
2022-04-13 17:20:18 +0200 | <geekosaur> | can I have the channel for a second? |
2022-04-13 17:20:28 +0200 | <geekosaur> | albet70, compare these |
2022-04-13 17:20:32 +0200 | <geekosaur> | > 2 + 3 |
2022-04-13 17:20:34 +0200 | <lambdabot> | 5 |
2022-04-13 17:20:38 +0200 | <geekosaur> | > (+) 2 3 |
2022-04-13 17:20:40 +0200 | <lambdabot> | 5 |
2022-04-13 17:20:57 +0200 | CiaoSen | (~Jura@p200300c9572d40002a3a4dfffe84dbd5.dip0.t-ipconnect.de) |
2022-04-13 17:21:01 +0200 | <geekosaur> | the first is + as an operator, the second is + as a (prefix) function |
2022-04-13 17:21:19 +0200 | <geekosaur> | you can't simply treat (+) as the same as +, it is different |
2022-04-13 17:21:29 +0200 | <geekosaur> | likewise >>=and (>>=) are different |
2022-04-13 17:21:50 +0200 | <geekosaur> | ok, back to your regularly scheduled confusion :) |
2022-04-13 17:22:01 +0200 | <albet70> | (>>=) tail is a normal prefix expression, and tail (>>=) is a suffix expression |
2022-04-13 17:24:05 +0200 | <[exa]> | unfortunately not |
2022-04-13 17:24:21 +0200 | <albet70> | :t (tail >>=) |
2022-04-13 17:24:22 +0200 | <lambdabot> | ([a] -> [a] -> b) -> [a] -> b |
2022-04-13 17:24:43 +0200 | <albet70> | tail >>= is a suffix expression |
2022-04-13 17:25:33 +0200 | <[exa]> | without the parentheses in place it is a parse error |
2022-04-13 17:25:38 +0200 | <abastro[m]> | Yea parens are supposed to be only for operator precedence |
2022-04-13 17:25:44 +0200 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) (Ping timeout: 250 seconds) |
2022-04-13 17:25:53 +0200 | <abastro[m]> | But haskell uses it for special treatment for operators as well |
2022-04-13 17:25:59 +0200 | <albet70> | add parentheses to >>= would make it a prefix expression |
2022-04-13 17:26:22 +0200 | <tdammers> | "supposed to" according to whom? |
2022-04-13 17:26:30 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
2022-04-13 17:26:54 +0200 | <tdammers> | I would argue that any language is free to define the meaning of its tokens as its designers see fit |
2022-04-13 17:27:07 +0200 | hsw | (~hsw@2001-b030-2303-0104-0172-0025-0012-0132.hinet-ip6.hinet.net) (Ping timeout: 240 seconds) |
2022-04-13 17:27:09 +0200 | redb | (~nmh@136.49.49.211) |
2022-04-13 17:27:15 +0200 | <albet70> | then again what's the m in tail >>=? |
2022-04-13 17:27:37 +0200 | _ht | (~quassel@231-169-21-31.ftth.glasoperator.nl) |
2022-04-13 17:27:57 +0200 | <tdammers> | you mean in the type of (tail >>=) ? |
2022-04-13 17:27:58 +0200 | <c_wraith> | albet70: just follow the types. It's purely mechanical |
2022-04-13 17:28:00 +0200 | <albet70> | [a]->? |
2022-04-13 17:28:04 +0200 | <[exa]> | albet70: the (>>=) gets instantiated for `Monad []` there |
2022-04-13 17:28:15 +0200 | <abastro[m]> | According to math class I guess tdammers |
2022-04-13 17:28:24 +0200 | merijn | (~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) |
2022-04-13 17:28:29 +0200 | <tdammers> | abastro[m]: programming isn't math |
2022-04-13 17:28:46 +0200 | <[exa]> | albet70: ah no sorry, there's really (->) in place :] |
2022-04-13 17:28:47 +0200 | <abastro[m]> | <del>Oh noo</del> |
2022-04-13 17:28:53 +0200 | <tdammers> | and guess what, parentheses are also used differently in natural language, in music notation, etc. |
2022-04-13 17:29:08 +0200 | <abastro[m]> | Welp so much for me to expect programming to be extension of basic math |
2022-04-13 17:29:34 +0200 | <abastro[m]> | Well then haskell's problem is just having too many syntaxes |
2022-04-13 17:29:35 +0200 | <tdammers> | math and programming are related, but neither is an "extension" of the other |
2022-04-13 17:30:03 +0200 | <tdammers> | "haskell's problem" is that you aren't familiar with its syntax |
2022-04-13 17:30:53 +0200 | <abastro[m]> | Yep, basic math/calc and math are related, but neither is an extension of the other |
2022-04-13 17:31:08 +0200 | dolio | (~dolio@130.44.130.54) (Quit: ZNC 1.8.2 - https://znc.in) |
2022-04-13 17:33:41 +0200 | dolio | (~dolio@130.44.130.54) |
2022-04-13 17:33:42 +0200 | merijn | (~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) (Ping timeout: 272 seconds) |
2022-04-13 17:36:32 +0200 | <abastro[m]> | Sorry albet that I interfered your question |
2022-04-13 17:37:06 +0200 | maroloccio | (~marolocci@213.99.23.106) (Quit: WeeChat 3.0) |
2022-04-13 17:37:09 +0200 | joo-_ | (~joo-_@fsf/member/joo--) (Quit: leaving) |
2022-04-13 17:38:15 +0200 | Macbethwin | (~chargen@D964062A.static.ziggozakelijk.nl) |
2022-04-13 17:39:00 +0200 | Pickchea | (~private@user/pickchea) |
2022-04-13 17:39:09 +0200 | jonathanx | (~jonathan@dyn-5-sc.cdg.chalmers.se) (Remote host closed the connection) |
2022-04-13 17:39:23 +0200 | jgeerds | (~jgeerds@d5364b87.access.ecotel.net) |
2022-04-13 17:40:24 +0200 | <albet70> | no need, I love haskell, but I can't comprehend |
2022-04-13 17:42:31 +0200 | Macbethwin | (~chargen@D964062A.static.ziggozakelijk.nl) (Remote host closed the connection) |
2022-04-13 17:42:39 +0200 | <geekosaur> | you need to work with it more and become familiar with its syntax |
2022-04-13 17:42:50 +0200 | Macbethwin | (~chargen@D964062A.static.ziggozakelijk.nl) |
2022-04-13 17:42:55 +0200 | <shapr> | yeah, write a bunch of code! |
2022-04-13 17:42:55 +0200 | <geekosaur> | have you worked your way through a haskell course or book yet? |
2022-04-13 17:44:12 +0200 | <albet70> | lyah I have read, but it lacks lots of concepts |
2022-04-13 17:45:33 +0200 | stevenxl | (~stevenxl@c-73-72-2-81.hsd1.il.comcast.net) (Quit: leaving) |
2022-04-13 17:45:56 +0200 | <geekosaur> | it also lacks exercises for the most part |
2022-04-13 17:47:16 +0200 | <geekosaur> | @where cis194 |
2022-04-13 17:47:16 +0200 | <lambdabot> | https://www.seas.upenn.edu/~cis194/spring13/lectures.html |
2022-04-13 17:47:46 +0200 | tzh | (~tzh@c-24-21-73-154.hsd1.or.comcast.net) |
2022-04-13 17:48:48 +0200 | <geekosaur> | that course is well recommended |
2022-04-13 17:49:48 +0200 | <geekosaur> | unfortunately I'm not the best reference for learning haskell: not only am I a lousy teacher :) but I learned from the original Gentle Introduction — which works best if you have an SML/NJ background (which I do, plus a bunch of other languages) |
2022-04-13 17:50:29 +0200 | jgeerds | (~jgeerds@d5364b87.access.ecotel.net) (Remote host closed the connection) |
2022-04-13 17:50:30 +0200 | <Zemyla> | A New Jersey background? |
2022-04-13 17:50:34 +0200 | kenran | (~kenran@200116b82b0a340003754354c85ff367.dip.versatel-1u1.de) (Quit: WeeChat info:version) |
2022-04-13 17:51:11 +0200 | <abastro[m]> | I just loled |
2022-04-13 17:51:17 +0200 | <dolio> | Hey, yo, just learn Haskell. |
2022-04-13 17:51:18 +0200 | <geekosaur> | https://www.smlnj.org/ |
2022-04-13 17:51:43 +0200 | <geekosaur> | I worked at Carnegie Mellon for a decade and a half, that's smlnj territory |
2022-04-13 17:51:44 +0200 | jgeerds | (~jgeerds@d5364b87.access.ecotel.net) |
2022-04-13 17:53:10 +0200 | jackson99 | (~bc8147f2@cerf.good1.com) |
2022-04-13 17:53:14 +0200 | <abastro[m]> | Wait SML of New Jersey exists? |
2022-04-13 17:53:32 +0200 | <abastro[m]> | Wow. |
2022-04-13 17:53:42 +0200 | <c_wraith> | You're gonna maker Robert Harper cry |
2022-04-13 17:54:05 +0200 | <monochrom> | I learned from the gentle introduction, and I am a great teacher. :) |
2022-04-13 17:54:11 +0200 | <geekosaur> | SCS gave zerofucks what crazy people in ECE did :) |
2022-04-13 17:54:28 +0200 | Macbethwin | (~chargen@D964062A.static.ziggozakelijk.nl) (Remote host closed the connection) |
2022-04-13 17:54:47 +0200 | Macbethwin | (~chargen@D964062A.static.ziggozakelijk.nl) |
2022-04-13 17:54:55 +0200 | FragByte | (~christian@user/fragbyte) (Ping timeout: 260 seconds) |
2022-04-13 17:55:27 +0200 | FragByte | (~christian@user/fragbyte) |
2022-04-13 17:55:49 +0200 | <monochrom> | Previous SML or Scheme exposure may or may not help depending on how much you relied on mutable variables in them, in which case you were just as stuck in Algol as everyone else. |
2022-04-13 17:56:06 +0200 | <telser> | It isn't free but I've had some success in helping onboard people to the language with https://haskellbook.com/ as the primary resource. Also had success with some of the other things already mentioned, lyah, cis194, etc. |
2022-04-13 17:56:56 +0200 | littlebobeep | (~alMalsamo@gateway/tor-sasl/almalsamo) (Remote host closed the connection) |
2022-04-13 17:56:56 +0200 | <dolio> | It'll still help with some stuff, like using recursion for everything. |
2022-04-13 17:57:12 +0200 | bahamas | (~lucian@84.232.140.158) (Ping timeout: 248 seconds) |
2022-04-13 17:57:19 +0200 | littlebobeep | (~alMalsamo@gateway/tor-sasl/almalsamo) |
2022-04-13 17:58:12 +0200 | <geekosaur> | most of my exposure was hoobnobbing with SCS grad students and staff — the latter of whom used a bot speaking smlnj to do system and network queries |
2022-04-13 17:58:23 +0200 | vicfred | (~vicfred@user/vicfred) |
2022-04-13 17:58:30 +0200 | <monochrom> | That silver lining has tarnish too because tail recursion is overemphasized there... |
2022-04-13 17:58:52 +0200 | <abastro[m]> | Coming from C background, I personally had great success by writing haskell from get go to solve algorithmic problems |
2022-04-13 17:59:00 +0200 | <geekosaur> | all declarative (in fact the syntax for declaring variables/functions caught me by surprise later) so a good prep for haskell |
2022-04-13 17:59:15 +0200 | <monochrom> | Only Larry Paulson has the gut to say in an SML textbook "you spend linear space for linear-sized output, that's fair game". |
2022-04-13 17:59:25 +0200 | <c_wraith> | monochrom: unfortunately, tail recursion actually is important when your implementation blows up with non-tail recursion |
2022-04-13 17:59:32 +0200 | <monochrom> | (of "map f (x::xs) = f x :: map f xs") |
2022-04-13 17:59:41 +0200 | merijn | (~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) |
2022-04-13 17:59:42 +0200 | <dolio> | A lot of cases of needing mutation in simple examples revolve around not being able to move to proceed to a case where variables have different values without mutable assignment. |
2022-04-13 18:00:00 +0200 | <dolio> | Because of loops. |
2022-04-13 18:00:14 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
2022-04-13 18:00:34 +0200 | <abastro[m]> | One can use good deal of recursion in C, so C -> Haskell transition could be easy I think |
2022-04-13 18:00:55 +0200 | <monochrom> | It is true that previous SML exposure conquers the hurdle of accepting sum types. |
2022-04-13 18:01:06 +0200 | lbseale | (~ep1ctetus@user/ep1ctetus) |
2022-04-13 18:01:08 +0200 | <dolio> | You can, but people aren't taught that way. |
2022-04-13 18:01:20 +0200 | <telser> | For my learning, my earliest experience was as an undergrad requesting a functional programming course and a professor craming as much of Real World Haskell and SICP as we could handle into a semester. Then I ran with Haskell and tried to use it as much as I could. |
2022-04-13 18:01:28 +0200 | <abastro[m]> | Oh and C has untagged unions |
2022-04-13 18:01:29 +0200 | <dolio> | And often don't work that way. |
2022-04-13 18:01:53 +0200 | <abastro[m]> | Can tag untagged unions to make tagged unions, so I guess that help too |
2022-04-13 18:01:59 +0200 | Henson | (~kvirc@107-179-133-201.cpe.teksavvy.com) |
2022-04-13 18:02:17 +0200 | qwedfg_ | (~qwedfg@user/qwedfg) (Read error: Connection reset by peer) |
2022-04-13 18:02:40 +0200 | chele | (~chele@user/chele) (Remote host closed the connection) |
2022-04-13 18:02:53 +0200 | <c_wraith> | When I was doing the main CS sequence in my university, one of the students there took "you can do anything with recursion or iteration (and some extra bookkeeping)" as a challenge and did every single assignment both ways. |
2022-04-13 18:02:54 +0200 | <monochrom> | Mutable variables and loops are great temptations. People will not avoid them. |
2022-04-13 18:03:52 +0200 | <abastro[m]> | Wow, dedicated student |
2022-04-13 18:04:01 +0200 | <monochrom> | Even in Haskell, there are beginners who would rather learn IO early so they can use IORef. |
2022-04-13 18:04:04 +0200 | <dolio> | It doesn't help because, "I could implement some Haskell things in C," is not what is required. What is required is experience actually using those things in the same way as Haskell, which isn't what people do in C, typically. |
2022-04-13 18:04:18 +0200 | merijn | (~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) (Ping timeout: 250 seconds) |
2022-04-13 18:04:19 +0200 | <c_wraith> | On the other hand, I just figured out how to convert between them mechanically and went "ok, yep". |
2022-04-13 18:05:16 +0200 | <monochrom> | They may even rejoice when they discover the monad-loop package so they can go back to loops again. |
2022-04-13 18:05:50 +0200 | <abastro[m]> | Hm perhaps I was weird then. |
2022-04-13 18:05:53 +0200 | <c_wraith> | instead of just writing those loops themselves? Nothing in that package is more than about 3 lines long |
2022-04-13 18:06:01 +0200 | <monochrom> | The reality is that since it is possible to emulate idiomatic C in Haskell, beginners will do exactly that. |
2022-04-13 18:06:08 +0200 | qwedfg | (~qwedfg@user/qwedfg) |
2022-04-13 18:06:31 +0200 | <[exa]> | technically, is there any example of algorithm that would be inherently loopy and really better with cycles? I always thought that dynamic programming would be the case, until I implemented levenshtein in haskell :D |
2022-04-13 18:06:39 +0200 | <monochrom> | As opposed to "since it is possible to emulate idiomatic Haskell in C"... well why would anyone do that?! |
2022-04-13 18:06:41 +0200 | <abastro[m]> | I recall doing loops as recursion in C |
2022-04-13 18:07:16 +0200 | <[exa]> | monochrom: but you can do monads with macros!!!11 :D |
2022-04-13 18:07:22 +0200 | yauhsien | (~yauhsien@61-231-36-20.dynamic-ip.hinet.net) (Remote host closed the connection) |
2022-04-13 18:07:46 +0200 | <abastro[m]> | My memory might be wrong but I wondered in C if recursion could be optimized to a loop |
2022-04-13 18:08:00 +0200 | <monochrom> | Haha yeah Racket is looking at this conversation and think we are all dumb, it emulates all of us... |
2022-04-13 18:08:03 +0200 | <c_wraith> | It's really painful to write haskell-style code in C. all those void* everywhere. |
2022-04-13 18:08:03 +0200 | <abastro[m]> | So that I could always use easier and more consistent recursion |
2022-04-13 18:08:04 +0200 | <geekosaur> | depends on the compiler |
2022-04-13 18:08:18 +0200 | <abastro[m]> | Also since somehow loop is harder for me than recursion |
2022-04-13 18:08:41 +0200 | yauhsien | (~yauhsien@61-231-36-20.dynamic-ip.hinet.net) |
2022-04-13 18:08:51 +0200 | <abastro[m]> | Yea void* is the hurdle |
2022-04-13 18:08:56 +0200 | slac79763 | (~slack1256@186.11.43.180) |
2022-04-13 18:09:07 +0200 | <abastro[m]> | But well.. void* and unconstrained casts are unavoidable in C anyway |
2022-04-13 18:09:11 +0200 | <monochrom> | c_wraith: I once did an exercise on using libffi to write a closure in C --- a function that captures some free variables >:) |
2022-04-13 18:09:44 +0200 | <monochrom> | void* is really not too bad in comparison. Manual type checking is not that hard. |
2022-04-13 18:10:02 +0200 | <abastro[m]> | Really? |
2022-04-13 18:10:03 +0200 | <c_wraith> | I've never used libffi. I just get scared when I see the name. |
2022-04-13 18:10:47 +0200 | <monochrom> | "f x = let { g y = x + y } in g" though... |
2022-04-13 18:11:15 +0200 | slack1256 | (~slack1256@191.126.227.204) (Ping timeout: 260 seconds) |
2022-04-13 18:11:24 +0200 | <monochrom> | Don't worry I did that exercise for the LOL. |
2022-04-13 18:11:31 +0200 | <dolio> | Most people definitely complain that recursion is much harder than loops, in my experience. |
2022-04-13 18:11:43 +0200 | <dolio> | I think it's often not taught well, though. |
2022-04-13 18:12:21 +0200 | <monochrom> | Absolutely. |
2022-04-13 18:12:57 +0200 | <abastro[m]> | Yeah, I feel that is strange |
2022-04-13 18:12:57 +0200 | <abastro[m]> | Recursion is often very powerful |
2022-04-13 18:13:10 +0200 | <monochrom> | I think my https://groups.google.com/g/comp.lang.functional/c/UFLNf1eI95A/m/WXA78_sk31EJ nails it. |
2022-04-13 18:13:13 +0200 | <dolio> | People try to teach the exact operational semantics, and students get lost thinking about all the 'copies' of a variable on the stack and stuff. |
2022-04-13 18:13:14 +0200 | <abastro[m]> | I guess this is an artifact of me being more math-based |
2022-04-13 18:13:15 +0200 | <abastro[m]> | Where recursive definitions are quite normal |
2022-04-13 18:13:33 +0200 | <abastro[m]> | Yea, that |
2022-04-13 18:13:58 +0200 | <c_wraith> | A friend of mine made a comment not too long ago that has stuck with me. She started programming really young, and learned a lot about how things work at a low level. She said that she had no trouble learning recursion because it was obvious to her how it was implemented. Knowing the operational semantics made it completely sensible to her. |
2022-04-13 18:14:00 +0200 | <abastro[m]> | Really, ppl try to teach recursion by stepping and simulating what will happen |
2022-04-13 18:14:04 +0200 | <abastro[m]> | And then stack comes in |
2022-04-13 18:14:05 +0200 | <monochrom> | I teach recursion by saying "think of the induction proof". |
2022-04-13 18:14:23 +0200 | <abastro[m]> | Call-by-value and call-by-reference on top. Eeeh |
2022-04-13 18:14:40 +0200 | <abastro[m]> | Well but yeah, I understand that math is hard. |
2022-04-13 18:14:44 +0200 | <monochrom> | http://www.cs.utoronto.ca/~trebla/CSCC24-2021-Summer/01-haskell-basic.html#synev |
2022-04-13 18:14:55 +0200 | <abastro[m]> | Induction is hard for typical programming beginners |
2022-04-13 18:15:38 +0200 | <abastro[m]> | Learning by its operational semantics??? Wh |
2022-04-13 18:15:39 +0200 | <monochrom> | For those who are not in a CS curriculum? Sure. |
2022-04-13 18:16:05 +0200 | <monochrom> | For those who are in a CS cirriculum? We can exploit a survivor bias there. |
2022-04-13 18:16:11 +0200 | <c_wraith> | honestly, I made sense of induction by going "oh, this is just recursion made hard". :P |
2022-04-13 18:16:12 +0200 | <geekosaur> | hm, guess that's another reason I had no trouble picking up basic Haskell. I already knew about proofs with a base case and an inductive case, and seeing functions defined the same way was natural |
2022-04-13 18:16:33 +0200 | <monochrom> | However, I know of a data point regarding blank-slate kids. |
2022-04-13 18:16:34 +0200 | <abastro[m]> | Well, CS majors nowadays just begin with python |
2022-04-13 18:16:48 +0200 | <abastro[m]> | And I see them sticking with python and writing simplest codes |
2022-04-13 18:17:05 +0200 | <abastro[m]> | I think they won't bother with induction |
2022-04-13 18:17:16 +0200 | <monochrom> | Some MIT people tried teaching Logo with recursion to kids. The kids loved it. Loved the recursion too. Thought it was so natural. |
2022-04-13 18:18:08 +0200 | <monochrom> | CS has a 1st-year course that does induction proofs (among other things). |
2022-04-13 18:18:16 +0200 | justsomeguy | (~justsomeg@user/justsomeguy) |
2022-04-13 18:18:53 +0200 | cosimone | (~user@93-47-228-79.ip115.fastwebnet.it) |
2022-04-13 18:18:57 +0200 | <abastro[m]> | Ok, perhaps this is another regional thing? |
2022-04-13 18:19:48 +0200 | <abastro[m]> | Discrete math in my uni does not teach proper induction iirc, it just teaches sets, relations, functions, I guess it also teaches trees/graphs |
2022-04-13 18:19:48 +0200 | coot | (~coot@213.134.190.95) (Read error: Connection reset by peer) |
2022-04-13 18:20:00 +0200 | coot | (~coot@213.134.190.95) |
2022-04-13 18:20:12 +0200 | <telser> | Definitely, I've seen programs without it or with so little the students didn't really come out with an understanding. |
2022-04-13 18:20:14 +0200 | <dolio> | Doesn't Python restrict your ability to use recursion by always using stack? |
2022-04-13 18:20:31 +0200 | <monochrom> | geekosaur: Though, very technically (so don't worry about it, I was just curious), I found that using the principle of induction to prove that recursive definitions are OK seems to require a pretty strong version of choice. I hope I'm missing something. |
2022-04-13 18:20:32 +0200 | <abastro[m]> | Hmm, Interesting that Logo recursion pedagogy works. |
2022-04-13 18:20:54 +0200 | <abastro[m]> | Indeed, you can easily get stackoverflow in python by using recursion |
2022-04-13 18:21:13 +0200 | <geekosaur> | monochrom, I'm not really a mathematician, I never really worried about it |
2022-04-13 18:21:16 +0200 | <monochrom> | (Well, in the context of set theory and total functions. Of course it's easier in CPOs...) |
2022-04-13 18:21:23 +0200 | <abastro[m]> | So avoiding recursion is recommended for performance as well |
2022-04-13 18:21:30 +0200 | Macbethwin | (~chargen@D964062A.static.ziggozakelijk.nl) (Ping timeout: 246 seconds) |
2022-04-13 18:21:43 +0200 | <geekosaur> | I'mkinda trying to catch up on the actual mathematics now |
2022-04-13 18:21:46 +0200 | <dolio> | That's more a defect of set theory, if anything. |
2022-04-13 18:22:20 +0200 | <abastro[m]> | Well checking recursion termination depends on recursion |
2022-04-13 18:23:10 +0200 | <abastro[m]> | I cannot think of a case where recursion is related with AC though, since everything is at most countable and likely finite |
2022-04-13 18:23:28 +0200 | <monochrom> | And then calculus of constructions just say "every recursive data type comes with a recursive elimination axiom, what's the problem?" :) |
2022-04-13 18:24:03 +0200 | <abastro[m]> | Thing is, general recursion needs more than just the recursive elimination |
2022-04-13 18:24:26 +0200 | <abastro[m]> | I think primitive recursion is related with that one |
2022-04-13 18:25:02 +0200 | <abastro[m]> | AFAIK when one of the parameters are guaranteed to be decreasing is one of the most trivial cases |
2022-04-13 18:29:07 +0200 | CiaoSen | (~Jura@p200300c9572d40002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Ping timeout: 240 seconds) |
2022-04-13 18:29:21 +0200 | slack1256 | (~slack1256@191.125.227.204) |
2022-04-13 18:30:44 +0200 | slac79763 | (~slack1256@186.11.43.180) (Ping timeout: 250 seconds) |
2022-04-13 18:33:15 +0200 | jackson99 | (~bc8147f2@cerf.good1.com) (Quit: CGI:IRC) |
2022-04-13 18:34:21 +0200 | <exarkun> | this conversation gave me flashbacks to using extensions gcc had in the 90s for having closures in C, thanks |
2022-04-13 18:34:24 +0200 | raehik1 | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Quit: WeeChat 3.5) |
2022-04-13 18:36:28 +0200 | <Henson> | is there a way I can use filter with a functor? Something like filterFunctor :: Functor f => (a -> Bool) -> [f a] -> [f a] ? I've got some newtypes that wrap around data, and I'd like to filter that wrapped data using a function that operates on the data. |
2022-04-13 18:37:08 +0200 | <Henson> | or some other type of class that "wraps" around data. I don't need the complexity of Monad, and Applicative doesn't seem right in this case. |
2022-04-13 18:37:58 +0200 | waleee | (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) |
2022-04-13 18:38:24 +0200 | Codaraxis | (~Codaraxis@user/codaraxis) |
2022-04-13 18:39:34 +0200 | Inst | (~Liam@c-98-208-218-119.hsd1.fl.comcast.net) (Ping timeout: 272 seconds) |
2022-04-13 18:39:56 +0200 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
2022-04-13 18:40:14 +0200 | <[exa]> | Henson: you'd need to be able to extract the Bool from the functor, which I don't think is possible in the generic case |
2022-04-13 18:40:32 +0200 | <Henson> | [exa]: ok |
2022-04-13 18:41:03 +0200 | <[exa]> | but there are similar things, check out filterM or filterA |
2022-04-13 18:42:43 +0200 | <[exa]> | in your case, you'd basically need the parameter that does `f a -> Bool`, i.e., being able to "unwrap" the functor on itself |
2022-04-13 18:49:57 +0200 | mmhat | (~mmh@55d42e6b.access.ecotel.net) (Quit: WeeChat 3.5) |
2022-04-13 18:50:11 +0200 | Pickchea | (~private@user/pickchea) (Ping timeout: 256 seconds) |
2022-04-13 18:51:11 +0200 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
2022-04-13 18:53:30 +0200 | ccntrq | (~Thunderbi@2a01:e34:eccb:b060:bc3e:467d:7ac2:fff6) (Remote host closed the connection) |
2022-04-13 18:53:33 +0200 | ccntrq1 | (~Thunderbi@imx92-1-78-204-187-6.fbx.proxad.net) |
2022-04-13 18:55:52 +0200 | ccntrq1 | ccntrq |
2022-04-13 18:56:03 +0200 | bahamas | (~lucian@84.232.140.158) |
2022-04-13 18:56:06 +0200 | <monochrom> | "Functor f => (a -> Bool) -> [f a] -> [f a]" is probably way more general and undoable than your actual problem. |
2022-04-13 18:56:06 +0200 | mmhat | (~mmh@55d42e6b.access.ecotel.net) |
2022-04-13 18:58:25 +0200 | razetime | (~quassel@117.193.4.40) |
2022-04-13 19:03:45 +0200 | mikoto-chan | (~mikoto-ch@213.177.151.239) |
2022-04-13 19:04:44 +0200 | deadmarshal_ | (~deadmarsh@95.38.117.55) |
2022-04-13 19:07:42 +0200 | kenran | (~kenran@200116b82b0a3400d6f6663d91422485.dip.versatel-1u1.de) |
2022-04-13 19:09:44 +0200 | Macbethwin | (~chargen@D964062A.static.ziggozakelijk.nl) |
2022-04-13 19:12:17 +0200 | razetime | (~quassel@117.193.4.40) (Remote host closed the connection) |
2022-04-13 19:12:38 +0200 | justsomeguy | (~justsomeg@user/justsomeguy) (Quit: WeeChat 3.4) |
2022-04-13 19:15:06 +0200 | vicfred | (~vicfred@user/vicfred) (Quit: Leaving) |
2022-04-13 19:15:26 +0200 | kaph | (~kaph@dynamic-adsl-78-12-162-98.clienti.tiscali.it) |
2022-04-13 19:19:05 +0200 | Macbethwin | (~chargen@D964062A.static.ziggozakelijk.nl) (Ping timeout: 256 seconds) |
2022-04-13 19:22:01 +0200 | slac88559 | (~slack1256@191.125.99.75) |
2022-04-13 19:23:09 +0200 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) |
2022-04-13 19:23:47 +0200 | slack1256 | (~slack1256@191.125.227.204) (Ping timeout: 240 seconds) |
2022-04-13 19:25:27 +0200 | kenran | (~kenran@200116b82b0a3400d6f6663d91422485.dip.versatel-1u1.de) (Quit: WeeChat info:version) |
2022-04-13 19:25:39 +0200 | kenran | (~kenran@200116b82b0a3400d6f6663d91422485.dip.versatel-1u1.de) |
2022-04-13 19:29:45 +0200 | califax | (~califax@user/califx) (Remote host closed the connection) |
2022-04-13 19:31:33 +0200 | alp_ | (~alp@user/alp) (Ping timeout: 256 seconds) |
2022-04-13 19:33:59 +0200 | califax | (~califax@user/califx) |
2022-04-13 19:35:58 +0200 | <Henson> | [exa], monochrom: ok, thanks for the suggestions. I just manually unwrapped, filtered, then rewrapped the data. |
2022-04-13 19:36:16 +0200 | <Henson> | not as clean, but conceptually what a generic filter would have to do anyway |
2022-04-13 19:36:54 +0200 | xkuru | (~xkuru@user/xkuru) |
2022-04-13 19:37:35 +0200 | <[exa]> | Henson: btw if you manually unwrapped and rewrapped, you know in advance what functor is there, right? |
2022-04-13 19:38:08 +0200 | <Henson> | [exa]: yes |
2022-04-13 19:38:21 +0200 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) (Remote host closed the connection) |
2022-04-13 19:38:39 +0200 | <Henson> | [exa]: I just have a couple different kinds of functors with which my data can be wrapped, and hoping for a generic solution. If there was a lens that could do the filtering I could use that as well. |
2022-04-13 19:38:45 +0200 | <Henson> | but I don't know if lens does filtering |
2022-04-13 19:39:00 +0200 | <geekosaur> | :t filtered |
2022-04-13 19:39:02 +0200 | <lambdabot> | (Choice p, Applicative f) => (a -> Bool) -> Optic' p f a a |
2022-04-13 19:39:13 +0200 | <geekosaur> | lookslike it :þ |
2022-04-13 19:39:29 +0200 | geekosaur | just took a guess based on lens naming conventions |
2022-04-13 19:40:47 +0200 | vysn | (~vysn@user/vysn) (Ping timeout: 240 seconds) |
2022-04-13 19:41:59 +0200 | <Henson> | geekosaur: awesome, thanks for the helpful guess! |
2022-04-13 19:43:41 +0200 | <geekosaur> | note that it wants an Applicative instead of just a Functor though |
2022-04-13 19:44:19 +0200 | <geekosaur> | @hoogle Choice |
2022-04-13 19:44:19 +0200 | <lambdabot> | Control.Lens.Combinators class Profunctor p => Choice (p :: Type -> Type -> Type) |
2022-04-13 19:44:19 +0200 | <lambdabot> | Control.Lens.Prism class Profunctor p => Choice (p :: Type -> Type -> Type) |
2022-04-13 19:44:19 +0200 | <lambdabot> | Network.AWS.Lens class Profunctor p => Choice (p :: Type -> Type -> Type) |
2022-04-13 19:44:35 +0200 | zebrag | (~chris@user/zebrag) |
2022-04-13 19:45:46 +0200 | ccntrq | (~Thunderbi@imx92-1-78-204-187-6.fbx.proxad.net) (Remote host closed the connection) |
2022-04-13 19:47:17 +0200 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection) |
2022-04-13 19:50:48 +0200 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) |
2022-04-13 19:51:30 +0200 | ezzieyguywuf | (~Unknown@user/ezzieyguywuf) (Remote host closed the connection) |
2022-04-13 19:52:27 +0200 | ezzieyguywuf | (~Unknown@user/ezzieyguywuf) |
2022-04-13 19:54:42 +0200 | fendor_ | (~fendor@91.141.51.137.wireless.dyn.drei.com) |
2022-04-13 19:56:08 +0200 | deadmarshal_ | (~deadmarsh@95.38.117.55) (Ping timeout: 248 seconds) |
2022-04-13 19:56:41 +0200 | unyu | (~pyon@user/pyon) (Quit: brb) |
2022-04-13 19:56:57 +0200 | unyu | (~pyon@user/pyon) |
2022-04-13 19:57:03 +0200 | fendor | (~fendor@91.141.45.157.wireless.dyn.drei.com) (Ping timeout: 256 seconds) |
2022-04-13 19:57:06 +0200 | vicfred | (~vicfred@user/vicfred) |
2022-04-13 19:58:40 +0200 | econo | (uid147250@user/econo) |
2022-04-13 20:01:26 +0200 | merijn | (~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) |
2022-04-13 20:01:38 +0200 | yauhsien | (~yauhsien@61-231-36-20.dynamic-ip.hinet.net) (Remote host closed the connection) |
2022-04-13 20:03:31 +0200 | hodan | (~hodan@gw-ste.aim-net.cz) |
2022-04-13 20:08:57 +0200 | elkcl | (~elkcl@broadband-37-110-156-162.ip.moscow.rt.ru) (Ping timeout: 246 seconds) |
2022-04-13 20:08:59 +0200 | hodan | (~hodan@gw-ste.aim-net.cz) (Quit: Leaving) |
2022-04-13 20:10:55 +0200 | elkcl | (~elkcl@broadband-37-110-156-162.ip.moscow.rt.ru) |
2022-04-13 20:12:28 +0200 | yauhsien | (~yauhsien@61-231-36-20.dynamic-ip.hinet.net) |
2022-04-13 20:12:40 +0200 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) (Ping timeout: 248 seconds) |
2022-04-13 20:15:20 +0200 | mmhat | (~mmh@55d42e6b.access.ecotel.net) (Ping timeout: 248 seconds) |
2022-04-13 20:17:20 +0200 | yauhsien | (~yauhsien@61-231-36-20.dynamic-ip.hinet.net) (Ping timeout: 250 seconds) |
2022-04-13 20:19:00 +0200 | axeman | (~quassel@ip5f5aecfe.dynamic.kabel-deutschland.de) |
2022-04-13 20:22:09 +0200 | anomal | (~anomal@87.227.196.109) |
2022-04-13 20:25:40 +0200 | lcminer | (~l@net244-38-245-109.mbb.telenor.rs) |
2022-04-13 20:29:02 +0200 | deadmarshal_ | (~deadmarsh@95.38.117.55) |
2022-04-13 20:29:23 +0200 | mmhat | (~mmh@55d42e6b.access.ecotel.net) |
2022-04-13 20:29:40 +0200 | lcminer | (~l@net244-38-245-109.mbb.telenor.rs) (Leaving) |
2022-04-13 20:31:24 +0200 | immae | (~immae@2a01:4f8:141:53e7::) (Ping timeout: 240 seconds) |
2022-04-13 20:33:22 +0200 | deadmarshal_ | (~deadmarsh@95.38.117.55) (Ping timeout: 250 seconds) |
2022-04-13 20:34:27 +0200 | merijn | (~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) (Ping timeout: 256 seconds) |
2022-04-13 20:35:38 +0200 | Inst | (~Liam@c-98-208-218-119.hsd1.fl.comcast.net) |
2022-04-13 20:37:22 +0200 | yauhsien | (~yauhsien@61-231-36-20.dynamic-ip.hinet.net) |
2022-04-13 20:38:17 +0200 | zincy | (~zincy@2a00:23c8:970c:4801:2944:efb3:93ff:a753) |
2022-04-13 20:41:27 +0200 | zyklotomic | (~ethan@res388d-128-61-89-14.res.gatech.edu) (Ping timeout: 240 seconds) |
2022-04-13 20:41:43 +0200 | slack1256 | (~slack1256@186.11.40.52) |
2022-04-13 20:43:46 +0200 | slac88559 | (~slack1256@191.125.99.75) (Ping timeout: 250 seconds) |
2022-04-13 20:43:48 +0200 | zyklotomic | (~ethan@r4-128-61-92-120.res.gatech.edu) |
2022-04-13 20:44:41 +0200 | anomal | (~anomal@87.227.196.109) (Remote host closed the connection) |
2022-04-13 20:45:38 +0200 | odnes | (~odnes@5-203-221-3.pat.nym.cosmote.net) |
2022-04-13 20:48:56 +0200 | Macbethwin | (~chargen@D964062A.static.ziggozakelijk.nl) |
2022-04-13 20:56:56 +0200 | geekosaur | (~geekosaur@xmonad/geekosaur) (Remote host closed the connection) |
2022-04-13 20:58:45 +0200 | geekosaur | (~geekosaur@xmonad/geekosaur) |
2022-04-13 20:59:21 +0200 | yauhsien | (~yauhsien@61-231-36-20.dynamic-ip.hinet.net) (Remote host closed the connection) |
2022-04-13 21:00:31 +0200 | xkuru | (~xkuru@user/xkuru) (Ping timeout: 256 seconds) |
2022-04-13 21:01:17 +0200 | kenran | (~kenran@200116b82b0a3400d6f6663d91422485.dip.versatel-1u1.de) (Quit: WeeChat info:version) |
2022-04-13 21:04:26 +0200 | alp_ | (~alp@user/alp) |
2022-04-13 21:05:30 +0200 | kaph | (~kaph@dynamic-adsl-78-12-162-98.clienti.tiscali.it) (Read error: Connection reset by peer) |
2022-04-13 21:05:47 +0200 | kaph | (~kaph@dynamic-adsl-78-12-162-98.clienti.tiscali.it) |
2022-04-13 21:06:23 +0200 | anomal | (~anomal@87.227.196.109) |
2022-04-13 21:06:52 +0200 | lortabac | (~lortabac@2a01:e0a:541:b8f0:eeed:158a:fd38:dd13) |
2022-04-13 21:08:45 +0200 | immae | (~immae@2a01:4f8:141:53e7::) |
2022-04-13 21:08:49 +0200 | yauhsien | (~yauhsien@61-231-36-20.dynamic-ip.hinet.net) |
2022-04-13 21:12:58 +0200 | nort | (~textual@c-73-176-198-132.hsd1.in.comcast.net) |
2022-04-13 21:13:21 +0200 | yauhsien | (~yauhsien@61-231-36-20.dynamic-ip.hinet.net) (Ping timeout: 246 seconds) |
2022-04-13 21:18:55 +0200 | kaph_ | (~kaph@dynamic-adsl-78-12-162-98.clienti.tiscali.it) |
2022-04-13 21:19:06 +0200 | kaph | (~kaph@dynamic-adsl-78-12-162-98.clienti.tiscali.it) (Read error: Connection reset by peer) |
2022-04-13 21:22:00 +0200 | bahamas | (~lucian@84.232.140.158) (Ping timeout: 248 seconds) |
2022-04-13 21:25:40 +0200 | bahamas | (~lucian@84.232.140.158) |
2022-04-13 21:27:33 +0200 | jpds | (~jpds@gateway/tor-sasl/jpds) (Remote host closed the connection) |
2022-04-13 21:28:18 +0200 | jpds | (~jpds@gateway/tor-sasl/jpds) |
2022-04-13 21:28:51 +0200 | Unicorn_Princess | (~Unicorn_P@93-103-228-248.dynamic.t-2.net) (Remote host closed the connection) |
2022-04-13 21:29:47 +0200 | bahamas | (~lucian@84.232.140.158) (Ping timeout: 240 seconds) |
2022-04-13 21:33:41 +0200 | mastarija | (~mastarija@2a05:4f46:e04:6000:68d9:b076:ca11:8c6e) |
2022-04-13 21:33:57 +0200 | bahamas | (~lucian@84.232.140.158) |
2022-04-13 21:36:16 +0200 | pavonia | (~user@user/siracusa) |
2022-04-13 21:36:22 +0200 | <mastarija> | Remind me, how do I connect top level type variables to the ones defined in the `where` part? |
2022-04-13 21:36:48 +0200 | <geekosaur> | "connect"? |
2022-04-13 21:36:52 +0200 | <mastarija> | Besides not specifying type |
2022-04-13 21:37:18 +0200 | <mastarija> | myfunc :: Blah a -> Blah b; where helper :: Blah a |
2022-04-13 21:37:31 +0200 | <mastarija> | Types not matching cause it can't connect a to a1 |
2022-04-13 21:37:49 +0200 | <geekosaur> | oh. ScopedTypeVariables and specify the type as forall a b. Blah a -> Blah b |
2022-04-13 21:38:07 +0200 | bahamas | (~lucian@84.232.140.158) (Ping timeout: 240 seconds) |
2022-04-13 21:38:15 +0200 | <mastarija> | I think I've tried this |
2022-04-13 21:38:20 +0200 | <mastarija> | But I'll try again :D |
2022-04-13 21:38:30 +0200 | <geekosaur> | \it doesn't work without the forall |
2022-04-13 21:38:44 +0200 | <geekosaur> | and youhave to include the b in the forall even if you're not using it |
2022-04-13 21:38:44 +0200 | acidjnk | (~acidjnk@p200300d0c722df657ceecd71e591a56b.dip0.t-ipconnect.de) |
2022-04-13 21:39:56 +0200 | <mastarija> | geekosaur, thanks |
2022-04-13 21:43:22 +0200 | jackson99 | (~bc8147f2@cerf.good1.com) |
2022-04-13 21:44:24 +0200 | slac56075 | (~slack1256@191.126.99.75) |
2022-04-13 21:44:25 +0200 | bahamas | (~lucian@84.232.140.158) |
2022-04-13 21:45:42 +0200 | dhouthoo | (~dhouthoo@178-117-36-167.access.telenet.be) (Quit: WeeChat 3.5) |
2022-04-13 21:46:32 +0200 | notzmv | (~zmv@user/notzmv) (Ping timeout: 248 seconds) |
2022-04-13 21:46:59 +0200 | slack1256 | (~slack1256@186.11.40.52) (Ping timeout: 256 seconds) |
2022-04-13 21:49:06 +0200 | RevoGen | (~RevoGen@136.167.108.23) |
2022-04-13 21:49:12 +0200 | bahamas | (~lucian@84.232.140.158) (Ping timeout: 248 seconds) |
2022-04-13 21:50:44 +0200 | yauhsien | (~yauhsien@61-231-36-20.dynamic-ip.hinet.net) |
2022-04-13 21:50:54 +0200 | <RevoGen> | Quick question, why does "foldr (\x y-> x||y) False (repeat True)" evaluate but not "foldr (\x acc -> acc || (x<100)) False [1..]"? |
2022-04-13 21:51:06 +0200 | zincy | (~zincy@2a00:23c8:970c:4801:2944:efb3:93ff:a753) (Remote host closed the connection) |
2022-04-13 21:51:50 +0200 | Pickchea | (~private@user/pickchea) |
2022-04-13 21:53:59 +0200 | bahamas | (~lucian@84.232.140.158) |
2022-04-13 21:54:47 +0200 | zyklotomic | (~ethan@r4-128-61-92-120.res.gatech.edu) (Ping timeout: 240 seconds) |
2022-04-13 21:54:59 +0200 | kranius | (~pi@user/kranius) (Remote host closed the connection) |
2022-04-13 21:55:29 +0200 | yauhsien | (~yauhsien@61-231-36-20.dynamic-ip.hinet.net) (Ping timeout: 256 seconds) |
2022-04-13 21:57:07 +0200 | zyklotomic | (~ethan@res380d-128-61-81-14.res.gatech.edu) |
2022-04-13 21:58:07 +0200 | bahamas | (~lucian@84.232.140.158) (Ping timeout: 240 seconds) |
2022-04-13 21:58:34 +0200 | <mastarija> | RevoGen, because the second one is not "tail recursive"? |
2022-04-13 21:59:31 +0200 | <mastarija> | Or rather, because || shortcircuits on the first one |
2022-04-13 22:00:15 +0200 | <RevoGen> | why does it not short circuit in the second one? |
2022-04-13 22:00:31 +0200 | mbuf | (~Shakthi@223.184.55.97) (Quit: Leaving) |
2022-04-13 22:00:42 +0200 | <mastarija> | foldr is right associative e.g. (1 `f_x_acc` ( 2 `f_x_acc` ( 3 `f_x_acc` ... ) ) ) |
2022-04-13 22:00:49 +0200 | <dolio> | Because (||) looks at its first argument first. |
2022-04-13 22:00:52 +0200 | <mastarija> | so in the first case he sees x first |
2022-04-13 22:00:53 +0200 | odnes | (~odnes@5-203-221-3.pat.nym.cosmote.net) (Quit: Leaving) |
2022-04-13 22:01:02 +0200 | <mastarija> | and returns true because x is true |
2022-04-13 22:01:08 +0200 | <mastarija> | or in my example x would be one |
2022-04-13 22:01:21 +0200 | <mastarija> | However, in the second case, it first tries to evaluate `acc` |
2022-04-13 22:01:40 +0200 | <mastarija> | and if you look at the parentheses, acc is `( 2 `f_x_acc` ( 3 `f_x_acc` ... ) )` |
2022-04-13 22:01:41 +0200 | _ht | (~quassel@231-169-21-31.ftth.glasoperator.nl) (Remote host closed the connection) |
2022-04-13 22:01:46 +0200 | <mastarija> | which is infinite and never evaluates |
2022-04-13 22:02:12 +0200 | <sshine> | > foldr (\x acc -> (x<100) || acc) False [1..] |
2022-04-13 22:02:14 +0200 | <lambdabot> | True |
2022-04-13 22:03:11 +0200 | <RevoGen> | ah that's genius! thank you |
2022-04-13 22:04:26 +0200 | Guest785 | (~Guest7@2a00:23c6:2925:8801:a970:2fed:8ee0:243a) |
2022-04-13 22:04:35 +0200 | <mastarija> | Am I right about it not being tail recursive, I always forget what tail recursion is. It's when we can "produce" stuff while recursion is still running instead of waiting for the whole process to finish, right? |
2022-04-13 22:04:59 +0200 | lortabac | (~lortabac@2a01:e0a:541:b8f0:eeed:158a:fd38:dd13) (Quit: WeeChat 2.8) |
2022-04-13 22:05:30 +0200 | bahamas | (~lucian@84.232.140.158) |
2022-04-13 22:05:37 +0200 | <sshine> | > foldr ((||) . (< 100)) False [1..] |
2022-04-13 22:05:39 +0200 | <lambdabot> | True |
2022-04-13 22:05:45 +0200 | <sclv> | we had a discussion the other day about this -- tail recursion isn't a useful way of thinking about things in haskel |
2022-04-13 22:06:09 +0200 | <sclv> | haskell has an equational theory for reasoning that doesn't require you to think about things like "call stack" |
2022-04-13 22:06:16 +0200 | <sshine> | > any (< 100) [1..] |
2022-04-13 22:06:18 +0200 | <lambdabot> | True |
2022-04-13 22:06:19 +0200 | <jackson99> | > any (<100) [1..] |
2022-04-13 22:06:20 +0200 | <lambdabot> | True |
2022-04-13 22:06:48 +0200 | rawley | (~rawley@142.99.241.242) |
2022-04-13 22:07:44 +0200 | Macbethwin | (~chargen@D964062A.static.ziggozakelijk.nl) (Read error: Connection reset by peer) |
2022-04-13 22:08:43 +0200 | <exarkun> | mastarija: in a language like C, you might have a function and the last thing that function says to do is to recurse. that's tail recursion - recursion happens at the "tail" of the function. |
2022-04-13 22:08:56 +0200 | Guest785 | (~Guest7@2a00:23c6:2925:8801:a970:2fed:8ee0:243a) (Ping timeout: 250 seconds) |
2022-04-13 22:09:19 +0200 | <exarkun> | mastarija: then, you might have a runtime with the tail call elimination optimization. that optimization notices that the function that is making the call has nothing more to do after the call returns. |
2022-04-13 22:09:31 +0200 | <mastarija> | Yes, so it does some work first, and then it recurses. It doesn't first recurse and do work. |
2022-04-13 22:09:49 +0200 | <exarkun> | mastarija: so it can clean up the function (eg reclaim its stack space) on its way into that call, even though strictly speaking the function isn't done yet |
2022-04-13 22:10:09 +0200 | <Franciman> | > haskell has an equational theory for reasoning that doesn't require you to think about things like "call stack" |
2022-04-13 22:10:11 +0200 | <Franciman> | WUT? |
2022-04-13 22:10:11 +0200 | <lambdabot> | error: |
2022-04-13 22:10:12 +0200 | <lambdabot> | Variable not in scope: |
2022-04-13 22:10:12 +0200 | <lambdabot> | haskell |
2022-04-13 22:10:23 +0200 | zincy | (~zincy@host86-160-236-152.range86-160.btcentralplus.com) |
2022-04-13 22:10:26 +0200 | <Franciman> | it only works if equational reasoning is what you need |
2022-04-13 22:10:28 +0200 | <geekosaur> | Franciman, haskell uses graph reduction |
2022-04-13 22:10:28 +0200 | bahamas | (~lucian@84.232.140.158) (Ping timeout: 272 seconds) |
2022-04-13 22:10:36 +0200 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) |
2022-04-13 22:10:36 +0200 | <sshine> | Franciman, you need to import haskell. |
2022-04-13 22:10:37 +0200 | <exarkun> | mastarija: right. you can't have more work to do after the recursion or the recursion isn't in the tail position and it's not tail recursion. |
2022-04-13 22:10:42 +0200 | RevoGen | (~RevoGen@136.167.108.23) (Quit: Client closed) |
2022-04-13 22:10:47 +0200 | <Franciman> | sshine: :D |
2022-04-13 22:11:07 +0200 | RevoGen | (~RevoGen@136.167.108.23) |
2022-04-13 22:11:20 +0200 | <Franciman> | geekosaur: i see |
2022-04-13 22:11:24 +0200 | <Franciman> | thanks |
2022-04-13 22:11:25 +0200 | <mastarija> | so then, right fold is tail recursive, but left fold isn't, right? |
2022-04-13 22:11:46 +0200 | <sshine> | so to understand Haskell's evaluation in terms of understanding what tail-recursion is, you need to put on 3D glasses. |
2022-04-13 22:12:09 +0200 | <mastarija> | *puts 3D glasses on |
2022-04-13 22:13:28 +0200 | mmhat | (~mmh@55d42e6b.access.ecotel.net) (Ping timeout: 250 seconds) |
2022-04-13 22:13:37 +0200 | slac56075 | (~slack1256@191.126.99.75) (Ping timeout: 256 seconds) |
2022-04-13 22:14:01 +0200 | <dolio> | I don't see what tail recursion has to do with whether this example terminates. |
2022-04-13 22:14:18 +0200 | <sshine> | https://stackoverflow.com/a/6889335/235908 |
2022-04-13 22:14:26 +0200 | <geekosaur> | looks to me like trying to understand it procedurally, which doesn't quite work |
2022-04-13 22:14:41 +0200 | <geekosaur> | you can sort of fake it for this simple example but it falls apart for more complex ones |
2022-04-13 22:15:45 +0200 | <dolio> | It terminates or not due to the evaluation order, not because of whether memory is being consumed. |
2022-04-13 22:16:07 +0200 | redb | (~nmh@136.49.49.211) (Ping timeout: 240 seconds) |
2022-04-13 22:16:27 +0200 | coot | (~coot@213.134.190.95) (Quit: coot) |
2022-04-13 22:22:41 +0200 | axeman | (~quassel@ip5f5aecfe.dynamic.kabel-deutschland.de) (Ping timeout: 256 seconds) |
2022-04-13 22:23:48 +0200 | Lord_of_Life_ | (~Lord@user/lord-of-life/x-2819915) |
2022-04-13 22:23:59 +0200 | bahamas | (~lucian@84.232.140.158) |
2022-04-13 22:24:57 +0200 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 256 seconds) |
2022-04-13 22:25:07 +0200 | Lord_of_Life_ | Lord_of_Life |
2022-04-13 22:26:13 +0200 | <Henson> | does anybody here use vscode on Linux for Haskell development? I've got the problem where the haskell extension for vscode isn't properly recognizing when I'm working on files that are in the test build area of my cabal file. Anything within the main library gets compiled interactively with helpful immediate feedback on errors, but nothing in the test suite does. |
2022-04-13 22:26:48 +0200 | RevoGen | (~RevoGen@136.167.108.23) (Remote host closed the connection) |
2022-04-13 22:26:54 +0200 | Major_Biscuit | (~MajorBisc@83.22.225.84.ipv4.supernova.orange.pl) |
2022-04-13 22:27:29 +0200 | mmhat | (~mmh@55d42e6b.access.ecotel.net) |
2022-04-13 22:28:27 +0200 | bahamas | (~lucian@84.232.140.158) (Ping timeout: 240 seconds) |
2022-04-13 22:28:33 +0200 | <sclv> | tail recursion is unrelated to the example. you can reason purely equationally, as long as you understand (||) is strict in its first argument and nonstrict in its second. |
2022-04-13 22:30:04 +0200 | jonathanx | (~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) |
2022-04-13 22:30:11 +0200 | zincy | (~zincy@host86-160-236-152.range86-160.btcentralplus.com) (Remote host closed the connection) |
2022-04-13 22:31:26 +0200 | merijn | (~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) |
2022-04-13 22:37:37 +0200 | mastarija | (~mastarija@2a05:4f46:e04:6000:68d9:b076:ca11:8c6e) (Quit: Leaving) |
2022-04-13 22:41:28 +0200 | Major_Biscuit | (~MajorBisc@83.22.225.84.ipv4.supernova.orange.pl) (Ping timeout: 248 seconds) |
2022-04-13 22:44:05 +0200 | redb | (~nmh@136.49.49.211) |
2022-04-13 22:48:07 +0200 | redb | (~nmh@136.49.49.211) (Ping timeout: 240 seconds) |
2022-04-13 22:48:32 +0200 | immae | (~immae@2a01:4f8:141:53e7::) (Quit: WeeChat 3.3) |
2022-04-13 22:48:33 +0200 | [_________] | (~oos95GWG@user/oos95GWG) |
2022-04-13 22:52:16 +0200 | ph88 | (~ph88@ip5f5af71f.dynamic.kabel-deutschland.de) (Quit: Leaving) |
2022-04-13 22:55:07 +0200 | Inst | (~Liam@c-98-208-218-119.hsd1.fl.comcast.net) (Ping timeout: 240 seconds) |
2022-04-13 22:55:57 +0200 | immae | (~immae@2a01:4f8:141:53e7::) |
2022-04-13 22:58:57 +0200 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) (Ping timeout: 256 seconds) |
2022-04-13 22:59:55 +0200 | redb | (~nmh@136.49.49.211) |
2022-04-13 23:04:37 +0200 | redb | (~nmh@136.49.49.211) (Ping timeout: 256 seconds) |
2022-04-13 23:05:02 +0200 | ec | (~ec@gateway/tor-sasl/ec) |
2022-04-13 23:05:28 +0200 | merijn | (~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) (Ping timeout: 248 seconds) |
2022-04-13 23:06:11 +0200 | <lechner> | Hi, is there a difference between running ghc-pkg --global and simply ghc-pkg without --package-db ? |
2022-04-13 23:12:10 +0200 | vicfred | (~vicfred@user/vicfred) (Quit: Leaving) |
2022-04-13 23:13:35 +0200 | <geekosaur> | ghc-pkg by default shows both global and user dbs |
2022-04-13 23:13:47 +0200 | <geekosaur> | --global constrains it to only the global db |
2022-04-13 23:15:29 +0200 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) |
2022-04-13 23:16:23 +0200 | Pickchea | (~private@user/pickchea) (Quit: Leaving) |
2022-04-13 23:16:25 +0200 | <lechner> | geekosaur: thank you! |
2022-04-13 23:17:48 +0200 | Major_Biscuit | (~MajorBisc@83.22.225.84.ipv4.supernova.orange.pl) |
2022-04-13 23:18:07 +0200 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 240 seconds) |
2022-04-13 23:18:22 +0200 | <lechner> | Can I run ghc-pkg in a way that so it looks in both --global and --package-db ? |
2022-04-13 23:18:35 +0200 | oats | (~thomas@user/oats) (Quit: until later, my friends) |
2022-04-13 23:19:02 +0200 | <geekosaur> | no, if you specify --package-db it looks only there |
2022-04-13 23:19:14 +0200 | <lechner> | geekosaur: okay, thanks! |
2022-04-13 23:19:21 +0200 | redb | (~nmh@136.49.49.211) |
2022-04-13 23:24:36 +0200 | oats | (~thomas@user/oats) |
2022-04-13 23:26:30 +0200 | lavaman | (~lavaman@c-174-63-118-52.hsd1.ma.comcast.net) |
2022-04-13 23:26:47 +0200 | rawley | (~rawley@142.99.241.242) (Remote host closed the connection) |
2022-04-13 23:32:07 +0200 | jonathanx | (~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) (Ping timeout: 240 seconds) |
2022-04-13 23:36:24 +0200 | fendor_ | (~fendor@91.141.51.137.wireless.dyn.drei.com) (Remote host closed the connection) |
2022-04-13 23:47:40 +0200 | anomal | (~anomal@87.227.196.109) (Remote host closed the connection) |
2022-04-13 23:47:59 +0200 | anomal | (~anomal@87.227.196.109) |
2022-04-13 23:50:12 +0200 | geekosaur | (~geekosaur@xmonad/geekosaur) (Quit: Leaving) |
2022-04-13 23:51:55 +0200 | littlebobeep | (~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 240 seconds) |
2022-04-13 23:51:57 +0200 | geekosaur | (~geekosaur@xmonad/geekosaur) |
2022-04-13 23:57:12 +0200 | notzmv | (~zmv@user/notzmv) |
2022-04-13 23:58:46 +0200 | littlebobeep | (~alMalsamo@gateway/tor-sasl/almalsamo) |
2022-04-13 23:59:47 +0200 | machinedgod | (~machinedg@24.105.81.50) (Ping timeout: 240 seconds) |