Logs on 2023-06-13 (liberachat/#haskell)
| 00:00:15 | × | Tuplanolla quits (~Tuplanoll@91-159-68-236.elisa-laajakaista.fi) (Quit: Leaving.) |
| 00:00:25 | → | mauke_ joins (~mauke@user/mauke) |
| 00:01:19 | → | dhruvasagar joins (~dhruvasag@49.207.218.223) |
| 00:01:44 | × | ec_ quits (~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds) |
| 00:02:29 | → | foul_owl joins (~kerry@71.212.137.212) |
| 00:03:04 | → | blueonyx joins (~blueonyx@user/blueonyx) |
| 00:03:50 | × | mauke quits (~mauke@user/mauke) (Ping timeout: 260 seconds) |
| 00:03:51 | mauke_ | is now known as mauke |
| 00:05:00 | × | [itchyjunk] quits (~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 260 seconds) |
| 00:06:01 | × | dhruvasagar quits (~dhruvasag@49.207.218.223) (Ping timeout: 240 seconds) |
| 00:07:03 | → | segfaultfizzbuzz joins (~segfaultf@23-93-74-212.fiber.dynamic.sonic.net) |
| 00:07:07 | × | Pickchea quits (~private@user/pickchea) (Quit: Leaving) |
| 00:08:40 | → | [itchyjunk] joins (~itchyjunk@user/itchyjunk/x-7353470) |
| 00:08:50 | × | Nosrep quits (~Nosrep@user/nosrep) (Server closed connection) |
| 00:09:14 | → | Nosrep joins (~Nosrep@user/nosrep) |
| 00:10:40 | × | dcoutts_ quits (~duncan@185.201.60.13) (Ping timeout: 255 seconds) |
| 00:11:30 | → | dhruvasagar joins (~dhruvasag@49.207.218.223) |
| 00:15:45 | × | dhruvasagar quits (~dhruvasag@49.207.218.223) (Ping timeout: 240 seconds) |
| 00:16:50 | × | rodental quits (~rodental@38.146.5.222) (Server closed connection) |
| 00:17:09 | → | dhruvasagar joins (~dhruvasag@49.207.218.223) |
| 00:17:35 | → | rodental joins (~rodental@38.146.5.222) |
| 00:17:50 | × | foul_owl quits (~kerry@71.212.137.212) (Ping timeout: 260 seconds) |
| 00:21:50 | × | dhruvasagar quits (~dhruvasag@49.207.218.223) (Ping timeout: 265 seconds) |
| 00:28:04 | → | dhruvasagar joins (~dhruvasag@49.207.218.223) |
| 00:28:06 | × | mei quits (~mei@user/mei) (Ping timeout: 268 seconds) |
| 00:28:29 | → | ec_ joins (~ec@gateway/tor-sasl/ec) |
| 00:31:48 | → | mei joins (~mei@user/mei) |
| 00:32:49 | → | foul_owl joins (~kerry@45.143.82.39) |
| 00:33:02 | × | dhruvasagar quits (~dhruvasag@49.207.218.223) (Ping timeout: 268 seconds) |
| 00:33:35 | × | xff0x quits (~xff0x@2405:6580:b080:900:3687:e69a:4c02:e9f) (Ping timeout: 260 seconds) |
| 00:34:00 | → | xff0x joins (~xff0x@ai098135.d.east.v6connect.net) |
| 00:39:27 | → | dhruvasagar joins (~dhruvasag@49.207.218.223) |
| 00:39:40 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:782b:e4a2:bdc6:e185) |
| 00:40:56 | × | ec_ quits (~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds) |
| 00:41:48 | → | ec_ joins (~ec@gateway/tor-sasl/ec) |
| 00:43:58 | × | dhruvasagar quits (~dhruvasag@49.207.218.223) (Ping timeout: 255 seconds) |
| 00:44:05 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:782b:e4a2:bdc6:e185) (Ping timeout: 260 seconds) |
| 00:44:32 | × | azimut quits (~azimut@gateway/tor-sasl/azimut) (Ping timeout: 240 seconds) |
| 00:44:52 | × | segfaultfizzbuzz quits (~segfaultf@23-93-74-212.fiber.dynamic.sonic.net) (Ping timeout: 255 seconds) |
| 00:44:54 | → | dhruvasagar joins (~dhruvasag@49.207.218.223) |
| 00:47:20 | × | ec_ quits (~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds) |
| 00:48:12 | → | ec_ joins (~ec@gateway/tor-sasl/ec) |
| 00:48:28 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 255 seconds) |
| 00:54:48 | → | segfaultfizzbuzz joins (~segfaultf@23-93-74-212.fiber.dynamic.sonic.net) |
| 00:58:15 | × | simpleauthority quits (~simpleaut@user/simpleauthority) (Quit: ZNC 1.8.2 - https://znc.in) |
| 00:58:45 | × | kupi_ quits (uid212005@2a03:5180:f:4::3:3c25) (Quit: Connection closed for inactivity) |
| 01:00:21 | → | simpleauthority joins (~simpleaut@user/simpleauthority) |
| 01:01:46 | → | biberu joins (~biberu@user/biberu) |
| 01:07:25 | × | dhruvasagar quits (~dhruvasag@49.207.218.223) (Ping timeout: 260 seconds) |
| 01:08:13 | → | dhruvasagar joins (~dhruvasag@49.207.218.223) |
| 01:08:44 | → | biberu\ joins (~biberu@user/biberu) |
| 01:10:02 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 268 seconds) |
| 01:10:19 | biberu\ | is now known as biberu |
| 01:10:54 | × | albet70 quits (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
| 01:10:56 | × | ec_ quits (~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds) |
| 01:11:06 | → | tom_ joins (~tom@2a00:23c8:970c:4801:d59:645f:19cf:5a58) |
| 01:11:40 | × | zincy quits (~tom@host81-151-255-71.range81-151.btcentralplus.com) (Remote host closed the connection) |
| 01:12:59 | → | ec_ joins (~ec@gateway/tor-sasl/ec) |
| 01:13:07 | × | dhruvasagar quits (~dhruvasag@49.207.218.223) (Ping timeout: 268 seconds) |
| 01:14:38 | × | puke quits (~puke@user/puke) (Server closed connection) |
| 01:15:03 | → | puke joins (~puke@user/puke) |
| 01:17:00 | → | albet70 joins (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
| 01:18:48 | → | biberu\ joins (~biberu@user/biberu) |
| 01:19:04 | → | dhruvasagar joins (~dhruvasag@49.207.218.223) |
| 01:19:54 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 268 seconds) |
| 01:20:26 | biberu\ | is now known as biberu |
| 01:20:31 | × | blueonyx quits (~blueonyx@user/blueonyx) (Ping timeout: 240 seconds) |
| 01:20:56 | × | ec_ quits (~ec@gateway/tor-sasl/ec) (Ping timeout: 240 seconds) |
| 01:21:46 | × | waleee quits (~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7) (Ping timeout: 255 seconds) |
| 01:22:32 | → | blueonyx joins (~blueonyx@user/blueonyx) |
| 01:23:34 | × | dhruvasagar quits (~dhruvasag@49.207.218.223) (Ping timeout: 255 seconds) |
| 01:24:22 | × | blueonyx quits (~blueonyx@user/blueonyx) (Client Quit) |
| 01:24:46 | → | dhruvasagar joins (~dhruvasag@49.207.218.223) |
| 01:26:46 | → | ec_ joins (~ec@gateway/tor-sasl/ec) |
| 01:29:10 | → | biberu\ joins (~biberu@user/biberu) |
| 01:29:35 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 260 seconds) |
| 01:30:41 | biberu\ | is now known as biberu |
| 01:39:31 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 250 seconds) |
| 01:39:45 | → | werneta joins (~werneta@70.142.214.115) |
| 01:40:24 | → | biberu joins (~biberu@user/biberu) |
| 01:41:38 | × | Adran quits (~adran@botters/adran) (Server closed connection) |
| 01:43:49 | × | dhruvasagar quits (~dhruvasag@49.207.218.223) (Ping timeout: 255 seconds) |
| 01:45:03 | → | Adran joins (~adran@botters/adran) |
| 01:45:21 | × | xff0x quits (~xff0x@ai098135.d.east.v6connect.net) (Ping timeout: 260 seconds) |
| 01:49:03 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 250 seconds) |
| 01:56:19 | → | biberu joins (~biberu@user/biberu) |
| 01:56:25 | × | chromoblob quits (~user@37.113.180.121) (Ping timeout: 255 seconds) |
| 02:02:14 | × | tessier quits (~treed@ec2-184-72-149-67.compute-1.amazonaws.com) (Remote host closed the connection) |
| 02:04:18 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 268 seconds) |
| 02:06:41 | → | biberu joins (~biberu@user/biberu) |
| 02:07:41 | → | dhruvasagar joins (~dhruvasag@49.207.218.223) |
| 02:10:55 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:782b:e4a2:bdc6:e185) |
| 02:12:10 | × | dhruvasagar quits (~dhruvasag@49.207.218.223) (Ping timeout: 255 seconds) |
| 02:13:26 | → | dhruvasagar joins (~dhruvasag@49.207.218.223) |
| 02:13:38 | × | acro quits (~acro@user/acro) (Server closed connection) |
| 02:13:59 | → | biberu\ joins (~biberu@user/biberu) |
| 02:14:25 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 240 seconds) |
| 02:14:34 | → | acro joins (~acro@user/acro) |
| 02:15:27 | → | nate2 joins (~nate@c-98-45-169-16.hsd1.ca.comcast.net) |
| 02:15:37 | biberu\ | is now known as biberu |
| 02:16:28 | × | wns quits (~user@103.206.114.101) (Quit: WeeChat 3.8) |
| 02:19:33 | → | dsrt^ joins (~dsrt@71.204.38.59) |
| 02:19:49 | × | FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija))) |
| 02:19:49 | → | finn_elija joins (~finn_elij@user/finn-elija/x-0085643) |
| 02:19:49 | finn_elija | is now known as FinnElija |
| 02:20:38 | → | thegeekinside joins (~thegeekin@189.217.90.138) |
| 02:23:15 | × | segfaultfizzbuzz quits (~segfaultf@23-93-74-212.fiber.dynamic.sonic.net) (Ping timeout: 260 seconds) |
| 02:23:29 | → | xff0x joins (~xff0x@125.103.176.34) |
| 02:23:45 | → | biberu\ joins (~biberu@user/biberu) |
| 02:24:19 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 255 seconds) |
| 02:25:01 | → | Sciencentistguy1 joins (~sciencent@hacksoc/ordinary-member) |
| 02:25:05 | × | cheater quits (~Username@user/cheater) (Ping timeout: 265 seconds) |
| 02:25:19 | biberu\ | is now known as biberu |
| 02:27:28 | × | Sciencentistguy quits (~sciencent@hacksoc/ordinary-member) (Ping timeout: 255 seconds) |
| 02:27:28 | Sciencentistguy1 | is now known as Sciencentistguy |
| 02:31:34 | → | tcard_ joins (~tcard@2400:4051:5801:7500:cf17:befc:ff82:5303) |
| 02:31:46 | × | hackyhacker quits (~hackyhack@2a05:f480:1400:24b2:5400:4ff:fe76:a8f3) (*.net *.split) |
| 02:31:46 | × | lightandlight quits (sid135476@id-135476.helmsley.irccloud.com) (*.net *.split) |
| 02:31:46 | × | hugo quits (znc@verdigris.lysator.liu.se) (*.net *.split) |
| 02:31:46 | × | AlexNoo quits (~AlexNoo@178.34.163.11) (*.net *.split) |
| 02:31:46 | × | bontaq quits (~user@ool-45779b84.dyn.optonline.net) (*.net *.split) |
| 02:31:46 | × | Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (*.net *.split) |
| 02:31:46 | × | Pent quits (sid313808@id-313808.lymington.irccloud.com) (*.net *.split) |
| 02:31:46 | × | lyxia quits (~lyxia@poisson.chat) (*.net *.split) |
| 02:31:46 | × | heath1 quits (~heath@user/heath) (*.net *.split) |
| 02:31:46 | × | canta1 quits (~canta@cvm0.d5k.one) (*.net *.split) |
| 02:31:46 | × | mi7 quits (~miselin@76.132.133.207) (*.net *.split) |
| 02:31:46 | × | hiredman quits (~hiredman@frontier1.downey.family) (*.net *.split) |
| 02:31:46 | × | mtjm quits (~mutantmel@2604:a880:2:d0::208b:d001) (*.net *.split) |
| 02:31:46 | × | dtman34 quits (~dtman34@2601:447:d000:93c9:f69f:1c9f:25a2:cccc) (*.net *.split) |
| 02:31:46 | × | bliminse quits (~bliminse@user/bliminse) (*.net *.split) |
| 02:31:46 | × | oljenkins quits (~philipp@p5dec4bb3.dip0.t-ipconnect.de) (*.net *.split) |
| 02:31:46 | × | Angelz quits (Angelz@2605:6400:30:fc15:9bd1:2217:41cd:bb15) (*.net *.split) |
| 02:31:46 | × | flukiluke quits (~m-7humut@2603:c023:c000:6c7e:8945:ad24:9113:a962) (*.net *.split) |
| 02:31:46 | × | tcard quits (~tcard@2400:4051:5801:7500:cf17:befc:ff82:5303) (*.net *.split) |
| 02:31:46 | × | drdo quits (~drdo@bl8-153-185.dsl.telepac.pt) (*.net *.split) |
| 02:31:46 | × | hexology quits (~hexology@user/hexology) (*.net *.split) |
| 02:31:46 | × | hays quits (rootvegeta@fsf/member/hays) (*.net *.split) |
| 02:31:46 | × | lottaquestions quits (~nick@2607:fa49:503f:6d00:8fc2:91a1:b755:da93) (*.net *.split) |
| 02:31:46 | × | delyan quits (sid523379@id-523379.hampstead.irccloud.com) (*.net *.split) |
| 02:31:46 | × | JSharp quits (sid4580@id-4580.lymington.irccloud.com) (*.net *.split) |
| 02:31:46 | × | srk quits (~sorki@user/srk) (*.net *.split) |
| 02:31:46 | × | nurupo quits (~nurupo.ga@user/nurupo) (*.net *.split) |
| 02:31:46 | × | h2t quits (~h2t@user/h2t) (*.net *.split) |
| 02:31:46 | × | siers quits (~ij@user/ij) (*.net *.split) |
| 02:31:46 | × | edmundnoble quits (sid229620@id-229620.helmsley.irccloud.com) (*.net *.split) |
| 02:31:46 | × | rubin55 quits (sid175221@id-175221.hampstead.irccloud.com) (*.net *.split) |
| 02:31:46 | × | robobub quits (uid248673@id-248673.uxbridge.irccloud.com) (*.net *.split) |
| 02:31:46 | × | hippoid quits (~hippoid@user/hippoid) (*.net *.split) |
| 02:31:46 | × | MonsoonSecrecy quits (f78c86e960@2604:bf00:561:2000::f99) (*.net *.split) |
| 02:31:46 | × | retropikzel quits (9d1a4f9f46@2604:bf00:561:2000::ce) (*.net *.split) |
| 02:31:46 | × | sus quits (1b7af6299f@user/zeromomentum) (*.net *.split) |
| 02:31:46 | × | shreyasminocha quits (51fdc93eda@user/shreyasminocha) (*.net *.split) |
| 02:31:46 | × | whereiseveryone quits (206ba86c98@2604:bf00:561:2000::2e4) (*.net *.split) |
| 02:31:46 | × | theesm quits (2cbdf4b38a@2604:bf00:561:2000::11c8) (*.net *.split) |
| 02:31:46 | × | n1essa quits (3d621153a5@2604:bf00:561:2000::df7) (*.net *.split) |
| 02:31:46 | × | ymherklotz quits (cb2c9cfbdd@2604:bf00:561:2000::29a) (*.net *.split) |
| 02:31:46 | × | probie quits (cc0b34050a@user/probie) (*.net *.split) |
| 02:31:46 | × | henrytill quits (e0180937c3@2604:bf00:561:2000::e8c) (*.net *.split) |
| 02:31:46 | × | fvr quits (ef3e56ca8b@2604:bf00:561:2000::3c4) (*.net *.split) |
| 02:31:46 | × | samhh quits (7569f027cf@2604:bf00:561:2000::e4) (*.net *.split) |
| 02:31:46 | × | JoelMcCracken quits (9cb760e8d2@2604:bf00:561:2000::10e3) (*.net *.split) |
| 02:31:46 | × | arcadewise quits (52968ed80d@2604:bf00:561:2000::3df) (*.net *.split) |
| 02:31:46 | × | evanrelf quits (3addc196af@2604:bf00:561:2000::f0) (*.net *.split) |
| 02:31:46 | × | Ankhers quits (e99e97ef8e@2604:bf00:561:2000::2a2) (*.net *.split) |
| 02:31:46 | × | jkoshy quits (99b9359beb@user/jkoshy) (*.net *.split) |
| 02:31:46 | × | cpli quits (77fc530071@2604:bf00:561:2000::252) (*.net *.split) |
| 02:31:46 | × | b0o quits (0e4a0bf4c9@2604:bf00:561:2000::1bf) (*.net *.split) |
| 02:31:46 | × | fluffyballoon quits (45ce440a48@2604:bf00:561:2000::e2) (*.net *.split) |
| 02:31:46 | × | jleightcap quits (7bc4014b62@user/jleightcap) (*.net *.split) |
| 02:31:46 | × | sm2n quits (ae95cb1267@user/sm2n) (*.net *.split) |
| 02:31:46 | × | chaitlatte0 quits (ea29c0bb16@user/chaitlatte0) (*.net *.split) |
| 02:31:46 | × | jakzale quits (6291399afa@user/jakzale) (*.net *.split) |
| 02:31:46 | × | bsima1 quits (9d7e39c8ad@2604:bf00:561:2000::dd) (*.net *.split) |
| 02:31:46 | × | lukec quits (9dfd4d094e@2604:bf00:561:2000::10e) (*.net *.split) |
| 02:31:46 | × | filwisher quits (3433d34cc6@2604:bf00:561:2000::170) (*.net *.split) |
| 02:31:46 | × | ggb quits (a62ffbaf4f@2604:bf00:561:2000::3ac) (*.net *.split) |
| 02:31:46 | × | ario quits (~ario@159.65.220.102) (*.net *.split) |
| 02:31:46 | × | mikko quits (~mikko@user/mikko) (*.net *.split) |
| 02:31:46 | × | heartburn quits (~gass@2a00:d880:3:1::b1e4:b241) (*.net *.split) |
| 02:31:46 | × | landonf quits (landonf@mac68k.info) (*.net *.split) |
| 02:31:46 | × | cln_ quits (cln@wtf.cx) (*.net *.split) |
| 02:31:46 | × | remsen quits (ianremsen@tilde.team) (*.net *.split) |
| 02:31:46 | × | _\_ quits (~o@user/offon) (*.net *.split) |
| 02:31:49 | samhh_ | is now known as samhh |
| 02:31:57 | → | ggb joins (a62ffbaf4f@2604:bf00:561:2000::3ac) |
| 02:31:57 | → | bsima1 joins (9d7e39c8ad@2604:bf00:561:2000::dd) |
| 02:31:57 | → | lukec joins (9dfd4d094e@2604:bf00:561:2000::10e) |
| 02:31:57 | → | filwisher joins (2e6936c793@2604:bf00:561:2000::170) |
| 02:31:58 | → | landonf joins (landonf@2600:3c03::f03c:91ff:feae:da1e) |
| 02:32:02 | → | cln_ joins (cln@wtf.cx) |
| 02:32:07 | → | MonsoonSecrecy joins (f78c86e960@2604:bf00:561:2000::f99) |
| 02:32:13 | → | whereiseveryone joins (206ba86c98@2604:bf00:561:2000::2e4) |
| 02:32:13 | → | evanrelf joins (3addc196af@2604:bf00:561:2000::f0) |
| 02:32:17 | → | fvr joins (ef3e56ca8b@2604:bf00:561:2000::3c4) |
| 02:32:22 | → | shreyasminocha joins (51fdc93eda@user/shreyasminocha) |
| 02:32:22 | → | sus joins (1b7af6299f@user/zeromomentum) |
| 02:32:30 | → | probie joins (cc0b34050a@user/probie) |
| 02:32:30 | → | henrytill joins (e0180937c3@2604:bf00:561:2000::e8c) |
| 02:32:33 | → | delyan joins (sid523379@2a03:5180:f:4::7:fc73) |
| 02:32:34 | → | retropikzel joins (9d1a4f9f46@2604:bf00:561:2000::ce) |
| 02:32:34 | → | ymherklotz joins (cb2c9cfbdd@2604:bf00:561:2000::29a) |
| 02:32:34 | → | Ankhers joins (a197a332e9@2604:bf00:561:2000::2a2) |
| 02:32:35 | → | bontaq joins (~user@ool-45779b84.dyn.optonline.net) |
| 02:32:37 | → | Pent joins (sid313808@2a03:5180:f:2::4:c9d0) |
| 02:32:42 | → | AlexNoo joins (~AlexNoo@178.34.163.11) |
| 02:32:45 | → | JSharp joins (sid4580@2a03:5180:f:2::11e4) |
| 02:32:46 | → | edmundnoble joins (sid229620@id-229620.helmsley.irccloud.com) |
| 02:32:47 | → | canta1 joins (~canta@cvm0.d5k.one) |
| 02:32:48 | → | mikko joins (~mikko@dsl-trebng22-58c1a8-185.dhcp.inet.fi) |
| 02:32:55 | → | lightandlight joins (sid135476@id-135476.helmsley.irccloud.com) |
| 02:33:02 | × | mikko quits (~mikko@dsl-trebng22-58c1a8-185.dhcp.inet.fi) (Changing host) |
| 02:33:02 | → | mikko joins (~mikko@user/mikko) |
| 02:33:15 | → | rubin55 joins (sid175221@hampstead.irccloud.com) |
| 02:33:15 | × | emergence quits (thelounge@2607:5300:60:5910:dcad:beff:feef:5bc) (Read error: Connection reset by peer) |
| 02:33:17 | → | hexology joins (~hexology@user/hexology) |
| 02:33:23 | → | chaitlatte0 joins (ea29c0bb16@2604:bf00:561:2000::1124) |
| 02:33:26 | × | chaitlatte0 quits (ea29c0bb16@2604:bf00:561:2000::1124) (Changing host) |
| 02:33:26 | → | chaitlatte0 joins (ea29c0bb16@user/chaitlatte0) |
| 02:33:29 | → | cpli joins (77fc530071@2604:bf00:561:2000::252) |
| 02:33:40 | → | fluffyballoon joins (45ce440a48@2604:bf00:561:2000::e2) |
| 02:33:40 | → | arcadewise joins (52968ed80d@2604:bf00:561:2000::3df) |
| 02:33:40 | → | siers joins (~ij@user/ij) |
| 02:33:42 | → | sm2n joins (ae95cb1267@user/sm2n) |
| 02:33:43 | → | srk_ joins (~sorki@user/srk) |
| 02:33:43 | → | samhh_ joins (7569f027cf@2604:bf00:561:2000::e4) |
| 02:33:45 | → | n1essa joins (3d621153a5@2604:bf00:561:2000::df7) |
| 02:33:46 | → | JoelMcCracken joins (5ea8252fbb@2604:bf00:561:2000::10e3) |
| 02:33:51 | → | h2t joins (~h2t@user/h2t) |
| 02:33:51 | → | nurupo joins (~nurupo.ga@user/nurupo) |
| 02:33:56 | → | theesm joins (2cbdf4b38a@2604:bf00:561:2000::11c8) |
| 02:33:56 | → | jakzale joins (6291399afa@user/jakzale) |
| 02:33:57 | → | b0o joins (0e4a0bf4c9@2604:bf00:561:2000::1bf) |
| 02:33:58 | → | lottaquestions joins (~nick@2607:fa49:503f:6d00:9d95:486a:e095:686c) |
| 02:33:58 | → | dtman34 joins (~dtman34@2601:447:d000:93c9:f1cc:f7a5:325c:7994) |
| 02:33:58 | → | jleightcap joins (7bc4014b62@user/jleightcap) |
| 02:34:00 | → | jkoshy joins (99b9359beb@user/jkoshy) |
| 02:34:03 | → | emergence joins (thelounge@2607:5300:60:5910:dcad:beff:feef:5bc) |
| 02:34:04 | → | biberu\ joins (~biberu@user/biberu) |
| 02:34:07 | → | drdo joins (~drdo@bl8-153-185.dsl.telepac.pt) |
| 02:34:09 | → | Lord_of_Life joins (~Lord@user/lord-of-life/x-2819915) |
| 02:34:13 | → | flukiluke joins (~m-7humut@2603:c023:c000:6c7e:8945:ad24:9113:a962) |
| 02:34:29 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 246 seconds) |
| 02:34:32 | → | remsen joins (ianremsen@tilde.team) |
| 02:34:45 | → | robobub joins (uid248673@uxbridge.irccloud.com) |
| 02:34:47 | → | cheater joins (~Username@user/cheater) |
| 02:34:49 | × | emergence quits (thelounge@2607:5300:60:5910:dcad:beff:feef:5bc) (Read error: Connection reset by peer) |
| 02:34:54 | → | heath1 joins (~heath@user/heath) |
| 02:34:59 | → | mtjm joins (~mutantmel@2604:a880:2:d0::208b:d001) |
| 02:35:04 | → | emergence joins (thelounge@2607:5300:60:5910:dcad:beff:feef:5bc) |
| 02:35:06 | → | hugo joins (znc@verdigris.lysator.liu.se) |
| 02:35:34 | × | mcglk quits (~mcglk@131.191.19.145) (Ping timeout: 255 seconds) |
| 02:35:34 | → | ario joins (~ario@159.65.220.102) |
| 02:35:39 | biberu\ | is now known as biberu |
| 02:35:49 | → | hippoid joins (~hippoid@c-98-213-162-40.hsd1.il.comcast.net) |
| 02:36:13 | → | bliminse joins (~bliminse@user/bliminse) |
| 02:36:36 | → | heartburn joins (~gass@2a00:d880:3:1::b1e4:b241) |
| 02:36:51 | → | mcglk joins (~mcglk@131.191.19.145) |
| 02:37:01 | → | hiredman joins (~hiredman@frontier1.downey.family) |
| 02:37:01 | → | oljenkins joins (~philipp@p5dec4bb3.dip0.t-ipconnect.de) |
| 02:43:01 | × | terrorjack quits (~terrorjac@2a01:4f8:c17:87f8::) (Quit: The Lounge - https://thelounge.chat) |
| 02:43:06 | × | [itchyjunk] quits (~itchyjunk@user/itchyjunk/x-7353470) (Read error: Connection reset by peer) |
| 02:43:55 | → | Angelz joins (Angelz@angelz.oddprotocol.org) |
| 02:44:26 | → | terrorjack joins (~terrorjac@2a01:4f8:c17:87f8::) |
| 02:44:51 | × | td_ quits (~td@i5387093F.versanet.de) (Ping timeout: 260 seconds) |
| 02:44:54 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 265 seconds) |
| 02:44:55 | → | biberu\ joins (~biberu@user/biberu) |
| 02:46:29 | biberu\ | is now known as biberu |
| 02:46:32 | → | td_ joins (~td@i5387091C.versanet.de) |
| 02:49:43 | × | dhruvasagar quits (~dhruvasag@49.207.218.223) (Ping timeout: 250 seconds) |
| 02:51:15 | → | dhruvasagar joins (~dhruvasag@49.207.218.223) |
| 02:53:16 | → | merijn joins (~merijn@86.86.29.250) |
| 02:53:26 | → | jargon joins (~jargon@184.101.75.235) |
| 02:54:28 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 255 seconds) |
| 02:54:49 | → | biberu joins (~biberu@user/biberu) |
| 02:55:31 | × | dhruvasagar quits (~dhruvasag@49.207.218.223) (Ping timeout: 240 seconds) |
| 02:57:31 | × | merijn quits (~merijn@86.86.29.250) (Ping timeout: 250 seconds) |
| 02:59:56 | × | jero98772 quits (~jero98772@2800:484:1d7f:5d36::1) (Remote host closed the connection) |
| 03:02:10 | → | lyxia joins (~lyxia@poisson.chat) |
| 03:02:48 | → | dhruvasagar joins (~dhruvasag@49.207.218.223) |
| 03:04:31 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 240 seconds) |
| 03:05:48 | → | biberu joins (~biberu@user/biberu) |
| 03:07:01 | × | dhruvasagar quits (~dhruvasag@49.207.218.223) (Ping timeout: 240 seconds) |
| 03:07:52 | → | oac_ joins (~oac@72-50-214-210.fttp.usinternet.com) |
| 03:12:43 | → | segfaultfizzbuzz joins (~segfaultf@23-93-74-212.fiber.dynamic.sonic.net) |
| 03:13:31 | → | cheater_ joins (~Username@user/cheater) |
| 03:13:44 | → | biberu\ joins (~biberu@user/biberu) |
| 03:14:25 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 250 seconds) |
| 03:15:49 | biberu\ | is now known as biberu |
| 03:16:27 | × | cheater quits (~Username@user/cheater) (Ping timeout: 268 seconds) |
| 03:16:36 | cheater_ | is now known as cheater |
| 03:18:46 | × | nate2 quits (~nate@c-98-45-169-16.hsd1.ca.comcast.net) (Ping timeout: 255 seconds) |
| 03:24:32 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 246 seconds) |
| 03:28:33 | → | vandita_ joins (~vandit@87-97-13-61.pool.digikabel.hu) |
| 03:29:24 | × | oac_ quits (~oac@72-50-214-210.fttp.usinternet.com) (Quit: oac_) |
| 03:30:06 | → | biberu joins (~biberu@user/biberu) |
| 03:30:18 | → | jlwoodwa joins (~jlwoodwa@172.58.84.226) |
| 03:32:06 | × | vandita quits (~vandit@85-238-93-40.pool.digikabel.hu) (Ping timeout: 260 seconds) |
| 03:34:24 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 248 seconds) |
| 03:35:21 | → | biberu joins (~biberu@user/biberu) |
| 03:37:39 | ChanServ | sets mode +o litharge |
| 03:37:40 | litharge | sets mode -bo *!*@189.162.135.18 litharge |
| 03:42:23 | → | cafkafk joins (~cafkafk@fsf/member/cafkafk) |
| 03:43:33 | × | jargon quits (~jargon@184.101.75.235) (Remote host closed the connection) |
| 03:43:42 | → | biberu\ joins (~biberu@user/biberu) |
| 03:44:20 | × | wroathe quits (~wroathe@user/wroathe) (Ping timeout: 260 seconds) |
| 03:44:31 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 240 seconds) |
| 03:45:18 | biberu\ | is now known as biberu |
| 03:46:14 | × | extor quits (~extor@ns3018124.ip-149-202-82.eu) (Quit: ZNC 1.8.2+deb2build5 - https://znc.in) |
| 03:51:44 | → | chromoblob joins (~user@37.113.180.121) |
| 03:54:39 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 255 seconds) |
| 03:54:59 | → | biberu joins (~biberu@user/biberu) |
| 03:56:16 | × | chromoblob quits (~user@37.113.180.121) (Ping timeout: 248 seconds) |
| 03:58:03 | → | dhruvasagar joins (~dhruvasag@49.207.218.223) |
| 04:04:17 | → | biberu\ joins (~biberu@user/biberu) |
| 04:04:20 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 240 seconds) |
| 04:05:19 | biberu\ | is now known as biberu |
| 04:08:52 | → | _ht joins (~Thunderbi@28-52-174-82.ftth.glasoperator.nl) |
| 04:13:29 | → | gmg joins (~user@user/gehmehgeh) |
| 04:13:43 | → | biberu\ joins (~biberu@user/biberu) |
| 04:14:20 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 240 seconds) |
| 04:15:16 | biberu\ | is now known as biberu |
| 04:24:20 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 240 seconds) |
| 04:24:24 | → | biberu\ joins (~biberu@user/biberu) |
| 04:25:17 | biberu\ | is now known as biberu |
| 04:28:05 | × | segfaultfizzbuzz quits (~segfaultf@23-93-74-212.fiber.dynamic.sonic.net) (Ping timeout: 240 seconds) |
| 04:28:54 | → | extor joins (~extor@ns3018124.ip-149-202-82.eu) |
| 04:29:07 | → | chromoblob joins (~user@37.113.180.121) |
| 04:31:09 | → | segfaultfizzbuzz joins (~segfaultf@23-93-74-212.fiber.dynamic.sonic.net) |
| 04:33:36 | × | chromoblob quits (~user@37.113.180.121) (Ping timeout: 248 seconds) |
| 04:33:44 | → | biberu\ joins (~biberu@user/biberu) |
| 04:34:25 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 240 seconds) |
| 04:36:04 | biberu\ | is now known as biberu |
| 04:42:38 | → | euandreh1 joins (~Thunderbi@189.6.18.7) |
| 04:43:22 | × | euandreh quits (~Thunderbi@189.6.18.7) (Ping timeout: 255 seconds) |
| 04:43:23 | euandreh1 | is now known as euandreh |
| 04:43:44 | → | biberu\ joins (~biberu@user/biberu) |
| 04:44:20 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 240 seconds) |
| 04:45:17 | biberu\ | is now known as biberu |
| 04:54:30 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 255 seconds) |
| 04:54:32 | → | biberu\ joins (~biberu@user/biberu) |
| 04:55:25 | biberu\ | is now known as biberu |
| 05:03:45 | → | biberu\ joins (~biberu@user/biberu) |
| 05:04:20 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 240 seconds) |
| 05:04:50 | × | shapr quits (~user@2600:1700:c640:3100:b9fd:fedb:2561:e04e) (Ping timeout: 260 seconds) |
| 05:05:18 | biberu\ | is now known as biberu |
| 05:08:32 | × | adanwan quits (~adanwan@gateway/tor-sasl/adanwan) (Ping timeout: 240 seconds) |
| 05:10:06 | → | adanwan joins (~adanwan@gateway/tor-sasl/adanwan) |
| 05:13:32 | → | falafel joins (~falafel@63.209.200.131) |
| 05:13:45 | → | biberu\ joins (~biberu@user/biberu) |
| 05:14:30 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 240 seconds) |
| 05:15:17 | biberu\ | is now known as biberu |
| 05:15:27 | → | nate2 joins (~nate@c-98-45-169-16.hsd1.ca.comcast.net) |
| 05:17:44 | × | gmg quits (~user@user/gehmehgeh) (Ping timeout: 240 seconds) |
| 05:17:59 | → | takuan joins (~takuan@178-116-218-225.access.telenet.be) |
| 05:18:36 | → | gmg joins (~user@user/gehmehgeh) |
| 05:18:52 | edm_ | is now known as edm |
| 05:20:09 | × | nate2 quits (~nate@c-98-45-169-16.hsd1.ca.comcast.net) (Ping timeout: 255 seconds) |
| 05:20:55 | → | bgs joins (~bgs@212-85-160-171.dynamic.telemach.net) |
| 05:23:16 | × | juri_ quits (~juri@84-19-175-187.pool.ovpn.com) (Server closed connection) |
| 05:23:32 | → | juri_ joins (~juri@84-19-175-187.pool.ovpn.com) |
| 05:24:20 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 240 seconds) |
| 05:24:38 | → | biberu\ joins (~biberu@user/biberu) |
| 05:25:30 | biberu\ | is now known as biberu |
| 05:34:29 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 240 seconds) |
| 05:37:08 | → | biberu joins (~biberu@user/biberu) |
| 05:37:20 | × | cafkafk quits (~cafkafk@fsf/member/cafkafk) (Ping timeout: 240 seconds) |
| 05:38:25 | × | _ht quits (~Thunderbi@28-52-174-82.ftth.glasoperator.nl) (Quit: _ht) |
| 05:38:27 | → | cafkafk joins (~cafkafk@fsf/member/cafkafk) |
| 05:39:27 | → | michalz joins (~michalz@185.246.207.217) |
| 05:39:44 | → | hays joins (rootvegeta@fsf/member/hays) |
| 05:44:27 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 255 seconds) |
| 05:45:30 | → | biberu joins (~biberu@user/biberu) |
| 05:51:59 | × | thegeekinside quits (~thegeekin@189.217.90.138) (Read error: Connection reset by peer) |
| 05:54:18 | → | biberu\ joins (~biberu@user/biberu) |
| 05:54:48 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 255 seconds) |
| 05:55:49 | biberu\ | is now known as biberu |
| 05:58:00 | → | thegeekinside joins (~thegeekin@189.217.90.138) |
| 06:00:29 | × | mei quits (~mei@user/mei) (Ping timeout: 268 seconds) |
| 06:03:43 | → | biberu\ joins (~biberu@user/biberu) |
| 06:03:56 | × | segfaultfizzbuzz quits (~segfaultf@23-93-74-212.fiber.dynamic.sonic.net) (Ping timeout: 240 seconds) |
| 06:04:09 | × | thegeekinside quits (~thegeekin@189.217.90.138) (Read error: Connection reset by peer) |
| 06:04:10 | → | mei joins (~mei@user/mei) |
| 06:04:29 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 240 seconds) |
| 06:05:15 | biberu\ | is now known as biberu |
| 06:06:25 | → | trev joins (~trev@user/trev) |
| 06:06:56 | × | taupiqueur quits (~taupiqueu@2a02-842a-8180-4601-0906-7ddd-44ff-a642.rev.sfr.net) (Ping timeout: 246 seconds) |
| 06:08:52 | → | taupiqueur joins (~taupiqueu@2a02-842a-8180-4601-0906-7ddd-44ff-a642.rev.sfr.net) |
| 06:12:38 | → | titibandit joins (~titibandi@user/titibandit) |
| 06:13:43 | → | biberu\ joins (~biberu@user/biberu) |
| 06:13:56 | × | taupiqueur quits (~taupiqueu@2a02-842a-8180-4601-0906-7ddd-44ff-a642.rev.sfr.net) (Ping timeout: 240 seconds) |
| 06:14:20 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 240 seconds) |
| 06:15:18 | biberu\ | is now known as biberu |
| 06:16:36 | × | bontaq quits (~user@ool-45779b84.dyn.optonline.net) (Ping timeout: 265 seconds) |
| 06:16:52 | → | taupiqueur joins (~taupiqueu@2a02-842a-8180-4601-0906-7ddd-44ff-a642.rev.sfr.net) |
| 06:21:56 | × | taupiqueur quits (~taupiqueu@2a02-842a-8180-4601-0906-7ddd-44ff-a642.rev.sfr.net) (Ping timeout: 240 seconds) |
| 06:23:43 | → | biberu\ joins (~biberu@user/biberu) |
| 06:24:20 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 240 seconds) |
| 06:24:39 | × | werneta quits (~werneta@70.142.214.115) (Ping timeout: 250 seconds) |
| 06:25:18 | biberu\ | is now known as biberu |
| 06:26:40 | → | werneta joins (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) |
| 06:26:49 | → | chomwitt joins (~chomwitt@2a02:587:7a0e:cf00:1ac0:4dff:fedb:a3f1) |
| 06:34:30 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 240 seconds) |
| 06:34:50 | → | biberu\ joins (~biberu@user/biberu) |
| 06:35:45 | biberu\ | is now known as biberu |
| 06:39:44 | → | mncheck joins (~mncheck@193.224.205.254) |
| 06:40:19 | × | bgs quits (~bgs@212-85-160-171.dynamic.telemach.net) (Remote host closed the connection) |
| 06:43:45 | → | biberu\ joins (~biberu@user/biberu) |
| 06:44:20 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 240 seconds) |
| 06:45:51 | biberu\ | is now known as biberu |
| 06:47:54 | × | falafel quits (~falafel@63.209.200.131) (Ping timeout: 255 seconds) |
| 06:54:39 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 255 seconds) |
| 06:54:45 | → | biberu\ joins (~biberu@user/biberu) |
| 06:57:34 | biberu\ | is now known as biberu |
| 06:59:56 | × | dhruvasagar quits (~dhruvasag@49.207.218.223) (Ping timeout: 240 seconds) |
| 07:01:15 | → | lortabac joins (~lortabac@2a01:e0a:541:b8f0:69ab:5b95:e09f:9970) |
| 07:01:39 | → | dhruvasagar joins (~dhruvasag@49.207.218.223) |
| 07:03:44 | → | biberu\ joins (~biberu@user/biberu) |
| 07:04:30 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 240 seconds) |
| 07:05:21 | biberu\ | is now known as biberu |
| 07:05:56 | × | dhruvasagar quits (~dhruvasag@49.207.218.223) (Ping timeout: 240 seconds) |
| 07:06:38 | → | coot joins (~coot@89-69-206-216.dynamic.chello.pl) |
| 07:07:09 | → | dhruvasagar joins (~dhruvasag@49.207.218.223) |
| 07:07:46 | → | gurkenglas joins (~user@dynamic-046-114-182-029.46.114.pool.telefonica.de) |
| 07:08:06 | × | econo quits (uid147250@user/econo) (Quit: Connection closed for inactivity) |
| 07:11:29 | × | dhruvasagar quits (~dhruvasag@49.207.218.223) (Ping timeout: 240 seconds) |
| 07:12:38 | → | dhruvasagar joins (~dhruvasag@49.207.218.223) |
| 07:13:43 | → | biberu\ joins (~biberu@user/biberu) |
| 07:14:20 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 240 seconds) |
| 07:15:17 | biberu\ | is now known as biberu |
| 07:16:13 | → | nate2 joins (~nate@c-98-45-169-16.hsd1.ca.comcast.net) |
| 07:17:08 | × | dhruvasagar quits (~dhruvasag@49.207.218.223) (Ping timeout: 240 seconds) |
| 07:18:09 | → | dhruvasagar joins (~dhruvasag@49.207.218.223) |
| 07:19:10 | → | merijn joins (~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) |
| 07:20:44 | × | nate2 quits (~nate@c-98-45-169-16.hsd1.ca.comcast.net) (Ping timeout: 240 seconds) |
| 07:23:00 | × | dhruvasagar quits (~dhruvasag@49.207.218.223) (Ping timeout: 255 seconds) |
| 07:23:01 | × | jmorris quits (uid604645@id-604645.hampstead.irccloud.com) (Quit: Connection closed for inactivity) |
| 07:23:39 | → | dhruvasagar joins (~dhruvasag@49.207.218.223) |
| 07:23:42 | → | biberu\ joins (~biberu@user/biberu) |
| 07:24:20 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 240 seconds) |
| 07:25:17 | biberu\ | is now known as biberu |
| 07:25:35 | ← | sukil parts (~sukil@user/sukil) () |
| 07:27:56 | × | dhruvasagar quits (~dhruvasag@49.207.218.223) (Ping timeout: 240 seconds) |
| 07:29:08 | → | dhruvasagar joins (~dhruvasag@49.207.218.223) |
| 07:34:18 | × | Sgeo quits (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
| 07:34:42 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 255 seconds) |
| 07:35:02 | → | biberu\ joins (~biberu@user/biberu) |
| 07:35:56 | biberu\ | is now known as biberu |
| 07:38:23 | → | tessier joins (~treed@ec2-184-72-149-67.compute-1.amazonaws.com) |
| 07:38:42 | → | Unicorn_Princess joins (~Unicorn_P@user/Unicorn-Princess/x-3540542) |
| 07:39:12 | × | titibandit quits (~titibandi@user/titibandit) (Ping timeout: 255 seconds) |
| 07:42:13 | → | ubert joins (~Thunderbi@p200300ecdf09815bfe154d1462438e46.dip0.t-ipconnect.de) |
| 07:42:49 | → | hisa389 joins (~hisa38@104-181-102-238.lightspeed.wepbfl.sbcglobal.net) |
| 07:44:10 | → | ubert1 joins (~Thunderbi@p200300ecdf09815b6cf4bc17eb3fe094.dip0.t-ipconnect.de) |
| 07:44:30 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 240 seconds) |
| 07:44:40 | × | hisa38 quits (~hisa38@104-181-102-238.lightspeed.wepbfl.sbcglobal.net) (Ping timeout: 260 seconds) |
| 07:44:41 | hisa389 | is now known as hisa38 |
| 07:46:40 | → | biberu joins (~biberu@user/biberu) |
| 07:50:06 | × | kadobanana quits (~mud@user/kadoban) (Remote host closed the connection) |
| 07:50:31 | → | kadobanana joins (~mud@user/kadoban) |
| 07:54:27 | × | ubert quits (~Thunderbi@p200300ecdf09815bfe154d1462438e46.dip0.t-ipconnect.de) (Remote host closed the connection) |
| 07:54:27 | ubert1 | is now known as ubert |
| 07:54:30 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 255 seconds) |
| 07:55:14 | → | ub joins (~Thunderbi@p200300ecdf09815bfe154d1462438e46.dip0.t-ipconnect.de) |
| 07:57:04 | → | biberu joins (~biberu@user/biberu) |
| 07:59:22 | → | machinedgod joins (~machinedg@d198-53-218-113.abhsia.telus.net) |
| 08:00:53 | × | FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection) |
| 08:04:19 | → | FinnElija joins (~finn_elij@user/finn-elija/x-0085643) |
| 08:04:51 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 255 seconds) |
| 08:04:51 | → | biberu\ joins (~biberu@user/biberu) |
| 08:05:51 | → | titibandit joins (~titibandi@user/titibandit) |
| 08:06:08 | × | ft quits (~ft@p4fc2a88b.dip0.t-ipconnect.de) (Quit: leaving) |
| 08:06:22 | × | coot quits (~coot@89-69-206-216.dynamic.chello.pl) (Quit: coot) |
| 08:06:23 | biberu\ | is now known as biberu |
| 08:07:53 | → | zeenk joins (~zeenk@2a02:2f04:a106:3c00::7fe) |
| 08:10:56 | × | bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 240 seconds) |
| 08:11:20 | × | stiell quits (~stiell@gateway/tor-sasl/stiell) (Ping timeout: 240 seconds) |
| 08:12:16 | × | niko quits (niko@libera/staff/niko) (Ping timeout: 620 seconds) |
| 08:13:43 | → | biberu\ joins (~biberu@user/biberu) |
| 08:13:44 | × | jpds quits (~jpds@gateway/tor-sasl/jpds) (Ping timeout: 240 seconds) |
| 08:13:51 | → | bitdex joins (~bitdex@gateway/tor-sasl/bitdex) |
| 08:14:08 | → | stiell joins (~stiell@gateway/tor-sasl/stiell) |
| 08:14:30 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 240 seconds) |
| 08:14:39 | → | jpds joins (~jpds@gateway/tor-sasl/jpds) |
| 08:15:17 | biberu\ | is now known as biberu |
| 08:19:41 | → | gtdg joins (~gtdg@user/gtdg) |
| 08:19:48 | × | gmg quits (~user@user/gehmehgeh) (Quit: Leaving) |
| 08:21:36 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:782b:e4a2:bdc6:e185) (Remote host closed the connection) |
| 08:23:44 | → | biberu\ joins (~biberu@user/biberu) |
| 08:24:10 | × | gtdg quits (~gtdg@user/gtdg) (Client Quit) |
| 08:24:29 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 240 seconds) |
| 08:25:17 | biberu\ | is now known as biberu |
| 08:30:10 | × | Alex_test quits (~al_test@178.34.163.11) (Ping timeout: 255 seconds) |
| 08:30:57 | → | gnalzo joins (~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) |
| 08:31:55 | × | AlexZenon quits (~alzenon@178.34.163.11) (Ping timeout: 260 seconds) |
| 08:31:56 | × | AlexNoo quits (~AlexNoo@178.34.163.11) (Ping timeout: 265 seconds) |
| 08:33:43 | → | biberu\ joins (~biberu@user/biberu) |
| 08:34:25 | → | dcoutts_ joins (~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net) |
| 08:34:33 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 255 seconds) |
| 08:35:03 | → | husixu joins (~husixu@2404:e801:2007:2ad:49ca:89e4:729e:9841) |
| 08:35:16 | biberu\ | is now known as biberu |
| 08:35:54 | × | ub quits (~Thunderbi@p200300ecdf09815bfe154d1462438e46.dip0.t-ipconnect.de) (Quit: ub) |
| 08:37:15 | × | ubert quits (~Thunderbi@p200300ecdf09815b6cf4bc17eb3fe094.dip0.t-ipconnect.de) (Ping timeout: 255 seconds) |
| 08:38:41 | × | husixu quits (~husixu@2404:e801:2007:2ad:49ca:89e4:729e:9841) (Client Quit) |
| 08:39:15 | → | coot joins (~coot@89-69-206-216.dynamic.chello.pl) |
| 08:40:20 | × | dhruvasagar quits (~dhruvasag@49.207.218.223) (Ping timeout: 240 seconds) |
| 08:41:35 | → | dhruvasagar joins (~dhruvasag@49.207.218.223) |
| 08:43:43 | → | biberu\ joins (~biberu@user/biberu) |
| 08:43:57 | <Athas> | Does anyone here have experience with using Liquid Haskell? |
| 08:44:30 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 240 seconds) |
| 08:45:17 | biberu\ | is now known as biberu |
| 08:47:32 | × | coot quits (~coot@89-69-206-216.dynamic.chello.pl) (Quit: coot) |
| 08:48:03 | × | dhruvasagar quits (~dhruvasag@49.207.218.223) (Ping timeout: 255 seconds) |
| 08:48:10 | × | shriekingnoise_ quits (~shrieking@186.137.175.87) (Ping timeout: 255 seconds) |
| 08:48:27 | × | tzh quits (~tzh@c-24-21-73-154.hsd1.wa.comcast.net) (Quit: zzz) |
| 08:49:10 | → | dhruvasagar joins (~dhruvasag@49.207.218.223) |
| 08:53:44 | → | biberu\ joins (~biberu@user/biberu) |
| 08:54:18 | → | ubert joins (~Thunderbi@2a02:8109:abc0:6434:7683:e8bd:3044:ba11) |
| 08:54:30 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 240 seconds) |
| 08:55:15 | × | fbytez quits (~uid@2001:bc8:2117:100::) (Ping timeout: 260 seconds) |
| 08:55:17 | biberu\ | is now known as biberu |
| 08:55:22 | × | ubert quits (~Thunderbi@2a02:8109:abc0:6434:7683:e8bd:3044:ba11) (Remote host closed the connection) |
| 08:55:35 | → | ubert joins (~Thunderbi@2a02:8109:abc0:6434:2f62:8fd9:5067:a5dd) |
| 08:57:33 | → | fbytez joins (~uid@2001:bc8:2117:100::) |
| 09:01:22 | → | Co0kie joins (~Jura@145.224.73.17) |
| 09:04:42 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 255 seconds) |
| 09:05:21 | → | biberu\ joins (~biberu@user/biberu) |
| 09:06:15 | biberu\ | is now known as biberu |
| 09:09:10 | → | Lord_of_Life_ joins (~Lord@user/lord-of-life/x-2819915) |
| 09:09:11 | × | Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 268 seconds) |
| 09:09:46 | → | mmhat joins (~mmh@p200300f1c702b0e8ee086bfffe095315.dip0.t-ipconnect.de) |
| 09:09:52 | × | vandita_ quits (~vandit@87-97-13-61.pool.digikabel.hu) (Ping timeout: 248 seconds) |
| 09:11:54 | Lord_of_Life_ | is now known as Lord_of_Life |
| 09:13:44 | → | biberu\ joins (~biberu@user/biberu) |
| 09:14:21 | × | finsternis quits (~X@23.226.237.192) (Read error: Connection reset by peer) |
| 09:14:30 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 240 seconds) |
| 09:14:36 | × | fbytez quits (~uid@2001:bc8:2117:100::) (Ping timeout: 255 seconds) |
| 09:15:17 | biberu\ | is now known as biberu |
| 09:16:56 | → | nate2 joins (~nate@c-98-45-169-16.hsd1.ca.comcast.net) |
| 09:17:10 | → | coot joins (~coot@89-69-206-216.dynamic.chello.pl) |
| 09:21:30 | × | nate2 quits (~nate@c-98-45-169-16.hsd1.ca.comcast.net) (Ping timeout: 240 seconds) |
| 09:22:05 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:782b:e4a2:bdc6:e185) |
| 09:23:07 | → | fbytez joins (~uid@2001:bc8:2117:100::) |
| 09:24:30 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 255 seconds) |
| 09:25:26 | → | biberu\ joins (~biberu@user/biberu) |
| 09:26:23 | biberu\ | is now known as biberu |
| 09:26:30 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:782b:e4a2:bdc6:e185) (Ping timeout: 240 seconds) |
| 09:30:24 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Read error: Connection reset by peer) |
| 09:33:44 | → | biberu\ joins (~biberu@user/biberu) |
| 09:34:30 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 240 seconds) |
| 09:34:38 | × | m1dnight quits (~christoph@78-22-4-67.access.telenet.be) (Quit: WeeChat 3.8) |
| 09:35:03 | → | m1dnight joins (~christoph@78-22-4-67.access.telenet.be) |
| 09:35:16 | biberu\ | is now known as biberu |
| 09:37:44 | → | chromoblob joins (~user@37.113.180.121) |
| 09:39:08 | × | fbytez quits (~uid@2001:bc8:2117:100::) (Ping timeout: 240 seconds) |
| 09:43:44 | → | biberu\ joins (~biberu@user/biberu) |
| 09:44:29 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 240 seconds) |
| 09:45:19 | biberu\ | is now known as biberu |
| 09:46:30 | → | jinsl joins (~jinsl@123.120.169.188) |
| 09:47:29 | → | mc47 joins (~mc47@xmonad/TheMC47) |
| 09:49:42 | × | titibandit quits (~titibandi@user/titibandit) (Ping timeout: 255 seconds) |
| 09:50:44 | → | titibandit joins (~titibandi@user/titibandit) |
| 09:52:51 | × | chromoblob quits (~user@37.113.180.121) (Ping timeout: 255 seconds) |
| 09:53:45 | → | biberu\ joins (~biberu@user/biberu) |
| 09:54:20 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 240 seconds) |
| 09:55:17 | biberu\ | is now known as biberu |
| 09:59:09 | × | titibandit quits (~titibandi@user/titibandit) (Ping timeout: 255 seconds) |
| 10:00:41 | → | titibandit joins (~titibandi@user/titibandit) |
| 10:02:49 | × | sllk quits (~sllk@vps-73d553ae.vps.ovh.net) (Quit: leaving) |
| 10:03:44 | → | biberu\ joins (~biberu@user/biberu) |
| 10:04:30 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 240 seconds) |
| 10:04:45 | × | rando25892 quits (~andor2985@user/rando25892) (Ping timeout: 240 seconds) |
| 10:05:18 | biberu\ | is now known as biberu |
| 10:08:21 | → | acidjnk joins (~acidjnk@p200300d6e7072f28fc9054c626dc7d9f.dip0.t-ipconnect.de) |
| 10:13:21 | → | niko joins (niko@libera/staff/niko) |
| 10:13:44 | → | biberu\ joins (~biberu@user/biberu) |
| 10:14:20 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 240 seconds) |
| 10:15:18 | biberu\ | is now known as biberu |
| 10:17:21 | × | xff0x quits (~xff0x@125.103.176.34) (Ping timeout: 250 seconds) |
| 10:23:38 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:782b:e4a2:bdc6:e185) |
| 10:23:45 | → | biberu\ joins (~biberu@user/biberu) |
| 10:24:48 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 255 seconds) |
| 10:25:19 | biberu\ | is now known as biberu |
| 10:27:59 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:782b:e4a2:bdc6:e185) (Ping timeout: 240 seconds) |
| 10:32:06 | × | jackdk quits (sid373013@cssa/jackdk) (Server closed connection) |
| 10:32:15 | → | jackdk joins (sid373013@cssa/jackdk) |
| 10:33:44 | → | biberu\ joins (~biberu@user/biberu) |
| 10:34:05 | → | arrowhead joins (~arrowhead@2603-7000-9b3f-6934-84fe-c7f9-02f3-6912.res6.spectrum.com) |
| 10:34:14 | → | azimut joins (~azimut@gateway/tor-sasl/azimut) |
| 10:34:29 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 240 seconds) |
| 10:34:30 | × | arrowhead quits (~arrowhead@2603-7000-9b3f-6934-84fe-c7f9-02f3-6912.res6.spectrum.com) (Read error: Connection reset by peer) |
| 10:35:12 | → | arrowhead joins (~arrowhead@2603-7000-9b3f-6934-84fe-c7f9-02f3-6912.res6.spectrum.com) |
| 10:35:19 | biberu\ | is now known as biberu |
| 10:35:30 | <arrowhead> | I need to put a reference-like thing in two lists, then change the value of that reference-like thing, then check the two lists and see that they changed as well. I tried IORefs but they're not acting like OCaml refs. |
| 10:36:45 | <Rembane> | arrowhead: Have you looked into STRefs? |
| 10:36:52 | → | fbytez joins (~uid@2001:bc8:2117:100::) |
| 10:37:00 | × | pavonia quits (~user@user/siracusa) (Read error: Connection reset by peer) |
| 10:37:28 | <arrowhead> | Rembane: more or less. Aren't they just the same but in ST instead of in IO ? |
| 10:37:48 | <arrowhead> | I thought in IO would be the "freest" behavior and for sure would change in the two lists, but nope |
| 10:39:05 | <arrowhead> | e.g. (a >>= (\x -> writeIORef x 2)) >> (((b !! 0) >>= (\x -> readIORef x)) >>= putStrLn . show) >> (((c !! 0) >>= (\x -> readIORef x)) >>= putStrLn . show) is printing 1 1 but I expected 2 2 |
| 10:39:10 | <arrowhead> | b and c are both [a] |
| 10:39:14 | <arrowhead> | and a is a newIORef 1 |
| 10:40:59 | <Rembane> | arrowhead: That's interesting. Let me play around a bit with it. |
| 10:41:24 | <arrowhead> | @Rembane please |
| 10:41:24 | <lambdabot> | Unknown command, try @list |
| 10:42:35 | <[Leary]> | arrowhead: `newIORef 1` is an IO action that produces a new IORef. If you run it three times, you will produce three unrelated IORefs. |
| 10:43:03 | <arrowhead> | [Leary]: I understand that part. I'm coming from OCaml looking for something like their ref |
| 10:43:14 | <arrowhead> | I only ran newIORef once and put it into two lists |
| 10:43:24 | <arrowhead> | but the things in the lists never change after I change the IO thing |
| 10:43:44 | → | biberu\ joins (~biberu@user/biberu) |
| 10:44:20 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 240 seconds) |
| 10:44:56 | <arrowhead> | I want to see code that 1. does newIORef once, 2. puts the result in two lists, 3. updates that IORef from outside the lists 4. peers into the lists and sees the changes there |
| 10:45:15 | <ncf> | % do a <- newIORef 1; let b = [a]; c = [a] in do writeIORef a 2; traverse readIORef b >>= print; traverse readIORef c >>= print |
| 10:45:15 | <yahb2> | [2] ; [2] |
| 10:45:16 | <arrowhead> | my attempt above fails for a reason I cannot understand |
| 10:45:19 | biberu\ | is now known as biberu |
| 10:45:35 | → | pavonia joins (~user@user/siracusa) |
| 10:45:50 | <ncf> | your attempt above is missing code |
| 10:46:32 | <arrowhead> | ncf: I don't think I can afford to use let... in, that is a very narrow scenario where you can code within the same scope |
| 10:46:40 | <ncf> | what |
| 10:46:43 | <arrowhead> | not really the behavior of OCaml's ref |
| 10:46:58 | <ncf> | haskell is not ocaml. haskell does not have ocaml-style references |
| 10:47:15 | <arrowhead> | at all? not even outside IORef? something else with another name? |
| 10:47:50 | × | pyrex quits (~pyrex@user/pyrex) (Ping timeout: 260 seconds) |
| 10:48:00 | <geekosaur> | haskell is pure outside of IO. OCaml refs are not pure |
| 10:48:00 | × | arrowhead quits (~arrowhead@2603-7000-9b3f-6934-84fe-c7f9-02f3-6912.res6.spectrum.com) (Read error: Connection reset by peer) |
| 10:48:12 | → | aliosablack joins (~chomwitt@2a02:587:7a0e:cf00:1ac0:4dff:fedb:a3f1) |
| 10:48:56 | → | pyrex joins (~pyrex@user/pyrex) |
| 10:49:10 | <Rembane> | Meh. I had an example there. Oh well. For the rest of you: https://gist.github.com/Rembane/faa60107d2c7add230ff5dfd36a9c4c1 |
| 10:49:24 | <Rembane> | It took me way too long to realize that 0 * 2 never will be interesting. |
| 10:49:40 | <geekosaur> | heh |
| 10:50:28 | → | zeenk2 joins (~zeenk@2a02:2f04:a106:3c00::7fe) |
| 10:50:30 | × | zeenk quits (~zeenk@2a02:2f04:a106:3c00::7fe) (Ping timeout: 240 seconds) |
| 10:50:30 | × | chomwitt quits (~chomwitt@2a02:587:7a0e:cf00:1ac0:4dff:fedb:a3f1) (Ping timeout: 240 seconds) |
| 10:50:30 | × | hays quits (rootvegeta@fsf/member/hays) (Ping timeout: 240 seconds) |
| 10:50:40 | ncf | wonders what makes someone think they can't use let...in |
| 10:51:09 | <Axman6> | that was a bizarre conversation |
| 10:51:34 | <geekosaur> | ^ |
| 10:51:54 | <ncf> | i guess it was more like "let...in does not accurately describe the code i'm already working with but i won't tell you what it is" |
| 10:52:03 | <ncf> | anyway |
| 10:53:45 | → | biberu\ joins (~biberu@user/biberu) |
| 10:54:20 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 240 seconds) |
| 10:55:19 | biberu\ | is now known as biberu |
| 10:55:48 | <Axman6> | not sure why they insistedin writing the code in such a difficult to read manner either. particularly it left out thecrucial definition of what 'a' is |
| 10:56:30 | <Rembane> | Some list of something I think they eventually wrote |
| 10:56:36 | <Rembane> | Eh... not very clear |
| 11:03:45 | → | biberu\ joins (~biberu@user/biberu) |
| 11:04:30 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 240 seconds) |
| 11:05:19 | biberu\ | is now known as biberu |
| 11:06:06 | → | xff0x joins (~xff0x@2405:6580:b080:900:ed3a:f80e:cda:efe1) |
| 11:13:44 | → | biberu\ joins (~biberu@user/biberu) |
| 11:14:45 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 255 seconds) |
| 11:15:18 | biberu\ | is now known as biberu |
| 11:17:42 | → | nate2 joins (~nate@c-98-45-169-16.hsd1.ca.comcast.net) |
| 11:19:13 | → | chromoblob joins (~user@37.113.180.121) |
| 11:20:20 | → | raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 11:22:20 | × | nate2 quits (~nate@c-98-45-169-16.hsd1.ca.comcast.net) (Ping timeout: 240 seconds) |
| 11:23:45 | → | biberu\ joins (~biberu@user/biberu) |
| 11:24:39 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 255 seconds) |
| 11:24:40 | → | user1 joins (~user@103.206.114.90) |
| 11:24:40 | user1 | is now known as lib |
| 11:24:49 | lib | is now known as wns |
| 11:25:19 | biberu\ | is now known as biberu |
| 11:27:07 | × | cafkafk quits (~cafkafk@fsf/member/cafkafk) (Remote host closed the connection) |
| 11:27:24 | × | FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection) |
| 11:28:09 | → | FinnElija joins (~finn_elij@user/finn-elija/x-0085643) |
| 11:33:04 | → | cafkafk joins (~cafkafk@fsf/member/cafkafk) |
| 11:33:46 | → | biberu\ joins (~biberu@user/biberu) |
| 11:34:20 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 240 seconds) |
| 11:35:20 | biberu\ | is now known as biberu |
| 11:35:27 | × | xff0x quits (~xff0x@2405:6580:b080:900:ed3a:f80e:cda:efe1) (Ping timeout: 255 seconds) |
| 11:37:26 | → | __monty__ joins (~toonn@user/toonn) |
| 11:37:32 | → | xff0x joins (~xff0x@ai098135.d.east.v6connect.net) |
| 11:43:44 | → | biberu\ joins (~biberu@user/biberu) |
| 11:44:20 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 240 seconds) |
| 11:45:17 | biberu\ | is now known as biberu |
| 11:46:00 | × | dhruvasagar quits (~dhruvasag@49.207.218.223) (Ping timeout: 240 seconds) |
| 11:46:48 | → | dhruvasagar joins (~dhruvasag@49.207.218.223) |
| 11:51:23 | × | gnalzo quits (~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) (Quit: WeeChat 3.8) |
| 11:51:39 | × | dhruvasagar quits (~dhruvasag@49.207.218.223) (Ping timeout: 255 seconds) |
| 11:51:59 | × | Co0kie quits (~Jura@145.224.73.17) (Ping timeout: 240 seconds) |
| 11:52:18 | → | dhruvasagar joins (~dhruvasag@49.207.218.223) |
| 11:53:45 | → | biberu\ joins (~biberu@user/biberu) |
| 11:53:53 | <Unicorn_Princess> | i'm using emacs and lsp-haskell, and i'm trying to disable lsp automatically inserting import statements when I tab-complete something that's not yet imported. i've got lsp-haskell-plugin-ghcide-completions-config-auto-extend-on set to nil, but that only half fixed it, because when i tab-complete a constructor that's not in scope, it adds an "import Module.Name (TheType(TheCtor))" on top of my file anyway |
| 11:54:48 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 255 seconds) |
| 11:54:52 | × | califax quits (~califax@user/califx) (Remote host closed the connection) |
| 11:55:15 | → | califax joins (~califax@user/califx) |
| 11:55:17 | biberu\ | is now known as biberu |
| 11:56:44 | × | dhruvasagar quits (~dhruvasag@49.207.218.223) (Ping timeout: 240 seconds) |
| 11:57:08 | × | euandreh quits (~Thunderbi@189.6.18.7) (Ping timeout: 240 seconds) |
| 11:57:57 | × | raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 255 seconds) |
| 11:58:06 | → | dhruvasagar joins (~dhruvasag@49.207.218.223) |
| 12:00:19 | × | FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection) |
| 12:00:47 | → | FinnElija joins (~finn_elij@user/finn-elija/x-0085643) |
| 12:01:33 | × | chromoblob quits (~user@37.113.180.121) (Ping timeout: 255 seconds) |
| 12:02:32 | → | paddymahoney joins (~paddymaho@cpe883d24bcf597-cmbc4dfb741f80.cpe.net.cable.rogers.com) |
| 12:02:32 | → | euandreh joins (~Thunderbi@189.6.18.7) |
| 12:02:54 | × | dhruvasagar quits (~dhruvasag@49.207.218.223) (Ping timeout: 255 seconds) |
| 12:03:37 | → | dhruvasagar joins (~dhruvasag@49.207.218.223) |
| 12:03:44 | → | biberu\ joins (~biberu@user/biberu) |
| 12:04:11 | <ncf> | did you restart hls? |
| 12:04:42 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 255 seconds) |
| 12:05:17 | biberu\ | is now known as biberu |
| 12:05:20 | <Unicorn_Princess> | i'll try restarting the whole lot (tho i've had that setting set to nil for a while, not a recent change) |
| 12:05:32 | × | euandreh quits (~Thunderbi@189.6.18.7) (Client Quit) |
| 12:05:44 | → | chromoblob joins (~user@37.113.180.121) |
| 12:06:57 | <Unicorn_Princess> | didn't help. in fact i tried just a generic tab-complete a function that's not imported, and it auto-imported the module all the same |
| 12:07:26 | <Unicorn_Princess> | so doesn't seem limited to constructors. i could have sworn i'd managed to turn it off.. |
| 12:07:59 | × | dhruvasagar quits (~dhruvasag@49.207.218.223) (Ping timeout: 240 seconds) |
| 12:08:15 | <Unicorn_Princess> | has anyone manage to disable auto-inserting-imports in any other editor, and how? |
| 12:09:11 | → | dhruvasagar joins (~dhruvasag@49.207.218.223) |
| 12:14:20 | × | dhruvasagar quits (~dhruvasag@49.207.218.223) (Ping timeout: 240 seconds) |
| 12:14:20 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 240 seconds) |
| 12:16:00 | → | biberu\ joins (~biberu@user/biberu) |
| 12:16:10 | → | dhruvasagar joins (~dhruvasag@49.207.218.223) |
| 12:16:34 | <lortabac> | ncf: "what makes someone think they can't use let...in" -> they thought IORef behaved like mutable variables |
| 12:16:54 | biberu\ | is now known as biberu |
| 12:17:08 | <lortabac> | consider this example in Scheme: |
| 12:17:38 | <lortabac> | (let ([x 1]) (set! x 2) (write x)) ;;; prints 2 |
| 12:18:49 | <lortabac> | now try modifying the variable outside of the scope: |
| 12:19:10 | <lortabac> | (define (modify-arg x) (set! x 2)) (let ([x 1]) (modify-arg x) (write x)) ;;; prints 1 |
| 12:20:44 | × | dhruvasagar quits (~dhruvasag@49.207.218.223) (Ping timeout: 240 seconds) |
| 12:21:44 | → | dhruvasagar joins (~dhruvasag@49.207.218.223) |
| 12:22:15 | <lortabac> | that's why they asked for an example where the mutation happens in a different scope |
| 12:22:36 | × | b20n quits (sid115913@id-115913.uxbridge.irccloud.com) (Server closed connection) |
| 12:22:45 | × | machinedgod quits (~machinedg@d198-53-218-113.abhsia.telus.net) (Remote host closed the connection) |
| 12:22:46 | → | b20n joins (sid115913@id-115913.uxbridge.irccloud.com) |
| 12:23:05 | → | kritty joins (~crumb@c-76-155-235-153.hsd1.co.comcast.net) |
| 12:23:46 | → | biberu\ joins (~biberu@user/biberu) |
| 12:24:04 | → | machinedgod joins (~machinedg@d198-53-218-113.abhsia.telus.net) |
| 12:24:30 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 240 seconds) |
| 12:25:20 | biberu\ | is now known as biberu |
| 12:26:20 | × | dhruvasagar quits (~dhruvasag@49.207.218.223) (Ping timeout: 240 seconds) |
| 12:27:15 | → | dhruvasagar joins (~dhruvasag@49.207.218.223) |
| 12:31:32 | × | dhruvasagar quits (~dhruvasag@49.207.218.223) (Ping timeout: 240 seconds) |
| 12:32:48 | → | dhruvasagar joins (~dhruvasag@49.207.218.223) |
| 12:33:45 | → | biberu\ joins (~biberu@user/biberu) |
| 12:34:29 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 240 seconds) |
| 12:35:18 | biberu\ | is now known as biberu |
| 12:38:59 | × | dhruvasagar quits (~dhruvasag@49.207.218.223) (Ping timeout: 240 seconds) |
| 12:40:22 | → | dhruvasagar joins (~dhruvasag@49.207.218.223) |
| 12:40:36 | → | kuribas joins (~user@ip-188-118-57-242.reverse.destiny.be) |
| 12:40:49 | → | chele joins (~chele@user/chele) |
| 12:42:33 | → | Daniel[m]123 joins (~danieltan@2001:470:69fc:105::3:6e5e) |
| 12:43:45 | → | biberu\ joins (~biberu@user/biberu) |
| 12:44:29 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 240 seconds) |
| 12:45:12 | × | dhruvasagar quits (~dhruvasag@49.207.218.223) (Ping timeout: 255 seconds) |
| 12:45:17 | biberu\ | is now known as biberu |
| 12:45:55 | → | dhruvasagar joins (~dhruvasag@49.207.218.223) |
| 12:47:55 | × | ddellacosta quits (~ddellacos@146.70.165.139) (Quit: WeeChat 3.8) |
| 12:48:06 | × | RMSBach quits (~guygastin@137.184.131.156) (Server closed connection) |
| 12:48:59 | × | wns quits (~user@103.206.114.90) (Ping timeout: 240 seconds) |
| 12:49:26 | → | RMSBach joins (~guygastin@137.184.131.156) |
| 12:50:36 | × | dhruvasagar quits (~dhruvasag@49.207.218.223) (Ping timeout: 255 seconds) |
| 12:51:26 | → | dhruvasagar joins (~dhruvasag@49.207.218.223) |
| 12:51:30 | × | titibandit quits (~titibandi@user/titibandit) (Ping timeout: 255 seconds) |
| 12:53:44 | → | biberu\ joins (~biberu@user/biberu) |
| 12:54:39 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 255 seconds) |
| 12:55:17 | biberu\ | is now known as biberu |
| 12:55:56 | × | dhruvasagar quits (~dhruvasag@49.207.218.223) (Ping timeout: 240 seconds) |
| 12:56:36 | × | mrmonday quits (~robert@what.i.hope.is.not.a.tabernaevagant.es) (Server closed connection) |
| 12:56:46 | → | mrmonday joins (~robert@what.i.hope.is.not.a.tabernaevagant.es) |
| 12:57:13 | → | dhruvasagar joins (~dhruvasag@49.207.218.223) |
| 12:59:13 | → | oac joins (~oac@72-50-214-210.fttp.usinternet.com) |
| 13:00:30 | × | chromoblob quits (~user@37.113.180.121) (Ping timeout: 255 seconds) |
| 13:01:29 | × | dhruvasagar quits (~dhruvasag@49.207.218.223) (Ping timeout: 240 seconds) |
| 13:02:45 | → | dhruvasagar joins (~dhruvasag@49.207.218.223) |
| 13:03:46 | → | biberu\ joins (~biberu@user/biberu) |
| 13:04:33 | × | biberu quits (~biberu@user/biberu) (Ping timeout: 255 seconds) |
| 13:05:09 | × | biberu\ quits (~biberu@user/biberu) (Read error: Connection reset by peer) |
| 13:07:00 | × | dhruvasagar quits (~dhruvasag@49.207.218.223) (Ping timeout: 240 seconds) |
| 13:08:17 | → | dhruvasagar joins (~dhruvasag@49.207.218.223) |
| 13:13:06 | × | dhruvasagar quits (~dhruvasag@49.207.218.223) (Ping timeout: 255 seconds) |
| 13:13:36 | × | tritlo quits (sid58727@user/tritlo) (Server closed connection) |
| 13:13:45 | → | tritlo joins (sid58727@user/tritlo) |
| 13:13:49 | → | dhruvasagar joins (~dhruvasag@49.207.218.223) |
| 13:15:01 | → | chromoblob joins (~user@37.113.180.121) |
| 13:15:20 | × | cafkafk quits (~cafkafk@fsf/member/cafkafk) (Ping timeout: 240 seconds) |
| 13:16:16 | → | enoq joins (~enoq@2a05:1141:1f5:5600:b9c9:721a:599:bfe7) |
| 13:18:08 | → | cafkafk joins (~cafkafk@fsf/member/cafkafk) |
| 13:18:11 | → | euandreh joins (~Thunderbi@189.6.18.7) |
| 13:18:27 | → | nate2 joins (~nate@c-98-45-169-16.hsd1.ca.comcast.net) |
| 13:21:19 | × | euandreh quits (~Thunderbi@189.6.18.7) (Remote host closed the connection) |
| 13:22:08 | → | kriity joins (~kriity@c-76-155-235-153.hsd1.co.comcast.net) |
| 13:22:43 | → | euandreh joins (~Thunderbi@189.6.18.7) |
| 13:23:08 | × | nate2 quits (~nate@c-98-45-169-16.hsd1.ca.comcast.net) (Ping timeout: 240 seconds) |
| 13:24:44 | × | acidjnk quits (~acidjnk@p200300d6e7072f28fc9054c626dc7d9f.dip0.t-ipconnect.de) (Ping timeout: 240 seconds) |
| 13:25:43 | × | kriity quits (~kriity@c-76-155-235-153.hsd1.co.comcast.net) (Client Quit) |
| 13:26:20 | × | robobub quits (uid248673@uxbridge.irccloud.com) (Ping timeout: 268 seconds) |
| 13:27:00 | → | bontaq joins (~user@ool-45779b84.dyn.optonline.net) |
| 13:27:50 | → | biberu joins (~biberu@user/biberu) |
| 13:28:17 | → | titibandit joins (~titibandi@user/titibandit) |
| 13:29:28 | → | robobub joins (uid248673@id-248673.uxbridge.irccloud.com) |
| 13:30:19 | → | wroathe joins (~wroathe@207-153-38-140.fttp.usinternet.com) |
| 13:30:19 | × | wroathe quits (~wroathe@207-153-38-140.fttp.usinternet.com) (Changing host) |
| 13:30:19 | → | wroathe joins (~wroathe@user/wroathe) |
| 13:30:20 | × | biberu quits (~biberu@user/biberu) (Client Quit) |
| 13:31:29 | → | biberu joins (~biberu@user/biberu) |
| 13:34:53 | × | biberu quits (~biberu@user/biberu) (Client Quit) |
| 13:35:56 | → | biberu joins (~biberu@user/biberu) |
| 13:36:00 | × | werneta quits (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 240 seconds) |
| 13:39:13 | × | biberu quits (~biberu@user/biberu) (Client Quit) |
| 13:39:14 | × | oac quits (~oac@72-50-214-210.fttp.usinternet.com) (Quit: oac) |
| 13:40:21 | → | biberu joins (~biberu@user/biberu) |
| 13:41:45 | × | son0p quits (~ff@181.136.122.143) (Ping timeout: 265 seconds) |
| 13:45:23 | × | russruss quits (~russruss@my.russellmcc.com) (Server closed connection) |
| 13:45:30 | × | wroathe quits (~wroathe@user/wroathe) (Ping timeout: 255 seconds) |
| 13:45:43 | → | russruss joins (~russruss@my.russellmcc.com) |
| 13:50:51 | → | elain4 joins (~textual@static-71-251-226-194.rcmdva.fios.verizon.net) |
| 13:54:30 | <kuribas> | I really don't get how people think exploratory programming is much easier without types. |
| 13:54:46 | × | Adran quits (~adran@botters/adran) (Quit: Este é o fim.) |
| 13:55:21 | → | gnalzo joins (~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) |
| 13:55:33 | <kuribas> | I am currently writing python with types, and still making small changes to my logic and types. The ability to directly see how a change impacts the code is just invaluable. |
| 13:55:44 | <kuribas> | I just don't see how not having types makes it *easier*. |
| 13:56:15 | <kuribas> | I know there was some company that went from haskell to untyped ruby for that reason. |
| 13:58:16 | <lortabac> | kuribas: when you are exploring you just want to try out things and see what happens |
| 13:58:40 | <lortabac> | you don't want to think about plenty of tiny details which are irrelevant to your exploration |
| 13:59:02 | <lortabac> | but static type checking forces you to get everything right upfront |
| 13:59:11 | <kuribas> | how do you see what happens without details? |
| 13:59:18 | <kuribas> | lortabac: also, I disagree. |
| 13:59:31 | <kuribas> | I can very easily leave holes, in types, in implementations... |
| 13:59:49 | <lortabac> | maybe we are not thinking of the same scenario |
| 14:00:14 | <__monty__> | kuribas: Whenever structural subtyping would be required it does tend to get annoying. |
| 14:01:36 | <lortabac> | lack of static typing makes your first "hello world" easier when you try a new library or API |
| 14:01:52 | <lortabac> | but the advantage more or less ends there |
| 14:02:29 | <kuribas> | I am much faster with a haskell library than clojure/python, because it is more precise. |
| 14:02:50 | <kuribas> | I often find my self going through walls of text in python/clojure in order to find some functionality. |
| 14:03:02 | <kuribas> | While in haskell I just search through the types. |
| 14:03:09 | <kuribas> | Which usually tell me quickly if it is possible or not. |
| 14:03:37 | → | thegeekinside joins (~thegeekin@189.217.90.138) |
| 14:04:02 | <lortabac> | I don't know, personally I like to use dynamically-typed languages for very simple projects |
| 14:04:19 | → | taupiqueur joins (~taupiqueu@2a02-842a-8180-4601-0906-7ddd-44ff-a642.rev.sfr.net) |
| 14:04:20 | × | cheater quits (~Username@user/cheater) (Ping timeout: 246 seconds) |
| 14:04:28 | <kuribas> | sure, so do I, like a bash script. |
| 14:04:35 | <kuribas> | Or a small calculation in Python. |
| 14:04:37 | <lortabac> | it's not just the types, it's the entire thing that is built around the idea of no boilerplate |
| 14:04:45 | <kuribas> | anything that isn't > 100 lines. |
| 14:05:05 | <lortabac> | in Haskell I need to set up a cabal project, declare the modules, import a bunch of stuff... |
| 14:05:13 | → | Adran joins (~adran@botters/adran) |
| 14:05:13 | × | energizer quits (~energizer@user/energizer) (Server closed connection) |
| 14:05:29 | <lortabac> | I don't do it unless it's worth |
| 14:05:50 | <kuribas> | yeah, that's a pain. But has nothing to do with types. |
| 14:05:55 | → | energizer joins (~energizer@user/energizer) |
| 14:06:19 | <lortabac> | I know, but it's one "symptom" of a different culture |
| 14:06:54 | <glguy> | I do the same thing in python projects |
| 14:08:59 | × | thegeekinside quits (~thegeekin@189.217.90.138) (Read error: Connection reset by peer) |
| 14:10:44 | × | titibandit quits (~titibandi@user/titibandit) (Ping timeout: 240 seconds) |
| 14:11:04 | × | kritty quits (~crumb@c-76-155-235-153.hsd1.co.comcast.net) (Remote host closed the connection) |
| 14:12:15 | → | waleee joins (~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7) |
| 14:12:47 | → | titibandit joins (~titibandi@user/titibandit) |
| 14:13:14 | <merijn> | lortabac: You can put the cabal stuff inside a single file |
| 14:13:29 | → | acidjnk joins (~acidjnk@p200300d6e7072f28fc9054c626dc7d9f.dip0.t-ipconnect.de) |
| 14:13:48 | <merijn> | admittedly, I think that's not super well documented/discoverable |
| 14:14:41 | <lortabac> | merijn: do you mean I can have a single file with both the cabal configuration and the code? |
| 14:14:54 | <merijn> | lortabac: Yes |
| 14:15:08 | × | gurkenglas quits (~user@dynamic-046-114-182-029.46.114.pool.telefonica.de) (Ping timeout: 240 seconds) |
| 14:15:16 | <merijn> | lortabac: See the cabal run documentation: https://cabal.readthedocs.io/en/stable/cabal-commands.html#cabal-run |
| 14:15:51 | <lortabac> | merijn: thanks, that's very useful |
| 14:16:33 | × | EsoAlgo81 quits (~EsoAlgo@129.146.136.145) (Server closed connection) |
| 14:16:58 | <merijn> | iirc this has been available for, well, approaching a decade now, but it hasn't been well documented for a long time (the new cabal-run docs seem pretty decent, though) |
| 14:16:58 | → | EsoAlgo81 joins (~EsoAlgo@129.146.136.145) |
| 14:18:29 | × | taupiqueur quits (~taupiqueu@2a02-842a-8180-4601-0906-7ddd-44ff-a642.rev.sfr.net) (Ping timeout: 240 seconds) |
| 14:19:55 | × | albet70 quits (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
| 14:20:46 | → | cheater joins (~Username@user/cheater) |
| 14:20:55 | × | lortabac quits (~lortabac@2a01:e0a:541:b8f0:69ab:5b95:e09f:9970) (Quit: WeeChat 2.8) |
| 14:23:01 | <dolio> | kuribas: I don't understand it either, for what it's worth. |
| 14:24:42 | → | thegeekinside joins (~thegeekin@189.217.90.138) |
| 14:26:03 | → | albet70 joins (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
| 14:26:32 | → | ddellacosta joins (~ddellacos@146.70.165.139) |
| 14:27:51 | <dolio> | (Probably not worth much.) |
| 14:32:56 | × | SrPx quits (sid108780@id-108780.uxbridge.irccloud.com) (Server closed connection) |
| 14:33:43 | → | SrPx joins (sid108780@id-108780.uxbridge.irccloud.com) |
| 14:34:02 | → | user1 joins (~user@103.206.114.69) |
| 14:34:02 | user1 | is now known as wns |
| 14:40:12 | × | paddymahoney quits (~paddymaho@cpe883d24bcf597-cmbc4dfb741f80.cpe.net.cable.rogers.com) (Remote host closed the connection) |
| 14:42:15 | → | tzh joins (~tzh@c-24-21-73-154.hsd1.or.comcast.net) |
| 14:45:19 | → | gurkenglas joins (~user@dynamic-046-114-182-029.46.114.pool.telefonica.de) |
| 14:46:28 | × | cafkafk quits (~cafkafk@fsf/member/cafkafk) (Remote host closed the connection) |
| 14:49:26 | → | shriekingnoise joins (~shrieking@186.137.175.87) |
| 14:52:30 | → | cafkafk joins (~cafkafk@fsf/member/cafkafk) |
| 14:53:23 | × | Feuermagier quits (~Feuermagi@user/feuermagier) (Ping timeout: 250 seconds) |
| 14:53:47 | × | mechap quits (~mechap@user/mechap) (Quit: WeeChat 3.8) |
| 14:55:00 | × | cheater quits (~Username@user/cheater) (Ping timeout: 240 seconds) |
| 15:05:03 | × | fbytez quits (~uid@2001:bc8:2117:100::) (Changing host) |
| 15:05:03 | → | fbytez joins (~uid@user/fbytez) |
| 15:10:23 | × | Xe quits (~cadey@tailscale/xe) (Server closed connection) |
| 15:10:49 | → | Xe joins (~cadey@tailscale/xe) |
| 15:11:51 | → | Sgeo joins (~Sgeo@user/sgeo) |
| 15:15:57 | × | shriekingnoise quits (~shrieking@186.137.175.87) (Ping timeout: 255 seconds) |
| 15:19:13 | → | nate2 joins (~nate@c-98-45-169-16.hsd1.ca.comcast.net) |
| 15:24:03 | × | nate2 quits (~nate@c-98-45-169-16.hsd1.ca.comcast.net) (Ping timeout: 255 seconds) |
| 15:25:54 | → | econo joins (uid147250@user/econo) |
| 15:26:12 | × | thegeekinside quits (~thegeekin@189.217.90.138) (Read error: Connection reset by peer) |
| 15:26:29 | → | paddymahoney joins (~paddymaho@cpe883d24bcf597-cmbc4dfb741f80.cpe.net.cable.rogers.com) |
| 15:27:29 | → | shriekingnoise joins (~shrieking@186.137.175.87) |
| 15:30:07 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:a031:36aa:a52b:1d5b) |
| 15:34:29 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:a031:36aa:a52b:1d5b) (Ping timeout: 240 seconds) |
| 15:34:40 | → | ripspin joins (~chatzilla@1.145.173.162) |
| 15:35:36 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:a031:36aa:a52b:1d5b) |
| 15:35:42 | → | shef joins (~deglazewi@209-188-121-236.taosnet.com) |
| 15:36:35 | × | shef quits (~deglazewi@209-188-121-236.taosnet.com) (Quit: WeeChat 3.0) |
| 15:36:47 | → | deglazewithcheet joins (~deglazewi@209-188-121-236.taosnet.com) |
| 15:38:08 | × | jlwoodwa quits (~jlwoodwa@172.58.84.226) (Ping timeout: 248 seconds) |
| 15:40:00 | <albet70> | lortabac , I like scheme too |
| 15:41:02 | <albet70> | I think scheme and haskell are two wonderful languages, and in some way they are very similar except on type |
| 15:43:27 | → | thegeekinside joins (~thegeekin@189.217.90.138) |
| 15:44:12 | <tokie> | i wrote a scheme compiler for the web (WASM)! https://www.marwood.io/ |
| 15:44:19 | <tokie> | scheme was super fun to implement :) |
| 15:45:30 | × | merijn quits (~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) (Ping timeout: 240 seconds) |
| 15:45:32 | <Rembane> | \o/ |
| 15:46:30 | × | dhruvasagar quits (~dhruvasag@49.207.218.223) (Read error: Connection reset by peer) |
| 15:46:52 | → | cheater joins (~Username@user/cheater) |
| 15:47:28 | <Hecate> | tokie: nice! |
| 15:50:35 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:a031:36aa:a52b:1d5b) (Remote host closed the connection) |
| 15:51:10 | × | gnalzo quits (~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) (Quit: WeeChat 3.8) |
| 15:52:16 | → | talismanick joins (~user@2601:204:ef01:8ca0::a680) |
| 15:53:36 | <talismanick> | How can I eval inline code like `-- >>> 1 + 1` inside Emacs via lsp-mode? Apparently this is supported by HLS: https://hackage.haskell.org/package/hls-eval-plugin |
| 15:56:20 | × | waleee quits (~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7) (Ping timeout: 240 seconds) |
| 15:57:04 | <glguy> | talismanick: when I tried it I see this: https://ibb.co/5TXFWkP |
| 15:57:11 | → | _ht joins (~Thunderbi@28-52-174-82.ftth.glasoperator.nl) |
| 15:57:13 | <glguy> | and when I clicked on evaluate..., it did |
| 15:57:17 | <albet70> | what's that callCC definition by function? |
| 15:59:50 | <EvanR> | is that emacs? it looks like something off of hollywood OS |
| 16:00:04 | <glguy> | EvanR: it's emacs configured with spacemacs |
| 16:01:00 | × | cheater quits (~Username@user/cheater) (Ping timeout: 240 seconds) |
| 16:01:14 | × | chele quits (~chele@user/chele) (Remote host closed the connection) |
| 16:01:23 | <EvanR> | wow spacemacs has lifestyle brand merchandise and everything |
| 16:01:47 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:a031:36aa:a52b:1d5b) |
| 16:02:27 | × | mei quits (~mei@user/mei) (Remote host closed the connection) |
| 16:04:09 | <ncf> | albet70: rephrase? |
| 16:04:16 | <EvanR> | I noticed on tomsmeding paste on chrome on OSX if I type -> a prompt appears to let me auto replace with →. Snazzy. It doesn't work in firefox on linux. Not snazzy :'( |
| 16:04:53 | → | mei joins (~mei@user/mei) |
| 16:10:49 | × | bontaq quits (~user@ool-45779b84.dyn.optonline.net) (Remote host closed the connection) |
| 16:11:16 | → | bontaq joins (~user@ool-45779b84.dyn.optonline.net) |
| 16:11:32 | × | machinedgod quits (~machinedg@d198-53-218-113.abhsia.telus.net) (Ping timeout: 240 seconds) |
| 16:12:06 | × | Maxdamantus quits (~Maxdamant@user/maxdamantus) (Server closed connection) |
| 16:12:18 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:a031:36aa:a52b:1d5b) (Remote host closed the connection) |
| 16:12:23 | → | merijn joins (~merijn@86-86-29-250.fixed.kpn.net) |
| 16:13:01 | <talismanick> | glguy: you're right, it works with a mouse click... too bad I can't seem to figure out which function it is so I can bind it |
| 16:15:57 | → | dhil joins (~dhil@78.45.150.83.ewm.ftth.as8758.net) |
| 16:17:55 | → | Maxdamantus joins (~Maxdamant@user/maxdamantus) |
| 16:19:08 | × | gurkenglas quits (~user@dynamic-046-114-182-029.46.114.pool.telefonica.de) (Ping timeout: 240 seconds) |
| 16:23:45 | × | ubert quits (~Thunderbi@2a02:8109:abc0:6434:2f62:8fd9:5067:a5dd) (Remote host closed the connection) |
| 16:26:38 | → | bilegeek joins (~bilegeek@2600:1008:b043:3798:77a9:11b8:240f:486c) |
| 16:29:09 | × | ridcully_ quits (~ridcully@87.181.47.44) (Ping timeout: 250 seconds) |
| 16:29:43 | × | anderson quits (~ande@user/anderson) (Quit: bye) |
| 16:29:44 | × | kuribas quits (~user@ip-188-118-57-242.reverse.destiny.be) (Remote host closed the connection) |
| 16:30:06 | → | anderson joins (~TheFunOne@user/anderson) |
| 16:31:47 | → | ridcully_ joins (~ridcully@p57b52f2c.dip0.t-ipconnect.de) |
| 16:32:30 | → | anderson_ joins (~TheFunOne@user/anderson) |
| 16:33:24 | × | anderson_ quits (~TheFunOne@user/anderson) (Remote host closed the connection) |
| 16:33:43 | <glguy> | talismanick: I don't know enough emacs to know how to do it without the click |
| 16:40:44 | × | ridcully_ quits (~ridcully@p57b52f2c.dip0.t-ipconnect.de) (Ping timeout: 240 seconds) |
| 16:41:07 | → | ridcully_ joins (~ridcully@p57b52f2c.dip0.t-ipconnect.de) |
| 16:45:10 | × | zeenk2 quits (~zeenk@2a02:2f04:a106:3c00::7fe) (Quit: Konversation terminated!) |
| 16:45:54 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:a031:36aa:a52b:1d5b) |
| 16:46:16 | → | gurkenglas joins (~user@dynamic-046-114-182-029.46.114.pool.telefonica.de) |
| 16:46:44 | × | merijn quits (~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 240 seconds) |
| 16:49:00 | → | ijqq joins (uid603979@id-603979.helmsley.irccloud.com) |
| 16:49:09 | → | ijqq_ joins (uid603979@id-603979.helmsley.irccloud.com) |
| 16:49:22 | <ijqq_> | Hello |
| 16:49:42 | <geekosaur> | hello |
| 16:50:11 | × | deglazewithcheet quits (~deglazewi@209-188-121-236.taosnet.com) (Quit: WeeChat 3.0) |
| 16:50:18 | <[exa]> | o/ |
| 16:50:36 | <ijqq_> | How's it going? |
| 16:50:50 | → | shapr joins (~user@2600:1700:c640:3100:b6fa:cb8d:bd7d:c291) |
| 16:52:40 | <ijqq_> | I recently watched a video by tsoding on "creating a json parser from scratch in 110 lines of code" and I want to write something similar for a toy language that my friend created. It looks a bit like C. |
| 16:52:40 | <ijqq_> | I also read a bit about parsing online and they say you can first tokenise the input and then convert the input into a syntax tree. My question is, does it make sense to tokenise before parsing when creating a parser for his language, as it isn't whitespace sensitive? So I could make a function to strip whitespace at the start or just make the parser functions ignore whitespace? |
| 16:53:08 | <ijqq_> | I'm a noob in regards to both parsing and haskell, so I'm a bit confused. |
| 16:59:18 | aliosablack | is now known as chomwitt |
| 17:03:25 | × | titibandit quits (~titibandi@user/titibandit) (Ping timeout: 240 seconds) |
| 17:05:30 | → | titibandit joins (~titibandi@user/titibandit) |
| 17:07:09 | <__monty__> | ijqq_: Parsing in Haskell is usually done with parser combinators (I recommend Megaparsec). Usually there's no separate lexing/tokenizing step with that approach. Your separate parsers would just eat trailing whitespace or whatever. |
| 17:08:16 | → | merijn joins (~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) |
| 17:08:19 | → | cheater joins (~Username@user/cheater) |
| 17:08:41 | <__monty__> | I'm not sure how closely you want to follow Tsoding's example though, they may have used Alex/Happy, which is the lexing and parsing combination you're probably finding on the web. |
| 17:09:50 | <ijqq_> | They did it from scratch, I think the approach was parser combinators though. They defined a parser for chars, used that to parse words, etc. . And made the parser applicative and combined them together |
| 17:10:11 | <ijqq_> | The terminology I used might be wrong, I'm quite new, but I think that's what it was |
| 17:10:46 | <[exa]> | that sounds like a parser combinator yeah. |
| 17:11:09 | <ijqq_> | Okay, so I shouldn't bother with a separate tokenisation step then? |
| 17:11:29 | <[exa]> | depends on a language you parse but it's generally not required |
| 17:13:00 | × | merijn quits (~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) (Ping timeout: 240 seconds) |
| 17:13:02 | <[exa]> | sometimes it really helps for disambiguating stuff around whitespace separators (some languages consider `a (` and `a(` to be different code), and in certain cases it limits unnecessary backtracking over all characters to a reasonable minimum |
| 17:14:24 | <ijqq_> | alright nice, thank you |
| 17:14:43 | <EvanR> | I got a lot of traction during advent of code by tokenizing first :sunglasses: |
| 17:14:45 | <__monty__> | Either way it wouldn't be all that separate a step, it's still binding parsers together. |
| 17:14:57 | <EvanR> | but I didn't use megaparsec which makes dropping space easy |
| 17:15:32 | × | mei quits (~mei@user/mei) (Remote host closed the connection) |
| 17:15:53 | <__monty__> | I think ijqq_ wants to do it without Megaparsec though, maybe they should take a look at your AoC repo. Unless you used Parsec or ReadP? |
| 17:16:07 | <EvanR> | I used raw haskell pattern matching xD |
| 17:16:22 | <EvanR> | and the simplifying assumption that the input was well formed |
| 17:16:29 | <EvanR> | so maybe not a great example |
| 17:17:29 | <[exa]> | ijqq_: one extra concern is error reporting; tokenization usually produces comprehensible errors and the subsequent parsing cannot hallucinate on "hey it might parse if we changed this character in the most weird way possible" |
| 17:17:58 | → | mei joins (~mei@user/mei) |
| 17:19:56 | → | nate2 joins (~nate@c-98-45-169-16.hsd1.ca.comcast.net) |
| 17:20:02 | → | taupiqueur joins (~taupiqueu@2a02-842a-8180-4601-0906-7ddd-44ff-a642.rev.sfr.net) |
| 17:24:29 | × | nate2 quits (~nate@c-98-45-169-16.hsd1.ca.comcast.net) (Ping timeout: 240 seconds) |
| 17:25:21 | <ijqq_> | do you have any good resources to learn about this kind of stuff? |
| 17:25:26 | <ijqq_> | like how to write a programming language? |
| 17:28:45 | <geekosaur> | write yourself a scheme? |
| 17:29:57 | <geekosaur> | @where WYaS |
| 17:29:57 | <lambdabot> | I know nothing about wyas. |
| 17:30:00 | <geekosaur> | sad |
| 17:30:38 | <geekosaur> | https://en.wikibooks.org/wiki/Write_Yourself_a_Scheme_in_48_Hours |
| 17:31:12 | <yushyin> | the dragon book would be a classic |
| 17:32:58 | <geekosaur> | @where+ WYaS https://en.wikibooks.org/wiki/Write_Yourself_a_Scheme_in_48_Hours |
| 17:32:58 | <lambdabot> | Done. |
| 17:35:45 | × | titibandit quits (~titibandi@user/titibandit) (Ping timeout: 240 seconds) |
| 17:36:55 | <yushyin> | (but the dragon book is more about compiler/interpreter implementation and less about language design. nevertheless a good read) |
| 17:37:02 | <pyrex> | fwiw, I think tokenizing first is a good idea just because the humans reading your code very likely think of it as being written in words and sentences |
| 17:37:15 | → | merijn joins (~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) |
| 17:37:33 | <pyrex> | you are likely to produce confusing errors if your parser's definition of "a word" depends on the parser's state, because it is different from what humans assume |
| 17:37:52 | <pyrex> | i think this is similar to what [exa] is pointing out, I'm just giving a specific example of how not tokenizing can go weirdly |
| 17:38:43 | → | AlexNoo joins (~AlexNoo@178.34.163.88) |
| 17:40:00 | <pyrex> | i also think that for certain languages, it is really hard to show "this can be parsed without backtracking" if the code that recognizes an identifier looks like it can backtrack indefinitely |
| 17:40:14 | → | AlexZenon joins (~alzenon@178.34.163.88) |
| 17:40:23 | <pyrex> | when a language claims "don't worry, I'm in LL(1)" they almost always mean "... with a tokenizer!" |
| 17:41:56 | × | merijn quits (~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) (Ping timeout: 240 seconds) |
| 17:42:10 | <pyrex> | (if you have not seen the term LL(1), it just means "if you write a naive 'backtrack and try again' parser, it only needs to backtrack one token" -- and that has the advantage that you can often write a parser for it the same way you would write a non-backtracking parser -- you just have an extra peek() operation that looks a single token ahead) |
| 17:42:38 | → | Alex_test joins (~al_test@178.34.163.88) |
| 17:43:39 | × | ripspin quits (~chatzilla@1.145.173.162) (Remote host closed the connection) |
| 17:46:40 | <ijqq_> | ah okay |
| 17:46:51 | <ijqq_> | thank you for the information and the recommendations :) |
| 17:47:00 | <pyrex> | i hope it helps!!! this kind of project is usually pretty fun |
| 17:47:06 | <ijqq_> | i have lots to learn |
| 17:47:28 | <ijqq_> | yes i hope so |
| 17:47:39 | <pyrex> | if you find the parser to be tricky, remember that many real parsers are just trying every rule, then giving up and trying the next rule if the previous one doesn't work |
| 17:48:13 | <pyrex> | also, arithmetic expressions are always a butt and it's ok to special case them!!!!! |
| 17:48:18 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:a031:36aa:a52b:1d5b) (Remote host closed the connection) |
| 17:48:28 | → | Albina_Pavlovna joins (~Albina_Pa@2600:4040:9526:fe00:d428:e478:aa82:9afd) |
| 17:50:50 | → | ft joins (~ft@p4fc2a88b.dip0.t-ipconnect.de) |
| 17:53:31 | → | oneeyedalien joins (~oneeyedal@125-63-26-213.ip4.superloop.au) |
| 17:58:26 | → | segfaultfizzbuzz joins (~segfaultf@23-93-74-212.fiber.dynamic.sonic.net) |
| 17:58:36 | <segfaultfizzbuzz> | what? "It's also possible to abstract Lists and Trees into polynomials, as every polynomial looks like a sum of terms." - https://functionalcs.github.io/curriculum/ |
| 17:59:00 | <segfaultfizzbuzz> | oh because sum and product type? |
| 17:59:09 | × | oneeyedalien quits (~oneeyedal@125-63-26-213.ip4.superloop.au) (Quit: Leaving) |
| 17:59:29 | <dolio> | List A = Σ_i A^i |
| 17:59:37 | <dolio> | Unless you're in Haskell. |
| 17:59:44 | <segfaultfizzbuzz> | A^i is what? |
| 18:00:09 | <ddellacosta> | is it a bad idea to use the websockets library along with http-client? It's not clear to me how to write websocket code with http-client, if it's even possible |
| 18:00:09 | <dolio> | The i-fold product of A. |
| 18:00:11 | × | Albina_Pavlovna quits (~Albina_Pa@2600:4040:9526:fe00:d428:e478:aa82:9afd) (Quit: bb) |
| 18:00:19 | <dolio> | Or functions from a finite set of size i to A. |
| 18:00:58 | → | gmg joins (~user@user/gehmehgeh) |
| 18:01:54 | <segfaultfizzbuzz> | does that translate to this? " the type of List A is [A] or [A, A], or [A, A, A], or [A, A, A, A], or etc..." |
| 18:02:10 | <dolio> | Yeah, although you missed the 0 case. |
| 18:02:27 | <segfaultfizzbuzz> | ...sounds like a java null disaster? |
| 18:03:12 | <segfaultfizzbuzz> | actually i have never considered whether it would make sense to forbid empty lists and whether to annotate that possibility in the type signature... |
| 18:03:28 | <jade[m]> | NonEmpty |
| 18:04:14 | <ncf> | x(1 + x + x² + x³ + ...) = x + x² + x³ + ... |
| 18:05:09 | <dolio> | Sometimes you want empty lists. |
| 18:05:11 | <segfaultfizzbuzz> | so why would i want to model things this way, is there a type galois theory or somtehing? |
| 18:07:04 | <ncf> | as a cute application of this, the type of one-hole contexts of a type constructor is its derivative |
| 18:07:16 | <ncf> | https://en.wikibooks.org/wiki/Haskell/Zippers#Zippers_via_Differentiation |
| 18:07:44 | <ncf> | er, #Differentiation_of_data_types |
| 18:10:11 | <segfaultfizzbuzz> | oh wow this seems like a great website thanks for the link |
| 18:11:56 | × | cheater quits (~Username@user/cheater) (Ping timeout: 240 seconds) |
| 18:13:35 | <ijqq_> | wow i found this website online, crafting interpreters |
| 18:13:42 | <ijqq_> | looks great |
| 18:18:09 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:a031:36aa:a52b:1d5b) |
| 18:19:33 | → | santiagopim joins (~user@90.167.66.131) |
| 18:24:27 | <tomsmeding> | EvanR: Does that not happen in other textboxes in chrome? |
| 18:24:31 | <tomsmeding> | the -> replacement |
| 18:25:06 | <tomsmeding> | it's just a <textbox> :p |
| 18:25:12 | <tomsmeding> | er, <textarea> |
| 18:26:48 | <EvanR> | you would be a terrible president. Refusing to take credit for stuff you're not responsible for in any way! |
| 18:28:13 | <geekosaur> | it's not happening for me, fwiw (chrome, linux) |
| 18:28:24 | <geekosaur> | I would wonder if it's a locally installed extension |
| 18:28:57 | <ijqq_> | Hi guys, a big noob question here. http://sprunge.us/dPeQmx at the end of runPrompt I get an error that i'm trying to do run line runPrompt but I want to do run line, and then runPrompt. How can I do that? |
| 18:29:22 | <dolio> | segfaultfizzbuzz: Polynomial types are a common class of types of interest in type theory. They are a more semantic characterization of the class of types that can be defined via strictly positive Haskell-alike data declarations. |
| 18:30:12 | <dolio> | And they can be shown to exist in a lot of scenaraios. Like, sets can encode polynomial types. |
| 18:30:18 | <segfaultfizzbuzz> | are type declarations in haskell "terminating"? no, right? |
| 18:30:42 | <dolio> | I don't know what you mean by that. |
| 18:30:51 | <segfaultfizzbuzz> | that is to say, when haskell looks at my type declaration, does it need to chase the types all the way down so that they are known at compile time |
| 18:31:23 | <ncf> | as opposed to what? |
| 18:32:15 | <geekosaur> | ijqq_, `else do` |
| 18:32:24 | <xerox> | segfaultfizzbuzz: there exists this https://downloads.haskell.org/ghc/latest/docs/users_guide/exts/defer_type_errors.html |
| 18:32:42 | <segfaultfizzbuzz> | i suppose at runtime you could define a type...? |
| 18:32:48 | <ijqq_> | thank you :) |
| 18:33:36 | <geekosaur> | otherwise it's just a continnued expression |
| 18:34:04 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:a031:36aa:a52b:1d5b) (Remote host closed the connection) |
| 18:34:38 | <segfaultfizzbuzz> | another way of asking this is: if we define some essential atomic types such as Int, Char, String, List A, etc then all types constructed in haskell must reduce to the atomic types (e.g. be a polynomial of the atoms)? |
| 18:36:01 | <dolio> | Haskell allows definitions of types that don't correspond to polynomials (at least, excepting possibly cases where in a particular model the semantics coincide). |
| 18:36:13 | <geekosaur> | I have a feeling the answer is "there is more in heaven and earth, Horation, than is dreamt of in your philosophy" |
| 18:36:19 | <geekosaur> | *Horatio |
| 18:36:47 | <dolio> | Like: data Hyper a = H ((Hyper a -> a) -> a) |
| 18:37:12 | <__monty__> | Define a type at run-time? |
| 18:37:49 | → | merijn joins (~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) |
| 18:38:15 | <segfaultfizzbuzz> | what haha? a generic type which takes a generic function returning the genera and maps that function onto a genera? not sure what H does there |
| 18:38:17 | <dolio> | And yeah, conceptually, everything to do with types happens (or can happen) in a phase prior to runtime. |
| 18:38:44 | <segfaultfizzbuzz> | so typechecking is "strict" and "must terminate" |
| 18:38:55 | <segfaultfizzbuzz> | i mean unless you want to wait infinitely long for your program to compile lol |
| 18:39:33 | <dolio> | There are extensions that can allow type checking to diverge (undecidable instances). But it's normally supposed to complete. |
| 18:46:27 | → | ripspin joins (~chatzilla@1.145.185.178) |
| 18:47:46 | <segfaultfizzbuzz> | so a type is a polynomial, but... what would be the significance of a "polynomial coefficient"--it seems like there cannot be one...? |
| 18:48:05 | <segfaultfizzbuzz> | like what would 2*Int^3 be, as compared to Int^3 ? |
| 18:48:41 | <ncf> | a polynomial data type is a polynomial |
| 18:49:12 | <ncf> | we're talking about type constructors here, data types with an argument |
| 18:49:22 | → | kritty joins (~crumb@c-76-155-235-153.hsd1.co.comcast.net) |
| 18:49:25 | <ncf> | the argument plays the role of the indeterminate X in the polynomial |
| 18:49:47 | <mauke> | 2*Int^3 = (Bool, Ordering -> Int) -- if I remember my algebra |
| 18:49:57 | <ncf> | it doesn't make sense to call 2*Int^3 a polynomial, just like it doesn't make sense to call 42 a polynomial (unless you're considering it as the constant polynomial X ↦ 42) |
| 18:50:36 | <segfaultfizzbuzz> | then let my polynomial P = (-1)*(Int^2) + (5)*(Int^3) |
| 18:50:54 | <ncf> | but in types 2* would translate as (Bool,) |
| 18:51:07 | <mauke> | that still looks like a constant to me |
| 18:51:16 | <segfaultfizzbuzz> | ...so 2 refers to the cardinality of the type? |
| 18:51:24 | <segfaultfizzbuzz> | so types with equal cardinality are equivalent or something...? |
| 18:51:26 | → | cheater joins (~Username@user/cheater) |
| 18:51:34 | <mauke> | you can isomorph them |
| 18:52:32 | <segfaultfizzbuzz> | wow this is blowing my mind |
| 18:53:13 | <segfaultfizzbuzz> | so (2*) is Bool, but it also is like CheckersPlayer and ComputerPowerStatus, and so on? |
| 18:53:53 | <segfaultfizzbuzz> | "infinite" types like Int make this a bit difficult to think about,... especially sine then Int^2 would equal Int due to equal cardinality...? |
| 18:54:01 | <segfaultfizzbuzz> | *especially since' |
| 18:54:26 | <geekosaur> | exponentiation is a function |
| 18:54:35 | <ncf> | gotta be careful with equality, but they would at least be isomorphic |
| 18:54:36 | <geekosaur> | note what mauke said earlier |
| 18:54:39 | → | machinedgod joins (~machinedg@d198-53-218-113.abhsia.telus.net) |
| 18:54:53 | × | gmg quits (~user@user/gehmehgeh) (Quit: Leaving) |
| 18:55:06 | <ncf> | (but the isomorphism isn't quite as nice as the isomorphisms we usually want to think about) |
| 18:55:24 | <mauke> | > maxBound :: Int |
| 18:55:25 | <lambdabot> | 9223372036854775807 |
| 18:55:36 | <ncf> | oh yeah, i'm thinking of Integer |
| 18:55:47 | <ncf> | Int is a finite type :p |
| 18:57:07 | <segfaultfizzbuzz> | oops that was my mistake, yeah i mean the lazy/infinite Integer type there |
| 18:57:09 | <dolio> | Yeah, Int^2 is not isomorphic to Int. You need Integer for that. |
| 18:57:16 | <segfaultfizzbuzz> | so Integer^2 = Integer |
| 18:57:44 | <geekosaur> | isn't it Bool -> Integer? |
| 18:57:49 | <mauke> | don't think Integer is lazy |
| 18:58:16 | <ncf> | geekosaur: yes, for example |
| 18:58:34 | → | laxask joins (~laxask@2a01:c22:8d40:6100:b471:50a5:1f09:a15) |
| 18:58:55 | <ncf> | we're using pseudocode here |
| 18:59:28 | <segfaultfizzbuzz> | Integer^2 = Bool -> Integer ? |
| 18:59:50 | <dolio> | Yeah. |
| 19:00:04 | <mauke> | (Integer, Integer) = Bool -> Integer |
| 19:00:27 | × | mei quits (~mei@user/mei) (Remote host closed the connection) |
| 19:00:28 | <segfaultfizzbuzz> | ...but then you aren't just using cardinality, since Bool -> Integer is countable, and so is Integer |
| 19:00:46 | <segfaultfizzbuzz> | so this is using something other than that to define equality/equivalence |
| 19:00:57 | <ncf> | we're defining it as isomorphism |
| 19:01:13 | <ncf> | A and B are isomorphic if there are functions to :: A → B, from :: B → A such that to . from = id and from . to = id |
| 19:01:33 | <segfaultfizzbuzz> | hmm unfortunately that applies here |
| 19:01:47 | <segfaultfizzbuzz> | there is an isomorphism from (Integer, Integer) to Integer |
| 19:01:55 | <ncf> | yes, which is why they are isomorphic |
| 19:02:06 | <ncf> | why is this unfortunate? |
| 19:02:38 | <segfaultfizzbuzz> | which seems like any time you touch an infinite type it is an Integer |
| 19:02:51 | <geekosaur> | it is isomorphic to |
| 19:02:52 | → | mei joins (~mei@user/mei) |
| 19:03:03 | <ncf> | Integer → Integer is larger than Integer |
| 19:03:06 | <geekosaur> | meaning you could assign an Integer value to any value in the type |
| 19:03:12 | <segfaultfizzbuzz> | unfortunate because it feels like a loss of information or pathology, like divide by zero |
| 19:03:12 | <geekosaur> | not that they're identical |
| 19:03:48 | <jade[m]> | any countable set is isomorphic to the set of integers right |
| 19:03:52 | <mauke> | everything in RAM is represented as a sequence of bits. a sequence of bits is an integer |
| 19:03:53 | <chromoblob> | ncf: computable stuff, though, isn't |
| 19:04:07 | <jade[m]> | more or less by definition |
| 19:05:15 | <ncf> | this is irrelevant to the matter at hand, which is that you couldn't define an isomorphism between Integer and Integer → Integer in haskell (without cheating and looking at the RAM, i guess) |
| 19:06:17 | <segfaultfizzbuzz> | but you could define one on paper mathematically...? |
| 19:06:32 | × | bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 240 seconds) |
| 19:06:33 | <mauke> | no, only in practice |
| 19:06:35 | <dolio> | Being represented by an integer isn't sufficient for such an isomorphism to exist. |
| 19:06:37 | <ncf> | in the effective topos, maybe |
| 19:06:53 | <mauke> | if you do it rigorously, it doesn't work |
| 19:07:24 | × | ripspin quits (~chatzilla@1.145.185.178) (Remote host closed the connection) |
| 19:07:31 | <segfaultfizzbuzz> | oh wow really? |
| 19:07:38 | <dolio> | For instance, equal functions can be represented by distinct integers, so if you just try to extract the bits of a particular function, it will fail to actually be a well defined function. |
| 19:07:46 | × | red-snail1 quits (~snail@static.151.210.203.116.clients.your-server.de) (Server closed connection) |
| 19:08:05 | <pyrex> | i agree that regarding integer as finite is kind of cheaty |
| 19:09:04 | <dolio> | So, e.g. in the effective topos, Church's principle holds "for all functions, there is a number referring to a computation of that function." But that does not extend to a _function_ from functions to numbers. |
| 19:09:34 | → | red-snail1 joins (~snail@static.151.210.203.116.clients.your-server.de) |
| 19:09:55 | <ncf> | right |
| 19:11:31 | <ncf> | can someone remind me why cantor's diagonal argument fails in the effective topos |
| 19:11:45 | <segfaultfizzbuzz> | so... do you move up in cardinality every time you add an Integer...? you are saying that Integer -> Integer -> Integer is higher cradinality than Integer -> Integer, which is higher than Integer...? |
| 19:11:46 | <ncf> | well, does it? |
| 19:11:56 | × | merijn quits (~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) (Ping timeout: 240 seconds) |
| 19:11:57 | <dolio> | It works. |
| 19:11:59 | <ncf> | oh ok |
| 19:12:19 | <dolio> | It proves, "2^ℕ is computably uncountable." |
| 19:12:55 | <ncf> | segfaultfizzbuzz: no, because Integer → Integer → Integer is the same as (Integer, Integer) → Integer, and you can apply the isomorphism to the domain |
| 19:13:01 | <dolio> | Where 2^ℕ is the type of computable functions from ℕ to 2. |
| 19:13:06 | <ncf> | on the other hand, (Integer → Integer) → Integer is larger than Integer → Integer |
| 19:13:30 | × | fbytez quits (~uid@user/fbytez) (Ping timeout: 240 seconds) |
| 19:13:44 | <dolio> | Well, that last one is dubious. |
| 19:14:06 | <ncf> | is it? |
| 19:14:13 | <dolio> | Yeah. |
| 19:14:23 | <chromoblob> | why at all care about uncomputable stuff |
| 19:14:29 | <ncf> | doesn't cantor's theorem apply? |
| 19:14:43 | × | __monty__ quits (~toonn@user/toonn) (Quit: leaving) |
| 19:14:58 | <chromoblob> | well, i care about true randomness |
| 19:15:01 | <chromoblob> | but other than that |
| 19:15:09 | <EvanR> | that the uncountable has an analog within the realm of "everything is computable" is interesting |
| 19:15:10 | → | jlwoodwa joins (~jlwoodwa@172.58.84.226) |
| 19:15:21 | <dolio> | No, because Cantor's theorem is about maps A -> B^A. |
| 19:15:43 | <ncf> | A := Integer → Integer, B := Integer |
| 19:16:09 | <jade[m]> | if you had foo x y | x == y = x; otherwise = 1 and foo' f = product . map f $ [1..] wouldn't that work |
| 19:16:24 | <jade[m]> | i mean not in haskell because infinite and shit |
| 19:16:53 | × | glider quits (~glider@user/glider) (Server closed connection) |
| 19:17:10 | → | glider joins (~glider@user/glider) |
| 19:17:20 | <ncf> | jade[m]: work? |
| 19:17:48 | <jade[m]> | i mean create a bijection between `Integer` and `Integer -> Integer` |
| 19:17:49 | <ncf> | which types are you trying to prove isomorphic? |
| 19:17:54 | <jade[m]> | might just be stupid |
| 19:17:59 | <dolio> | ncf: Cantor's theorem is, "maps A -> B^A are not surjections." But you're talking about ℤ^ℤ -> ℤ. |
| 19:18:27 | <pyrex> | i think you cannot create a bijection between Integer and (Integer -> Integer) and the diagonal argument shows it |
| 19:18:52 | <pyrex> | if you attempt to do so, i can generate a new Integer -> Integer that differs from every element in your map in at least one position |
| 19:18:54 | <jade[m]> | pyrex: the diagonal argument doesn't apply here |
| 19:19:05 | <dolio> | If you used your instantiation, it'd be about Z^Z -> Z^(Z^Z). |
| 19:19:06 | <ncf> | dolio: no, i'm saying that "maps ℤ^ℤ → ℤ^(ℤ^ℤ) are not surjections", in other words ℤ^(ℤ^ℤ) is larger than ℤ^ℤ |
| 19:19:10 | → | __monty__ joins (~toonn@user/toonn) |
| 19:19:10 | <jade[m]> | or wait |
| 19:19:17 | <pyrex> | jade[m]: you sure? I may have missed something about the context |
| 19:19:23 | × | cafkafk quits (~cafkafk@fsf/member/cafkafk) (Quit: WeeChat 3.6) |
| 19:19:30 | × | jlwoodwa quits (~jlwoodwa@172.58.84.226) (Ping timeout: 240 seconds) |
| 19:19:42 | <probie> | pyrex: like in general, or in Haskell land? There's definitely a bijection between values of type `Integer` and function in Haskell of type `Integer -> Integer` |
| 19:19:50 | <jade[m]> | isn't `(Integer -> Integer)` isomorphic to `(Integer, Integer)`? |
| 19:19:55 | <ncf> | jade[m]: how do you take the product of an infinite list of integers? |
| 19:19:57 | <pyrex> | my function looks like this: `f position = (yourMap !! position) + 1` |
| 19:20:00 | <ncf> | jade[m]: no |
| 19:20:13 | <jade[m]> | ncf: yeah it doesn't work in haskell |
| 19:20:19 | <ncf> | when does it work? |
| 19:20:23 | <pyrex> | probie: i think i have to be clear on how "in Haskell-land" we are |
| 19:20:40 | <pyrex> | like, there's numerous reasons we can't represent this on an actual computer |
| 19:20:42 | → | nate2 joins (~nate@c-98-45-169-16.hsd1.ca.comcast.net) |
| 19:20:44 | <dolio> | ncf: Oh, well, in that case, the problem is that, "there is no surjection," cannot reasonably be interpreted as "is smaller than." |
| 19:21:03 | <pyrex> | i would say that if you examine the function i just wrote and conclude that my function is unwritable in your world, then my argument doesn't apply |
| 19:21:08 | <jade[m]> | I was using haskell syntax but I meant to show a general pattern |
| 19:21:35 | <ncf> | dolio: classically, sure it can |
| 19:21:45 | <dolio> | We're not in a classical setting. |
| 19:21:51 | <ncf> | okay, fair |
| 19:21:59 | <dolio> | Also I'm not sure it's even reasonable there. :þ |
| 19:22:01 | ← | laxask parts (~laxask@2a01:c22:8d40:6100:b471:50a5:1f09:a15) () |
| 19:22:05 | <pyrex> | er, wait, my function is slightly garbled. i meant `f position = (yourMap !! position) position + 1` |
| 19:22:15 | <ncf> | i still think saying 2^A is larger than A makes sense in constructiveland |
| 19:22:17 | → | cafkafk joins (~cafkafk@fsf/member/cafkafk) |
| 19:22:20 | → | fbytez joins (~uid@2001:bc8:2117:100::) |
| 19:22:37 | <ncf> | you can define that as "there's no surjection" if you like |
| 19:22:41 | <jade[m]> | <jade[m]> "if you had foo x y | x == y = x..." <- but like, would this be an isomorphism if we had a notion of taking an infinite peoduct? |
| 19:22:50 | <dolio> | I think 2^2^ℕ ≅ ℕ in the effective topos. |
| 19:23:01 | <ncf> | ????? |
| 19:23:08 | <ncf> | ok i take it all back lol |
| 19:23:09 | <dolio> | If not there, then there are constructive settings where it works out. |
| 19:23:42 | <dolio> | Another setting is topological spaces. Because the maps involved are continuous. |
| 19:23:54 | <dolio> | (Which is also the case for computable maps.) |
| 19:23:55 | <ncf> | jade[m]: i'm struggling to assign meaning to this question |
| 19:24:18 | × | cafkafk quits (~cafkafk@fsf/member/cafkafk) (Client Quit) |
| 19:24:38 | → | cafkafk joins (~cafkafk@fsf/member/cafkafk) |
| 19:25:10 | <jade[m]> | yeah i don't really know either |
| 19:25:17 | <jade[m]> | forget it lmao |
| 19:25:24 | <ncf> | i guess you're thinking of some sort of "free"/"syntactic" product which keeps all of the integers you give it around? but it seems like in order to make this formal you'd have to define something that looks very much like Integer → Integer |
| 19:25:28 | <probie> | pyrex: I just meant that `Integer -> Integer` in Haskell doesn't represent `ℤ → ℤ` in maths, because all functions in Haskell must have a finite representation in the language, and the number of possible programs is simply ℕ |
| 19:25:42 | × | nate2 quits (~nate@c-98-45-169-16.hsd1.ca.comcast.net) (Ping timeout: 255 seconds) |
| 19:25:50 | segfaultfizzbuzz | broke #haskell |
| 19:26:09 | × | cafkafk quits (~cafkafk@fsf/member/cafkafk) (Client Quit) |
| 19:26:31 | <dolio> | probie: All functions in the effective topos have finite presentations (in terms of whatever computation system you start with). |
| 19:26:33 | → | cafkafk joins (~cafkafk@fsf/member/cafkafk) |
| 19:30:59 | <dolio> | ncf: If you use the actual power set, you don't get into situations like that, BTW. |
| 19:31:19 | <kritty> | fun times in theory land |
| 19:31:21 | <ncf> | so Ω^ℤ ? |
| 19:31:35 | × | cheater quits (~Username@user/cheater) (Read error: Connection reset by peer) |
| 19:31:41 | <dolio> | There's a slightly more involved proof that the double power set can't up being equivalent to what you started with. |
| 19:32:07 | → | cheater joins (~Username@user/cheater) |
| 19:32:38 | <dolio> | Yeah. |
| 19:33:46 | <ncf> | i am still not over the fact that "no surjections from A to T(A)" does not mean "no surjections from A to T(T(A))" |
| 19:33:50 | <dolio> | I think Ω being closed under things like quantifiers over your original set enters into it importantly. |
| 19:34:34 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:a031:36aa:a52b:1d5b) |
| 19:35:13 | <xerox> | ncf: what is T in this context? |
| 19:35:25 | <ncf> | a type operator, in this case 2^ |
| 19:35:33 | → | bionade24 joins (~bionade24@2a03:4000:33:45b::1) |
| 19:35:45 | <ncf> | (a functor, i guess) |
| 19:38:14 | <ncf> | dolio: wait, are you saying that "no surjections from A to 2^A" is also false in the effective topos, until you replace 2 with Ω? |
| 19:38:17 | <ncf> | or at least unprovable |
| 19:38:23 | → | merijn joins (~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) |
| 19:38:35 | <tomsmeding> | EvanR: there are more things I would be terrible at :p |
| 19:38:38 | <dolio> | Well, in this specific case, it can also be read, "there is no surjection 2^ℕ -> ℕ." Which isn't necessarily surprising unless the only reason you believe a surjection can fail to exist is some kind of "bigness." |
| 19:38:59 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:a031:36aa:a52b:1d5b) (Ping timeout: 240 seconds) |
| 19:39:20 | <dolio> | ncf: No, that one works with 2, too. |
| 19:39:25 | → | delYsid joins (~user@84-115-138-74.cable.dynamic.surfer.at) |
| 19:39:47 | × | kritty quits (~crumb@c-76-155-235-153.hsd1.co.comcast.net) (Quit: Leaving) |
| 19:40:01 | <ncf> | i should sit down and work through the details... |
| 19:40:34 | <delYsid> | Is there a package for processing JSON Schema other then aeson-schema{s} and json-schema? From skimming the docs, it looks like both are not sufficient for the OpenAI function_call API... |
| 19:40:39 | <dolio> | I'm not 100% sure the 2^2^ℕ ≅ ℕ thing holds in the effective topos. But there are constructively consistent axioms that do imply it. |
| 19:40:57 | <ncf> | which axioms are you thinking of? |
| 19:41:32 | × | fbytez quits (~uid@2001:bc8:2117:100::) (Ping timeout: 240 seconds) |
| 19:41:32 | <dolio> | The reason is that, in some sense, continuity of maps 2^ℕ -> ℕ is a strong limitation. |
| 19:41:39 | <dolio> | Er, 2^ℕ -> 2. |
| 19:42:27 | <ncf> | right |
| 19:43:08 | × | merijn quits (~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) (Ping timeout: 240 seconds) |
| 19:43:55 | × | coot quits (~coot@89-69-206-216.dynamic.chello.pl) (Quit: coot) |
| 19:43:57 | <dolio> | I forget which axiom. I guess probably a function continuity one. |
| 19:47:15 | <dolio> | https://math.andrej.com/2009/10/12/constructive-gem-double-exponentials/ |
| 19:47:31 | → | oac_ joins (~oac@72-50-214-210.fttp.usinternet.com) |
| 19:48:56 | × | azimut quits (~azimut@gateway/tor-sasl/azimut) (Remote host closed the connection) |
| 19:49:26 | → | azimut joins (~azimut@gateway/tor-sasl/azimut) |
| 19:49:40 | <dolio> | "All functions 2^ℕ -> 2 are uniformly continuous." |
| 19:50:12 | <dolio> | I imagine it works in the effective topos, because he's using computer programs as an example. |
| 19:50:20 | × | thegeekinside quits (~thegeekin@189.217.90.138) (Read error: Connection reset by peer) |
| 19:50:44 | <dolio> | But for instance, "the Cantor space is compact," isn't valid, I think. |
| 19:51:05 | <dolio> | So you can't derive it from the two other principles there, if it is true. |
| 19:52:48 | <dolio> | (But Brouwerian intuitionism would be another example setting, I guess.) |
| 19:55:34 | → | merijn joins (~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) |
| 19:55:39 | → | thegeekinside joins (~thegeekin@189.217.90.138) |
| 20:00:48 | × | merijn quits (~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) (Ping timeout: 255 seconds) |
| 20:07:29 | × | _ht quits (~Thunderbi@28-52-174-82.ftth.glasoperator.nl) (Remote host closed the connection) |
| 20:13:29 | × | cheater quits (~Username@user/cheater) (Ping timeout: 240 seconds) |
| 20:13:39 | → | cheater_ joins (~Username@user/cheater) |
| 20:13:39 | cheater_ | is now known as cheater |
| 20:20:18 | × | euandreh quits (~Thunderbi@189.6.18.7) (Remote host closed the connection) |
| 20:20:34 | × | oac_ quits (~oac@72-50-214-210.fttp.usinternet.com) (Quit: oac_) |
| 20:20:54 | → | oac joins (~oac@72-50-214-210.fttp.usinternet.com) |
| 20:23:11 | → | euandreh joins (~Thunderbi@189.6.18.7) |
| 20:23:40 | × | trev quits (~trev@user/trev) (Quit: trev) |
| 20:24:46 | × | Techcable quits (~Techcable@user/Techcable) (Remote host closed the connection) |
| 20:28:08 | → | Techcable joins (~Techcable@user/Techcable) |
| 20:28:08 | × | chiselfuse quits (~chiselfus@user/chiselfuse) (Ping timeout: 240 seconds) |
| 20:28:24 | × | enoq quits (~enoq@2a05:1141:1f5:5600:b9c9:721a:599:bfe7) (Quit: enoq) |
| 20:30:20 | × | dcoutts_ quits (~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net) (Ping timeout: 240 seconds) |
| 20:31:05 | × | Techcable quits (~Techcable@user/Techcable) (Remote host closed the connection) |
| 20:34:34 | → | gnalzo joins (~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) |
| 20:35:56 | → | eggplantade joins (~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net) |
| 20:37:30 | × | dhil quits (~dhil@78.45.150.83.ewm.ftth.as8758.net) (Ping timeout: 240 seconds) |
| 20:37:42 | × | santiagopim quits (~user@90.167.66.131) (Ping timeout: 255 seconds) |
| 20:39:56 | × | eggplantade quits (~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 240 seconds) |
| 20:46:55 | × | chomwitt quits (~chomwitt@2a02:587:7a0e:cf00:1ac0:4dff:fedb:a3f1) (Remote host closed the connection) |
| 20:48:40 | × | thegeekinside quits (~thegeekin@189.217.90.138) (Read error: Connection reset by peer) |
| 20:48:45 | → | dcoutts_ joins (~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net) |
| 20:53:22 | → | Lycurgus joins (~juan@user/Lycurgus) |
| 20:56:30 | × | segfaultfizzbuzz quits (~segfaultf@23-93-74-212.fiber.dynamic.sonic.net) (Ping timeout: 240 seconds) |
| 20:59:11 | → | bitdex joins (~bitdex@gateway/tor-sasl/bitdex) |
| 21:01:53 | → | jero98772 joins (~jero98772@2800:484:1d7f:5d36::2) |
| 21:10:40 | → | son0p joins (~ff@181.136.122.143) |
| 21:13:33 | → | Tuplanolla joins (~Tuplanoll@91-159-68-236.elisa-laajakaista.fi) |
| 21:15:58 | × | takuan quits (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection) |
| 21:17:01 | × | oac quits (~oac@72-50-214-210.fttp.usinternet.com) (Quit: oac) |
| 21:21:27 | → | nate2 joins (~nate@c-98-45-169-16.hsd1.ca.comcast.net) |
| 21:24:07 | × | mc47 quits (~mc47@xmonad/TheMC47) (Remote host closed the connection) |
| 21:25:58 | → | segfaultfizzbuzz joins (~segfaultf@23-93-74-212.fiber.dynamic.sonic.net) |
| 21:26:18 | × | nate2 quits (~nate@c-98-45-169-16.hsd1.ca.comcast.net) (Ping timeout: 255 seconds) |
| 21:30:52 | × | segfaultfizzbuzz quits (~segfaultf@23-93-74-212.fiber.dynamic.sonic.net) (Quit: segfaultfizzbuzz) |
| 21:35:37 | → | merijn joins (~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) |
| 21:37:21 | × | michalz quits (~michalz@185.246.207.217) (Remote host closed the connection) |
| 21:40:32 | × | wns quits (~user@103.206.114.69) (Read error: No route to host) |
| 21:40:44 | → | wns joins (~user@103.206.114.90) |
| 21:41:36 | × | merijn quits (~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) (Ping timeout: 255 seconds) |
| 21:49:23 | → | Guest47 joins (~Guest47@u-of-rochester-128-151-150-9.wireless.rochester.edu) |
| 21:49:45 | × | Guest47 quits (~Guest47@u-of-rochester-128-151-150-9.wireless.rochester.edu) (Client Quit) |
| 21:50:54 | × | elain4 quits (~textual@static-71-251-226-194.rcmdva.fios.verizon.net) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 21:53:33 | → | coot joins (~coot@89-69-206-216.dynamic.chello.pl) |
| 21:56:55 | × | foul_owl quits (~kerry@45.143.82.39) (Ping timeout: 260 seconds) |
| 21:57:42 | × | Lycurgus quits (~juan@user/Lycurgus) (Quit: Exeunt: personae.ai-integration.biz) |
| 22:02:30 | → | Errdonald_ joins (~Errdonald@2a01:540:536:a500:7f5d:bc02:46ea:a9e8) |
| 22:04:40 | × | elkcl quits (~elkcl@broadband-37-110-27-252.ip.moscow.rt.ru) (Ping timeout: 255 seconds) |
| 22:05:34 | × | Errdonald quits (~Errdonald@2a01:540:536:a500:7f5d:bc02:46ea:a9e8) (Ping timeout: 255 seconds) |
| 22:05:39 | → | elkcl joins (~elkcl@broadband-37-110-27-252.ip.moscow.rt.ru) |
| 22:06:42 | → | thegeekinside joins (~thegeekin@189.217.90.138) |
| 22:07:14 | → | Pickchea joins (~private@user/pickchea) |
| 22:07:56 | × | mncheck quits (~mncheck@193.224.205.254) (Ping timeout: 240 seconds) |
| 22:10:24 | × | acidjnk quits (~acidjnk@p200300d6e7072f28fc9054c626dc7d9f.dip0.t-ipconnect.de) (Ping timeout: 255 seconds) |
| 22:12:24 | → | foul_owl joins (~kerry@71.212.137.212) |
| 22:15:26 | × | gnalzo quits (~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) (Quit: WeeChat 3.8) |
| 22:15:49 | × | B-J quits (~BenziJuni@88-149-64-165.du.xdsl.is) (Ping timeout: 250 seconds) |
| 22:16:15 | × | Luj quits (~Luj@2a01:e0a:5f9:9681:5880:c9ff:fe9f:3dfb) (Quit: The Lounge - https://thelounge.chat) |
| 22:17:26 | → | Benzi-Junior joins (~BenziJuni@88-149-66-136.du.xdsl.is) |
| 22:18:21 | → | Luj joins (~Luj@2a01:e0a:5f9:9681:f71f:fbb2:cbdf:4da0) |
| 22:18:43 | × | mmhat quits (~mmh@p200300f1c702b0e8ee086bfffe095315.dip0.t-ipconnect.de) (Quit: WeeChat 3.8) |
| 22:18:48 | × | thegeekinside quits (~thegeekin@189.217.90.138) (Read error: Connection reset by peer) |
| 22:19:00 | → | thegeekinside joins (~thegeekin@189.217.90.138) |
| 22:20:24 | → | jargon joins (~jargon@184.101.75.235) |
| 22:20:34 | × | paddymahoney quits (~paddymaho@cpe883d24bcf597-cmbc4dfb741f80.cpe.net.cable.rogers.com) (Remote host closed the connection) |
| 22:24:54 | × | coot quits (~coot@89-69-206-216.dynamic.chello.pl) (Quit: coot) |
| 22:25:31 | → | B-J joins (~BenziJuni@dsl-149-64-112.hive.is) |
| 22:25:44 | × | stiell quits (~stiell@gateway/tor-sasl/stiell) (Ping timeout: 240 seconds) |
| 22:26:36 | × | Benzi-Junior quits (~BenziJuni@88-149-66-136.du.xdsl.is) (Ping timeout: 255 seconds) |
| 22:29:21 | → | stiell joins (~stiell@gateway/tor-sasl/stiell) |
| 22:34:45 | srk_ | is now known as srk |
| 22:41:27 | × | Pickchea quits (~private@user/pickchea) (Quit: Leaving) |
| 22:43:09 | × | bilegeek quits (~bilegeek@2600:1008:b043:3798:77a9:11b8:240f:486c) (Quit: Leaving) |
| 22:49:06 | → | arrowhead joins (~arrowhead@cpe-74-66-76-151.nyc.res.rr.com) |
| 22:51:08 | × | dcoutts_ quits (~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net) (Ping timeout: 240 seconds) |
| 22:54:56 | × | bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 240 seconds) |
| 22:57:20 | × | Tuplanolla quits (~Tuplanoll@91-159-68-236.elisa-laajakaista.fi) (Quit: Leaving.) |
| 22:57:41 | → | bitdex joins (~bitdex@gateway/tor-sasl/bitdex) |
| 22:59:36 | × | gurkenglas quits (~user@dynamic-046-114-182-029.46.114.pool.telefonica.de) (Read error: Connection reset by peer) |
| 23:00:18 | → | L29Ah joins (~L29Ah@wikipedia/L29Ah) |
| 23:01:47 | → | [itchyjunk] joins (~itchyjunk@user/itchyjunk/x-7353470) |
| 23:09:01 | → | acidjnk joins (~acidjnk@p200300d6e7072f9254d3382c8032cf2b.dip0.t-ipconnect.de) |
| 23:11:56 | × | ft quits (~ft@p4fc2a88b.dip0.t-ipconnect.de) (Ping timeout: 240 seconds) |
| 23:12:41 | × | __monty__ quits (~toonn@user/toonn) (Quit: leaving) |
| 23:13:31 | × | jinsun quits (~jinsun@user/jinsun) (Read error: Connection reset by peer) |
| 23:14:45 | × | machinedgod quits (~machinedg@d198-53-218-113.abhsia.telus.net) (Ping timeout: 255 seconds) |
| 23:17:37 | × | [itchyjunk] quits (~itchyjunk@user/itchyjunk/x-7353470) (Remote host closed the connection) |
| 23:20:57 | → | [itchyjunk] joins (~itchyjunk@user/itchyjunk/x-7353470) |
| 23:22:13 | → | nate2 joins (~nate@c-98-45-169-16.hsd1.ca.comcast.net) |
| 23:26:54 | × | nate2 quits (~nate@c-98-45-169-16.hsd1.ca.comcast.net) (Ping timeout: 255 seconds) |
| 23:28:47 | → | ft joins (~ft@p508dbdef.dip0.t-ipconnect.de) |
| 23:33:02 | × | [itchyjunk] quits (~itchyjunk@user/itchyjunk/x-7353470) (Remote host closed the connection) |
| 23:33:55 | → | [itchyjunk] joins (~itchyjunk@user/itchyjunk/x-7353470) |
| 23:35:02 | × | [itchyjunk] quits (~itchyjunk@user/itchyjunk/x-7353470) (Remote host closed the connection) |
| 23:36:44 | <ijqq_> | I am looking at this tutorial and they have a Token class with various fields, and one of them is value which they have of type Object |
| 23:36:56 | <ijqq_> | How can I do something like this in Haskell? |
| 23:37:29 | <Axman6> | I don't understand the question, can you share the tutorial? |
| 23:37:33 | <ijqq_> | Like is it possible to have something like data Token = SimpleToken {kind :: TokenKind, line :: Int} | LiteralToken a {kind :: TokenKind, line :: Int, value :: a}? |
| 23:37:35 | <ijqq_> | Sure |
| 23:37:54 | AmyMalik | is now known as Reinhilde |
| 23:38:01 | <ijqq_> | https://craftinginterpreters.com/scanning.html#lexemes-and-tokens |
| 23:38:10 | → | merijn joins (~merijn@c-001-001-001.client.esciencecenter.eduvpn.nl) |
| 23:38:19 | <chromoblob> | ijqq_: at which moment the "a" is determined? |
| 23:38:27 | → | [itchyjunk] joins (~itchyjunk@user/itchyjunk/x-7353470) |
| 23:38:38 | <Axman6> | data Token a = SimpleToken TokenKind Int | LiteralToken TokenKind Int a -- that would work |
| 23:38:41 | <ncf> | move the a from after LiteralToken to after Token and you have valid haskell |
| 23:38:58 | <Axman6> | constructors don't have type parameters, their types do |
| 23:40:27 | → | sm[i] joins (~smi]@plaintextaccounting/sm) |
| 23:40:29 | <ijqq_> | Ahh, thank you |
| 23:41:26 | <ijqq_> | data Token a = SimpleToken {kind :: TokenKind, line :: Int} | LiteralToken {kind :: TokenKind, line :: Int, value :: a} deriving (Show) |
| 23:41:33 | <ijqq_> | This works too |
| 23:41:40 | × | [itchyjunk] quits (~itchyjunk@user/itchyjunk/x-7353470) (Read error: Connection reset by peer) |
| 23:41:51 | <ijqq_> | so what is the a in data Token a? |
| 23:42:02 | <ijqq_> | value :: a this means that the type is a |
| 23:42:02 | → | [itchyjunk] joins (~itchyjunk@user/itchyjunk/x-7353470) |
| 23:42:05 | <Axman6> | it's a type parameter |
| 23:42:19 | <Axman6> | it's like data Token<A> in other languages |
| 23:42:40 | <ncf> | same as the x in f x = x + 1 |
| 23:42:56 | <ijqq_> | But you don't have to use it? So simlpetoken is fine |
| 23:43:05 | <Axman6> | data Either a b = Left a | Right b -- means you can have Left "Hello" :: Either String Int, Right 7 :: Either String Int |
| 23:43:38 | <Axman6> | no, you can have type parameters that don't appear in some, or even any, of the constructors (the latter usually called phantom types) |
| 23:44:59 | → | jmdaemon joins (~jmdaemon@user/jmdaemon) |
| 23:45:25 | <ijqq_> | okay cool |
| 23:45:49 | <chromoblob> | ijqq_: you may run into problems if you attempt to use "a" as dynamic type |
| 23:46:49 | <ijqq_> | and is this a good way to represent the tokens? as in, for the java version the author can just use object and then have some fields potentially blank (empty strings). so i thought in haskell i should try to make different tokens types? |
| 23:47:20 | <chromoblob> | whenever "value" is set in a LiteralToken, the "a" in its type is set rigidly and cannot be interchanged with tokens which have different "a" |
| 23:47:24 | <ijqq_> | actually i think i only need StringLiteral and NumericLiteral here so I perhaps can just add those as separate token types and I don't need to make it dynamic |
| 23:47:33 | <ijqq_> | that would be better to do right? |
| 23:47:38 | <ncf> | you could perhaps merge the constructors and have value :: Maybe a |
| 23:48:17 | <ijqq_> | So a token such as LEFT_PARENT will jsut have value as Nothing, and a string can have value as Just "foo"? |
| 23:48:33 | <chromoblob> | ijqq_: what is TokenKind? |
| 23:48:39 | <ijqq_> | PAREN sorry* |
| 23:49:10 | <ijqq_> | http://sprunge.us/8Con2F here is my file |
| 23:49:23 | × | sm[i] quits (~smi]@plaintextaccounting/sm) (Ping timeout: 245 seconds) |
| 23:49:24 | <ijqq_> | i am trying to follow that tutorial but write it in haskell |
| 23:49:37 | <ijqq_> | as you can see i am struggling a bit |
| 23:50:15 | <chromoblob> | so, i think you should refactor your types |
| 23:50:36 | <chromoblob> | note that every token has a line number, and then a kind and other data *depending on kind* |
| 23:50:55 | <chromoblob> | so you should create a type Token: data Token = Token { line :: Int, content :: TokenContent } |
| 23:51:18 | <chromoblob> | then data type TokenContent has exactly one constructor for each token kind |
| 23:51:38 | <chromoblob> | its String constructor should have field of type String |
| 23:51:50 | <chromoblob> | its Number constructor should have field of type Float |
| 23:52:05 | <geekosaur> | Double, surely? |
| 23:52:05 | <chromoblob> | for Identifier, probably field of type String |
| 23:52:15 | <chromoblob> | and other constructors should have no fields |
| 23:52:43 | <Axman6> | This is one of the places where understanding the algebraic part of ADT can be useful, you can evaluate several equivalent implementations and decide which makes more sense for how you want to use it |
| 23:54:32 | <Axman6> | like understanding that Either a a is equivalent to (Bool,a) - which one makes more sense depends on your project |
| 23:55:43 | <chromoblob> | languages for other languages may not work well for Haskell in some cases |
| 23:55:48 | × | Unicorn_Princess quits (~Unicorn_P@user/Unicorn-Princess/x-3540542) (Quit: Leaving) |
| 23:55:50 | <chromoblob> | tutorials for other languages * |
| 23:57:42 | <ijqq_> | sorry chromo, I am a little confused. If I have something like data Token = Token { line :: Int, content :: TokenContent } and the data TokenContent a = StringContent { value :: a } it is asking for another argument to TokenContent |
| 23:57:52 | <ijqq_> | maybe I have misunderstood ? |
| 23:58:06 | <geekosaur> | you have misunderstood |
| 23:58:41 | <geekosaur> | you no longer want or need the a |
| 23:58:42 | → | mauke_ joins (~mauke@user/mauke) |
| 23:59:01 | <chromoblob> | data TokenContent = LEFT_PAREN | ... | IDENTIFIER String | STRING String | NUMBER Float | AND | ... |
| 23:59:35 | <ijqq_> | Ohh I see what you are saying |
| 23:59:36 | <ijqq_> | I get it |
| 23:59:44 | <ijqq_> | thank you guys, you are very helpful |
| 23:59:51 | <chromoblob> | you may also want to group the constructors |
All times are in UTC on 2023-06-13.