2023-12-27 00:04:01 +0100 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:d8e3:d1d3:e447:ed54) |
2023-12-27 00:10:05 +0100 | _ht | (~Thunderbi@28-52-174-82.ftth.glasoperator.nl) (Remote host closed the connection) |
2023-12-27 00:31:53 +0100 | takuan | (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection) |
2023-12-27 00:36:01 +0100 | user2 | (~user@162.255.84.96) (Quit: WeeChat 2.8) |
2023-12-27 00:42:40 +0100 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:d8e3:d1d3:e447:ed54) (Remote host closed the connection) |
2023-12-27 00:45:45 +0100 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:d8e3:d1d3:e447:ed54) |
2023-12-27 00:46:31 +0100 | azimut | (~azimut@gateway/tor-sasl/azimut) (Ping timeout: 240 seconds) |
2023-12-27 00:47:14 +0100 | eguo^ | (~cd@c-98-242-74-66.hsd1.ga.comcast.net) |
2023-12-27 00:49:06 +0100 | Axman6 | (~Axman6@user/axman6) (Remote host closed the connection) |
2023-12-27 01:04:48 +0100 | TonyStone | (~TonyStone@074-076-057-186.res.spectrum.com) (Quit: Leaving) |
2023-12-27 01:09:03 +0100 | rvalue | (~rvalue@user/rvalue) (Ping timeout: 260 seconds) |
2023-12-27 01:11:49 +0100 | myclm_ | (~myclm_@2a02:810d:b83f:fcc0:7766:ea2b:35b7:e568) (Ping timeout: 256 seconds) |
2023-12-27 01:14:00 +0100 | arkoinad | (~abhinav@c-67-169-139-16.hsd1.ca.comcast.net) (Ping timeout: 256 seconds) |
2023-12-27 01:14:06 +0100 | waldo | (~waldo@user/waldo) (Ping timeout: 245 seconds) |
2023-12-27 01:14:46 +0100 | acidjnk | (~acidjnk@p200300d6e72b9309f56e7f62ba59dc38.dip0.t-ipconnect.de) (Ping timeout: 260 seconds) |
2023-12-27 01:18:22 +0100 | rvalue | (~rvalue@user/rvalue) |
2023-12-27 01:22:13 +0100 | nate4 | (~nate@c-98-45-158-125.hsd1.ca.comcast.net) |
2023-12-27 01:27:07 +0100 | nate4 | (~nate@c-98-45-158-125.hsd1.ca.comcast.net) (Ping timeout: 256 seconds) |
2023-12-27 01:39:53 +0100 | sawilagar | (~sawilagar@user/sawilagar) (Ping timeout: 252 seconds) |
2023-12-27 01:55:11 +0100 | machinedgod | (~machinedg@d198-53-218-113.abhsia.telus.net) (Ping timeout: 264 seconds) |
2023-12-27 02:01:18 +0100 | Axman6 | (~Axman6@user/axman6) |
2023-12-27 02:16:33 +0100 | Lord_of_Life_ | (~Lord@user/lord-of-life/x-2819915) |
2023-12-27 02:16:47 +0100 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 264 seconds) |
2023-12-27 02:17:12 +0100 | ft | (~ft@mue-88-130-105-195.dsl.tropolys.de) (Ping timeout: 268 seconds) |
2023-12-27 02:17:53 +0100 | Tuplanolla | (~Tuplanoll@91-159-69-171.elisa-laajakaista.fi) (Quit: Leaving.) |
2023-12-27 02:17:56 +0100 | Lord_of_Life_ | Lord_of_Life |
2023-12-27 02:18:23 +0100 | tessier | (~treed@ip72-197-145-89.sd.sd.cox.net) (Ping timeout: 252 seconds) |
2023-12-27 02:18:38 +0100 | ft | (~ft@mue-88-130-106-233.dsl.tropolys.de) |
2023-12-27 02:20:10 +0100 | tessier | (~treed@ec2-184-72-149-67.compute-1.amazonaws.com) |
2023-12-27 02:20:48 +0100 | abrantesasf | (~abrantesa@179.217.48.72) (Remote host closed the connection) |
2023-12-27 02:20:59 +0100 | chomwitt | (~chomwitt@ppp-94-67-236-252.home.otenet.gr) (Ping timeout: 264 seconds) |
2023-12-27 02:25:16 +0100 | nate4 | (~nate@c-98-45-158-125.hsd1.ca.comcast.net) |
2023-12-27 02:29:56 +0100 | nate4 | (~nate@c-98-45-158-125.hsd1.ca.comcast.net) (Ping timeout: 245 seconds) |
2023-12-27 02:37:26 +0100 | xdminsy | (~xdminsy@117.147.71.169) |
2023-12-27 02:42:20 +0100 | erina | (~erina@178.157.56.217.16clouds.com) |
2023-12-27 02:50:02 +0100 | erina | (~erina@178.157.56.217.16clouds.com) (Remote host closed the connection) |
2023-12-27 02:50:22 +0100 | erina | (~erina@2001:da8:d800:e52b:5332:9a02:5634:a173) |
2023-12-27 02:50:36 +0100 | xdminsy | (~xdminsy@117.147.71.169) (Read error: Connection reset by peer) |
2023-12-27 02:51:08 +0100 | xdminsy | (~xdminsy@117.147.71.169) |
2023-12-27 03:02:27 +0100 | nate4 | (~nate@c-98-45-158-125.hsd1.ca.comcast.net) |
2023-12-27 03:03:23 +0100 | pointlessslippe1 | (~pointless@212.82.82.3) (Ping timeout: 260 seconds) |
2023-12-27 03:06:08 +0100 | pointlessslippe1 | (~pointless@212.82.82.3) |
2023-12-27 03:10:47 +0100 | nate4 | (~nate@c-98-45-158-125.hsd1.ca.comcast.net) (Ping timeout: 264 seconds) |
2023-12-27 03:33:00 +0100 | _xor | (~xor@72.49.195.41) |
2023-12-27 03:34:54 +0100 | xff0x | (~xff0x@2405:6580:b080:900:f37c:caaf:db27:6fe4) (Ping timeout: 268 seconds) |
2023-12-27 03:51:19 +0100 | rosco | (~rosco@113.166.93.113) |
2023-12-27 04:03:37 +0100 | tv | (~tv@user/tv) (Ping timeout: 255 seconds) |
2023-12-27 04:06:48 +0100 | rosco | (~rosco@113.166.93.113) (Quit: Gotta go.) |
2023-12-27 04:15:26 +0100 | nate4 | (~nate@c-98-45-158-125.hsd1.ca.comcast.net) |
2023-12-27 04:17:06 +0100 | tv | (~tv@user/tv) |
2023-12-27 04:23:59 +0100 | xff0x | (~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp) |
2023-12-27 04:30:07 +0100 | euleritian | (~euleritia@dynamic-046-114-204-162.46.114.pool.telefonica.de) (Read error: Connection reset by peer) |
2023-12-27 04:30:19 +0100 | euleritian | (~euleritia@p200300d40f2c2a003992c024416f4d48.dip0.t-ipconnect.de) |
2023-12-27 04:30:26 +0100 | Xyloes | (~wyx@2400:dd01:103a:1012:d681:d7ff:fedb:298d) |
2023-12-27 04:32:04 +0100 | td_ | (~td@i53870912.versanet.de) (Ping timeout: 276 seconds) |
2023-12-27 04:33:27 +0100 | td_ | (~td@i53870914.versanet.de) |
2023-12-27 04:34:13 +0100 | Xyloes | (~wyx@2400:dd01:103a:1012:d681:d7ff:fedb:298d) (Read error: Connection reset by peer) |
2023-12-27 04:34:36 +0100 | Xyloes | (~wyx@2400:dd01:103a:1012:d681:d7ff:fedb:298d) |
2023-12-27 04:36:09 +0100 | Xyloes | (~wyx@2400:dd01:103a:1012:d681:d7ff:fedb:298d) (Client Quit) |
2023-12-27 04:36:25 +0100 | Xyloes | (~wyx@2400:dd01:103a:1012:d681:d7ff:fedb:298d) |
2023-12-27 04:55:28 +0100 | euleritian | (~euleritia@p200300d40f2c2a003992c024416f4d48.dip0.t-ipconnect.de) (Ping timeout: 276 seconds) |
2023-12-27 04:56:17 +0100 | euleritian | (~euleritia@p200300d40f2c2a00f0cf020fce514be2.dip0.t-ipconnect.de) |
2023-12-27 04:58:01 +0100 | finn_elija | (~finn_elij@user/finn-elija/x-0085643) |
2023-12-27 04:58:01 +0100 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija))) |
2023-12-27 04:58:01 +0100 | finn_elija | FinnElija |
2023-12-27 05:07:33 +0100 | rekahsoft | (~rekahsoft@67.70.201.226) (Ping timeout: 256 seconds) |
2023-12-27 05:07:57 +0100 | citrus_maxima | (~citrus_ma@024-102-111-089.res.spectrum.com) |
2023-12-27 05:09:53 +0100 | citrus_maxima | (~citrus_ma@024-102-111-089.res.spectrum.com) (Client Quit) |
2023-12-27 05:11:36 +0100 | waleee | (~waleee@h-176-10-144-38.na.cust.bahnhof.se) (Ping timeout: 245 seconds) |
2023-12-27 05:18:40 +0100 | nate4 | (~nate@c-98-45-158-125.hsd1.ca.comcast.net) (Ping timeout: 246 seconds) |
2023-12-27 05:21:01 +0100 | aforemny | (~aforemny@2001:9e8:6cf9:b600:ba7b:aec4:48c0:e281) |
2023-12-27 05:21:59 +0100 | aforemny_ | (~aforemny@i59F516F3.versanet.de) (Ping timeout: 260 seconds) |
2023-12-27 05:37:07 +0100 | trev | (~trev@user/trev) |
2023-12-27 06:07:52 +0100 | EvanR | (~EvanR@user/evanr) (Remote host closed the connection) |
2023-12-27 06:08:11 +0100 | EvanR | (~EvanR@user/evanr) |
2023-12-27 06:22:02 +0100 | tessier | (~treed@ec2-184-72-149-67.compute-1.amazonaws.com) (Ping timeout: 252 seconds) |
2023-12-27 06:23:16 +0100 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) |
2023-12-27 06:25:50 +0100 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection) |
2023-12-27 06:26:50 +0100 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) |
2023-12-27 06:37:53 +0100 | johnw | (~johnw@69.62.242.138) (Quit: ZNC - http://znc.in) |
2023-12-27 06:44:06 +0100 | tessier | (~treed@ec2-184-72-149-67.compute-1.amazonaws.com) |
2023-12-27 06:46:13 +0100 | peterbecich | (~Thunderbi@047-229-123-186.res.spectrum.com) |
2023-12-27 07:01:59 +0100 | _ht | (~Thunderbi@28-52-174-82.ftth.glasoperator.nl) |
2023-12-27 07:05:13 +0100 | phu | (~user@76.202.115.164) |
2023-12-27 07:05:19 +0100 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 240 seconds) |
2023-12-27 07:08:09 +0100 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) |
2023-12-27 07:18:02 +0100 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection) |
2023-12-27 07:19:15 +0100 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) |
2023-12-27 07:27:24 +0100 | notzmv | (~zmv@user/notzmv) (Ping timeout: 256 seconds) |
2023-12-27 07:28:22 +0100 | tv | (~tv@user/tv) (Ping timeout: 255 seconds) |
2023-12-27 07:34:02 +0100 | Unicorn_Princess | (~Unicorn_P@user/Unicorn-Princess/x-3540542) |
2023-12-27 07:41:54 +0100 | tv | (~tv@user/tv) |
2023-12-27 07:52:09 +0100 | johnw | (~johnw@69.62.242.138) |
2023-12-27 08:03:40 +0100 | michalz | (~michalz@185.246.207.221) |
2023-12-27 08:04:35 +0100 | michalz | (~michalz@185.246.207.221) (Client Quit) |
2023-12-27 08:07:05 +0100 | azimut | (~azimut@gateway/tor-sasl/azimut) |
2023-12-27 08:07:20 +0100 | michalz | (~michalz@185.246.207.221) |
2023-12-27 08:08:35 +0100 | not_reserved | (~not_reser@154.16.157.99) (Quit: Client closed) |
2023-12-27 08:16:55 +0100 | azimut | (~azimut@gateway/tor-sasl/azimut) (Ping timeout: 240 seconds) |
2023-12-27 08:18:05 +0100 | Guest92 | (~Guest57@pool-100-7-24-183.rcmdva.fios.verizon.net) |
2023-12-27 08:21:26 +0100 | Guest92 | (~Guest57@pool-100-7-24-183.rcmdva.fios.verizon.net) (Client Quit) |
2023-12-27 08:23:55 +0100 | <albet70> | except aeson, is there other lib for json? |
2023-12-27 08:24:52 +0100 | nate4 | (~nate@c-98-45-158-125.hsd1.ca.comcast.net) |
2023-12-27 08:25:41 +0100 | euleritian | (~euleritia@p200300d40f2c2a00f0cf020fce514be2.dip0.t-ipconnect.de) (Ping timeout: 240 seconds) |
2023-12-27 08:25:50 +0100 | euleritian | (~euleritia@dynamic-046-114-204-038.46.114.pool.telefonica.de) |
2023-12-27 08:26:05 +0100 | azimut | (~azimut@gateway/tor-sasl/azimut) |
2023-12-27 08:29:34 +0100 | nate4 | (~nate@c-98-45-158-125.hsd1.ca.comcast.net) (Ping timeout: 255 seconds) |
2023-12-27 08:47:29 +0100 | myclm_ | (~myclm_@2a02:810d:b83f:fcc0:7766:ea2b:35b7:e568) |
2023-12-27 08:49:42 +0100 | myclm_ | (~myclm_@2a02:810d:b83f:fcc0:7766:ea2b:35b7:e568) (Remote host closed the connection) |
2023-12-27 08:49:59 +0100 | myclm_ | (~myclm_@2a02:810d:b83f:fcc0:7766:ea2b:35b7:e568) |
2023-12-27 09:01:46 +0100 | [_] | (~itchyjunk@user/itchyjunk/x-7353470) |
2023-12-27 09:01:54 +0100 | notzmv | (~zmv@user/notzmv) |
2023-12-27 09:02:24 +0100 | arkoinad | (~abhinav@c-67-169-139-16.hsd1.ca.comcast.net) |
2023-12-27 09:03:07 +0100 | myclm_ | (~myclm_@2a02:810d:b83f:fcc0:7766:ea2b:35b7:e568) (Remote host closed the connection) |
2023-12-27 09:03:29 +0100 | myclm_ | (~myclm_@2a02:810d:b83f:fcc0:7766:ea2b:35b7:e568) |
2023-12-27 09:04:00 +0100 | euleritian | (~euleritia@dynamic-046-114-204-038.46.114.pool.telefonica.de) (Read error: Connection reset by peer) |
2023-12-27 09:04:19 +0100 | euleritian | (~euleritia@p200300d40f2c2a008b4c319d05b882f3.dip0.t-ipconnect.de) |
2023-12-27 09:04:30 +0100 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 268 seconds) |
2023-12-27 09:05:59 +0100 | shriekingnoise | (~shrieking@186.137.175.87) (Ping timeout: 264 seconds) |
2023-12-27 09:07:52 +0100 | takuan | (~takuan@178-116-218-225.access.telenet.be) |
2023-12-27 09:13:40 +0100 | myclm_ | (~myclm_@2a02:810d:b83f:fcc0:7766:ea2b:35b7:e568) (Ping timeout: 255 seconds) |
2023-12-27 09:15:29 +0100 | chomwitt | (~chomwitt@2a02:587:7a1b:bb00:1ac0:4dff:fedb:a3f1) |
2023-12-27 09:18:09 +0100 | arkoinad | (~abhinav@c-67-169-139-16.hsd1.ca.comcast.net) (Quit: leaving) |
2023-12-27 09:21:43 +0100 | Me-me | (~me-me@2602:ff16:3:0:1:dc:beef:d00d) (Changing host) |
2023-12-27 09:21:43 +0100 | Me-me | (~me-me@user/me-me) |
2023-12-27 09:24:56 +0100 | euleritian | (~euleritia@p200300d40f2c2a008b4c319d05b882f3.dip0.t-ipconnect.de) (Ping timeout: 245 seconds) |
2023-12-27 09:25:14 +0100 | euleritian | (~euleritia@dynamic-046-114-204-038.46.114.pool.telefonica.de) |
2023-12-27 09:28:08 +0100 | lortabac | (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) |
2023-12-27 09:31:45 +0100 | <Axman6> | albet70: yes, quite a few. waargonaut comes to mind, and the haskellworks optimised parsers |
2023-12-27 09:33:27 +0100 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2023-12-27 09:37:17 +0100 | <Axman6> | searching hackage for json returns a lot of results (some of them are elevant but it's a pretty common term) |
2023-12-27 09:37:44 +0100 | acidjnk | (~acidjnk@p200300d6e72b93690592ad695073e43e.dip0.t-ipconnect.de) |
2023-12-27 09:38:33 +0100 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Read error: Connection reset by peer) |
2023-12-27 09:42:57 +0100 | coot | (~coot@89-69-206-216.dynamic.chello.pl) |
2023-12-27 09:54:15 +0100 | machinedgod | (~machinedg@d198-53-218-113.abhsia.telus.net) |
2023-12-27 10:01:51 +0100 | mikess | (~sam@user/mikess) (Ping timeout: 268 seconds) |
2023-12-27 10:11:17 +0100 | chomwitt | (~chomwitt@2a02:587:7a1b:bb00:1ac0:4dff:fedb:a3f1) (Ping timeout: 256 seconds) |
2023-12-27 10:11:25 +0100 | peterbecich | (~Thunderbi@047-229-123-186.res.spectrum.com) (Ping timeout: 268 seconds) |
2023-12-27 10:16:31 +0100 | euleritian | (~euleritia@dynamic-046-114-204-038.46.114.pool.telefonica.de) (Read error: Connection reset by peer) |
2023-12-27 10:16:51 +0100 | euleritian | (~euleritia@p200300d40f2c2a00d0e847f4538e9b72.dip0.t-ipconnect.de) |
2023-12-27 10:25:50 +0100 | alexherbo2 | (~alexherbo@2a01cb0084fc5100e42c42cbc84847f6.ipv6.abo.wanadoo.fr) |
2023-12-27 10:31:04 +0100 | coot | (~coot@89-69-206-216.dynamic.chello.pl) (Quit: coot) |
2023-12-27 10:34:01 +0100 | <erina> | There's parsecs for json too, as far as I know. |
2023-12-27 10:34:58 +0100 | phma | (~phma@host-67-44-208-117.hnremote.net) (Read error: Connection reset by peer) |
2023-12-27 10:36:01 +0100 | phma | (phma@2001:5b0:210d:e5c8:5b6c:6fdf:a5b6:3ad0) |
2023-12-27 10:38:29 +0100 | tzh | (~tzh@c-71-193-181-0.hsd1.or.comcast.net) (Quit: zzz) |
2023-12-27 10:39:16 +0100 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) |
2023-12-27 10:42:44 +0100 | Tuplanolla | (~Tuplanoll@91-159-69-171.elisa-laajakaista.fi) |
2023-12-27 10:43:10 +0100 | [_] | (~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 268 seconds) |
2023-12-27 10:50:23 +0100 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:d8e3:d1d3:e447:ed54) (Remote host closed the connection) |
2023-12-27 10:56:45 +0100 | chele | (~chele@user/chele) |
2023-12-27 11:03:03 +0100 | econo_ | (uid147250@id-147250.tinside.irccloud.com) (Quit: Connection closed for inactivity) |
2023-12-27 11:03:18 +0100 | mokee | (~mokee@37.228.215.150) |
2023-12-27 11:05:31 +0100 | danse-nr3 | (~danse@151.57.208.222) |
2023-12-27 11:07:42 +0100 | gawen | (~gawen@user/gawen) (Quit: cya) |
2023-12-27 11:09:03 +0100 | gawen | (~gawen@user/gawen) |
2023-12-27 11:11:11 +0100 | xff0x | (~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp) (Ping timeout: 245 seconds) |
2023-12-27 11:15:38 +0100 | Sgeo | (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
2023-12-27 11:19:12 +0100 | sawilagar | (~sawilagar@user/sawilagar) |
2023-12-27 11:23:16 +0100 | euleritian | (~euleritia@p200300d40f2c2a00d0e847f4538e9b72.dip0.t-ipconnect.de) (Ping timeout: 245 seconds) |
2023-12-27 11:23:52 +0100 | euleritian | (~euleritia@dynamic-046-114-204-038.46.114.pool.telefonica.de) |
2023-12-27 11:24:45 +0100 | [_] | (~itchyjunk@user/itchyjunk/x-7353470) |
2023-12-27 11:26:11 +0100 | euleritian | (~euleritia@dynamic-046-114-204-038.46.114.pool.telefonica.de) (Read error: Connection reset by peer) |
2023-12-27 11:26:51 +0100 | euleritian | (~euleritia@p200300d40f2c2a0081561e43e466a6d0.dip0.t-ipconnect.de) |
2023-12-27 11:28:00 +0100 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:5475:1864:2ce2:3923) |
2023-12-27 11:28:43 +0100 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 276 seconds) |
2023-12-27 11:39:47 +0100 | <albet70> | what's the differnet between Word16 and Int? |
2023-12-27 11:42:25 +0100 | <int-e> | this question suggests that you think they are the same... how do you think they are the same? |
2023-12-27 11:42:34 +0100 | drdo8 | (~drdo@bl14-14-49.dsl.telepac.pt) |
2023-12-27 11:42:45 +0100 | <danse-nr3> | you mean between Word and Int? Word16 is 16 bits, while Word has the same size of Int https://hackage.haskell.org/package/base-4.16.3.0/docs/Data-Word.html#t:Word |
2023-12-27 11:43:15 +0100 | drdo | (~drdo@bl14-14-49.dsl.telepac.pt) (Ping timeout: 260 seconds) |
2023-12-27 11:43:15 +0100 | drdo8 | drdo |
2023-12-27 11:43:17 +0100 | lortabac | (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) (Ping timeout: 240 seconds) |
2023-12-27 11:45:38 +0100 | <albet70> | how I can change Int to Word16? |
2023-12-27 11:46:10 +0100 | <danse-nr3> | @hoogle Int -> Word16 |
2023-12-27 11:46:10 +0100 | <lambdabot> | Sound.OSC.Coding.Convert int_to_word16 :: Int -> Word16 |
2023-12-27 11:46:10 +0100 | <lambdabot> | HaskellWorks.Data.Bits.Broadword.Word16 h :: Int -> Word16 |
2023-12-27 11:46:10 +0100 | <lambdabot> | HaskellWorks.Data.Bits.Broadword.Word16 l :: Int -> Word16 |
2023-12-27 11:46:21 +0100 | <int-e> | `fromIntegral` with the caveat that it's a lossy function |
2023-12-27 11:47:03 +0100 | <danse-nr3> | % :t fromInt |
2023-12-27 11:47:03 +0100 | <yahb2> | <interactive>:1:1: error: Variable not in scope: fromInt |
2023-12-27 11:47:09 +0100 | <danse-nr3> | % :t fromIntegral |
2023-12-27 11:47:09 +0100 | <yahb2> | fromIntegral :: (Integral a, Num b) => a -> b |
2023-12-27 11:47:12 +0100 | <danse-nr3> | % :t fromInteger |
2023-12-27 11:47:12 +0100 | <yahb2> | fromInteger :: Num a => Integer -> a |
2023-12-27 11:47:40 +0100 | <int-e> | > let x, y :: Int; x = 10; y = 1000000 in (fromIntegral x :: Word16, fromIntegral y :: Word16) |
2023-12-27 11:47:41 +0100 | <lambdabot> | (10,16960) |
2023-12-27 11:51:39 +0100 | <albet70> | @hoogle PortNumber |
2023-12-27 11:51:39 +0100 | <lambdabot> | Network.Socket data PortNumber |
2023-12-27 11:51:39 +0100 | <lambdabot> | Database.Redis PortNumber :: PortNumber -> PortID |
2023-12-27 11:51:39 +0100 | <lambdabot> | Network.BSD data PortNumber |
2023-12-27 11:52:13 +0100 | <albet70> | how to change Int to PortNumber |
2023-12-27 11:52:51 +0100 | <erina> | @hoogle Int -> PortNumber |
2023-12-27 11:52:52 +0100 | <lambdabot> | Test.DejaFu.SCT.Internal toId :: Coercible Id a => Int -> a |
2023-12-27 11:52:52 +0100 | <lambdabot> | Math.NumberTheory.Recurrences.Linear fibonacci :: Num a => Int -> a |
2023-12-27 11:52:52 +0100 | <lambdabot> | Math.NumberTheory.Recurrences.Linear lucas :: Num a => Int -> a |
2023-12-27 11:53:36 +0100 | <danse-nr3> | oh gosh, the doc for this stuff ought to be quite poor. Depends on which PortNumber from which lib i guess |
2023-12-27 11:54:01 +0100 | <erina> | I guess there exists some kind of trivial data constructor or something |
2023-12-27 11:54:08 +0100 | <albet70> | danse-nr3 , Network Socket |
2023-12-27 11:54:16 +0100 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) |
2023-12-27 11:54:59 +0100 | <danse-nr3> | it's an instance of Integral https://hackage.haskell.org/package/network-3.1.4.0/docs/Network-Socket.html#t:PortNumber |
2023-12-27 11:55:30 +0100 | <erina> | You can read 1 :: PortNumber, I guess? |
2023-12-27 11:55:53 +0100 | <danse-nr3> | are you talking about a literal albet70 ? |
2023-12-27 11:55:55 +0100 | <erina> | > read 1 :: Network.Socket.PortNumber |
2023-12-27 11:55:56 +0100 | <lambdabot> | error: |
2023-12-27 11:55:56 +0100 | <lambdabot> | Not in scope: type constructor or class ‘Network.Socket.PortNumber’ |
2023-12-27 11:55:56 +0100 | <lambdabot> | No module named ‘Network.Socket’ is imported. |
2023-12-27 11:57:39 +0100 | <erina> | Oh, this doesn't work, probably have to (read . show 1) :: PortNumber ...... |
2023-12-27 11:58:11 +0100 | [_] | (~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 260 seconds) |
2023-12-27 11:58:54 +0100 | <albet70> | :t read |
2023-12-27 11:58:54 +0100 | <lambdabot> | Read a => String -> a |
2023-12-27 11:59:09 +0100 | <albet70> | you see, read String, you can not read Int |
2023-12-27 11:59:15 +0100 | <danse-nr3> | would you mind answering my question albet70 ? |
2023-12-27 11:59:40 +0100 | <int-e> | erina: There's a `Num` instance for PortNumber, so fromIntegral will work |
2023-12-27 11:59:50 +0100 | <albet70> | danse-nr3 , sorry I don't understand what is a "literal"? |
2023-12-27 12:00:04 +0100 | <albet70> | a literal PortNumber? |
2023-12-27 12:00:06 +0100 | <danse-nr3> | https://en.wikipedia.org/wiki/Literal_(computer_programming) |
2023-12-27 12:00:13 +0100 | <int-e> | (and that's probably the only reason for that instance... I doubt anyone will add or multiply port numbers) |
2023-12-27 12:00:36 +0100 | <erina> | int-r make sense, just add a explicit type notation. |
2023-12-27 12:03:04 +0100 | <albet70> | danse-nr3 , do you mean a literal PortNumber? |
2023-12-27 12:03:41 +0100 | <albet70> | Network.Socket should just use Int, why wrapped it ? |
2023-12-27 12:03:53 +0100 | <albet70> | newtype PortNumber = PortNum Word16 |
2023-12-27 12:04:01 +0100 | <danse-nr3> | as explained in the page above, a literal is something you have in your code such as 1, "string", 'c', etcetera. As opposed to a variable with a type |
2023-12-27 12:04:48 +0100 | <albet70> | I use aeson to read a json file, in that json file, it's literal number like 3 |
2023-12-27 12:04:54 +0100 | <albet70> | not "3" |
2023-12-27 12:04:59 +0100 | <int-e> | :t 1 |
2023-12-27 12:05:00 +0100 | <lambdabot> | Num p => p |
2023-12-27 12:05:17 +0100 | <int-e> | `p` can be any instance of Num, including PortNumber |
2023-12-27 12:05:44 +0100 | <albet70> | but I use aeson to 'decode' it as PortNumber, it got failed |
2023-12-27 12:05:45 +0100 | xff0x | (~xff0x@2405:6580:b080:900:9305:2152:242d:e2e3) |
2023-12-27 12:06:26 +0100 | <int-e> | because aeson has its own type classes (FromJSON?) |
2023-12-27 12:06:50 +0100 | <albet70> | * No instance for (FromJSON PortNumber) arising from a use of `.: |
2023-12-27 12:06:54 +0100 | danse-nr3 | (~danse@151.57.208.222) (Read error: Connection reset by peer) |
2023-12-27 12:07:02 +0100 | danse-nr3 | (~danse@151.43.217.87) |
2023-12-27 12:07:17 +0100 | <danse-nr3> | therefore you have a variable, not a literal. What int-e said. Int is an Integral, PortNumber is a Num, therefore you can use: |
2023-12-27 12:07:20 +0100 | <danse-nr3> | % :t fromIntegral |
2023-12-27 12:07:20 +0100 | <yahb2> | fromIntegral :: (Integral a, Num b) => a -> b |
2023-12-27 12:07:29 +0100 | <int-e> | So you have to either decode to another type that is supported by aeson or provide a FromJSON instance for PortNumber yourself. Or maybe there is an instance for that on hackage already? |
2023-12-27 12:08:12 +0100 | <albet70> | I don't understand, that port is just number from 0~65543, why just use Int? |
2023-12-27 12:08:21 +0100 | <albet70> | why not |
2023-12-27 12:09:00 +0100 | alexherbo2 | (~alexherbo@2a01cb0084fc5100e42c42cbc84847f6.ipv6.abo.wanadoo.fr) (Remote host closed the connection) |
2023-12-27 12:09:02 +0100 | <danse-nr3> | a design choice, makes what you are handling clearer |
2023-12-27 12:09:30 +0100 | <int-e> | itym 65535 |
2023-12-27 12:10:22 +0100 | <hololeap> | will this be fair for multiple instances of loopWithTMVar working with the same TMVar? https://bpa.st/U4BA |
2023-12-27 12:10:25 +0100 | <albet70> | I think it's meaningless wrapped |
2023-12-27 12:10:29 +0100 | <albet70> | more confused |
2023-12-27 12:11:57 +0100 | <int-e> | it reduces the potential of mixing up parameters |
2023-12-27 12:12:36 +0100 | <int-e> | it can also abstract from the network/host byte order confusion |
2023-12-27 12:13:10 +0100 | <int-e> | (I don't know whether network does that, but the byte order conversion could be done by fromInteger) |
2023-12-27 12:13:13 +0100 | <hololeap> | will multiple loopWithTMVar s each get a turn when running together using the same TMVar, round-robin style, or will there be no way to determine which Async gets control of the TMVar? |
2023-12-27 12:14:17 +0100 | <int-e> | albet70: It is a valid design choice. It's more fruitful to ask how to deal with it, and `fromIntegral` is, by and large, the answer to that. |
2023-12-27 12:14:41 +0100 | <int-e> | It's Haskell, people generally *like* types here. |
2023-12-27 12:15:16 +0100 | rembo10 | (~rembo10@main.remulis.com) (Quit: ZNC 1.8.2 - https://znc.in) |
2023-12-27 12:16:00 +0100 | rembo10 | (~rembo10@main.remulis.com) |
2023-12-27 12:17:25 +0100 | <hololeap> | ok, I found this: |
2023-12-27 12:17:28 +0100 | <hololeap> | > Note that TSem has no concept of fairness, and there is no guarantee that threads blocked in waitTSem will be unblocked in the same order; in fact they will all be unblocked at the same time and will fight over the TSem. Hence TSem is not suitable if you expect there to be a high number of threads contending for the resource. However, like other STM abstractions, TSem is composable. |
2023-12-27 12:17:29 +0100 | <lambdabot> | <hint>:1:31: error: parse error on input ‘of’ |
2023-12-27 12:18:43 +0100 | <hololeap> | I assume that same idea goes for all STM data types |
2023-12-27 12:19:52 +0100 | Xyloes | (~wyx@2400:dd01:103a:1012:d681:d7ff:fedb:298d) (Remote host closed the connection) |
2023-12-27 12:20:03 +0100 | <erina> | Is there a way to map a function over the prefix of a list? |
2023-12-27 12:20:25 +0100 | euleritian | (~euleritia@p200300d40f2c2a0081561e43e466a6d0.dip0.t-ipconnect.de) (Ping timeout: 246 seconds) |
2023-12-27 12:21:03 +0100 | <int-e> | hmm "the" prefix? |
2023-12-27 12:21:59 +0100 | lortabac | (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) |
2023-12-27 12:22:26 +0100 | <erina> | int-e, I mean all prefixes...... |
2023-12-27 12:22:36 +0100 | euleritian | (~euleritia@82.113.106.121) |
2023-12-27 12:22:38 +0100 | <int-e> | :t inits |
2023-12-27 12:22:39 +0100 | <lambdabot> | [a] -> [[a]] |
2023-12-27 12:22:55 +0100 | <erina> | oh, that's really nice |
2023-12-27 12:23:00 +0100 | euleritian | (~euleritia@82.113.106.121) (Read error: Connection reset by peer) |
2023-12-27 12:23:10 +0100 | <int-e> | (beware that constructing the result is quadratic in the length of the list) |
2023-12-27 12:23:13 +0100 | euleritian | (~euleritia@p200300d40f2c2a00d025ef9bbb5860c3.dip0.t-ipconnect.de) |
2023-12-27 12:23:18 +0100 | Xyloes | (~wyx@2400:dd01:103a:1012:d681:d7ff:fedb:298d) |
2023-12-27 12:23:35 +0100 | <int-e> | > scanl (flip (:)) [] [1..4] |
2023-12-27 12:23:36 +0100 | <lambdabot> | [[],[1],[2,1],[3,2,1],[4,3,2,1]] |
2023-12-27 12:23:47 +0100 | <int-e> | this isn't because it shares a lot, but the prefixes are reversed |
2023-12-27 12:24:09 +0100 | <int-e> | `scanl` *may* be the answer to your question, depending on what you want to do with the prefixes. |
2023-12-27 12:24:19 +0100 | <int-e> | scanl (+) 0 computes prefix sums, for example |
2023-12-27 12:25:12 +0100 | <erina> | hmm, scanl works like foldl but saving all prefix results, including the initializer |
2023-12-27 12:25:27 +0100 | <erina> | > inits [1,2,3,4] |
2023-12-27 12:25:29 +0100 | <lambdabot> | [[],[1],[1,2],[1,2,3],[1,2,3,4]] |
2023-12-27 12:26:19 +0100 | <erina> | In my case, the order of the prefix matter, so I'll probably have to use map and inits. |
2023-12-27 12:26:24 +0100 | nate4 | (~nate@c-98-45-158-125.hsd1.ca.comcast.net) |
2023-12-27 12:28:49 +0100 | <int-e> | Sure, it just happens that `scanl` covers some useful special cases. |
2023-12-27 12:30:52 +0100 | <erina> | I'll see if I can implement it to avoid inits, since inits is, after all, slow. In my case, I guess it will not be too hard. |
2023-12-27 12:31:13 +0100 | nate4 | (~nate@c-98-45-158-125.hsd1.ca.comcast.net) (Ping timeout: 255 seconds) |
2023-12-27 12:32:29 +0100 | <danse-nr3> | you will have to append something to a list anyways, which is where the slowness comes from i guess |
2023-12-27 12:35:12 +0100 | <danse-nr3> | unless you mean to process a reversed prefix and use scanl :P |
2023-12-27 12:35:44 +0100 | <petrichor> | tangentially aoc-related question: i have a Main.hs that looks like this and it feels like there should be a neater way of doing it https://pb.envs.net/?c176346834693d0b#DXD9vHsR9XTuQKBJbCnLetx4Vccdg2YxchtxgYeGRinB |
2023-12-27 12:35:55 +0100 | <petrichor> | or more idiomatic |
2023-12-27 12:37:26 +0100 | <erina> | danse-nr3, I'm accumulating a list, so it will be more like foldl. So I believe I can get rid of inits |
2023-12-27 12:37:31 +0100 | lortabac | (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) (Ping timeout: 255 seconds) |
2023-12-27 12:38:16 +0100 | <erina> | petrichor, adventofcode? |
2023-12-27 12:38:46 +0100 | <erina> | I'm just writing 1.hs 2.hs 3.hs etc. in separate folders. |
2023-12-27 12:39:00 +0100 | <erina> | * in a folder |
2023-12-27 12:39:49 +0100 | <erina> | For multiple parts I rename main to main1 and main2 |
2023-12-27 12:41:02 +0100 | <erina> | int-e, Your suggestions made sense. scanl works much better in my case :) |
2023-12-27 12:42:30 +0100 | <int-e> | petrichor: Other than resorting to template haskell I don't think there's much you can do there. You're not really repeating yourself... you're naming which modules you import, and you're naming the functions that have to be invoked, and you're mapping names to numbers. The repetition is only apparent when you do string processing at the lexical level. |
2023-12-27 12:42:45 +0100 | <int-e> | (and template Haskell is not idiomatic) |
2023-12-27 12:42:49 +0100 | rvalue | (~rvalue@user/rvalue) (Ping timeout: 276 seconds) |
2023-12-27 12:43:00 +0100 | <int-e> | erina: cool |
2023-12-27 12:43:33 +0100 | int-e | used a folder each day, 1.hs for part 1, 2.hs for part 2, saving 1.hs to 2.hs in the middle |
2023-12-27 12:44:10 +0100 | <erina> | haskell is not like lisp, where you can use (intern) to convert strings to symbols. |
2023-12-27 12:44:32 +0100 | <erina> | Intepreted languages have much advantage in this part compared to compiled ones. |
2023-12-27 12:44:56 +0100 | <erina> | Since in the worst case they can just generate a string and run eval on it. |
2023-12-27 12:45:23 +0100 | eguo^ | (~cd@c-98-242-74-66.hsd1.ga.comcast.net) (Remote host closed the connection) |
2023-12-27 12:45:35 +0100 | dsrt^ | (~cd@c-98-242-74-66.hsd1.ga.comcast.net) (Remote host closed the connection) |
2023-12-27 12:45:50 +0100 | <danse-nr3> | haskell is not (not interpreted), since it can be interpreted |
2023-12-27 12:46:40 +0100 | <petrichor> | fair enough! :) |
2023-12-27 12:52:05 +0100 | euleritian | (~euleritia@p200300d40f2c2a00d025ef9bbb5860c3.dip0.t-ipconnect.de) (Ping timeout: 240 seconds) |
2023-12-27 12:52:43 +0100 | euleritian | (~euleritia@82.113.106.121) |
2023-12-27 12:52:55 +0100 | <erina> | @pl \a b -> map (fun b) a |
2023-12-27 12:52:55 +0100 | <lambdabot> | flip (map . fun) |
2023-12-27 12:55:58 +0100 | <danse-nr3> | what does pl stand for, by the way? |
2023-12-27 12:56:51 +0100 | <int-e> | @help pl |
2023-12-27 12:56:51 +0100 | <lambdabot> | pointless <expr>. Play with pointfree code. |
2023-12-27 12:57:06 +0100 | <danse-nr3> | =D |
2023-12-27 12:57:45 +0100 | waleee | (~waleee@h-176-10-144-38.NA.cust.bahnhof.se) |
2023-12-27 13:00:14 +0100 | rvalue | (~rvalue@user/rvalue) |
2023-12-27 13:00:48 +0100 | misterfish | (~misterfis@84.53.85.146) |
2023-12-27 13:02:24 +0100 | <erina> | @pl mtrans t s = let a = mapMaybe (`trans` s) t in if null a then s else head a |
2023-12-27 13:02:24 +0100 | <lambdabot> | mtrans = ap ((`ap` head) . flip (if' . null)) . flip (mapMaybe . flip trans) |
2023-12-27 13:02:53 +0100 | waleee | (~waleee@h-176-10-144-38.NA.cust.bahnhof.se) (Ping timeout: 240 seconds) |
2023-12-27 13:05:07 +0100 | waleee | (~waleee@h-176-10-144-38.NA.cust.bahnhof.se) |
2023-12-27 13:05:49 +0100 | danse-nr3 | (~danse@151.43.217.87) (Ping timeout: 256 seconds) |
2023-12-27 13:14:14 +0100 | [_] | (~itchyjunk@user/itchyjunk/x-7353470) |
2023-12-27 13:16:43 +0100 | __monty__ | (~toonn@user/toonn) |
2023-12-27 13:18:06 +0100 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 260 seconds) |
2023-12-27 13:19:52 +0100 | son0p | (~ff@181.136.122.143) (Ping timeout: 276 seconds) |
2023-12-27 13:22:04 +0100 | lortabac | (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) |
2023-12-27 13:29:50 +0100 | euleritian | (~euleritia@82.113.106.121) (Ping timeout: 260 seconds) |
2023-12-27 13:31:08 +0100 | Lycurgus | (~georg@user/Lycurgus) |
2023-12-27 13:43:08 +0100 | danse-nr3 | (~danse@151.43.217.87) |
2023-12-27 13:47:33 +0100 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2023-12-27 13:50:25 +0100 | nek0 | (~nek0@2a01:4f8:222:2b41::12) (Quit: The Lounge - https://thelounge.chat) |
2023-12-27 13:54:17 +0100 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) |
2023-12-27 13:57:46 +0100 | [_] | (~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 260 seconds) |
2023-12-27 14:01:01 +0100 | <haskellbridge> | 15<Jade> I'm having an issue where running `cabal bench` hangs forever when I have any quickcheck tests with `tasty-quickcheck` and even after killing it with `^C` the process is still running and consumes tons of resources. I then have to manually `SIGKILL` it |
2023-12-27 14:04:10 +0100 | <haskellbridge> | 15<Jade> one thing that's especially weird is that it doesn't seem to OOM but only consumes 100% of my cpu |
2023-12-27 14:06:13 +0100 | <Axman6> | have you tried running it with verbose output to see what it' |
2023-12-27 14:06:19 +0100 | <Axman6> | it's doing?* |
2023-12-27 14:06:51 +0100 | <int-e> | Hmm does that situation improve if you compile with -fno-omit-yields ? |
2023-12-27 14:07:33 +0100 | <int-e> | (It does sound like a non-allocating loop and -fno-omit-yields is specifically about making those (more) interruptible.) |
2023-12-27 14:08:07 +0100 | <int-e> | (But of course this isn't conclusive in any way.) |
2023-12-27 14:09:17 +0100 | alexherbo2 | (~alexherbo@2a01cb0084fc5100e42c42cbc84847f6.ipv6.abo.wanadoo.fr) |
2023-12-27 14:13:44 +0100 | alexherbo2 | (~alexherbo@2a01cb0084fc5100e42c42cbc84847f6.ipv6.abo.wanadoo.fr) (Ping timeout: 250 seconds) |
2023-12-27 14:24:45 +0100 | [_] | (~itchyjunk@user/itchyjunk/x-7353470) |
2023-12-27 14:26:30 +0100 | <haskellbridge> | 15<Jade> that changes a little. It still hangs but it neither consumes all my cpu and killing it actually kills it |
2023-12-27 14:26:38 +0100 | danse-nr3 | (~danse@151.43.217.87) (Remote host closed the connection) |
2023-12-27 14:27:01 +0100 | danse-nr3 | (~danse@151.43.217.87) |
2023-12-27 14:27:34 +0100 | <haskellbridge> | 15<Jade> the process seems to be `cabal act-as-setuo --build-type=Simple -- bencg -verbose=1 --builddir=<...>` |
2023-12-27 14:27:59 +0100 | <haskellbridge> | 15<Jade> s/setuo/setup |
2023-12-27 14:27:59 +0100 | <haskellbridge> | 15<Jade> s/bencg/bench |
2023-12-27 14:28:16 +0100 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 245 seconds) |
2023-12-27 14:29:16 +0100 | <erina> | @al \(a,_) (b,_) -> compare a b |
2023-12-27 14:29:16 +0100 | <lambdabot> | Sorry, look up one word at a time please. |
2023-12-27 14:29:23 +0100 | <erina> | @pl \(a,_) (b,_) -> compare a b |
2023-12-27 14:29:23 +0100 | <lambdabot> | (`ap` snd) . (. fst) . (const .) . compare . fst |
2023-12-27 14:29:48 +0100 | alexherbo2 | (~alexherbo@2a01cb0084fc5100e42c42cbc84847f6.ipv6.abo.wanadoo.fr) |
2023-12-27 14:30:09 +0100 | <erina> | I'll just use sortOn fst instead |
2023-12-27 14:30:47 +0100 | <haskellbridge> | 15<Jade> I have `-with-rtsopts=-A32m` and `-frpoc-alignment=64` as options, could those be relevant? i don't know what they do but I think tasty told me to do those? |
2023-12-27 14:37:55 +0100 | alexherbo2 | (~alexherbo@2a01cb0084fc5100e42c42cbc84847f6.ipv6.abo.wanadoo.fr) (Remote host closed the connection) |
2023-12-27 14:39:04 +0100 | alexherbo2 | (~alexherbo@2a01cb0084fc5100e42c42cbc84847f6.ipv6.abo.wanadoo.fr) |
2023-12-27 14:40:47 +0100 | alexherbo2 | (~alexherbo@2a01cb0084fc5100e42c42cbc84847f6.ipv6.abo.wanadoo.fr) (Remote host closed the connection) |
2023-12-27 14:41:20 +0100 | wootehfoot | (~wootehfoo@user/wootehfoot) |
2023-12-27 14:41:40 +0100 | alexherbo2 | (~alexherbo@2a01cb0084fc5100e42c42cbc84847f6.ipv6.abo.wanadoo.fr) |
2023-12-27 14:42:51 +0100 | alexherbo2 | (~alexherbo@2a01cb0084fc5100e42c42cbc84847f6.ipv6.abo.wanadoo.fr) (Remote host closed the connection) |
2023-12-27 14:46:11 +0100 | jmdaemon | (~jmdaemon@user/jmdaemon) (Ping timeout: 264 seconds) |
2023-12-27 14:53:02 +0100 | wootehfoot | (~wootehfoo@user/wootehfoot) (Quit: Leaving) |
2023-12-27 14:53:18 +0100 | coot | (~coot@89-69-206-216.dynamic.chello.pl) |
2023-12-27 14:53:39 +0100 | lisbeths | (~user@c-174-164-24-226.hsd1.wa.comcast.net) |
2023-12-27 14:54:10 +0100 | <lisbeths> | I think it is possible to take the core of haskell or any purely functional core and compile it to pure lambda calculus |
2023-12-27 14:58:12 +0100 | <lortabac> | that's more or less the idea of Core |
2023-12-27 14:59:23 +0100 | <lortabac> | Haskell code is compiled to a simpler language that is closer to lambda calculus |
2023-12-27 15:02:09 +0100 | wootehfoot | (~wootehfoo@user/wootehfoot) |
2023-12-27 15:02:18 +0100 | <Franciman> | we conjecture that you can take any formalism for computation and compile it to pure lambda calculus |
2023-12-27 15:02:41 +0100 | <Franciman> | it is called Church-Turing thesis |
2023-12-27 15:04:18 +0100 | <lortabac> | from practical reasons I don't think you can easily remove ADT's and let's from Core though |
2023-12-27 15:04:25 +0100 | <lortabac> | *for practical reasons |
2023-12-27 15:06:52 +0100 | <sprout> | or IO operations |
2023-12-27 15:07:09 +0100 | <sprout> | or state |
2023-12-27 15:09:23 +0100 | <lisbeths> | So in theory I should be able to take haskell libraries and use them in lambda calculus |
2023-12-27 15:11:13 +0100 | <geekosaur> | only the pure parts, I think |
2023-12-27 15:12:48 +0100 | <lisbeths> | This is good news for me |
2023-12-27 15:13:15 +0100 | erina | (~erina@2001:da8:d800:e52b:5332:9a02:5634:a173) (Remote host closed the connection) |
2023-12-27 15:13:36 +0100 | erina | (~erina@178.157.56.217.16clouds.com) |
2023-12-27 15:14:24 +0100 | <geekosaur> | compiling to lambda calculus apparently used to be a thing in the 70s and 80s |
2023-12-27 15:16:06 +0100 | <lisbeths> | I am interested in using lambda calculus as a computing system. |
2023-12-27 15:22:39 +0100 | BEGGARMAN__ | (sid630121@id-630121.helmsley.irccloud.com) |
2023-12-27 15:23:07 +0100 | BEGGARMAN__ | (sid630121@id-630121.helmsley.irccloud.com) (Client Quit) |
2023-12-27 15:25:36 +0100 | <haskellbridge> | 15<Jade> sprout: but you also don't inherently have IO with turing machines, do you? |
2023-12-27 15:25:59 +0100 | <haskellbridge> | 15<Jade> like, IO is something built on top of the computational model |
2023-12-27 15:27:59 +0100 | <sprout> | well, we did assume 'practical reasons' |
2023-12-27 15:28:37 +0100 | son0p | (~ff@181.136.122.143) |
2023-12-27 15:33:03 +0100 | shriekingnoise | (~shrieking@186.137.175.87) |
2023-12-27 15:33:15 +0100 | myclm_ | (~myclm_@2a02:810d:b83f:fcc0:7766:ea2b:35b7:e568) |
2023-12-27 15:46:23 +0100 | Xyloes | (~wyx@2400:dd01:103a:1012:d681:d7ff:fedb:298d) (Remote host closed the connection) |
2023-12-27 15:48:16 +0100 | _myclm | (~myclm_@ip1f12ffbe.dynamic.kabel-deutschland.de) |
2023-12-27 15:49:17 +0100 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) |
2023-12-27 15:50:43 +0100 | myclm_ | (~myclm_@2a02:810d:b83f:fcc0:7766:ea2b:35b7:e568) (Ping timeout: 256 seconds) |
2023-12-27 15:52:57 +0100 | waleee | (~waleee@h-176-10-144-38.NA.cust.bahnhof.se) (Ping timeout: 252 seconds) |
2023-12-27 15:53:16 +0100 | [_] | (~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 276 seconds) |
2023-12-27 15:58:12 +0100 | coot | (~coot@89-69-206-216.dynamic.chello.pl) (Quit: coot) |
2023-12-27 16:01:48 +0100 | <lisbeths> | I am very serious about lambda calculus as a language |
2023-12-27 16:02:54 +0100 | Nixkernal | (~Nixkernal@115.16.194.178.dynamic.wline.res.cust.swisscom.ch) (Ping timeout: 260 seconds) |
2023-12-27 16:08:36 +0100 | danse-nr3 | (~danse@151.43.217.87) (Read error: Connection reset by peer) |
2023-12-27 16:09:17 +0100 | danse-nr3 | (~danse@151.43.141.160) |
2023-12-27 16:13:00 +0100 | drewjose | (~drewjose@129.154.40.88) (Quit: have a nice day ^_^) |
2023-12-27 16:14:49 +0100 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Read error: Connection reset by peer) |
2023-12-27 16:17:16 +0100 | drewjose | (~drewjose@129.154.40.88) |
2023-12-27 16:18:00 +0100 | Nixkernal | (~Nixkernal@115.16.194.178.dynamic.wline.res.cust.swisscom.ch) |
2023-12-27 16:19:01 +0100 | drewjose | (~drewjose@129.154.40.88) (Remote host closed the connection) |
2023-12-27 16:19:57 +0100 | mqlnv | (~tripod@47.154.25.27) |
2023-12-27 16:21:03 +0100 | drewjose | (~drewjose@129.154.40.88) |
2023-12-27 16:23:41 +0100 | Sgeo | (~Sgeo@user/sgeo) |
2023-12-27 16:25:47 +0100 | nate4 | (~nate@c-98-45-158-125.hsd1.ca.comcast.net) |
2023-12-27 16:30:21 +0100 | nate4 | (~nate@c-98-45-158-125.hsd1.ca.comcast.net) (Ping timeout: 245 seconds) |
2023-12-27 16:34:14 +0100 | [_] | (~itchyjunk@user/itchyjunk/x-7353470) |
2023-12-27 16:37:51 +0100 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 245 seconds) |
2023-12-27 16:40:14 +0100 | erina | (~erina@178.157.56.217.16clouds.com) (Ping timeout: 252 seconds) |
2023-12-27 16:42:35 +0100 | <trev> | lisbeths: what does that mean? |
2023-12-27 16:42:49 +0100 | <trev> | as a programming language? |
2023-12-27 16:49:08 +0100 | <TMA> | lisbeths: and which flavor? (untyped, typed, which numeral encoding, ...) |
2023-12-27 16:49:17 +0100 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) |
2023-12-27 16:53:10 +0100 | [_] | (~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 268 seconds) |
2023-12-27 16:53:31 +0100 | lortabac | (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) (Quit: WeeChat 4.1.1) |
2023-12-27 16:55:12 +0100 | drewjose | (~drewjose@129.154.40.88) (Quit: have a nice day ^_^) |
2023-12-27 17:06:16 +0100 | <lisbeths> | untyped |
2023-12-27 17:06:32 +0100 | chele | (~chele@user/chele) (Remote host closed the connection) |
2023-12-27 17:06:43 +0100 | <lisbeths> | Lambda calculus is able to be used as a programming language |
2023-12-27 17:06:59 +0100 | <lisbeths> | all you really need to make it useful is to have the syntactic sugar of let, and perhaps also namespaces |
2023-12-27 17:07:26 +0100 | <Rembane> | lisbeths: Have you seen the talk by Wadler where he compares Lambda calculus with Turing machines and recursion? |
2023-12-27 17:12:00 +0100 | <lisbeths> | No I have not. Have you read the 100 year language? |
2023-12-27 17:12:53 +0100 | <Rembane> | I might've read it many years ago, I don't remember it. Is it this one? https://paulgraham.com/hundred.html |
2023-12-27 17:18:15 +0100 | <Rembane> | lisbeths: Here's the talk, it has been given in many versions since, but I'm quite fond of this one: https://www.youtube.com/watch?v=IOiZatlZtGU |
2023-12-27 17:23:29 +0100 | econo_ | (uid147250@id-147250.tinside.irccloud.com) |
2023-12-27 17:24:35 +0100 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:5475:1864:2ce2:3923) (Remote host closed the connection) |
2023-12-27 17:24:52 +0100 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:5475:1864:2ce2:3923) |
2023-12-27 17:26:36 +0100 | _myclm | (~myclm_@ip1f12ffbe.dynamic.kabel-deutschland.de) (Ping timeout: 245 seconds) |
2023-12-27 17:29:45 +0100 | rvalue | (~rvalue@user/rvalue) (Read error: Connection reset by peer) |
2023-12-27 17:30:04 +0100 | rvalue | (~rvalue@user/rvalue) |
2023-12-27 17:32:42 +0100 | Square | (~Square@user/square) |
2023-12-27 17:37:03 +0100 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2023-12-27 17:37:16 +0100 | euleritian | (~euleritia@dynamic-046-114-176-104.46.114.pool.telefonica.de) |
2023-12-27 17:38:43 +0100 | chexum | (~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection) |
2023-12-27 17:39:18 +0100 | chexum | (~quassel@gateway/tor-sasl/chexum) |
2023-12-27 17:44:22 +0100 | zmt01 | (~zmt00@user/zmt00) |
2023-12-27 17:44:44 +0100 | _myclm | (~myclm_@2a02:810d:b83f:fcc0:7766:ea2b:35b7:e568) |
2023-12-27 17:45:46 +0100 | shailangsa | (~shailangs@host109-152-9-157.range109-152.btcentralplus.com) (Ping timeout: 245 seconds) |
2023-12-27 17:48:11 +0100 | zmt00 | (~zmt00@user/zmt00) (Ping timeout: 260 seconds) |
2023-12-27 17:49:25 +0100 | <haskellbridge> | 15<Jade> A big problem working with gi-gtk is that you keep having to think what C-code you are executing under the hood because the generated bindings might just not do what you think they do |
2023-12-27 17:49:57 +0100 | <haskellbridge> | 15<Jade> I'm trying to debug some "Stack smashing" error at the moment because im multithreading some stuff |
2023-12-27 17:52:39 +0100 | <c_wraith> | uh.. many bindings to C libraries are not multithread-safe because the underlying library isn't. your only option might be to ensure only one thread interacts with it. |
2023-12-27 17:54:01 +0100 | <haskellbridge> | 15<Jade> only one thread is interacting, I only have one forkIO which is the very last statement |
2023-12-27 17:54:16 +0100 | <haskellbridge> | 15<Jade> but I pass around UI components in a record which are managed by GTK |
2023-12-27 17:54:24 +0100 | <haskellbridge> | 15<Jade> so I guess that is another thread managing it |
2023-12-27 17:54:45 +0100 | <haskellbridge> | 15<Jade> I'll probably have to use IORef's (?) |
2023-12-27 18:01:22 +0100 | danse-nr3 | (~danse@151.43.141.160) (Ping timeout: 260 seconds) |
2023-12-27 18:04:10 +0100 | danse-nr3 | (~danse@151.43.141.160) |
2023-12-27 18:04:17 +0100 | <haskellbridge> | 15<Jade> You're right btw, widgets are inherently thread unsafe |
2023-12-27 18:04:32 +0100 | <haskellbridge> | 15<Jade> so I need to communicate the data up into the original thread |
2023-12-27 18:04:45 +0100 | <haskellbridge> | 15<Jade> I think channels work for that, right? |
2023-12-27 18:07:15 +0100 | [_] | (~itchyjunk@user/itchyjunk/x-7353470) |
2023-12-27 18:07:44 +0100 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:5475:1864:2ce2:3923) (Remote host closed the connection) |
2023-12-27 18:10:34 +0100 | coot | (~coot@89-69-206-216.dynamic.chello.pl) |
2023-12-27 18:11:03 +0100 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 260 seconds) |
2023-12-27 18:11:59 +0100 | euleritian | (~euleritia@dynamic-046-114-176-104.46.114.pool.telefonica.de) (Ping timeout: 260 seconds) |
2023-12-27 18:15:19 +0100 | machinedgod | (~machinedg@d198-53-218-113.abhsia.telus.net) (Ping timeout: 246 seconds) |
2023-12-27 18:15:48 +0100 | _myclm | (~myclm_@2a02:810d:b83f:fcc0:7766:ea2b:35b7:e568) (Ping timeout: 268 seconds) |
2023-12-27 18:22:05 +0100 | <monochrom> | In the case of gi-gtk, gi-gtk-hs's Data.GI.Gtk.Threading can help. |
2023-12-27 18:25:30 +0100 | <haskellbridge> | 15<Jade> Oh awesome, thank you |
2023-12-27 18:26:10 +0100 | <haskellbridge> | 15<Jade> exactly what I need. I was already building an abstraction which passes down a channel of type `UIComponents -> IO ()` |
2023-12-27 18:26:21 +0100 | <haskellbridge> | 15<Jade> (is that a bad idea in general?) |
2023-12-27 18:27:46 +0100 | shailangsa_ | (~shailangs@host109-152-9-157.range109-152.btcentralplus.com) |
2023-12-27 18:28:09 +0100 | <monochrom> | It is the big-brain move of FP, that you can just pass functions around. :) |
2023-12-27 18:29:16 +0100 | tzh | (~tzh@c-71-193-181-0.hsd1.or.comcast.net) |
2023-12-27 18:29:30 +0100 | <monochrom> | https://www.slideshare.net/ScottWlaschin/fp-patterns-buildstufflt slide 13 |
2023-12-27 18:30:25 +0100 | <haskellbridge> | 15<Jade> I'll take that as a "She A Little Confused, But She Got The Spirit" |
2023-12-27 18:33:25 +0100 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:5475:1864:2ce2:3923) |
2023-12-27 18:33:27 +0100 | <haskellbridge> | 15<Jade> uhh, `Data.GI.Gtk.Threading` seems to be built for gtk3 only and right now I'm using gtk4 |
2023-12-27 18:33:27 +0100 | <haskellbridge> | 15<Jade> Should I consider using gtk3 instead or just go along with what I had? |
2023-12-27 18:33:38 +0100 | <haskellbridge> | 15<Jade> I could also port those functions I suppose |
2023-12-27 18:34:46 +0100 | Joao003 | (~Joao003@190.108.99.11) |
2023-12-27 18:34:52 +0100 | <haskellbridge> | 15<Jade> Oh god what is this https://hackage.haskell.org/package/gi-gtk-hs-0.3.16/docs/src/Data.GI.Gtk.Threading.html#guiThread |
2023-12-27 18:35:00 +0100 | <monochrom> | There is already gtk4?! It's not even 2024... |
2023-12-27 18:37:06 +0100 | <haskellbridge> | 15<Jade> and they are already working on gtk5 which likely won't have X11 support haha |
2023-12-27 18:37:31 +0100 | <haskellbridge> | 15<Jade> s/likely/maybe |
2023-12-27 18:39:49 +0100 | rvalue | (~rvalue@user/rvalue) (Ping timeout: 246 seconds) |
2023-12-27 18:42:43 +0100 | <Joao003> | Jade: doesn't matter; I use windows |
2023-12-27 18:42:46 +0100 | phu | (~user@76.202.115.164) (Remote host closed the connection) |
2023-12-27 18:45:24 +0100 | <haskellbridge> | 05<irregularsphere> https://aphyr.com/posts/342-typing-the-technical-interview |
2023-12-27 18:45:41 +0100 | <haskellbridge> | 05<irregularsphere> wait so is it possible to turn every single haskell programs into class and instances |
2023-12-27 18:45:46 +0100 | <haskellbridge> | 05<irregularsphere> program* |
2023-12-27 18:48:11 +0100 | rvalue | (~rvalue@user/rvalue) |
2023-12-27 18:55:23 +0100 | _myclm | (~myclm_@2a02:810d:b83f:fcc0:7766:ea2b:35b7:e568) |
2023-12-27 18:58:35 +0100 | pavonia | (~user@user/siracusa) (Quit: Bye!) |
2023-12-27 19:02:33 +0100 | <trev> | that article is funny |
2023-12-27 19:02:36 +0100 | <trev> | “Let’s do booleans,” you suggest, as if inviting him to lunch. |
2023-12-27 19:04:34 +0100 | target_i | (~target_i@217.175.14.39) |
2023-12-27 19:05:11 +0100 | <monochrom> | Today you can even "clarify" that with type families and DataKinds. >:) |
2023-12-27 19:05:22 +0100 | <haskellbridge> | 05<irregularsphere> yeah that stuff is logic as computation |
2023-12-27 19:05:52 +0100 | justache | justResolute |
2023-12-27 19:06:07 +0100 | <haskellbridge> | 05<irregularsphere> I found out about the Curry-Howard correspondence thanks to this article |
2023-12-27 19:06:22 +0100 | justResolute | justIrresolute |
2023-12-27 19:06:49 +0100 | <haskellbridge> | 05<irregularsphere> i mean stuff as in code in the article |
2023-12-27 19:09:16 +0100 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) |
2023-12-27 19:12:29 +0100 | [_] | (~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 240 seconds) |
2023-12-27 19:15:15 +0100 | mikess | (~sam@user/mikess) |
2023-12-27 19:16:13 +0100 | wootehfoot | (~wootehfoo@user/wootehfoot) (Ping timeout: 255 seconds) |
2023-12-27 19:30:04 +0100 | __monty__ | (~toonn@user/toonn) (Quit: leaving) |
2023-12-27 19:35:26 +0100 | lerax | (~user@177-104-241-159.gbsn.com.br) |
2023-12-27 19:42:05 +0100 | coot | (~coot@89-69-206-216.dynamic.chello.pl) (Quit: coot) |
2023-12-27 19:46:12 +0100 | wootehfoot | (~wootehfoo@user/wootehfoot) |
2023-12-27 19:48:24 +0100 | myclm__ | (~myclm_@ip1f12ffbe.dynamic.kabel-deutschland.de) |
2023-12-27 19:49:45 +0100 | [_] | (~itchyjunk@user/itchyjunk/x-7353470) |
2023-12-27 19:50:52 +0100 | _myclm | (~myclm_@2a02:810d:b83f:fcc0:7766:ea2b:35b7:e568) (Ping timeout: 255 seconds) |
2023-12-27 19:51:16 +0100 | waldo | (~waldo@user/waldo) |
2023-12-27 19:51:51 +0100 | ss4 | (~wootehfoo@user/wootehfoot) |
2023-12-27 19:52:19 +0100 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:5475:1864:2ce2:3923) (Remote host closed the connection) |
2023-12-27 19:52:41 +0100 | thegman | (~thegman@184-089-015-126.res.spectrum.com) |
2023-12-27 19:53:20 +0100 | <thegman> | is there a way to use getArgs without the <- (like head(getArgs)) |
2023-12-27 19:53:51 +0100 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 268 seconds) |
2023-12-27 19:54:10 +0100 | wootehfoot | (~wootehfoo@user/wootehfoot) (Ping timeout: 268 seconds) |
2023-12-27 19:54:31 +0100 | <Rembane> | thegman: Nope |
2023-12-27 19:54:36 +0100 | <thegman> | dang |
2023-12-27 19:55:02 +0100 | <Rembane> | thegman: The IO type is the culprit here. |
2023-12-27 19:56:45 +0100 | wootehfoot | (~wootehfoo@user/wootehfoot) |
2023-12-27 19:56:50 +0100 | <danse-nr3> | you can `fmap head getArgs` thegman |
2023-12-27 19:57:00 +0100 | <danse-nr3> | % :t fmap head getArgs |
2023-12-27 19:57:00 +0100 | <yahb2> | <interactive>:1:11: error: Variable not in scope: getArgs :: f [b] |
2023-12-27 19:57:09 +0100 | <Hecate> | thegman: best you can do is take advantage of the fact that IO is a Functor, and write `head <$> getArgs` |
2023-12-27 19:57:22 +0100 | <Hecate> | or indeed `fmap head getArgs` |
2023-12-27 19:57:29 +0100 | <thegman> | im too dumb to know what most of this stuff is |
2023-12-27 19:57:48 +0100 | <thegman> | il try it though |
2023-12-27 19:59:04 +0100 | <thegman> | when using head <$> getArgs is there a way to turn it into an integer |
2023-12-27 19:59:06 +0100 | ss4 | (~wootehfoo@user/wootehfoot) (Ping timeout: 268 seconds) |
2023-12-27 19:59:15 +0100 | <thegman> | before what i had is (code) :: Integer |
2023-12-27 19:59:27 +0100 | <haskellbridge> | 15<Jade> `fmap` or `<$>` operate on the value which is wrapped inside the `IO`. |
2023-12-27 19:59:28 +0100 | <haskellbridge> | 15<Jade> For `getArgs :: IO [String]` that means that any operation you want to do on the `[String]` you can do within the `fmap` |
2023-12-27 20:00:20 +0100 | <haskellbridge> | 15<Jade> `parseInt . head <$> getArgs` and then you have to write `parseInt :: String -> Int` |
2023-12-27 20:01:00 +0100 | <haskellbridge> | 15<Jade> if you know your string is an integer you can do `read . head <$> getArgs` which gives you `IO Int` |
2023-12-27 20:01:45 +0100 | wootehfoot | (~wootehfoo@user/wootehfoot) (Ping timeout: 256 seconds) |
2023-12-27 20:01:51 +0100 | <thegman> | thanks |
2023-12-27 20:02:42 +0100 | danse-nr3 | (~danse@151.43.141.160) (Read error: Connection reset by peer) |
2023-12-27 20:03:25 +0100 | <thegman> | darn |
2023-12-27 20:03:40 +0100 | <thegman> | Ambiguous type variable 'b0' arising from a use of 'read' |
2023-12-27 20:03:58 +0100 | <thegman> | let n = (read . head <$> getArgs); |
2023-12-27 20:04:48 +0100 | <haskellbridge> | 15<Jade> you do need to specify that you're reading an `Int` because `read :: Read a => String -> a` is generic |
2023-12-27 20:05:14 +0100 | <haskellbridge> | 15<Jade> `let n = (read . head <$> getArgs) :: IO Int` |
2023-12-27 20:06:43 +0100 | <thegman> | No instance for (integral (IO Integer)) arising from a use of 'factor' |
2023-12-27 20:06:49 +0100 | <thegman> | i think i messed up on the type for factor |
2023-12-27 20:07:33 +0100 | <haskellbridge> | 15<Jade> It looks like you're trying to pass in `n` into factor |
2023-12-27 20:07:50 +0100 | <haskellbridge> | 15<Jade> but remember that `n` has `IO` wrapped around it |
2023-12-27 20:08:15 +0100 | <haskellbridge> | 15<Jade> so you need to get the actual value of it, either using `>>=`/`<$>` or `<-` in a do-block |
2023-12-27 20:09:01 +0100 | <thegman> | ok |
2023-12-27 20:09:04 +0100 | <thegman> | il try to do that |
2023-12-27 20:13:36 +0100 | myclm__ | (~myclm_@ip1f12ffbe.dynamic.kabel-deutschland.de) (Remote host closed the connection) |
2023-12-27 20:13:54 +0100 | myclm__ | (~myclm_@2a02:810d:b83f:fcc0:7766:ea2b:35b7:e568) |
2023-12-27 20:14:17 +0100 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) |
2023-12-27 20:15:29 +0100 | mestre | (~mestre@191.177.165.219) |
2023-12-27 20:15:36 +0100 | myclm__ | (~myclm_@2a02:810d:b83f:fcc0:7766:ea2b:35b7:e568) (Remote host closed the connection) |
2023-12-27 20:15:54 +0100 | myclm__ | (~myclm_@2a02:810d:b83f:fcc0:7766:ea2b:35b7:e568) |
2023-12-27 20:18:13 +0100 | [_] | (~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 268 seconds) |
2023-12-27 20:18:15 +0100 | <mestre> | Hello, I wondering if someone could help me with some ghci questions. I trying to hotswap functions, but in a simpler way than ghc-hotswap. |
2023-12-27 20:19:37 +0100 | <mestre> | The end goal would be having a function been hotswapped in a different thread when I run ":reload". |
2023-12-27 20:21:38 +0100 | <lerax> | I've not exposed to haskell development anymore for the last 4 years at least, however when I came to install the compiler again on my distro I saw that ghcup is a popular solution. I've been using and it seems great, but I would like to hear opinion of more experienced devs... can someone share your experience with ghcup? |
2023-12-27 20:21:44 +0100 | waleee | (~waleee@h-176-10-144-38.NA.cust.bahnhof.se) |
2023-12-27 20:23:36 +0100 | mokee | (~mokee@37.228.215.150) (Quit: off) |
2023-12-27 20:24:25 +0100 | <mestre> | ghcup have worked great for me wherever I have used it. |
2023-12-27 20:27:17 +0100 | nate4 | (~nate@c-98-45-158-125.hsd1.ca.comcast.net) |
2023-12-27 20:29:04 +0100 | <lerax> | thx for sharing, mestre |
2023-12-27 20:29:16 +0100 | <lerax> | Are you using it on Linux? |
2023-12-27 20:30:36 +0100 | <mestre> | I'm not using it anymore, I'm using Nix now. But I used it on Linux, yes. |
2023-12-27 20:32:11 +0100 | <lerax> | Development using Python or Common Lisp was a complete confusion on Nix several years ago. Are you doing well with Haskell over Nix? |
2023-12-27 20:32:23 +0100 | nate4 | (~nate@c-98-45-158-125.hsd1.ca.comcast.net) (Ping timeout: 264 seconds) |
2023-12-27 20:32:27 +0100 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:5475:1864:2ce2:3923) |
2023-12-27 20:32:31 +0100 | <thegman> | /quit |
2023-12-27 20:32:34 +0100 | <thegman> | darn |
2023-12-27 20:32:38 +0100 | <mestre> | :) |
2023-12-27 20:32:41 +0100 | <thegman> | i messed up the command |
2023-12-27 20:32:46 +0100 | thegman | (~thegman@184-089-015-126.res.spectrum.com) (Quit: leaving) |
2023-12-27 20:33:57 +0100 | <mestre> | @lerax It's getting better, It was very hard on the begining. But I have used it on work, so that eased me into it. |
2023-12-27 20:33:57 +0100 | <lambdabot> | Sorry, look up one word at a time please. |
2023-12-27 20:34:18 +0100 | <haskellbridge> | 15<Jade> I think ghcup is pretty much the standard for installing haskell unless you use nix |
2023-12-27 20:34:42 +0100 | <haskellbridge> | 15<Jade> I don't know any reasons you would not use it |
2023-12-27 20:36:45 +0100 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:5475:1864:2ce2:3923) (Ping timeout: 256 seconds) |
2023-12-27 20:38:45 +0100 | [_] | (~itchyjunk@user/itchyjunk/x-7353470) |
2023-12-27 20:39:13 +0100 | danse-nr3 | (~danse@151.57.203.55) |
2023-12-27 20:39:50 +0100 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:5475:1864:2ce2:3923) |
2023-12-27 20:42:43 +0100 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 260 seconds) |
2023-12-27 20:44:25 +0100 | araujo | (~araujo@216.73.163.54) |
2023-12-27 20:48:26 +0100 | waldo | (~waldo@user/waldo) (Ping timeout: 268 seconds) |
2023-12-27 20:49:38 +0100 | siers | (~ij@user/ij) (Quit: ZNC 1.8.2 - https://znc.in) |
2023-12-27 20:49:59 +0100 | siers | (~ij@user/ij) |
2023-12-27 20:50:37 +0100 | duncan | (~duncan@user/duncan) (Quit: ZNC 1.8.2 - https://znc.in) |
2023-12-27 20:50:52 +0100 | duncan | (~duncan@user/duncan) |
2023-12-27 20:53:16 +0100 | myme | (~myme@2a01:799:d60:e400:5e72:30ce:3add:bd7c) (Ping timeout: 245 seconds) |
2023-12-27 20:54:00 +0100 | waldo | (~waldo@user/waldo) |
2023-12-27 20:54:16 +0100 | myme | (~myme@2a01:799:d60:e400:c395:9fa:e4aa:e46b) |
2023-12-27 20:59:46 +0100 | michalz | (~michalz@185.246.207.221) (Quit: ZNC 1.8.2 - https://znc.in) |
2023-12-27 21:02:06 +0100 | myclm__ | (~myclm_@2a02:810d:b83f:fcc0:7766:ea2b:35b7:e568) (Remote host closed the connection) |
2023-12-27 21:02:23 +0100 | myclm__ | (~myclm_@2a02:810d:b83f:fcc0:7766:ea2b:35b7:e568) |
2023-12-27 21:07:41 +0100 | wootehfoot | (~wootehfoo@user/wootehfoot) |
2023-12-27 21:14:20 +0100 | waldo | (~waldo@user/waldo) (Ping timeout: 268 seconds) |
2023-12-27 21:15:14 +0100 | waldo | (~waldo@user/waldo) |
2023-12-27 21:18:23 +0100 | wootehfoot | (~wootehfoo@user/wootehfoot) (Quit: Leaving) |
2023-12-27 21:18:44 +0100 | araujo | (~araujo@216.73.163.54) (Ping timeout: 256 seconds) |
2023-12-27 21:22:16 +0100 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:5475:1864:2ce2:3923) (Remote host closed the connection) |
2023-12-27 21:24:00 +0100 | coot | (~coot@89-69-206-216.dynamic.chello.pl) |
2023-12-27 21:30:16 +0100 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2023-12-27 21:31:56 +0100 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2023-12-27 21:33:04 +0100 | euleritian | (~euleritia@dynamic-046-114-170-054.46.114.pool.telefonica.de) |
2023-12-27 21:34:17 +0100 | ricardo2 | (~ricardo@84.16.179.218) (Read error: Connection reset by peer) |
2023-12-27 21:34:56 +0100 | raoul | (~raoul@95.179.203.88) (Quit: Ping timeout (120 seconds)) |
2023-12-27 21:35:00 +0100 | L29Ah | (~L29Ah@wikipedia/L29Ah) (Read error: Connection reset by peer) |
2023-12-27 21:35:08 +0100 | lisbeths | (~user@c-174-164-24-226.hsd1.wa.comcast.net) (Remote host closed the connection) |
2023-12-27 21:35:11 +0100 | madnight | (~madnight@static.59.103.201.195.clients.your-server.de) (Quit: ZNC 1.8.2 - https://znc.in) |
2023-12-27 21:35:20 +0100 | lisbeths | (~user@c-174-164-24-226.hsd1.wa.comcast.net) |
2023-12-27 21:35:26 +0100 | steew | (~steew@user/steew) (Read error: Connection reset by peer) |
2023-12-27 21:35:27 +0100 | ricardo1 | (~ricardo@84.16.179.218) |
2023-12-27 21:35:41 +0100 | steew | (~steew@user/steew) |
2023-12-27 21:36:00 +0100 | srk | (~sorki@user/srk) (Quit: ZNC 1.8.1 - https://znc.in) |
2023-12-27 21:36:17 +0100 | hueso | (~root@user/hueso) (Quit: No Ping reply in 180 seconds.) |
2023-12-27 21:36:19 +0100 | srk | (~sorki@user/srk) |
2023-12-27 21:36:50 +0100 | madnight | (~madnight@static.59.103.201.195.clients.your-server.de) |
2023-12-27 21:37:32 +0100 | raoul | (~raoul@95.179.203.88) |
2023-12-27 21:37:43 +0100 | hueso | (~root@user/hueso) |
2023-12-27 21:38:16 +0100 | mestre | (~mestre@191.177.165.219) (Ping timeout: 245 seconds) |
2023-12-27 21:39:12 +0100 | mestre | (~mestre@191.177.165.219) |
2023-12-27 21:40:06 +0100 | myclm__ | (~myclm_@2a02:810d:b83f:fcc0:7766:ea2b:35b7:e568) (Remote host closed the connection) |
2023-12-27 21:40:24 +0100 | myclm__ | (~myclm_@2a02:810d:b83f:fcc0:7766:ea2b:35b7:e568) |
2023-12-27 21:42:36 +0100 | <haskellbridge> | 06<sm> ghcup is great. You don't strictly need it if you use stack, but many stack users use it anyway |
2023-12-27 21:43:19 +0100 | L29Ah | (~L29Ah@wikipedia/L29Ah) |
2023-12-27 21:43:24 +0100 | <haskellbridge> | 06<sm> if you're a beginner, and stack's ghc works for you, I'd still recommend that. One less thing to figure out. |
2023-12-27 21:46:01 +0100 | danse-nr3 | (~danse@151.57.203.55) (Ping timeout: 256 seconds) |
2023-12-27 21:51:47 +0100 | adanwan | (~adanwan@gateway/tor-sasl/adanwan) (Remote host closed the connection) |
2023-12-27 21:52:06 +0100 | adanwan | (~adanwan@gateway/tor-sasl/adanwan) |
2023-12-27 21:57:51 +0100 | myclm__ | (~myclm_@2a02:810d:b83f:fcc0:7766:ea2b:35b7:e568) (Ping timeout: 245 seconds) |
2023-12-27 22:00:54 +0100 | madnight | (~madnight@static.59.103.201.195.clients.your-server.de) (Quit: ZNC 1.8.2 - https://znc.in) |
2023-12-27 22:00:58 +0100 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:5475:1864:2ce2:3923) |
2023-12-27 22:02:01 +0100 | madnight | (~madnight@static.59.103.201.195.clients.your-server.de) |
2023-12-27 22:03:27 +0100 | xdminsy | (~xdminsy@117.147.71.169) (Ping timeout: 256 seconds) |
2023-12-27 22:05:21 +0100 | Maxdamantus | (~Maxdamant@user/maxdamantus) (Ping timeout: 245 seconds) |
2023-12-27 22:05:46 +0100 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2023-12-27 22:05:53 +0100 | trev | (~trev@user/trev) (Quit: trev) |
2023-12-27 22:06:21 +0100 | Maxdamantus | (~Maxdamant@user/maxdamantus) |
2023-12-27 22:07:09 +0100 | tromp | (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
2023-12-27 22:07:52 +0100 | <remexre> | hm, is there any reason why Data.Vector.generateM has a Monad constraint rather than an Applicative one? |
2023-12-27 22:08:18 +0100 | actioninja | (~actioninj@user/actioninja) (Read error: Connection reset by peer) |
2023-12-27 22:08:46 +0100 | actioninja | (~actioninj@user/actioninja) |
2023-12-27 22:08:49 +0100 | jmdaemon | (~jmdaemon@user/jmdaemon) |
2023-12-27 22:09:35 +0100 | <Franciman> | is there anyone investing in guix for haskell? |
2023-12-27 22:09:53 +0100 | <Franciman> | or is nix still the most beloved? |
2023-12-27 22:10:21 +0100 | <juri_> | guix is still a thing? |
2023-12-27 22:10:55 +0100 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) (Ping timeout: 240 seconds) |
2023-12-27 22:13:08 +0100 | adanwan | (~adanwan@gateway/tor-sasl/adanwan) (Quit: _) |
2023-12-27 22:13:29 +0100 | adanwan | (~adanwan@gateway/tor-sasl/adanwan) |
2023-12-27 22:13:58 +0100 | madnight | (~madnight@static.59.103.201.195.clients.your-server.de) (Quit: ZNC 1.8.2 - https://znc.in) |
2023-12-27 22:14:46 +0100 | madnight | (~madnight@static.59.103.201.195.clients.your-server.de) |
2023-12-27 22:14:47 +0100 | <yushyin> | sure is |
2023-12-27 22:16:12 +0100 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) |
2023-12-27 22:20:37 +0100 | chomwitt | (~chomwitt@2a02:587:7a1b:bb00:1ac0:4dff:fedb:a3f1) |
2023-12-27 22:24:17 +0100 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) |
2023-12-27 22:24:43 +0100 | Unicorn_Princess | (~Unicorn_P@user/Unicorn-Princess/x-3540542) (Remote host closed the connection) |
2023-12-27 22:26:07 +0100 | waldo | (~waldo@user/waldo) (Ping timeout: 255 seconds) |
2023-12-27 22:27:16 +0100 | biberu | (~biberu@user/biberu) (Ping timeout: 256 seconds) |
2023-12-27 22:27:20 +0100 | biberu\ | (~biberu@user/biberu) |
2023-12-27 22:27:52 +0100 | [_] | (~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 256 seconds) |
2023-12-27 22:28:37 +0100 | myclm_ | (~myclm_@ip1f12ffbe.dynamic.kabel-deutschland.de) |
2023-12-27 22:28:47 +0100 | biberu\ | biberu |
2023-12-27 22:29:53 +0100 | Joao003 | (~Joao003@190.108.99.11) (Quit: Bye!) |
2023-12-27 22:35:38 +0100 | son0p | (~ff@181.136.122.143) (Remote host closed the connection) |
2023-12-27 22:35:57 +0100 | <johnw> | I've yet to actually run into guix -- anywhere, open source or professional |
2023-12-27 22:36:19 +0100 | <johnw> | meanwhile I run into Nix pretty much everywhere I look these days |
2023-12-27 22:36:37 +0100 | <c_wraith> | remexre: I think it has to do with controlling execution order more precisely inside the fusion code |
2023-12-27 22:37:28 +0100 | <remexre> | hm, ok |
2023-12-27 22:41:17 +0100 | <Athas> | My experience is that the Haskell infrastructure in Guix is not well maintained. |
2023-12-27 22:41:59 +0100 | <Athas> | Guix is in many ways nicer than Nix, but Nix has substantially more manpower - and that really makes a difference, as these are "boil the ocean" projects that require a lot of modification to software. |
2023-12-27 22:42:46 +0100 | <juri_> | ooo. boil the ocean. that's.. fun. :) |
2023-12-27 22:49:18 +0100 | _ht | (~Thunderbi@28-52-174-82.ftth.glasoperator.nl) (Remote host closed the connection) |
2023-12-27 22:49:45 +0100 | [_] | (~itchyjunk@user/itchyjunk/x-7353470) |
2023-12-27 22:53:16 +0100 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 245 seconds) |
2023-12-27 22:55:25 +0100 | <johnw> | salty steam |
2023-12-27 22:55:46 +0100 | target_i | (~target_i@217.175.14.39) (Quit: leaving) |
2023-12-27 22:56:40 +0100 | <juri_> | I've spent the last 4 years working on that kind of problem. ;) |
2023-12-27 23:04:09 +0100 | peterbecich | (~Thunderbi@047-229-123-186.res.spectrum.com) |
2023-12-27 23:11:23 +0100 | pavonia | (~user@user/siracusa) |
2023-12-27 23:17:41 +0100 | myclm_ | (~myclm_@ip1f12ffbe.dynamic.kabel-deutschland.de) (Ping timeout: 256 seconds) |
2023-12-27 23:19:31 +0100 | telser | (~quassel@user/telser) (Ping timeout: 256 seconds) |
2023-12-27 23:20:48 +0100 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) |
2023-12-27 23:24:06 +0100 | [_] | (~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 245 seconds) |
2023-12-27 23:32:16 +0100 | notzmv | (~zmv@user/notzmv) (Ping timeout: 255 seconds) |
2023-12-27 23:36:08 +0100 | biberu\ | (~biberu@user/biberu) |
2023-12-27 23:36:39 +0100 | nek0 | (~nek0@2a01:4f8:222:2b41::12) |
2023-12-27 23:36:41 +0100 | zetef | (~quassel@2a02:2f00:5309:7300:1472:444c:111b:708b) |
2023-12-27 23:37:01 +0100 | wootehfoot | (~wootehfoo@user/wootehfoot) |
2023-12-27 23:39:06 +0100 | biberu | (~biberu@user/biberu) (Ping timeout: 245 seconds) |
2023-12-27 23:39:06 +0100 | biberu\ | biberu |
2023-12-27 23:45:19 +0100 | telser | (~quassel@user/telser) |
2023-12-27 23:49:40 +0100 | <haskellbridge> | 15<Jade> what's the most elegant way to handle the pseudocode of `read from channel as long as other threads can write to it`? |
2023-12-27 23:49:42 +0100 | <haskellbridge> | 15<Jade> I could let it do that itself and catch `BlockedIndefinitelyOnMVar` but that seems ... bad practice |
2023-12-27 23:50:11 +0100 | oo_miguel1 | (~Thunderbi@78-11-179-96.static.ip.netia.com.pl) |
2023-12-27 23:50:15 +0100 | sprout | (~quassel@84-80-106-227.fixed.kpn.net) (Read error: Connection reset by peer) |
2023-12-27 23:50:18 +0100 | biberu\ | (~biberu@user/biberu) |
2023-12-27 23:50:21 +0100 | sprout | (~quassel@2a02-a448-3a80-0-2031-a154-e4a7-5e62.fixed6.kpn.net) |
2023-12-27 23:51:36 +0100 | oo_miguel | (~Thunderbi@78-11-179-96.static.ip.netia.com.pl) (Ping timeout: 245 seconds) |
2023-12-27 23:51:36 +0100 | oo_miguel1 | oo_miguel |
2023-12-27 23:53:16 +0100 | biberu | (~biberu@user/biberu) (Ping timeout: 245 seconds) |
2023-12-27 23:53:16 +0100 | biberu\ | biberu |
2023-12-27 23:54:21 +0100 | not_reserved | (~not_reser@154.16.157.93) |