2021-11-15 00:00:05 +0100 | brainfreeze | (~brainfree@2a03:1b20:4:f011::20d) |
2021-11-15 00:05:16 +0100 | gawen | (~gawen@user/gawen) (Ping timeout: 268 seconds) |
2021-11-15 00:07:08 +0100 | Feuermagier | (~Feuermagi@user/feuermagier) |
2021-11-15 00:08:17 +0100 | gawen | (~gawen@user/gawen) |
2021-11-15 00:09:57 +0100 | jmorris | (uid433911@hampstead.irccloud.com) |
2021-11-15 00:14:27 +0100 | allbery_b | (~geekosaur@xmonad/geekosaur) |
2021-11-15 00:14:27 +0100 | geekosaur | (~geekosaur@xmonad/geekosaur) (Killed (NickServ (GHOST command used by allbery_b))) |
2021-11-15 00:14:29 +0100 | allbery_b | geekosaur |
2021-11-15 00:20:11 +0100 | chexum | (~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection) |
2021-11-15 00:20:21 +0100 | chexum | (~quassel@gateway/tor-sasl/chexum) |
2021-11-15 00:22:42 +0100 | __monty__ | (~toonn@user/toonn) (Quit: leaving) |
2021-11-15 00:26:28 +0100 | myShoggoth | (~myShoggot@97-120-85-195.ptld.qwest.net) |
2021-11-15 00:28:17 +0100 | AlexNoo_ | (~AlexNoo@178.34.150.115) |
2021-11-15 00:30:41 +0100 | AlexZenon | (~alzenon@178.34.163.122) (Ping timeout: 250 seconds) |
2021-11-15 00:31:46 +0100 | AlexNoo | (~AlexNoo@178.34.163.122) (Ping timeout: 256 seconds) |
2021-11-15 00:32:11 +0100 | Alex_test | (~al_test@178.34.163.122) (Ping timeout: 264 seconds) |
2021-11-15 00:32:55 +0100 | gawen | (~gawen@user/gawen) (Quit: cya) |
2021-11-15 00:34:53 +0100 | AlexZenon | (~alzenon@178.34.150.115) |
2021-11-15 00:35:10 +0100 | alx741 | (~alx741@181.196.68.69) (Ping timeout: 256 seconds) |
2021-11-15 00:35:53 +0100 | Alex_test | (~al_test@178.34.150.115) |
2021-11-15 00:36:06 +0100 | myShoggoth | (~myShoggot@97-120-85-195.ptld.qwest.net) (Ping timeout: 268 seconds) |
2021-11-15 00:37:11 +0100 | gawen | (~gawen@user/gawen) |
2021-11-15 00:41:20 +0100 | max22- | (~maxime@2a01cb088335980063a544fa463a8015.ipv6.abo.wanadoo.fr) (Remote host closed the connection) |
2021-11-15 00:44:21 +0100 | myShoggoth | (~myShoggot@97-120-85-195.ptld.qwest.net) |
2021-11-15 00:46:36 +0100 | slice | (~slice@user/slice) |
2021-11-15 00:46:46 +0100 | Midjak | (~Midjak@82-65-111-221.subs.proxad.net) (Quit: This computer has gone to sleep) |
2021-11-15 00:47:16 +0100 | jrm | (~jrm@156.34.187.65) |
2021-11-15 00:48:50 +0100 | mcgroin | (~mcgroin@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Ping timeout: 260 seconds) |
2021-11-15 00:49:34 +0100 | Tuplanolla | (~Tuplanoll@91-159-69-50.elisa-laajakaista.fi) (Quit: Leaving.) |
2021-11-15 00:49:59 +0100 | gawen | (~gawen@user/gawen) (Quit: cya) |
2021-11-15 00:50:20 +0100 | olibiera | (~olibiera@a85-138-214-194.cpe.netcabo.pt) |
2021-11-15 00:50:56 +0100 | Alleria | (~textual@user/alleria) (Ping timeout: 245 seconds) |
2021-11-15 00:51:32 +0100 | renzhi | (~xp@2607:fa49:6500:b100::6e7f) |
2021-11-15 00:52:42 +0100 | <olibiera> | hello guys, is there any easy way to turn a string that is a math expression (ex: "4*3") in the result (12) |
2021-11-15 00:52:52 +0100 | <olibiera> | ? |
2021-11-15 00:53:36 +0100 | yauhsien | (~yauhsien@61-231-43-127.dynamic-ip.hinet.net) (Remote host closed the connection) |
2021-11-15 00:54:03 +0100 | <dsal> | olibiera: you write a parser and evaluate the result. |
2021-11-15 00:54:13 +0100 | yauhsien | (~yauhsien@61-231-43-127.dynamic-ip.hinet.net) |
2021-11-15 00:54:19 +0100 | gawen | (~gawen@user/gawen) |
2021-11-15 00:54:26 +0100 | <dsal> | So, yeah, pretty easy, but you have to do some of the work. |
2021-11-15 00:55:06 +0100 | <olibiera> | my english is not really good, can u explain what a parser is pls |
2021-11-15 00:55:41 +0100 | <dibblego> | A parser for things is a function from strings to lists of pairs of things and strings. |
2021-11-15 00:56:13 +0100 | <olibiera> | oh k ty :) |
2021-11-15 00:57:44 +0100 | Vajb | (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer) |
2021-11-15 00:58:12 +0100 | Vajb | (~Vajb@2001:999:85:46d7:d6a4:d6c1:950b:ce99) |
2021-11-15 00:58:58 +0100 | yauhsien | (~yauhsien@61-231-43-127.dynamic-ip.hinet.net) (Ping timeout: 256 seconds) |
2021-11-15 01:00:30 +0100 | machinedgod | (~machinedg@24.105.81.50) (Ping timeout: 260 seconds) |
2021-11-15 01:02:03 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-11-15 01:04:32 +0100 | gawen | (~gawen@user/gawen) (Quit: cya) |
2021-11-15 01:08:50 +0100 | gawen | (~gawen@user/gawen) |
2021-11-15 01:11:41 +0100 | olibiera | (~olibiera@a85-138-214-194.cpe.netcabo.pt) (Quit: Client closed) |
2021-11-15 01:13:31 +0100 | slice | (~slice@user/slice) (Quit: zzz) |
2021-11-15 01:16:15 +0100 | Vajb | (~Vajb@2001:999:85:46d7:d6a4:d6c1:950b:ce99) (Read error: Connection reset by peer) |
2021-11-15 01:16:47 +0100 | Vajb | (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) |
2021-11-15 01:18:16 +0100 | Henson | (~kvirc@107-179-133-201.cpe.teksavvy.com) |
2021-11-15 01:19:28 +0100 | <dibblego> | the book Programming in Haskell, Graham Hutton — has an example of a parser |
2021-11-15 01:19:49 +0100 | alx741 | (~alx741@181.196.68.69) |
2021-11-15 01:22:58 +0100 | acidjnk_new | (~acidjnk@p200300d0c74373762d98dd33bce98ac3.dip0.t-ipconnect.de) (Ping timeout: 265 seconds) |
2021-11-15 01:26:40 +0100 | <Axman6> | who runs yahb again? I was looking for the custom sandbox thing it runs in |
2021-11-15 01:27:16 +0100 | <Axman6> | nevermind, I found both answers in my browser history |
2021-11-15 01:27:21 +0100 | chomwitt | (~chomwitt@2a02:587:dc12:3f00:12c3:7bff:fe6d:d374) (Remote host closed the connection) |
2021-11-15 01:29:54 +0100 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 260 seconds) |
2021-11-15 01:30:02 +0100 | <geekosaur> | haskell is a compiled language, like c and c++ are compiled languages. none of them gives you a simple "here's an expression in a string, compute it and give me the result" function; that's something interpreters do |
2021-11-15 01:30:05 +0100 | <monochrom> | I think mniip runs yahb. |
2021-11-15 01:30:09 +0100 | <geekosaur> | yeh |
2021-11-15 01:30:15 +0100 | <geekosaur> | but they got the answer already |
2021-11-15 01:30:34 +0100 | <monochrom> | I didn't read completely, oops, heh. |
2021-11-15 01:31:21 +0100 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) |
2021-11-15 01:32:13 +0100 | <geekosaur> | anyway there is a way to get that functionality with ghc, but (a) it's somewhat painful (b) it involves linking the whole compiler into your program just to evaluate the expression |
2021-11-15 01:32:27 +0100 | <geekosaur> | this is not usually what you're looking for |
2021-11-15 01:32:48 +0100 | machinedgod | (~machinedg@24.105.81.50) |
2021-11-15 01:36:22 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds) |
2021-11-15 01:37:13 +0100 | slice | (~slice@user/slice) |
2021-11-15 01:37:16 +0100 | mmhat | (~mmh@55d47fa1.access.ecotel.net) (Quit: WeeChat 3.3) |
2021-11-15 01:37:35 +0100 | zava | (~zava@ip5f5bdf0f.dynamic.kabel-deutschland.de) (Quit: WeeChat 3.3) |
2021-11-15 01:39:05 +0100 | <c_wraith> | It's way worse than just linking in the compiler - you also need the .hi files for every library you want. |
2021-11-15 01:42:44 +0100 | yauhsien | (~yauhsien@61-231-43-127.dynamic-ip.hinet.net) |
2021-11-15 01:46:51 +0100 | Codaraxis | (~Codaraxis@user/codaraxis) (Quit: Leaving) |
2021-11-15 01:47:11 +0100 | yauhsien | (~yauhsien@61-231-43-127.dynamic-ip.hinet.net) (Ping timeout: 264 seconds) |
2021-11-15 01:48:38 +0100 | <Henson> | is there some way for a person to find a Haskell project that needs volunteer coders? I don't program in Haskell for my job and don't want my Haskell skills to get too rusty, so I'd like to have excuses to code. I've tried doing Advent Of Code challenges for fun, but the headache-to-coding ratio is too high for it to be enjoyable. |
2021-11-15 01:49:40 +0100 | burnsidesLlama | (~burnsides@dhcp168-014.wadham.ox.ac.uk) (Remote host closed the connection) |
2021-11-15 01:51:44 +0100 | <geekosaur> | look for Haskell projects on github? |
2021-11-15 01:52:25 +0100 | anna_user2_ | (~anna_user@207.181.251.46) (Quit: Leaving) |
2021-11-15 01:52:36 +0100 | <geekosaur> | mostly the ones that show recent activity |
2021-11-15 01:53:02 +0100 | <geekosaur> | (or gitlab, darcsden, etc.) |
2021-11-15 01:53:19 +0100 | hololeap_ | (~hololeap@user/hololeap) |
2021-11-15 01:53:21 +0100 | hololeap | (~hololeap@user/hololeap) (Ping timeout: 276 seconds) |
2021-11-15 01:59:04 +0100 | <energizer> | does recursion get rewritten to foldr under the hood? (or vice versa) |
2021-11-15 01:59:17 +0100 | <Henson> | geekosaur: thanks! |
2021-11-15 01:59:48 +0100 | <geekosaur> | "recursion" is a broad brush |
2021-11-15 02:00:12 +0100 | <energizer> | https://hackage.haskell.org/package/base-4.16.0.0/docs/src/GHC.List.html#takeWhile vs `takeWhile f = foldr (\x acc -> if f x then x : acc else []) []` |
2021-11-15 02:00:47 +0100 | <sm> | Henson: people ask this periodically on /r/haskell, not sure how to find those threads |
2021-11-15 02:01:38 +0100 | <geekosaur> | there are simple maps, there are folds, there are traversals, there are _un_folds, etc. |
2021-11-15 02:01:52 +0100 | <sm> | those of us who see it sometimes reply. Most FOSS projects welcome coders, hledger is one |
2021-11-15 02:02:24 +0100 | <Henson> | sm: cool, thanks for the suggestion! |
2021-11-15 02:03:35 +0100 | <energizer> | does one of those two functions get converted into the other under the hood? |
2021-11-15 02:07:26 +0100 | unit73e | (~emanuel@2001:818:e8dd:7c00:32b5:c2ff:fe6b:5291) (Ping timeout: 265 seconds) |
2021-11-15 02:09:14 +0100 | alx741 | (~alx741@181.196.68.69) (Ping timeout: 256 seconds) |
2021-11-15 02:10:17 +0100 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:185c:f2cc:27d3:da20) (Remote host closed the connection) |
2021-11-15 02:11:39 +0100 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:185c:f2cc:27d3:da20) |
2021-11-15 02:12:18 +0100 | mimmy | (~mimmy@45.14.195.121) |
2021-11-15 02:17:21 +0100 | Henson | (~kvirc@107-179-133-201.cpe.teksavvy.com) (Quit: KVIrc 5.0.0 Aria http://www.kvirc.net/) |
2021-11-15 02:18:35 +0100 | unit73e | (~emanuel@2001:818:e8dd:7c00:32b5:c2ff:fe6b:5291) |
2021-11-15 02:20:25 +0100 | <geekosaur> | energizer, no |
2021-11-15 02:20:56 +0100 | <geekosaur> | there are, iirc, 16 fundamental "recursion schemes". in practice only a handful are useful, so they are the predefined ones |
2021-11-15 02:21:16 +0100 | <geekosaur> | but you don't use a fold when you want a map, and you don't use a map when you want a fold |
2021-11-15 02:21:40 +0100 | <geekosaur> | moreover, there's two different folds, depending on how you want your function to associate |
2021-11-15 02:23:11 +0100 | renzhi | (~xp@2607:fa49:6500:b100::6e7f) (Ping timeout: 264 seconds) |
2021-11-15 02:23:57 +0100 | alx741 | (~alx741@181.196.68.87) |
2021-11-15 02:28:45 +0100 | <energizer> | those two implementations are different ways of writing the same thing, but i guess ghc doesnt care about that |
2021-11-15 02:29:16 +0100 | <geekosaur> | hm? |
2021-11-15 02:29:32 +0100 | <geekosaur> | > foldl f z [a,b,c] |
2021-11-15 02:29:33 +0100 | <lambdabot> | f (f (f z a) b) c |
2021-11-15 02:29:43 +0100 | <geekosaur> | > foldr f z [a,b,c] |
2021-11-15 02:29:45 +0100 | <lambdabot> | f a (f b (f c z)) |
2021-11-15 02:29:51 +0100 | <energizer> | https://hackage.haskell.org/package/base-4.16.0.0/docs/src/GHC.List.html#takeWhile vs `takeWhile f = foldr (\x acc -> if f x then x : acc else []) []` |
2021-11-15 02:31:22 +0100 | <energizer> | i see, you were responding to a different question than i thought you were |
2021-11-15 02:31:24 +0100 | hololeap_ | hololeap |
2021-11-15 02:31:38 +0100 | <energizer> | by "those two functions" i meant those two `takeWhile`s |
2021-11-15 02:33:34 +0100 | <EvanR> | you can view the core output for any two versions of some function to see what ghc may think |
2021-11-15 02:33:51 +0100 | <geekosaur> | also keep in mind that in Haskell, you get different laziness behavior from different ways of doing things. the foldr definition is lazier than the one actually used |
2021-11-15 02:35:15 +0100 | <geekosaur> | strictness vs. laziness has consequences in terms of memory usage and performance, among other things |
2021-11-15 02:38:05 +0100 | dsamperi | (~dsamperi@2603-7000-3b42-5400-c006-e1aa-bb8d-1172.res6.spectrum.com) |
2021-11-15 02:38:15 +0100 | <unit73e> | I never bothered profiling in haskell |
2021-11-15 02:38:20 +0100 | <unit73e> | but maybe I should |
2021-11-15 02:38:48 +0100 | <geekosaur> | depends on what you're doing. I've never found it necessary but I'm not e.g. building high volume webservers |
2021-11-15 02:39:17 +0100 | <unit73e> | i'm builign a game engine so it could be useful |
2021-11-15 02:39:23 +0100 | <unit73e> | building* |
2021-11-15 02:39:41 +0100 | <unit73e> | seems ghc already has decent tools for it |
2021-11-15 02:40:07 +0100 | <unit73e> | for web servers it's not necessary on any framework. just add more metal |
2021-11-15 02:40:36 +0100 | pretty_dumm_guy | (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Quit: WeeChat 3.3) |
2021-11-15 02:41:23 +0100 | unit73e | (~emanuel@2001:818:e8dd:7c00:32b5:c2ff:fe6b:5291) (Quit: Leaving) |
2021-11-15 02:42:47 +0100 | unit73e | (~emanuel@2001:818:e8dd:7c00:32b5:c2ff:fe6b:5291) |
2021-11-15 02:44:06 +0100 | <energizer> | ...that is a recipe for spending a lot of money unnecessarily |
2021-11-15 02:44:46 +0100 | <energizer> | and getting poor latency no matter how much you spend |
2021-11-15 02:45:35 +0100 | <unit73e> | there are some optimizations that can be done with web servers but it's mostly in databases or making it more scalable |
2021-11-15 02:45:39 +0100 | <unit73e> | and that's rare |
2021-11-15 02:45:48 +0100 | <unit73e> | only giant companies do that |
2021-11-15 02:46:46 +0100 | <geekosaur> | trust me, getting your laziness/strictness wrong can cost you a *lot* |
2021-11-15 02:46:47 +0100 | <energizer> | that's really not right |
2021-11-15 02:47:11 +0100 | <energizer> | lots of people care about performance without being giant companies |
2021-11-15 02:47:19 +0100 | <unit73e> | laziness/stricness wrong does cost a lot |
2021-11-15 02:47:24 +0100 | <geekosaur> | and throwing money or hardware at the problem is not a fix, it's a bandage |
2021-11-15 02:47:37 +0100 | <unit73e> | yes and yet that's what medium companies do |
2021-11-15 02:47:44 +0100 | <unit73e> | because they don't understand the problem |
2021-11-15 02:47:54 +0100 | <unit73e> | I've seen it time and time again |
2021-11-15 02:48:14 +0100 | <geekosaur> | yes, I know. :( (I'm an ex-sysadmin, I've seen too much of this) |
2021-11-15 02:49:53 +0100 | ski | (~ski@remote12.chalmers.se) (Ping timeout: 264 seconds) |
2021-11-15 02:50:37 +0100 | <unit73e> | from my experience the biggest problem in webservers is bottlenecks and that's because of a mix of imutable design that popular languages are only picking up right now and mutable code that isn't really good for distributed systems ending up being the bottleneck |
2021-11-15 02:51:22 +0100 | <unit73e> | it's as if you'r seeing everyone slowly moving in the same micro-services without understanding why it matters |
2021-11-15 02:51:38 +0100 | <unit73e> | and failing at it btw |
2021-11-15 02:51:49 +0100 | <unit73e> | fun times |
2021-11-15 02:51:54 +0100 | <geekosaur> | yep |
2021-11-15 02:53:37 +0100 | davean | hides his 100kqps/core Haskell webservice |
2021-11-15 02:56:28 +0100 | brainfreeze | (~brainfree@2a03:1b20:4:f011::20d) (Quit: Leaving) |
2021-11-15 03:04:26 +0100 | zebrag | (~chris@user/zebrag) (Quit: Konversation terminated!) |
2021-11-15 03:11:16 +0100 | a6a45081-2b83 | (~aditya@2601:249:4300:1296:88ec:cc73:84d4:1507) |
2021-11-15 03:12:30 +0100 | <a6a45081-2b83> | @hoogle (a -> m b) -> Map k a -> m (Map k b) |
2021-11-15 03:12:31 +0100 | <lambdabot> | No results found |
2021-11-15 03:14:33 +0100 | <dsal> | @hoogle traverseWithKey |
2021-11-15 03:14:33 +0100 | <lambdabot> | Data.IntMap.Internal traverseWithKey :: Applicative t => (Key -> a -> t b) -> IntMap a -> t (IntMap b) |
2021-11-15 03:14:33 +0100 | <lambdabot> | Data.IntMap.Lazy traverseWithKey :: Applicative t => (Key -> a -> t b) -> IntMap a -> t (IntMap b) |
2021-11-15 03:14:33 +0100 | <lambdabot> | Data.IntMap.Strict traverseWithKey :: Applicative t => (Key -> a -> t b) -> IntMap a -> t (IntMap b) |
2021-11-15 03:15:09 +0100 | hiruji | (~hiruji@user/hiruji) (Read error: Connection reset by peer) |
2021-11-15 03:20:06 +0100 | pop3 | (~pop3@user/pop3) |
2021-11-15 03:20:17 +0100 | mud | (~mud@user/kadoban) |
2021-11-15 03:22:40 +0100 | lavaman | (~lavaman@98.38.249.169) |
2021-11-15 03:26:55 +0100 | machinedgod | (~machinedg@24.105.81.50) (Ping timeout: 268 seconds) |
2021-11-15 03:27:25 +0100 | lavaman | (~lavaman@98.38.249.169) (Ping timeout: 256 seconds) |
2021-11-15 03:32:43 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-11-15 03:33:25 +0100 | chizil[m] | (~chizilmat@2001:470:69fc:105::1:34ab) |
2021-11-15 03:35:39 +0100 | waleee | (~waleee@h-98-128-228-119.NA.cust.bahnhof.se) (Quit: WeeChat 3.3) |
2021-11-15 03:36:01 +0100 | jkaye | (~jkaye@2601:281:8300:7530:a5dd:80a5:c74b:fea5) |
2021-11-15 03:37:38 +0100 | slaydr | (~seriley@97-120-85-233.ptld.qwest.net) |
2021-11-15 03:37:59 +0100 | gg | (~gg@2a01:e0a:819:1510:9018:293a:5d7d:4597) (Remote host closed the connection) |
2021-11-15 03:39:56 +0100 | justsomeguy | (~justsomeg@user/justsomeguy) |
2021-11-15 03:45:06 +0100 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 245 seconds) |
2021-11-15 03:51:35 +0100 | xff0x | (~xff0x@2001:1a81:52ad:7900:8288:e51a:352c:7fbc) (Ping timeout: 268 seconds) |
2021-11-15 03:53:02 +0100 | xff0x | (~xff0x@2001:1a81:52ee:6600:5c66:cf47:7ae9:a061) |
2021-11-15 03:53:25 +0100 | perrierjouet | (~perrier-j@modemcable012.251-130-66.mc.videotron.ca) |
2021-11-15 03:53:29 +0100 | <perrierjouet> | hi all |
2021-11-15 03:53:42 +0100 | <perrierjouet> | is it normal few packages install take 4 GB ? |
2021-11-15 03:54:27 +0100 | <perrierjouet> | stack setup, stack install hakyll, already 4 gb install size |
2021-11-15 03:55:17 +0100 | <sm> | perrierjouet: 4 seems more than one GHC version and package set would normally take, but yes it's normal |
2021-11-15 03:55:19 +0100 | <geekosaur> | hakyll has a lot of dependencies, and the transitive dependency list is even larger |
2021-11-15 03:55:25 +0100 | <sm> | one package depends on a hundred others |
2021-11-15 03:55:41 +0100 | <sm> | stack-clean-old is a good tool for cleaning up |
2021-11-15 03:56:04 +0100 | <geekosaur> | and if you're using stack it may have installed a new ghc for you at the same time |
2021-11-15 03:56:55 +0100 | <perrierjouet> | I am on archlinux so I removed ghc from system installer before |
2021-11-15 03:58:12 +0100 | <perrierjouet> | will it be slow if I move my home direcotry to another pc ? and have .stack => /mnt/second-pc/homeX/.stack ? is it ok or haskell will be slow ? |
2021-11-15 03:59:20 +0100 | <geekosaur> | that may be worse than slow, it might break. stack and cabal are both pretty sensitive about their stores |
2021-11-15 03:59:47 +0100 | yauhsien | (~yauhsien@61-231-43-127.dynamic-ip.hinet.net) |
2021-11-15 04:00:07 +0100 | <geekosaur> | and especially if that's a remote mount, yes, things are likely to be slow |
2021-11-15 04:02:01 +0100 | <perrierjouet> | ok |
2021-11-15 04:02:14 +0100 | evan | (~evan@2600:1700:ba69:10:41e7:efbb:d2c9:20f) |
2021-11-15 04:02:20 +0100 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) |
2021-11-15 04:02:23 +0100 | evan | Guest8716 |
2021-11-15 04:03:22 +0100 | mbuf | (~Shakthi@223.184.58.239) |
2021-11-15 04:04:32 +0100 | yauhsien | (~yauhsien@61-231-43-127.dynamic-ip.hinet.net) (Ping timeout: 268 seconds) |
2021-11-15 04:04:44 +0100 | lemonsni- | (~lemonsnic@cpc159519-perr18-2-0-cust114.19-1.cable.virginm.net) (Quit: ZNC 1.8.2 - https://znc.in) |
2021-11-15 04:07:10 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 260 seconds) |
2021-11-15 04:09:59 +0100 | jkaye | (~jkaye@2601:281:8300:7530:a5dd:80a5:c74b:fea5) (Ping timeout: 264 seconds) |
2021-11-15 04:11:11 +0100 | Cajun | (~Cajun@user/cajun) |
2021-11-15 04:13:49 +0100 | finn_elija | (~finn_elij@user/finn-elija/x-0085643) |
2021-11-15 04:13:49 +0100 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija))) |
2021-11-15 04:13:49 +0100 | finn_elija | FinnElija |
2021-11-15 04:15:23 +0100 | ubert | (~Thunderbi@p548c9652.dip0.t-ipconnect.de) (Ping timeout: 264 seconds) |
2021-11-15 04:15:39 +0100 | lemonsnicks | (~lemonsnic@cpc159519-perr18-2-0-cust114.19-1.cable.virginm.net) |
2021-11-15 04:16:57 +0100 | dsamperi | (~dsamperi@2603-7000-3b42-5400-c006-e1aa-bb8d-1172.res6.spectrum.com) (Quit: Konversation terminated!) |
2021-11-15 04:17:47 +0100 | mimmy | (~mimmy@45.14.195.121) (Ping timeout: 264 seconds) |
2021-11-15 04:19:22 +0100 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
2021-11-15 04:19:22 +0100 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host) |
2021-11-15 04:19:22 +0100 | wroathe | (~wroathe@user/wroathe) |
2021-11-15 04:19:51 +0100 | fuzzypixelz_ | (~fuzzypixe@eth-west-pareq2-46-193-4-100.wb.wifirst.net) |
2021-11-15 04:20:58 +0100 | yauhsien | (~yauhsien@61-231-43-127.dynamic-ip.hinet.net) |
2021-11-15 04:23:39 +0100 | fuzzypixelz | (~fuzzypixe@tchebychev.ensimag.fr) (Ping timeout: 268 seconds) |
2021-11-15 04:23:49 +0100 | mimmy | (~mimmy@45.14.195.121) |
2021-11-15 04:24:16 +0100 | mvk | (~mvk@2607:fea8:5cc3:e900::df92) (Ping timeout: 245 seconds) |
2021-11-15 04:34:13 +0100 | alzgh | (~alzgh@user/alzgh) (Remote host closed the connection) |
2021-11-15 04:34:45 +0100 | hiruji | (~hiruji@user/hiruji) |
2021-11-15 04:36:06 +0100 | myShoggoth | (~myShoggot@97-120-85-195.ptld.qwest.net) (Ping timeout: 260 seconds) |
2021-11-15 04:37:49 +0100 | yauhsien | (~yauhsien@61-231-43-127.dynamic-ip.hinet.net) (Remote host closed the connection) |
2021-11-15 04:42:35 +0100 | Guest8716 | (~evan@2600:1700:ba69:10:41e7:efbb:d2c9:20f) (Ping timeout: 265 seconds) |
2021-11-15 04:43:21 +0100 | yauhsien | (~yauhsien@61-231-43-127.dynamic-ip.hinet.net) |
2021-11-15 04:45:25 +0100 | slaydr | (~seriley@97-120-85-233.ptld.qwest.net) (Remote host closed the connection) |
2021-11-15 04:45:37 +0100 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 256 seconds) |
2021-11-15 04:45:49 +0100 | bontaq | (~user@ool-45779fe5.dyn.optonline.net) (Remote host closed the connection) |
2021-11-15 04:48:09 +0100 | cjb35394 | (~cjbayliss@user/cjb) |
2021-11-15 04:48:19 +0100 | yauhsien | (~yauhsien@61-231-43-127.dynamic-ip.hinet.net) (Ping timeout: 268 seconds) |
2021-11-15 04:50:20 +0100 | cjb | (~cjbayliss@user/cjb) (Ping timeout: 260 seconds) |
2021-11-15 04:53:23 +0100 | myShoggoth | (~myShoggot@97-120-85-195.ptld.qwest.net) |
2021-11-15 04:53:43 +0100 | cjb35394 | cjb |
2021-11-15 04:58:35 +0100 | td_ | (~td@muedsl-82-207-238-006.citykom.de) (Ping timeout: 264 seconds) |
2021-11-15 04:59:57 +0100 | td_ | (~td@muedsl-82-207-238-041.citykom.de) |
2021-11-15 05:00:48 +0100 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) (Quit: Leaving) |
2021-11-15 05:06:16 +0100 | cjb | (~cjbayliss@user/cjb) () |
2021-11-15 05:11:36 +0100 | ec | (~ec@gateway/tor-sasl/ec) (Ping timeout: 276 seconds) |
2021-11-15 05:13:03 +0100 | vicfred | (~vicfred@user/vicfred) (Quit: Leaving) |
2021-11-15 05:15:55 +0100 | blackcap | (~blackcap@144.89-10-135.nextgentel.com) |
2021-11-15 05:17:40 +0100 | yauhsien | (~yauhsien@61-231-43-127.dynamic-ip.hinet.net) |
2021-11-15 05:19:11 +0100 | akspecs__ | (~akspecs@user/akspecs) (Ping timeout: 246 seconds) |
2021-11-15 05:19:35 +0100 | akspecs__ | (~akspecs@136-24-214-166.cab.webpass.net) |
2021-11-15 05:19:35 +0100 | akspecs__ | (~akspecs@136-24-214-166.cab.webpass.net) (Changing host) |
2021-11-15 05:19:35 +0100 | akspecs__ | (~akspecs@user/akspecs) |
2021-11-15 05:21:23 +0100 | ralu | (~ralu@static.211.245.203.116.clients.your-server.de) (Ping timeout: 264 seconds) |
2021-11-15 05:21:49 +0100 | glguy | (x@libera/staff/glguy) (Quit: Quit) |
2021-11-15 05:22:01 +0100 | glguy | (x@libera/staff/glguy) |
2021-11-15 05:22:14 +0100 | yauhsien | (~yauhsien@61-231-43-127.dynamic-ip.hinet.net) (Ping timeout: 268 seconds) |
2021-11-15 05:23:08 +0100 | <blackcap> | This sucks: http://termbin.com/dwhh |
2021-11-15 05:23:23 +0100 | <blackcap> | There are 65 instructions with more than 1 arity |
2021-11-15 05:31:26 +0100 | <blackcap> | .. and roughly 4k instructions total |
2021-11-15 05:32:11 +0100 | jbox | (~jbox@user/jbox) (Ping timeout: 264 seconds) |
2021-11-15 05:36:13 +0100 | a6a45081-2b83 | (~aditya@2601:249:4300:1296:88ec:cc73:84d4:1507) (Quit: Konversation terminated!) |
2021-11-15 05:38:06 +0100 | dajoer | (~david@user/gvx) |
2021-11-15 05:44:05 +0100 | Guest8716 | (~evan@2600:1700:ba69:10:41e7:efbb:d2c9:20f) |
2021-11-15 05:48:59 +0100 | Guest8716 | (~evan@2600:1700:ba69:10:41e7:efbb:d2c9:20f) (Ping timeout: 264 seconds) |
2021-11-15 05:54:46 +0100 | mimmy | (~mimmy@45.14.195.121) (Ping timeout: 256 seconds) |
2021-11-15 06:02:47 +0100 | <Axman6> | what's the problem? |
2021-11-15 06:03:23 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-11-15 06:04:28 +0100 | ec | (~ec@gateway/tor-sasl/ec) |
2021-11-15 06:04:47 +0100 | <Axman6> | is there not a way to abstract over the argument types? like adc :: (RegOrMem a, RegOrMem b) => a -> b -> ASM () |
2021-11-15 06:05:11 +0100 | <Axman6> | , maybe not |
2021-11-15 06:05:11 +0100 | <blackcap> | yes |
2021-11-15 06:06:01 +0100 | <Axman6> | at feels like some of this could be stored in a table |
2021-11-15 06:06:14 +0100 | <Axman6> | but... this is x86 right? x86 is gross :P |
2021-11-15 06:06:18 +0100 | <blackcap> | I'm sure I could use typeclasses in many cases, but there are exceptions to everything |
2021-11-15 06:07:12 +0100 | <blackcap> | yeah it's x86 |
2021-11-15 06:07:37 +0100 | sagax | (~sagax_nb@user/sagax) |
2021-11-15 06:07:50 +0100 | <blackcap> | and this gunk is generated from a table, I just want a nice dsl |
2021-11-15 06:07:55 +0100 | <Axman6> | it sort of looks like there's 10 things that need to be encoded for each instruction, which makes me feel like you could represent each instruction as a 10-tuple, and at least then it would be more compact |
2021-11-15 06:09:29 +0100 | Vajb | (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Ping timeout: 256 seconds) |
2021-11-15 06:09:41 +0100 | <Axman6> | data Needed a = N | Val a; adc_al_imm8 = (N,N,N,N,N, Val (opcode 0x14), N, Val (\a b -> disp_imm arg1 a), N) |
2021-11-15 06:09:56 +0100 | <Axman6> | I guess opcode is needed for all instructions |
2021-11-15 06:10:14 +0100 | <Axman6> | omg, this file is enormous |
2021-11-15 06:10:19 +0100 | Vajb | (~Vajb@2001:999:85:46d7:d6a4:d6c1:950b:ce99) |
2021-11-15 06:11:00 +0100 | <blackcap> | It's only like 1/3rd of it- it got cut off |
2021-11-15 06:11:23 +0100 | <Axman6> | like, those comments are nice, but they don't tell the compiler anything useful - you should attempt to make the compiler work for you |
2021-11-15 06:12:17 +0100 | slice | (~slice@user/slice) (Quit: zzz) |
2021-11-15 06:12:27 +0100 | <blackcap> | I guess I could have a 10-tuple and use template haskell to generate the code |
2021-11-15 06:13:40 +0100 | <blackcap> | but I still need to generate the functions, preferably with comments, and it doesn't solve the argument problem |
2021-11-15 06:16:06 +0100 | <aegon> | when sending strings over the network (ascii only so no unicode to worry about, non user generated) is it normal to append the null byte at the end cstyle or leave that up to the consumer to figure out |
2021-11-15 06:17:22 +0100 | xkuru | (~xkuru@user/xkuru) (Read error: Connection reset by peer) |
2021-11-15 06:17:28 +0100 | <aegon> | i'm thinking non-null terminated over the wire |
2021-11-15 06:17:48 +0100 | <Axman6> | your choises are something like netstrings, which send their length and then content or null terminated. I would usually prefer the former |
2021-11-15 06:18:12 +0100 | <Axman6> | choices* |
2021-11-15 06:19:15 +0100 | <aegon> | yeah, i can rely on zeromq's frames to deal with lenght. i just need to double check that the way i'm serializing from ByteString.Char8 is not appending a null, digging into docs |
2021-11-15 06:19:43 +0100 | <aegon> | wanted to make sure i wasn't commiting sacrilige by not appending a null |
2021-11-15 06:21:43 +0100 | <Axman6> | nah |
2021-11-15 06:24:31 +0100 | myShoggoth | (~myShoggot@97-120-85-195.ptld.qwest.net) (Ping timeout: 268 seconds) |
2021-11-15 06:26:07 +0100 | lavaman | (~lavaman@98.38.249.169) |
2021-11-15 06:27:21 +0100 | <aegon> | it doesn't look like ByteString.Char8 pack appends a null but it might depend on whether String is null terminated or not im having trouble finding packChars definition |
2021-11-15 06:28:54 +0100 | deadmarshal | (~deadmarsh@95.38.116.242) |
2021-11-15 06:30:26 +0100 | <aegon> | aand, doesn't look like it is nor are Strings null terminated, i can't find the docs on it but from playing around in ghci it looks like a string has no special null things implicit |
2021-11-15 06:30:26 +0100 | Vajb | (~Vajb@2001:999:85:46d7:d6a4:d6c1:950b:ce99) (Read error: Connection reset by peer) |
2021-11-15 06:30:54 +0100 | lavaman | (~lavaman@98.38.249.169) (Ping timeout: 260 seconds) |
2021-11-15 06:32:02 +0100 | img | (~img@user/img) (Quit: ZNC 1.8.2 - https://znc.in) |
2021-11-15 06:32:41 +0100 | <aegon> | i should have just read ByteStrings docs instead of deep diving, its pretty clear on all this :X |
2021-11-15 06:33:16 +0100 | <aegon> | heh, its also late, that could hardly be called a 'deep dive' oy. Thanks for the sanity check Axman6 |
2021-11-15 06:33:30 +0100 | Vajb | (~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) |
2021-11-15 06:33:44 +0100 | slice | (~slice@user/slice) |
2021-11-15 06:33:46 +0100 | deadmarshal | (~deadmarsh@95.38.116.242) (Ping timeout: 268 seconds) |
2021-11-15 06:34:28 +0100 | img | (~img@user/img) |
2021-11-15 06:36:15 +0100 | slice | (~slice@user/slice) (Client Quit) |
2021-11-15 06:37:36 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 245 seconds) |
2021-11-15 06:49:18 +0100 | <Axman6> | blackcap: I don't suppose there is a machine readable definition of x86 instructions you could generate this Haskell from is there? |
2021-11-15 06:51:24 +0100 | <blackcap> | It's generated from a csv file: https://github.com/StanfordPL/x64asm |
2021-11-15 06:51:27 +0100 | <blackcap> | Axman6: |
2021-11-15 06:53:55 +0100 | <Axman6> | all good then! what's to worry about? :P |
2021-11-15 06:56:21 +0100 | <blackcap> | well, I just hate that I have to write `adc_al_imm8 foo bar` |
2021-11-15 06:57:46 +0100 | myShoggoth | (~myShoggot@97-120-85-195.ptld.qwest.net) |
2021-11-15 06:57:56 +0100 | ralu | (~ralu@static.211.245.203.116.clients.your-server.de) |
2021-11-15 06:58:11 +0100 | yaroot | (~yaroot@47.70.30.125.dy.iij4u.or.jp) (Quit: The Lounge - https://thelounge.chat) |
2021-11-15 06:58:57 +0100 | yaroot | (~yaroot@47.70.30.125.dy.iij4u.or.jp) |
2021-11-15 07:01:07 +0100 | Guest80 | (~Guest80@pd9ed7c28.dip0.t-ipconnect.de) |
2021-11-15 07:01:12 +0100 | slice | (~slice@user/slice) |
2021-11-15 07:02:38 +0100 | yauhsien | (~yauhsien@61-231-43-127.dynamic-ip.hinet.net) |
2021-11-15 07:03:00 +0100 | <blackcap> | it's not always the case that an instruction supports every kind of, say, register |
2021-11-15 07:03:12 +0100 | <blackcap> | nor that every variant has the same arity |
2021-11-15 07:04:35 +0100 | myShoggoth | (~myShoggot@97-120-85-195.ptld.qwest.net) (Ping timeout: 264 seconds) |
2021-11-15 07:07:55 +0100 | <opqdonut> | could you just have every instruction be a type class, with instances for tuples of arguments it supports? |
2021-11-15 07:07:58 +0100 | <Axman6> | you could have class Add a b where add :: a -> b -> ASM (), and then make instances for all the legal ones which use those definitions - at least then you can write add Al (Imm8 0x7) |
2021-11-15 07:08:27 +0100 | <opqdonut> | `class Add args where add :: args -> ASM ()` to support variable arities |
2021-11-15 07:08:48 +0100 | <opqdonut> | and then `add (Al,Imm8 0x7)` or so |
2021-11-15 07:09:07 +0100 | wei2912 | (~wei2912@138.75.71.147) |
2021-11-15 07:13:27 +0100 | <blackcap> | also I could do `class Add arg r where add :: arg -> r` and write instances where `r` is `(->)` similar to printf |
2021-11-15 07:14:09 +0100 | <blackcap> | I'm worried about type inference and speed though |
2021-11-15 07:14:22 +0100 | <blackcap> | there are roughly 4k instructions |
2021-11-15 07:16:42 +0100 | tzh | (~tzh@c-24-21-73-154.hsd1.or.comcast.net) (Quit: zzz) |
2021-11-15 07:18:04 +0100 | <opqdonut> | you could group the instructions into classes by similar signatures |
2021-11-15 07:18:38 +0100 | <opqdonut> | the only way to know if there's a performance issue is to measure, I wouldn't be worried since each class is so small (in terms of methods & number of instances) |
2021-11-15 07:19:00 +0100 | ec | (~ec@gateway/tor-sasl/ec) (Ping timeout: 276 seconds) |
2021-11-15 07:26:47 +0100 | img | (~img@user/img) (Quit: ZNC 1.8.2 - https://znc.in) |
2021-11-15 07:27:43 +0100 | mtjm | (~mutantmel@2604:a880:2:d0::208b:d001) (Remote host closed the connection) |
2021-11-15 07:28:02 +0100 | mtjm | (~mutantmel@2604:a880:2:d0::208b:d001) |
2021-11-15 07:30:30 +0100 | unit73e | (~emanuel@2001:818:e8dd:7c00:32b5:c2ff:fe6b:5291) (Ping timeout: 268 seconds) |
2021-11-15 07:34:09 +0100 | slowButPresent | (~slowButPr@user/slowbutpresent) (Quit: leaving) |
2021-11-15 07:34:20 +0100 | aegon | (~mike@174.127.249.180) (Remote host closed the connection) |
2021-11-15 07:35:07 +0100 | img | (~img@user/img) |
2021-11-15 07:43:37 +0100 | <Axman6> | depends on what sort of performance you care about too - compile time or runtime. I would guess in this case probably compile time might actually matter more |
2021-11-15 07:46:21 +0100 | takuan | (~takuan@178-116-218-225.access.telenet.be) |
2021-11-15 07:47:30 +0100 | deadmarshal | (~deadmarsh@95.38.116.242) |
2021-11-15 07:48:32 +0100 | img | (~img@user/img) (Quit: ZNC 1.8.2 - https://znc.in) |
2021-11-15 07:49:13 +0100 | img | (~img@user/img) |
2021-11-15 07:50:14 +0100 | motherfsck | (~motherfsc@user/motherfsck) (Ping timeout: 268 seconds) |
2021-11-15 07:54:36 +0100 | mcgroin | (~mcgroin@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) |
2021-11-15 07:55:24 +0100 | img | (~img@user/img) (Quit: ZNC 1.8.2 - https://znc.in) |
2021-11-15 07:55:59 +0100 | <blackcap> | I hope compile-time gets better once it's a compiled library |
2021-11-15 07:58:39 +0100 | eL_Bart0 | (eL_Bart0@dietunichtguten.org) (*.net *.split) |
2021-11-15 07:58:39 +0100 | Raito_Bezarius | (~Raito@wireguard/tunneler/raito-bezarius) (*.net *.split) |
2021-11-15 07:58:39 +0100 | oxytocat | (~alloca@user/suppi) (*.net *.split) |
2021-11-15 07:58:39 +0100 | Trattue | (~Trattue@152.70.182.158) (*.net *.split) |
2021-11-15 07:58:39 +0100 | Ferdirand | (~somebody@2001:4c78:2012:5000::2) (*.net *.split) |
2021-11-15 07:58:39 +0100 | HurdyGurdyBurdy | (~HurdyGurd@user/hurdygurdyburdy) (*.net *.split) |
2021-11-15 07:58:39 +0100 | ringo__ | (~ringo@157.230.117.128) (*.net *.split) |
2021-11-15 07:58:39 +0100 | AWizzArd | (~code@gehrels.uberspace.de) (*.net *.split) |
2021-11-15 07:58:39 +0100 | ouroboros | (~ouroboros@user/ouroboros) (*.net *.split) |
2021-11-15 07:58:39 +0100 | liskin | (~liskin@xmonad/liskin) (*.net *.split) |
2021-11-15 07:58:39 +0100 | asm | (~alexander@user/asm) (*.net *.split) |
2021-11-15 07:58:39 +0100 | samebchase | (~thelounge@51.15.68.182) (*.net *.split) |
2021-11-15 07:58:39 +0100 | lambdabot | (~lambdabot@haskell/bot/lambdabot) (*.net *.split) |
2021-11-15 07:58:39 +0100 | dtman34 | (~dtman34@c-73-62-246-247.hsd1.mn.comcast.net) (*.net *.split) |
2021-11-15 07:58:45 +0100 | AWizzArd | (~code@gehrels.uberspace.de) |
2021-11-15 07:58:47 +0100 | Ferdirand | (~somebody@2001:4c78:2012:5000::2) |
2021-11-15 07:58:52 +0100 | lambdabot | (~lambdabot@silicon.int-e.eu) |
2021-11-15 07:58:56 +0100 | samebchase | (~thelounge@51.15.68.182) |
2021-11-15 07:59:01 +0100 | HurdyGurdyBurdy | (~HurdyGurd@user/hurdygurdyburdy) |
2021-11-15 07:59:02 +0100 | asm | (~alexander@burner.asm89.io) |
2021-11-15 07:59:06 +0100 | lambdabot | (~lambdabot@silicon.int-e.eu) (Changing host) |
2021-11-15 07:59:06 +0100 | lambdabot | (~lambdabot@haskell/bot/lambdabot) |
2021-11-15 07:59:08 +0100 | eL_Bart0 | (eL_Bart0@dietunichtguten.org) |
2021-11-15 07:59:11 +0100 | oxytocat | (~alloca@2a03:4000:f:7ca:7407:d1ff:fe34:8cd0) |
2021-11-15 07:59:12 +0100 | liskin | (~liskin@ackle.nomi.cz) |
2021-11-15 07:59:16 +0100 | oxytocat | (~alloca@2a03:4000:f:7ca:7407:d1ff:fe34:8cd0) (Signing in (oxytocat)) |
2021-11-15 07:59:16 +0100 | oxytocat | (~alloca@user/suppi) |
2021-11-15 07:59:23 +0100 | <blackcap> | run-time doesn't matter terribly much, `ASM` here is just `Accum (Endo [Byte])` |
2021-11-15 07:59:24 +0100 | liskin | (~liskin@ackle.nomi.cz) (Signing in (liskin)) |
2021-11-15 07:59:24 +0100 | liskin | (~liskin@xmonad/liskin) |
2021-11-15 07:59:33 +0100 | Raito_Bezarius | (~Raito@2a01:e0a:5f9:9681:1c66:fc75:c47c:31bc) |
2021-11-15 07:59:41 +0100 | ringo__ | (~ringo@157.230.117.128) |
2021-11-15 07:59:43 +0100 | dtman34 | (~dtman34@c-73-62-246-247.hsd1.mn.comcast.net) |
2021-11-15 07:59:55 +0100 | img | (~img@user/img) |
2021-11-15 08:00:41 +0100 | ouroboros | (~ouroboros@user/ouroboros) |
2021-11-15 08:02:16 +0100 | pavonia | (~user@user/siracusa) (Read error: Connection reset by peer) |
2021-11-15 08:02:41 +0100 | pavonia | (~user@user/siracusa) |
2021-11-15 08:02:41 +0100 | wroathe | (~wroathe@user/wroathe) (Ping timeout: 265 seconds) |
2021-11-15 08:02:52 +0100 | <Axman6> | have you considered using Accum Builder? |
2021-11-15 08:03:46 +0100 | <Axman6> | Endo [Byte] is, like, super wasteful |
2021-11-15 08:04:14 +0100 | yauhsien | (~yauhsien@61-231-43-127.dynamic-ip.hinet.net) (Ping timeout: 260 seconds) |
2021-11-15 08:04:22 +0100 | martin02 | (~silas@2001:4ca0:0:fe00:0:5efe:a96:1bc1) (*.net *.split) |
2021-11-15 08:04:22 +0100 | mjacob | (~mjacob@adrastea.uberspace.de) (*.net *.split) |
2021-11-15 08:04:22 +0100 | Ranhir | (~Ranhir@157.97.53.139) (*.net *.split) |
2021-11-15 08:04:22 +0100 | cawfee | (~root@2406:3003:2077:2758::babe) (*.net *.split) |
2021-11-15 08:04:22 +0100 | vjoki | (~vjoki@2a00:d880:3:1::fea1:9ae) (*.net *.split) |
2021-11-15 08:04:22 +0100 | Hafydd | (~Hafydd@user/hafydd) (*.net *.split) |
2021-11-15 08:04:22 +0100 | sajith | (~sajith@user/sajith) (*.net *.split) |
2021-11-15 08:04:22 +0100 | derelict | (derelict@user/derelict) (*.net *.split) |
2021-11-15 08:04:22 +0100 | earthy | (~arthurvl@2001:984:275b:1:ba27:ebff:fea0:40b0) (*.net *.split) |
2021-11-15 08:04:22 +0100 | averell | (~averell@user/averell) (*.net *.split) |
2021-11-15 08:04:22 +0100 | hays | (rootvegeta@fsf/member/hays) (*.net *.split) |
2021-11-15 08:04:22 +0100 | landonf | (landonf@mac68k.info) (*.net *.split) |
2021-11-15 08:04:22 +0100 | catern | (~sbaugh@2604:2000:8fc0:b:a9c7:866a:bf36:3407) (*.net *.split) |
2021-11-15 08:04:22 +0100 | Flow | (~none@gentoo/developer/flow) (*.net *.split) |
2021-11-15 08:04:22 +0100 | welterde | (welterde@thinkbase.srv.welterde.de) (*.net *.split) |
2021-11-15 08:04:34 +0100 | mjacob | (~mjacob@adrastea.uberspace.de) |
2021-11-15 08:04:34 +0100 | hays | (rootvegeta@fsf/member/hays) |
2021-11-15 08:04:37 +0100 | landonf | (landonf@mac68k.info) |
2021-11-15 08:04:38 +0100 | averell | (~averell@user/averell) |
2021-11-15 08:04:41 +0100 | cawfee | (~root@2406:3003:2077:2758::babe) |
2021-11-15 08:04:41 +0100 | <Axman6> | like, each Byte would take up...like 5 words in memory, at least |
2021-11-15 08:04:42 +0100 | vjoki | (~vjoki@2a00:d880:3:1::fea1:9ae) |
2021-11-15 08:04:50 +0100 | Ranhir | (~Ranhir@157.97.53.139) |
2021-11-15 08:04:54 +0100 | sajith_ | (~sajith@user/sajith) |
2021-11-15 08:04:54 +0100 | earthy | (~arthurvl@2001:984:275b:1:ba27:ebff:fea0:40b0) |
2021-11-15 08:04:54 +0100 | Hafydd | (~Hafydd@user/hafydd) |
2021-11-15 08:04:57 +0100 | derelict | (~derelict@user/derelict) |
2021-11-15 08:05:01 +0100 | martin02 | (~silas@141.84.69.76) |
2021-11-15 08:05:03 +0100 | Flow | (~none@gentoo/developer/flow) |
2021-11-15 08:05:03 +0100 | welterde | (welterde@thinkbase.srv.welterde.de) |
2021-11-15 08:05:04 +0100 | <blackcap> | yeah, I'm defenitly doing that eventually |
2021-11-15 08:05:07 +0100 | catern | (~sbaugh@2604:2000:8fc0:b:a9c7:866a:bf36:3407) |
2021-11-15 08:07:57 +0100 | michalz | (~michalz@185.246.204.57) |
2021-11-15 08:11:06 +0100 | <Axman6> | though I'm also not sure how efficient Builder is when building one byte at a time, which it looks like this probably does. |
2021-11-15 08:16:46 +0100 | Sgeo | (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
2021-11-15 08:17:32 +0100 | _ht | (~quassel@82-169-194-8.biz.kpn.net) |
2021-11-15 08:18:26 +0100 | sagax | (~sagax_nb@user/sagax) (Read error: Connection reset by peer) |
2021-11-15 08:20:19 +0100 | Guest8716 | (~evan@2600:1700:ba69:10:41e7:efbb:d2c9:20f) |
2021-11-15 08:21:24 +0100 | <blackcap> | probably better than a linked list |
2021-11-15 08:25:14 +0100 | Guest8716 | (~evan@2600:1700:ba69:10:41e7:efbb:d2c9:20f) (Ping timeout: 265 seconds) |
2021-11-15 08:33:54 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-11-15 08:34:13 +0100 | <blackcap> | typeclasses hardly affected compile-time at all! |
2021-11-15 08:34:43 +0100 | sagax | (~sagax_nb@user/sagax) |
2021-11-15 08:35:28 +0100 | <blackcap> | I have had bad experiences with typeclasses in the past: https://github.com/BlackCapCoder/oeis/blob/master/src/OEIS/Part2.hs |
2021-11-15 08:35:47 +0100 | <blackcap> | but I guess they're fine it there aren't too many instances? |
2021-11-15 08:36:21 +0100 | chomwitt | (~chomwitt@2a02:587:dc12:3f00:12c3:7bff:fe6d:d374) |
2021-11-15 08:47:32 +0100 | lavaman | (~lavaman@98.38.249.169) |
2021-11-15 08:48:36 +0100 | <tomsmeding> | that feels like an uncommon amount of typeclass instances in one module :p |
2021-11-15 08:48:49 +0100 | deadmarshal | (~deadmarsh@95.38.116.242) (Ping timeout: 268 seconds) |
2021-11-15 08:48:52 +0100 | shriekingnoise | (~shrieking@186.137.144.80) (Quit: Quit) |
2021-11-15 08:50:34 +0100 | chele | (~chele@user/chele) |
2021-11-15 08:50:52 +0100 | dsrt^ | (~dsrt@h50.174.139.63.static.ip.windstream.net) (Remote host closed the connection) |
2021-11-15 08:52:01 +0100 | deadmarshal | (~deadmarsh@95.38.116.242) |
2021-11-15 08:53:05 +0100 | yauhsien | (~yauhsien@61-231-43-127.dynamic-ip.hinet.net) |
2021-11-15 08:53:06 +0100 | <blackcap> | That's only "Part2"; I had to arbitrarily divide them into separate files to keep compilation time down during development |
2021-11-15 08:58:29 +0100 | <tomsmeding> | blackcap: yeah my point was that the fact that your OEIS code compiled slowly doesn't mean that type classes in general are slow; the more likely culprit is the sheer number of instances in that module :) |
2021-11-15 08:58:59 +0100 | <tomsmeding> | hence, what you said |
2021-11-15 08:59:05 +0100 | lortabac | (~lortabac@2a01:e0a:541:b8f0:4f7e:a333:a04f:8257) |
2021-11-15 09:01:00 +0100 | <ozzloy_> | https://paste.tomsmeding.com/owRGSS8q lines 26 through 48 are painful. i think there's a better way to do this, but it's not occurring to me |
2021-11-15 09:01:21 +0100 | <blackcap> | I have 4k instances in one file for this assembler, though, and it compiles in about a second |
2021-11-15 09:01:25 +0100 | acidjnk_new | (~acidjnk@p200300d0c7437376bc7d0da008ce8c42.dip0.t-ipconnect.de) |
2021-11-15 09:03:08 +0100 | Guest8716 | (~evan@2600:1700:ba69:10:41e7:efbb:d2c9:20f) |
2021-11-15 09:04:31 +0100 | _ht | (~quassel@82-169-194-8.biz.kpn.net) (Remote host closed the connection) |
2021-11-15 09:04:35 +0100 | <blackcap> | ozzloy_: how about `foldMap \a -> (Min a, Max a)` |
2021-11-15 09:05:17 +0100 | deadmarshal | (~deadmarsh@95.38.116.242) (Ping timeout: 250 seconds) |
2021-11-15 09:06:12 +0100 | <ozzloy_> | blackcap, thanks! |
2021-11-15 09:06:19 +0100 | slice | (~slice@user/slice) (Quit: cya) |
2021-11-15 09:08:15 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds) |
2021-11-15 09:09:48 +0100 | deadmarshal | (~deadmarsh@95.38.116.242) |
2021-11-15 09:10:27 +0100 | <ozzloy_> | i'm not sure how foldMap works |
2021-11-15 09:11:28 +0100 | dhouthoo | (~dhouthoo@178-117-36-167.access.telenet.be) |
2021-11-15 09:11:50 +0100 | jonathanx | (~jonathan@dyn-8-sc.cdg.chalmers.se) |
2021-11-15 09:12:24 +0100 | <ozzloy_> | this notation is confusing. could you tell me what i'm missing here? that looks like foldMap takes a function that takes one argument and returns a tuple that consists of the minimum of that argument and the maximum of that argument |
2021-11-15 09:12:35 +0100 | <ozzloy_> | i'm confused by it, anyways |
2021-11-15 09:13:32 +0100 | <ozzloy_> | what is "Min"? i'm finding results for "min" but not "Min" |
2021-11-15 09:13:37 +0100 | <blackcap> | Min and Max are from Data.Semigroup |
2021-11-15 09:14:04 +0100 | <ozzloy_> | thanks |
2021-11-15 09:14:21 +0100 | <blackcap> | foldMap is folding the list using (<>) |
2021-11-15 09:14:57 +0100 | <ozzloy_> | i read that. i'm not sure how to search for that |
2021-11-15 09:15:12 +0100 | <ozzloy_> | thanks |
2021-11-15 09:15:19 +0100 | <blackcap> | which is going to be `(<>) = min` and `(<>) = max` for Min and Max |
2021-11-15 09:16:08 +0100 | <ozzloy_> | i ... see? |
2021-11-15 09:16:59 +0100 | <blackcap> | .. and the tuple is because the Semigroup instance for (,) is `instance (Semigroup a, Semigroup b) => Semigroup (a,b)` |
2021-11-15 09:17:37 +0100 | <blackcap> | so fold once, but do both min and max in one go |
2021-11-15 09:18:02 +0100 | <c_wraith> | That's not going to have great performance characteristics, sadly |
2021-11-15 09:18:19 +0100 | <ozzloy_> | blackcap, thanks for help |
2021-11-15 09:18:49 +0100 | <blackcap> | why not, because of the tuple? |
2021-11-15 09:19:13 +0100 | <blackcap> | Min and Max are newtypes, so those should be free |
2021-11-15 09:19:25 +0100 | <c_wraith> | you need to be using foldMap' at the very least |
2021-11-15 09:19:43 +0100 | max22- | (~maxime@2a01cb08833598003ad2294d5328f338.ipv6.abo.wanadoo.fr) |
2021-11-15 09:19:43 +0100 | <ozzloy_> | i'll keep that in mind for later. at the moment, i'm just learning how to express ideas in haskell |
2021-11-15 09:19:55 +0100 | <ozzloy_> | and what ideas haskell has to express |
2021-11-15 09:20:00 +0100 | <c_wraith> | looks like your function is going to need to force evaluation of its arguments before generating its (,) constructor, too |
2021-11-15 09:21:38 +0100 | <c_wraith> | which is why things like this typically use a strict pair - it's ridiculously painful to get evaluation of the components of a tuple with even foldMap' |
2021-11-15 09:21:40 +0100 | gehmehgeh | (~user@user/gehmehgeh) |
2021-11-15 09:22:55 +0100 | <ozzloy_> | so ... i have ideas that i already know and would like to express in haskell, but don't know how. and that feels nearer to me than learning these new-to-me ideas. |
2021-11-15 09:23:49 +0100 | <c_wraith> | :t foldMap' (\a -> a `seq` (Min a, Max a)) -- I guess this is strict enough to not leak, at least with types that must be fully evaluated to determine the min and max |
2021-11-15 09:23:50 +0100 | <lambdabot> | (Foldable t, Ord a, Bounded a) => t a -> (Min a, Max a) |
2021-11-15 09:24:19 +0100 | <c_wraith> | Oh, nope. It's not. |
2021-11-15 09:24:24 +0100 | <c_wraith> | You really do need a strict pair. |
2021-11-15 09:24:38 +0100 | <ozzloy_> | i would like to do something like https://paste.tomsmeding.com/N2Eu0Pur |
2021-11-15 09:25:41 +0100 | <ozzloy_> | i know that's incorrect. but the idea i'd like to express is to give a name to the smaller of a and b, and to the larger of a and b, and only compare a and b once to do that |
2021-11-15 09:25:43 +0100 | <c_wraith> | You're not really following the spirit of the directions you've got there. |
2021-11-15 09:25:50 +0100 | <ozzloy_> | i'm not? |
2021-11-15 09:26:10 +0100 | <ozzloy_> | oh, you mean line 31? |
2021-11-15 09:26:15 +0100 | <ozzloy_> | foldr? |
2021-11-15 09:26:30 +0100 | <c_wraith> | They strongly suggest you should be using compare (or < and >) explicitly, so you can control exactly how many times it's called |
2021-11-15 09:26:37 +0100 | deadmarshal | (~deadmarsh@95.38.116.242) (Ping timeout: 265 seconds) |
2021-11-15 09:27:15 +0100 | <c_wraith> | instead of calling sort, min, and max |
2021-11-15 09:27:16 +0100 | <ozzloy_> | yeah, i get that. sorry, i wrote an implementation that gives the correct answer, and now i'm trying to write code that does it in the right way |
2021-11-15 09:27:35 +0100 | <c_wraith> | eh. the right way is to forget the problem spec. :) |
2021-11-15 09:27:41 +0100 | <ozzloy_> | heh |
2021-11-15 09:27:56 +0100 | <c_wraith> | this is best expressed as a foldl', actually |
2021-11-15 09:29:35 +0100 | <ozzloy_> | how do i name the smaller of 2 variables "smaller" and the larger "larger" using only one comparison? |
2021-11-15 09:30:02 +0100 | yauhsien | (~yauhsien@61-231-43-127.dynamic-ip.hinet.net) (Remote host closed the connection) |
2021-11-15 09:30:28 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-11-15 09:30:30 +0100 | <c_wraith> | let (smaller, larger) = if (x < y) then (x, y) else (y, x) |
2021-11-15 09:30:38 +0100 | <ozzloy_> | ah, thanks |
2021-11-15 09:32:48 +0100 | <ozzloy_> | does that seem like the way someone who was new to haskell would follow these instructions? |
2021-11-15 09:33:22 +0100 | <c_wraith> | maybe, if they were comfortable with pattern matching |
2021-11-15 09:33:34 +0100 | <blackcap> | http://termbin.com/ucbo |
2021-11-15 09:33:36 +0100 | <ozzloy_> | i'm thinking that lines up pretty closely with "process the list of numbers in pairs first with each other" |
2021-11-15 09:34:00 +0100 | <ozzloy_> | c_wraith, well initially i had a giant nested if-else |
2021-11-15 09:34:25 +0100 | <ozzloy_> | c_wraith, is that beginner-y enough for you? |
2021-11-15 09:34:27 +0100 | <c_wraith> | You don't need that, if you take advantage of a let or where to name values |
2021-11-15 09:35:26 +0100 | yauhsien | (~yauhsien@61-231-43-127.dynamic-ip.hinet.net) |
2021-11-15 09:36:47 +0100 | <ozzloy_> | blackcap, lol, thanks. i will turn that in and claim that i wrote it |
2021-11-15 09:37:08 +0100 | <blackcap> | if you use explicit recursion you can avoid the `Tup` wrapper |
2021-11-15 09:38:27 +0100 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
2021-11-15 09:38:58 +0100 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:185c:f2cc:27d3:da20) (Remote host closed the connection) |
2021-11-15 09:39:57 +0100 | yauhsien | (~yauhsien@61-231-43-127.dynamic-ip.hinet.net) (Ping timeout: 250 seconds) |
2021-11-15 09:40:19 +0100 | Guest80 | (~Guest80@pd9ed7c28.dip0.t-ipconnect.de) (Ping timeout: 256 seconds) |
2021-11-15 09:41:34 +0100 | <blackcap> | if you have a list of native types like Int, import GHC.Exts, get rid of the `I#` wrapper and use `geInt#` |
2021-11-15 09:42:07 +0100 | <ozzloy_> | ok, so now i have this https://paste.tomsmeding.com/p5FHTbJV which i think does 3 comparisons for 2 numbers |
2021-11-15 09:42:25 +0100 | zava | (~zava@ip5f5bdf0f.dynamic.kabel-deutschland.de) |
2021-11-15 09:42:35 +0100 | <ozzloy_> | now i need to consume the initial list 2 elements at a time |
2021-11-15 09:42:54 +0100 | zava | (~zava@ip5f5bdf0f.dynamic.kabel-deutschland.de) (Client Quit) |
2021-11-15 09:43:10 +0100 | zava | (~zava@ip5f5bdf0f.dynamic.kabel-deutschland.de) |
2021-11-15 09:43:41 +0100 | neurocyte0132889 | (~neurocyte@94.16.67.223) |
2021-11-15 09:43:42 +0100 | neurocyte0132889 | (~neurocyte@94.16.67.223) (Changing host) |
2021-11-15 09:43:42 +0100 | neurocyte0132889 | (~neurocyte@user/neurocyte) |
2021-11-15 09:47:34 +0100 | fuzzypixelz_ | (~fuzzypixe@eth-west-pareq2-46-193-4-100.wb.wifirst.net) (Ping timeout: 265 seconds) |
2021-11-15 09:50:33 +0100 | <ozzloy_> | thanks again blackcap and c_wraith. i'm off to bed. will return to this later |
2021-11-15 09:56:07 +0100 | neurocyte0132889 | (~neurocyte@user/neurocyte) (Read error: Connection reset by peer) |
2021-11-15 09:56:47 +0100 | neurocyte0132889 | (~neurocyte@94.16.67.223) |
2021-11-15 09:56:47 +0100 | neurocyte0132889 | (~neurocyte@94.16.67.223) (Changing host) |
2021-11-15 09:56:47 +0100 | neurocyte0132889 | (~neurocyte@user/neurocyte) |
2021-11-15 10:00:09 +0100 | conphiz[m] | (~conphizma@2001:470:69fc:105::c052) (Quit: You have been kicked for being idle) |
2021-11-15 10:04:39 +0100 | acidjnk_new | (~acidjnk@p200300d0c7437376bc7d0da008ce8c42.dip0.t-ipconnect.de) (Ping timeout: 250 seconds) |
2021-11-15 10:07:36 +0100 | bitmapper | (uid464869@lymington.irccloud.com) (Quit: Connection closed for inactivity) |
2021-11-15 10:10:01 +0100 | <blackcap> | If the number of elements is known in advance, you can find the answer probabilistically by checking at most half: http://termbin.com/7ssg |
2021-11-15 10:10:32 +0100 | <blackcap> | If the number of elements is infinite, use brents algorithm to find a cycle first: http://termbin.com/1hil |
2021-11-15 10:11:36 +0100 | deadmarshal | (~deadmarsh@95.38.116.242) |
2021-11-15 10:13:10 +0100 | Guest8716 | (~evan@2600:1700:ba69:10:41e7:efbb:d2c9:20f) (Quit: WeeChat 3.3) |
2021-11-15 10:17:33 +0100 | geekosaur | (~geekosaur@xmonad/geekosaur) (Killed (NickServ (GHOST command used by allbery_b))) |
2021-11-15 10:17:33 +0100 | allbery_b | (~geekosaur@xmonad/geekosaur) |
2021-11-15 10:17:36 +0100 | allbery_b | geekosaur |
2021-11-15 10:18:19 +0100 | neurocyte0132889 | (~neurocyte@user/neurocyte) (Quit: The Lounge - https://thelounge.chat) |
2021-11-15 10:18:51 +0100 | cosimone | (~user@2001:b07:ae5:db26:a7aa:8027:6b4e:2fb3) |
2021-11-15 10:19:39 +0100 | Pickchea | (~private@user/pickchea) |
2021-11-15 10:19:42 +0100 | chomwitt | (~chomwitt@2a02:587:dc12:3f00:12c3:7bff:fe6d:d374) (Read error: Connection reset by peer) |
2021-11-15 10:20:01 +0100 | chomwitt | (~chomwitt@2a02:587:dc12:3f00:12c3:7bff:fe6d:d374) |
2021-11-15 10:20:56 +0100 | mastarija | (~mastarija@2a05:4f46:e06:ff00:dd0f:baa7:ff4f:4d80) |
2021-11-15 10:29:54 +0100 | ubert | (~Thunderbi@p200300ecdf0ba27448631365ce659eb5.dip0.t-ipconnect.de) |
2021-11-15 10:39:45 +0100 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:7483:71c5:e9d:14d3) |
2021-11-15 10:40:41 +0100 | Gurkenglas | (~Gurkengla@dslb-002-203-144-204.002.203.pools.vodafone-ip.de) |
2021-11-15 10:44:05 +0100 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:7483:71c5:e9d:14d3) (Ping timeout: 250 seconds) |
2021-11-15 10:46:55 +0100 | ub | (~Thunderbi@p548c9fcb.dip0.t-ipconnect.de) |
2021-11-15 10:47:33 +0100 | ubert | (~Thunderbi@p200300ecdf0ba27448631365ce659eb5.dip0.t-ipconnect.de) (Ping timeout: 250 seconds) |
2021-11-15 10:47:33 +0100 | ub | ubert |
2021-11-15 10:54:41 +0100 | notzmv | (~zmv@user/notzmv) (Ping timeout: 245 seconds) |
2021-11-15 10:54:49 +0100 | mcgroin | (~mcgroin@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Quit: WeeChat 3.3) |
2021-11-15 10:55:06 +0100 | mcgroin | (~mcgroin@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) |
2021-11-15 10:59:41 +0100 | yauhsien | (~yauhsien@61-231-43-127.dynamic-ip.hinet.net) |
2021-11-15 11:04:17 +0100 | Square | Sqaure |
2021-11-15 11:10:29 +0100 | olibiera | (~olibiera@a79-169-181-190.cpe.netcabo.pt) |
2021-11-15 11:12:20 +0100 | <olibiera> | hi guys i have this piece of code and im trying to call it recursively for every element of ys and zs and not just for y and z... can any1 explain how to? |
2021-11-15 11:12:24 +0100 | <olibiera> | replace' :: [String] -> [String] -> [Int] -> [String] |
2021-11-15 11:12:25 +0100 | <olibiera> | replace' xs [] [] = xs |
2021-11-15 11:12:25 +0100 | <olibiera> | replace' xs (y:ys) (z:zs) = replace'' y z xs |
2021-11-15 11:12:25 +0100 | <olibiera> | where replace'' y z xs = map (\x -> if (y == x) then show z else x) xs |
2021-11-15 11:12:52 +0100 | yauhsien | (~yauhsien@61-231-43-127.dynamic-ip.hinet.net) (Remote host closed the connection) |
2021-11-15 11:14:26 +0100 | <[exa]> | olibiera: what is it supposed to do? (also, can you paste it on pastebin so we can view it better, preferably along an error message so that we know what to fix?) |
2021-11-15 11:15:55 +0100 | <[exa]> | anyway, in general, to recurse to the rest of the lists, you'll need to call something like: replace' _ ys zs |
2021-11-15 11:16:44 +0100 | olibiera52 | (~olibiera@a79-169-181-190.cpe.netcabo.pt) |
2021-11-15 11:17:13 +0100 | olibiera | (~olibiera@a79-169-181-190.cpe.netcabo.pt) (Ping timeout: 256 seconds) |
2021-11-15 11:17:22 +0100 | olibiera52 | (~olibiera@a79-169-181-190.cpe.netcabo.pt) (Client Quit) |
2021-11-15 11:17:28 +0100 | yauhsien | (~yauhsien@61-231-43-127.dynamic-ip.hinet.net) |
2021-11-15 11:17:37 +0100 | olibiera | (~olibiera@a79-169-181-190.cpe.netcabo.pt) |
2021-11-15 11:18:12 +0100 | dfip^ | (~dfip@h50.174.139.63.static.ip.windstream.net) |
2021-11-15 11:19:27 +0100 | kuribas | (~user@ip-188-118-57-242.reverse.destiny.be) |
2021-11-15 11:21:38 +0100 | cfricke | (~cfricke@user/cfricke) |
2021-11-15 11:22:13 +0100 | yauhsien | (~yauhsien@61-231-43-127.dynamic-ip.hinet.net) (Ping timeout: 250 seconds) |
2021-11-15 11:23:12 +0100 | <olibiera> | guys i sent my code to https://paste.tomsmeding.com/ , where will the answer be? |
2021-11-15 11:26:10 +0100 | <[exa]> | ah you need to send us the precise link (not just to the pastebin frontpage) |
2021-11-15 11:26:26 +0100 | <[exa]> | anyway, what's the expected function of the code? |
2021-11-15 11:28:27 +0100 | perrierjouet | (~perrier-j@modemcable012.251-130-66.mc.videotron.ca) (Quit: WeeChat 3.3) |
2021-11-15 11:34:10 +0100 | <olibiera> | https://paste.tomsmeding.com/eiutK5Xl |
2021-11-15 11:34:16 +0100 | <olibiera> | okok ty |
2021-11-15 11:34:22 +0100 | <olibiera> | here it is |
2021-11-15 11:41:37 +0100 | Sinbad | (~Sinbad@user/sinbad) |
2021-11-15 11:45:43 +0100 | mastarija | (~mastarija@2a05:4f46:e06:ff00:dd0f:baa7:ff4f:4d80) (Quit: Leaving) |
2021-11-15 11:46:25 +0100 | perrierjouet | (~perrier-j@modemcable012.251-130-66.mc.videotron.ca) |
2021-11-15 11:50:19 +0100 | neurocyte0132889 | (~neurocyte@94.16.67.223) |
2021-11-15 11:50:19 +0100 | neurocyte0132889 | (~neurocyte@94.16.67.223) (Changing host) |
2021-11-15 11:50:19 +0100 | neurocyte0132889 | (~neurocyte@user/neurocyte) |
2021-11-15 11:53:11 +0100 | <[exa]> | olibiera: so you have a list of strings to find and replace, what does the [Int] mean there? |
2021-11-15 11:55:03 +0100 | <[exa]> | olibiera: anyway, I guess you want something like |
2021-11-15 11:55:04 +0100 | Trattue | (~Trattue@152.70.182.158) |
2021-11-15 11:55:07 +0100 | <olibiera> | the int are the values i want to replace in xs if the words are equal |
2021-11-15 11:55:24 +0100 | <[exa]> | replace' xs (y:ys) (z:zs) = replace' (replace'' y z xs) ys zs |
2021-11-15 11:55:28 +0100 | <olibiera> | the words in xs and ys |
2021-11-15 11:55:38 +0100 | <[exa]> | there you process one replacement, and continue with replacing the other replacements on the result |
2021-11-15 11:57:16 +0100 | <[exa]> | anyway yeah it makes sense now, I got confused by the ordering of the arguments (normally we tend to put the "data" as the last parameter, as you have in replace'') |
2021-11-15 11:57:37 +0100 | <olibiera> | ty so much, this is to confusing to me, i ll look slowly in the code |
2021-11-15 11:58:52 +0100 | <olibiera> | oh k got it, makes sense |
2021-11-15 12:02:31 +0100 | deadmarshal | (~deadmarsh@95.38.116.242) (Ping timeout: 250 seconds) |
2021-11-15 12:05:05 +0100 | deadmarshal | (~deadmarsh@95.38.116.242) |
2021-11-15 12:05:08 +0100 | timCF | (~timCF@200-149-20-81.sta.estpak.ee) |
2021-11-15 12:06:10 +0100 | <timCF> | Hello! Is there the way to unlift type-level bool to term-level bool, similar to what `symbolVal` is doing with type-level strings? |
2021-11-15 12:07:12 +0100 | <lortabac> | @singleton-bool |
2021-11-15 12:07:13 +0100 | <lambdabot> | Unknown command, try @list |
2021-11-15 12:07:18 +0100 | <lortabac> | @hackage singleton-bool |
2021-11-15 12:07:18 +0100 | <lambdabot> | https://hackage.haskell.org/package/singleton-bool |
2021-11-15 12:07:25 +0100 | <lortabac> | timCF: ^ |
2021-11-15 12:09:11 +0100 | neurocyte0132889 | (~neurocyte@user/neurocyte) (Quit: The Lounge - https://thelounge.chat) |
2021-11-15 12:09:42 +0100 | <timCF> | lortabac: thanks! |
2021-11-15 12:12:02 +0100 | neurocyte0132889 | (~neurocyte@94.16.67.223) |
2021-11-15 12:12:02 +0100 | neurocyte0132889 | (~neurocyte@94.16.67.223) (Changing host) |
2021-11-15 12:12:02 +0100 | neurocyte0132889 | (~neurocyte@user/neurocyte) |
2021-11-15 12:14:39 +0100 | <timCF> | Any ideas why this is not in GHC.TypeLits? Bool is pretty basic type I think |
2021-11-15 12:15:25 +0100 | olibiera | (~olibiera@a79-169-181-190.cpe.netcabo.pt) (Quit: Client closed) |
2021-11-15 12:20:27 +0100 | wei2912 | (~wei2912@138.75.71.147) (Quit: Lost terminal) |
2021-11-15 12:21:27 +0100 | <arahael> | how easy is it for me to cross compile a cabal project to an rpi target? the target is aarm64 running linux. the host is also aarm64, but running macos. |
2021-11-15 12:22:05 +0100 | <kuribas> | it'd be nice to be able to unlift "any" DataKind |
2021-11-15 12:23:53 +0100 | <maerwald> | arahael: does docker/qemu work on mac? |
2021-11-15 12:24:40 +0100 | <maerwald> | there's https://github.com/multiarch/qemu-user-static |
2021-11-15 12:24:48 +0100 | <timCF> | arahael: 64-bit arm should be fine I think. With armv6 you might have some issues |
2021-11-15 12:26:25 +0100 | vjoki | (~vjoki@2a00:d880:3:1::fea1:9ae) (Ping timeout: 265 seconds) |
2021-11-15 12:26:30 +0100 | orcus | (~orcus@user/brprice) (Ping timeout: 260 seconds) |
2021-11-15 12:27:05 +0100 | dispater- | (~dispater@user/brprice) (Ping timeout: 264 seconds) |
2021-11-15 12:27:28 +0100 | lambdabot | (~lambdabot@haskell/bot/lambdabot) (Ping timeout: 256 seconds) |
2021-11-15 12:28:10 +0100 | chomwitt | (~chomwitt@2a02:587:dc12:3f00:12c3:7bff:fe6d:d374) (Remote host closed the connection) |
2021-11-15 12:29:20 +0100 | vjoki | (~vjoki@2a00:d880:3:1::fea1:9ae) |
2021-11-15 12:29:21 +0100 | orcus | (~orcus@user/brprice) |
2021-11-15 12:29:47 +0100 | dispater | (~dispater@user/brprice) |
2021-11-15 12:30:51 +0100 | lambdabot | (~lambdabot@silicon.int-e.eu) |
2021-11-15 12:30:51 +0100 | lambdabot | (~lambdabot@silicon.int-e.eu) (Changing host) |
2021-11-15 12:30:51 +0100 | lambdabot | (~lambdabot@haskell/bot/lambdabot) |
2021-11-15 12:35:29 +0100 | <arahael> | maerwald: Yeah, that's an option, actually I do have linux on an x86, but the mac is already aarm64. |
2021-11-15 12:35:50 +0100 | <arahael> | timCF: I don't even know where to start, though. |
2021-11-15 12:36:18 +0100 | jakalx | (~jakalx@base.jakalx.net) (Error from remote client) |
2021-11-15 12:37:21 +0100 | <timCF> | arahael: :) |
2021-11-15 12:37:32 +0100 | <Sinbad> | Using the net-mqtt package I'd like to connect to an mqtt server which has a self signed certificate. I can't see how to configure the client with passing the file path to the certificate. Neither @bar(input):button1 |
2021-11-15 12:38:54 +0100 | <arahael> | timCF: So, I mean, is there like, an environment variable I have to set before calling 'cabal build'? :) |
2021-11-15 12:39:24 +0100 | <Sinbad> | TLSSettings does not seem to have such field. |
2021-11-15 12:39:44 +0100 | __monty__ | (~toonn@user/toonn) |
2021-11-15 12:39:46 +0100 | jmorris | (uid433911@hampstead.irccloud.com) (Quit: Connection closed for inactivity) |
2021-11-15 12:41:10 +0100 | <timCF> | arahael: I actually don't know much about how to do it with cabal, but it should be relatively easy to do with nix https://input-output-hk.github.io/haskell.nix/tutorials/cross-compilation/ |
2021-11-15 12:41:41 +0100 | <timCF> | arahael: But of course it requires at least some nix knowledge |
2021-11-15 12:42:02 +0100 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:7483:71c5:e9d:14d3) |
2021-11-15 12:42:32 +0100 | deadmarshal | (~deadmarsh@95.38.116.242) (Ping timeout: 260 seconds) |
2021-11-15 12:42:45 +0100 | <arahael> | timCF: I have _some_ nix knowledge, but wow, that looks like a project on it's own. |
2021-11-15 12:43:12 +0100 | <arahael> | I think my best bet is to probably just run an aarch64 VM, and then do the regular haskell build in that. |
2021-11-15 12:44:39 +0100 | <maerwald> | "easy to do with nix" ...haha |
2021-11-15 12:45:33 +0100 | <maerwald> | ghcup supports building GHC cross toolchains, but 1. it requires you to have the C libs for the correct architecture and 2. I don't know what the state of TH cross-compilation is |
2021-11-15 12:46:17 +0100 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:7483:71c5:e9d:14d3) (Ping timeout: 250 seconds) |
2021-11-15 12:47:19 +0100 | econo | (uid147250@user/econo) (Quit: Connection closed for inactivity) |
2021-11-15 12:51:29 +0100 | Sinbad | (~Sinbad@user/sinbad) (Ping timeout: 250 seconds) |
2021-11-15 13:03:44 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds) |
2021-11-15 13:03:51 +0100 | notzmv | (~zmv@user/notzmv) |
2021-11-15 13:05:12 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-11-15 13:07:21 +0100 | pretty_dumm_guy | (trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) |
2021-11-15 13:10:40 +0100 | Midjak | (~Midjak@82-65-111-221.subs.proxad.net) |
2021-11-15 13:10:53 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds) |
2021-11-15 13:11:10 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-11-15 13:15:24 +0100 | kupi | (uid212005@hampstead.irccloud.com) |
2021-11-15 13:15:45 +0100 | cfricke | (~cfricke@user/cfricke) (Ping timeout: 250 seconds) |
2021-11-15 13:16:41 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds) |
2021-11-15 13:16:48 +0100 | jollygood2 | (~bc8165b6@217.29.117.252) |
2021-11-15 13:17:07 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-11-15 13:18:31 +0100 | enoq | (~enoq@2a05:1141:1f5:5600:b9c9:721a:599:bfe7) |
2021-11-15 13:20:13 +0100 | jakalx | (~jakalx@base.jakalx.net) |
2021-11-15 13:21:25 +0100 | AlexNoo_ | AlexNoo |
2021-11-15 13:22:29 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds) |
2021-11-15 13:22:55 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-11-15 13:28:06 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds) |
2021-11-15 13:28:55 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-11-15 13:29:41 +0100 | lavaman | (~lavaman@98.38.249.169) (Remote host closed the connection) |
2021-11-15 13:30:05 +0100 | deadmarshal | (~deadmarsh@95.38.116.242) |
2021-11-15 13:30:53 +0100 | lavaman | (~lavaman@98.38.249.169) |
2021-11-15 13:34:10 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 260 seconds) |
2021-11-15 13:35:20 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-11-15 13:36:56 +0100 | machinedgod | (~machinedg@24.105.81.50) |
2021-11-15 13:40:14 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 260 seconds) |
2021-11-15 13:40:41 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-11-15 13:40:42 +0100 | lavaman | (~lavaman@98.38.249.169) (Remote host closed the connection) |
2021-11-15 13:40:56 +0100 | lavaman | (~lavaman@98.38.249.169) |
2021-11-15 13:41:03 +0100 | lavaman | (~lavaman@98.38.249.169) (Remote host closed the connection) |
2021-11-15 13:42:32 +0100 | juhp | (~juhp@128.106.188.220) (Quit: juhp) |
2021-11-15 13:43:16 +0100 | max22- | (~maxime@2a01cb08833598003ad2294d5328f338.ipv6.abo.wanadoo.fr) (Ping timeout: 265 seconds) |
2021-11-15 13:46:18 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 260 seconds) |
2021-11-15 13:46:43 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-11-15 13:47:05 +0100 | burnsidesLlama | (~burnsides@dhcp168-015.wadham.ox.ac.uk) |
2021-11-15 13:47:36 +0100 | Cajun | (~Cajun@user/cajun) (Quit: Client closed) |
2021-11-15 13:48:14 +0100 | puke | (~puke@user/puke) |
2021-11-15 13:49:17 +0100 | neurocyte0132889 | (~neurocyte@user/neurocyte) (Quit: The Lounge - https://thelounge.chat) |
2021-11-15 13:50:04 +0100 | neurocyte0132889 | (~neurocyte@94.16.67.223) |
2021-11-15 13:50:04 +0100 | neurocyte0132889 | (~neurocyte@94.16.67.223) (Changing host) |
2021-11-15 13:50:04 +0100 | neurocyte0132889 | (~neurocyte@user/neurocyte) |
2021-11-15 13:50:25 +0100 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) |
2021-11-15 13:56:50 +0100 | juhp | (~juhp@128.106.188.220) |
2021-11-15 13:57:17 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds) |
2021-11-15 13:57:47 +0100 | Pickchea | (~private@user/pickchea) (Ping timeout: 250 seconds) |
2021-11-15 13:58:10 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-11-15 14:03:34 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds) |
2021-11-15 14:03:46 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-11-15 14:05:25 +0100 | boxscape_ | (~boxscape_@134.171.69.87) |
2021-11-15 14:06:51 +0100 | Kaipi | (~Kaiepi@156.34.44.192) (Quit: Leaving) |
2021-11-15 14:07:07 +0100 | Kaiepi | (~Kaiepi@156.34.44.192) |
2021-11-15 14:09:22 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds) |
2021-11-15 14:09:31 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-11-15 14:11:21 +0100 | stiell | (~stiell@gateway/tor-sasl/stiell) (Remote host closed the connection) |
2021-11-15 14:11:43 +0100 | stiell | (~stiell@gateway/tor-sasl/stiell) |
2021-11-15 14:11:44 +0100 | jlamothe | (~jlamothe@198.251.61.229) (Ping timeout: 256 seconds) |
2021-11-15 14:12:06 +0100 | alzgh | (~alzgh@user/alzgh) |
2021-11-15 14:12:18 +0100 | wei2912 | (~wei2912@138.75.71.147) |
2021-11-15 14:15:08 +0100 | fuzzypixelz_ | (~fuzzypixe@eth-west-pareq2-46-193-4-100.wb.wifirst.net) |
2021-11-15 14:16:10 +0100 | deadmarshal | (~deadmarsh@95.38.116.242) (Ping timeout: 260 seconds) |
2021-11-15 14:16:21 +0100 | son0p | (~ff@181.136.122.143) (Remote host closed the connection) |
2021-11-15 14:19:31 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds) |
2021-11-15 14:20:28 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-11-15 14:21:23 +0100 | epolanski | (uid312403@helmsley.irccloud.com) |
2021-11-15 14:24:01 +0100 | pavonia | (~user@user/siracusa) (Quit: Bye!) |
2021-11-15 14:25:26 +0100 | son0p | (~ff@181.136.122.143) |
2021-11-15 14:25:48 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds) |
2021-11-15 14:25:58 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-11-15 14:28:15 +0100 | ystael | (~ystael@user/ystael) |
2021-11-15 14:28:44 +0100 | alx741 | (~alx741@181.196.68.87) (Ping timeout: 256 seconds) |
2021-11-15 14:31:37 +0100 | bitmapper | (uid464869@lymington.irccloud.com) |
2021-11-15 14:34:58 +0100 | slowButPresent | (~slowButPr@user/slowbutpresent) |
2021-11-15 14:35:57 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds) |
2021-11-15 14:36:58 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-11-15 14:36:59 +0100 | Pickchea | (~private@user/pickchea) |
2021-11-15 14:38:21 +0100 | deadmarshal | (~deadmarsh@95.38.116.242) |
2021-11-15 14:39:02 +0100 | max22- | (~maxime@2a01cb0883359800387721e60f64db31.ipv6.abo.wanadoo.fr) |
2021-11-15 14:42:14 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds) |
2021-11-15 14:42:37 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-11-15 14:43:11 +0100 | Farzad | (~FarzadBek@178.131.26.179) |
2021-11-15 14:43:40 +0100 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:7483:71c5:e9d:14d3) |
2021-11-15 14:48:18 +0100 | pop3 | (~pop3@user/pop3) (Remote host closed the connection) |
2021-11-15 14:48:20 +0100 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:7483:71c5:e9d:14d3) (Ping timeout: 268 seconds) |
2021-11-15 14:48:42 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Quit: Reconnecting) |
2021-11-15 14:48:48 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-11-15 14:48:57 +0100 | pop3 | (~pop3@user/pop3) |
2021-11-15 14:50:05 +0100 | yauhsien | (~yauhsien@61-231-43-127.dynamic-ip.hinet.net) |
2021-11-15 14:55:17 +0100 | deadmarshal | (~deadmarsh@95.38.116.242) (Ping timeout: 265 seconds) |
2021-11-15 14:55:50 +0100 | deadmarshal | (~deadmarsh@95.38.116.242) |
2021-11-15 14:59:46 +0100 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) (Quit: = "") |
2021-11-15 15:11:58 +0100 | gehmehgeh_ | (~user@user/gehmehgeh) |
2021-11-15 15:12:12 +0100 | jpds | (~jpds@gateway/tor-sasl/jpds) (Ping timeout: 276 seconds) |
2021-11-15 15:13:19 +0100 | alx741 | (~alx741@181.196.68.87) |
2021-11-15 15:14:09 +0100 | gehmehgeh | (~user@user/gehmehgeh) (Ping timeout: 276 seconds) |
2021-11-15 15:14:49 +0100 | jpds | (~jpds@gateway/tor-sasl/jpds) |
2021-11-15 15:15:18 +0100 | motherfsck | (~motherfsc@user/motherfsck) |
2021-11-15 15:17:57 +0100 | fuzzypixelz_ | (~fuzzypixe@eth-west-pareq2-46-193-4-100.wb.wifirst.net) (Ping timeout: 250 seconds) |
2021-11-15 15:20:03 +0100 | Sinbad | (~Sinbad@user/sinbad) |
2021-11-15 15:21:40 +0100 | mcgroin | (~mcgroin@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Quit: WeeChat 3.3) |
2021-11-15 15:22:48 +0100 | Sgeo | (~Sgeo@user/sgeo) |
2021-11-15 15:23:31 +0100 | timCF | (~timCF@200-149-20-81.sta.estpak.ee) (Quit: leaving) |
2021-11-15 15:24:55 +0100 | shriekingnoise | (~shrieking@186.137.144.80) |
2021-11-15 15:29:05 +0100 | jpds | (~jpds@gateway/tor-sasl/jpds) (Remote host closed the connection) |
2021-11-15 15:29:26 +0100 | jpds | (~jpds@gateway/tor-sasl/jpds) |
2021-11-15 15:32:58 +0100 | jollygood2 | (~bc8165b6@217.29.117.252) (Quit: http://www.okay.uz/ (Ping timeout)) |
2021-11-15 15:35:32 +0100 | johnny_sitar | (~artur@078088015209.bialystok.vectranet.pl) |
2021-11-15 15:35:54 +0100 | kuribas | (~user@ip-188-118-57-242.reverse.destiny.be) (Quit: ERC (IRC client for Emacs 26.3)) |
2021-11-15 15:36:57 +0100 | mimmy | (~mimmy@72.142.88.18) |
2021-11-15 15:37:22 +0100 | kuribas | (~user@ip-188-118-57-242.reverse.destiny.be) |
2021-11-15 15:41:13 +0100 | dschrempf | (~dominik@070-207.dynamic.dsl.fonira.net) |
2021-11-15 15:41:19 +0100 | gehmehgeh_ | gehmehgeh |
2021-11-15 15:41:21 +0100 | justsomeguy | (~justsomeg@user/justsomeguy) (Quit: WeeChat 3.2) |
2021-11-15 15:42:12 +0100 | <boxscape_> | I don't suppose there exists a library that lets you parse a Haskell code string into a template haskell Exp? |
2021-11-15 15:42:27 +0100 | <dminuoso> | There is |
2021-11-15 15:42:29 +0100 | <merijn> | boxscape_: eh... |
2021-11-15 15:42:30 +0100 | deadmarshal | (~deadmarsh@95.38.116.242) (Ping timeout: 260 seconds) |
2021-11-15 15:42:34 +0100 | <merijn> | "template-haskell"? :p |
2021-11-15 15:42:47 +0100 | <boxscape_> | Hm I didn't know template-haskell included a parser |
2021-11-15 15:42:47 +0100 | <merijn> | That's what all the quasi quoters do :p |
2021-11-15 15:42:47 +0100 | <dminuoso> | ^- |
2021-11-15 15:42:53 +0100 | <boxscape_> | oh I se |
2021-11-15 15:42:54 +0100 | <boxscape_> | e |
2021-11-15 15:42:59 +0100 | <merijn> | boxscape_: Because it's hidden as a quasi-quoter |
2021-11-15 15:43:02 +0100 | <boxscape_> | right, ok |
2021-11-15 15:43:12 +0100 | <boxscape_> | thanks |
2021-11-15 15:43:14 +0100 | <merijn> | % [e|2 + 5|] |
2021-11-15 15:43:15 +0100 | <yahb> | merijn: InfixE (Just (LitE (IntegerL 2))) (VarE GHC.Num.+) (Just (LitE (IntegerL 5))) |
2021-11-15 15:44:47 +0100 | jespada | (~jespada@252-155-231-201.fibertel.com.ar) |
2021-11-15 15:44:51 +0100 | perrierjouet | (~perrier-j@modemcable012.251-130-66.mc.videotron.ca) (Quit: WeeChat 3.3) |
2021-11-15 15:45:46 +0100 | Farzad | (~FarzadBek@178.131.26.179) (Quit: Leaving) |
2021-11-15 15:47:16 +0100 | yauhsien | (~yauhsien@61-231-43-127.dynamic-ip.hinet.net) (Remote host closed the connection) |
2021-11-15 15:53:00 +0100 | Guest46 | (~Guest46@catv-80-98-84-78.catv.broadband.hu) |
2021-11-15 15:53:16 +0100 | <fcortesi> | Hello |
2021-11-15 15:53:17 +0100 | <fcortesi> | Offtopic question: It's better to keep bug reports short and "dry", without much presentation and such? I try to valorate the time of the devs by doing so but I have this feeling of (maybe) being interpreted as rude, specially when nobody knows me in the comunity. On the other hand it feels a bit stupid when trying to make messages a bit more personal an "friendlier".. |
2021-11-15 15:54:54 +0100 | <maerwald> | I follow this template, adapted from lkml "Your software is utter sh*t. It's broken. Seriously. Anyway, here's why: <insert bug report>." |
2021-11-15 15:56:11 +0100 | mimmy | (~mimmy@72.142.88.18) (Ping timeout: 265 seconds) |
2021-11-15 15:56:15 +0100 | <janus> | today is Haskell eXchange Novice track : https://skillsmatter.com/conferences/13580-haskell-exchange-2021-novice |
2021-11-15 15:56:22 +0100 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
2021-11-15 15:56:22 +0100 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host) |
2021-11-15 15:56:22 +0100 | wroathe | (~wroathe@user/wroathe) |
2021-11-15 15:57:03 +0100 | <kuribas> | fcortesi: keep them to the point, but adding information is always a good thing. |
2021-11-15 15:57:36 +0100 | <fcortesi> | Ok. Thanks. |
2021-11-15 15:58:12 +0100 | dajoer | (~david@user/gvx) (Quit: leaving) |
2021-11-15 15:58:32 +0100 | <kuribas> | elaborating a bit on the error may make it easier for them to find the bug. |
2021-11-15 15:59:10 +0100 | mimmy | (~mimmy@72.142.88.18) |
2021-11-15 15:59:12 +0100 | <kritzefitz> | fcortesi: If you feel like adding niceties, maybe do so by including a nice sentence like „thanks for your consideration“ or similar at the end. Keeping it separate from the actual problem description helps to not detract from the actual content. But I'd still say it's optional and personally I usually avoid it. |
2021-11-15 15:59:17 +0100 | Guest46 | (~Guest46@catv-80-98-84-78.catv.broadband.hu) () |
2021-11-15 15:59:24 +0100 | <fcortesi> | Yes, but often the best way of explaining is just to copy a few lines of code... |
2021-11-15 15:59:47 +0100 | <fcortesi> | (answer to kuribas) |
2021-11-15 16:01:16 +0100 | <kritzefitz> | fcortesi: if your report consists mostly of a snippet of code (that can be compiled an run standalone) that is often a good thing and usually it doesn't need much more than an explanation of what behavior you are observing and what behavior you would expect instead. |
2021-11-15 16:02:22 +0100 | <fcortesi> | kritzefitz: Thanks. I was afraid of that being interpreted negatively. |
2021-11-15 16:02:59 +0100 | <tomsmeding> | yeah, saying "I have this small snippet of code, which I expect to do X because of reason R but instead it does Y" is usually a great bug report -- reproducers are very valuable when debugging an issue, so valuable in fact that sometimes that's sufficient nicety for a maintainer to become happy with your report :) |
2021-11-15 16:03:58 +0100 | <fcortesi> | Excelent, thanks! |
2021-11-15 16:04:34 +0100 | Sinbad | (~Sinbad@user/sinbad) (Quit: WeeChat 3.3) |
2021-11-15 16:05:21 +0100 | <merijn> | reliable reproducer >>>>> anything else |
2021-11-15 16:05:37 +0100 | <merijn> | Well, a *minimal* reliable reproducer is even better |
2021-11-15 16:07:20 +0100 | alzgh | (~alzgh@user/alzgh) (Remote host closed the connection) |
2021-11-15 16:07:24 +0100 | Pickchea | (~private@user/pickchea) (Quit: Leaving) |
2021-11-15 16:07:29 +0100 | myShoggoth | (~myShoggot@97-120-85-195.ptld.qwest.net) |
2021-11-15 16:07:30 +0100 | shapr | (~user@pool-100-36-247-68.washdc.fios.verizon.net) |
2021-11-15 16:07:41 +0100 | <fcortesi> | Yes from a technical perspective I agree, and it's more or less what I see. But I dont know wether everybody here knows each other before declaring something to be wrong with an issue. |
2021-11-15 16:08:09 +0100 | <fcortesi> | But I think I got it, thanks. |
2021-11-15 16:09:04 +0100 | sinbad | (~sinbad@user/sinbad) |
2021-11-15 16:09:22 +0100 | jkaye | (~jkaye@2601:281:8300:7530:e618:9306:a767:ab2) |
2021-11-15 16:12:02 +0100 | jespada | (~jespada@252-155-231-201.fibertel.com.ar) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2021-11-15 16:12:28 +0100 | fryguybo1 | (~fryguybob@cpe-74-67-169-145.rochester.res.rr.com) (Quit: leaving) |
2021-11-15 16:12:53 +0100 | fryguybob | (~fryguybob@cpe-74-67-169-145.rochester.res.rr.com) |
2021-11-15 16:13:11 +0100 | <lortabac> | a user called fcortesi asks whether they should be polite, how beautiful :P |
2021-11-15 16:13:58 +0100 | <dminuoso> | fcortesi: It's a complicated question and depends on how well you can communicate, how much time the other person has to look into your gory details, and whether they have the skill to quickly get a picture of your code and mentally filter. |
2021-11-15 16:14:16 +0100 | <dminuoso> | Generally short test cases are the best, but in some cases they can be difficult to produce |
2021-11-15 16:14:23 +0100 | <lortabac> | (cortesi means polite in Italian) |
2021-11-15 16:15:27 +0100 | <fcortesi> | Seriously? |
2021-11-15 16:15:48 +0100 | <fcortesi> | lortabac: I just don't want to get banned :P. |
2021-11-15 16:16:16 +0100 | <lortabac> | :D |
2021-11-15 16:17:20 +0100 | <maerwald> | merijn: right, so a good bug report needs: 1. insult, 2. reproducer |
2021-11-15 16:17:21 +0100 | <maerwald> | :D |
2021-11-15 16:19:09 +0100 | <fcortesi> | I'll try :P. |
2021-11-15 16:19:55 +0100 | wroathe | (~wroathe@user/wroathe) (Ping timeout: 250 seconds) |
2021-11-15 16:20:08 +0100 | <kritzefitz> | If you want to be creative about it, your reproducer insults the developer if buggy, but doesn't when the bug is fixed. |
2021-11-15 16:21:03 +0100 | <maerwald> | tbf... angry people on my bug trackers tend to motivate me more. I guess that's PTSD from industry. |
2021-11-15 16:21:29 +0100 | <merijn> | It's the opposite for me |
2021-11-15 16:21:33 +0100 | tomsmeding | is not sure that holds for the majority of maintainers |
2021-11-15 16:21:44 +0100 | <maerwald> | tomsmeding: yeah, that's what my therapist said |
2021-11-15 16:21:47 +0100 | <merijn> | Angers just triggers me "get fucked" response |
2021-11-15 16:21:48 +0100 | <tomsmeding> | lol |
2021-11-15 16:26:14 +0100 | justsomeguy | (~justsomeg@user/justsomeguy) |
2021-11-15 16:26:25 +0100 | <davean> | maerwald: there was an angry person a bug tracker last year for a project so I just put it out of my rotation for a bit and I still haven't gotten back to it :-p |
2021-11-15 16:28:24 +0100 | chomwitt | (~chomwitt@2a02:587:dc12:3f00:12c3:7bff:fe6d:d374) |
2021-11-15 16:30:01 +0100 | johnny_sitar | (~artur@078088015209.bialystok.vectranet.pl) (Ping timeout: 265 seconds) |
2021-11-15 16:32:03 +0100 | kupi | (uid212005@hampstead.irccloud.com) (Quit: Connection closed for inactivity) |
2021-11-15 16:32:42 +0100 | jakalx | (~jakalx@base.jakalx.net) (Error from remote client) |
2021-11-15 16:36:31 +0100 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
2021-11-15 16:36:31 +0100 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host) |
2021-11-15 16:36:31 +0100 | wroathe | (~wroathe@user/wroathe) |
2021-11-15 16:37:15 +0100 | tzh | (~tzh@c-24-21-73-154.hsd1.wa.comcast.net) |
2021-11-15 16:37:41 +0100 | jakalx | (~jakalx@base.jakalx.net) |
2021-11-15 16:38:33 +0100 | dfip^ | (~dfip@h50.174.139.63.static.ip.windstream.net) (Remote host closed the connection) |
2021-11-15 16:38:42 +0100 | jlamothe | (~jlamothe@198.251.61.229) |
2021-11-15 16:41:37 +0100 | mimmy | (~mimmy@72.142.88.18) (Ping timeout: 265 seconds) |
2021-11-15 16:41:42 +0100 | perrierjouet | (~perrier-j@modemcable012.251-130-66.mc.videotron.ca) |
2021-11-15 16:41:51 +0100 | xkuru | (~xkuru@user/xkuru) |
2021-11-15 16:45:06 +0100 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:7483:71c5:e9d:14d3) |
2021-11-15 16:48:01 +0100 | ubert | (~Thunderbi@p548c9fcb.dip0.t-ipconnect.de) (Quit: ubert) |
2021-11-15 16:48:18 +0100 | lavaman | (~lavaman@98.38.249.169) |
2021-11-15 16:49:49 +0100 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:7483:71c5:e9d:14d3) (Ping timeout: 268 seconds) |
2021-11-15 16:52:25 +0100 | wroathe | (~wroathe@user/wroathe) (Ping timeout: 250 seconds) |
2021-11-15 16:52:44 +0100 | lavaman | (~lavaman@98.38.249.169) (Ping timeout: 265 seconds) |
2021-11-15 16:54:46 +0100 | ouro_boros | (~ouroboros@2804:14c:65e4:93f6::1001) |
2021-11-15 16:55:49 +0100 | ec | (~ec@gateway/tor-sasl/ec) |
2021-11-15 16:56:38 +0100 | justsomeguy | (~justsomeg@user/justsomeguy) (Ping timeout: 256 seconds) |
2021-11-15 16:56:41 +0100 | mimmy | (~mimmy@72.142.88.18) |
2021-11-15 16:57:25 +0100 | burnsidesLlama | (~burnsides@dhcp168-015.wadham.ox.ac.uk) (Remote host closed the connection) |
2021-11-15 17:05:23 +0100 | waleee | (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) |
2021-11-15 17:06:49 +0100 | wei2912 | (~wei2912@138.75.71.147) (Quit: Lost terminal) |
2021-11-15 17:07:12 +0100 | burnsidesLlama | (~burnsides@dhcp168-015.wadham.ox.ac.uk) |
2021-11-15 17:08:10 +0100 | hippoid | (~hippoid@d60-65-25-145.col.wideopenwest.com) |
2021-11-15 17:09:19 +0100 | fef | (~thedawn@user/thedawn) |
2021-11-15 17:09:34 +0100 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
2021-11-15 17:09:34 +0100 | wroathe | (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host) |
2021-11-15 17:09:34 +0100 | wroathe | (~wroathe@user/wroathe) |
2021-11-15 17:10:48 +0100 | boxscape_ | (~boxscape_@134.171.69.87) (Ping timeout: 256 seconds) |
2021-11-15 17:10:53 +0100 | acidsys | (~LSD@2.lsd.systems) (Excess Flood) |
2021-11-15 17:11:28 +0100 | acidsys | (~LSD@2.lsd.systems) |
2021-11-15 17:13:39 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 250 seconds) |
2021-11-15 17:14:14 +0100 | wroathe | (~wroathe@user/wroathe) (Ping timeout: 246 seconds) |
2021-11-15 17:14:25 +0100 | <pop3> | is there any introduction about algebraic effects(like fused-effects) design pattern? |
2021-11-15 17:17:20 +0100 | pop3 | (~pop3@user/pop3) (Quit: Leaving.) |
2021-11-15 17:17:36 +0100 | pop3 | (~pop3@user/pop3) |
2021-11-15 17:18:54 +0100 | hippoid | (~hippoid@d60-65-25-145.col.wideopenwest.com) (Quit: leaving) |
2021-11-15 17:24:41 +0100 | chele | (~chele@user/chele) (Remote host closed the connection) |
2021-11-15 17:24:51 +0100 | chele | (~chele@user/chele) |
2021-11-15 17:24:52 +0100 | lortabac | (~lortabac@2a01:e0a:541:b8f0:4f7e:a333:a04f:8257) (Quit: WeeChat 2.8) |
2021-11-15 17:27:26 +0100 | motherfsck | (~motherfsc@user/motherfsck) (Quit: quit) |
2021-11-15 17:28:02 +0100 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:2d58:181a:7f09:e906) |
2021-11-15 17:33:20 +0100 | neurocyte0132889 | (~neurocyte@user/neurocyte) (Ping timeout: 265 seconds) |
2021-11-15 17:39:24 +0100 | vpan | (~0@212.117.1.172) |
2021-11-15 17:51:33 +0100 | Farzad | (~FarzadBek@151.238.206.168) |
2021-11-15 17:57:40 +0100 | <tomsmeding> | pop3: not an answer to your question, but potentially relevant: https://reasonablypolymorphic.com/blog/porting-to-polysemy/index.html |
2021-11-15 17:57:44 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-11-15 18:00:05 +0100 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) (Read error: Connection reset by peer) |
2021-11-15 18:01:35 +0100 | son0p | (~ff@181.136.122.143) (Ping timeout: 264 seconds) |
2021-11-15 18:02:58 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 260 seconds) |
2021-11-15 18:05:03 +0100 | _ht | (~quassel@82-169-194-8.biz.kpn.net) |
2021-11-15 18:08:17 +0100 | enoq | (~enoq@2a05:1141:1f5:5600:b9c9:721a:599:bfe7) (Quit: enoq) |
2021-11-15 18:11:22 +0100 | mimmy | (~mimmy@72.142.88.18) (Ping timeout: 260 seconds) |
2021-11-15 18:12:53 +0100 | mimmy | (~mimmy@72.142.88.18) |
2021-11-15 18:15:32 +0100 | xff0x | (~xff0x@2001:1a81:52ee:6600:5c66:cf47:7ae9:a061) (Ping timeout: 268 seconds) |
2021-11-15 18:15:37 +0100 | waleee | (~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 250 seconds) |
2021-11-15 18:16:18 +0100 | xff0x | (~xff0x@2001:1a81:52ee:6600:9858:fc63:c087:3f3e) |
2021-11-15 18:17:50 +0100 | waleee | (~waleee@h-98-128-228-119.NA.cust.bahnhof.se) |
2021-11-15 18:18:06 +0100 | <perrierjouet> | hi all |
2021-11-15 18:18:33 +0100 | <geekosaur> | œ |
2021-11-15 18:21:33 +0100 | <tomsmeding> | geekosaur: is that supposed to represent an IPA vowel? |
2021-11-15 18:21:52 +0100 | <geekosaur> | "oe", old style |
2021-11-15 18:22:06 +0100 | <geekosaur> | roughly the same as ö but from old english |
2021-11-15 18:22:56 +0100 | <geekosaur> | there's also æ |
2021-11-15 18:23:02 +0100 | <tomsmeding> | yeah I've seen those :p |
2021-11-15 18:23:34 +0100 | <tomsmeding> | just trying to interpret the usage of œ as a response to a greeting :p |
2021-11-15 18:23:46 +0100 | <geekosaur> | "oh (hi)" |
2021-11-15 18:24:03 +0100 | kuribas | (~user@ip-188-118-57-242.reverse.destiny.be) (Quit: ERC (IRC client for Emacs 26.3)) |
2021-11-15 18:24:10 +0100 | <tomsmeding> | different sound though :P |
2021-11-15 18:24:16 +0100 | <geekosaur> | also drawing just a little bit on SCA :) |
2021-11-15 18:24:48 +0100 | fef | (~thedawn@user/thedawn) (Remote host closed the connection) |
2021-11-15 18:25:06 +0100 | tomsmeding | is not sure again https://en.wikipedia.org/wiki/SCA |
2021-11-15 18:25:32 +0100 | <davean> | https://en.wikipedia.org/wiki/Oi_(interjection) |
2021-11-15 18:25:34 +0100 | <tomsmeding> | "Supercheap Auto" -- sounds like a very reputable car manufacturer |
2021-11-15 18:25:43 +0100 | <geekosaur> | https://en.wikipedia.org/wiki/Society_for_Creative_Anachronism |
2021-11-15 18:26:13 +0100 | <tomsmeding> | davean: "intensely cockney" |
2021-11-15 18:26:18 +0100 | <geekosaur> | where I'm reaching for "Oyez" and admittedly missing a little bit :) |
2021-11-15 18:27:15 +0100 | <tomsmeding> | heh neat |
2021-11-15 18:29:46 +0100 | <tomsmeding> | https://www.theonion.com/society-for-creative-anachronism-seizes-control-of-russ-1819565189 , though this is -offtopic at this point |
2021-11-15 18:30:21 +0100 | dschrempf | (~dominik@070-207.dynamic.dsl.fonira.net) (Ping timeout: 250 seconds) |
2021-11-15 18:30:57 +0100 | <EvanR> | I'm offended for the ancients by this cultural appropriation |
2021-11-15 18:32:31 +0100 | <geekosaur> | tomsmeding, that joke has been around for, er, ages |
2021-11-15 18:32:56 +0100 | ChaiTRex | (~ChaiTRex@user/chaitrex) (Quit: ChaiTRex) |
2021-11-15 18:33:47 +0100 | ChaiTRex | (~ChaiTRex@user/chaitrex) |
2021-11-15 18:34:14 +0100 | mimmy | (~mimmy@72.142.88.18) (Ping timeout: 265 seconds) |
2021-11-15 18:38:55 +0100 | neurocyte0132889 | (~neurocyte@94.46.69.238) |
2021-11-15 18:38:55 +0100 | neurocyte0132889 | (~neurocyte@94.46.69.238) (Changing host) |
2021-11-15 18:38:55 +0100 | neurocyte0132889 | (~neurocyte@user/neurocyte) |
2021-11-15 18:39:00 +0100 | rekahsoft | (~rekahsoft@cpe0008a20f982f-cm64777d666260.cpe.net.cable.rogers.com) |
2021-11-15 18:40:00 +0100 | MoC | (~moc@user/moc) |
2021-11-15 18:43:22 +0100 | neurocyte0132889 | (~neurocyte@user/neurocyte) (Read error: Connection reset by peer) |
2021-11-15 18:43:59 +0100 | neurocyte0132889 | (~neurocyte@94.46.69.238) |
2021-11-15 18:43:59 +0100 | neurocyte0132889 | (~neurocyte@94.46.69.238) (Changing host) |
2021-11-15 18:43:59 +0100 | neurocyte0132889 | (~neurocyte@user/neurocyte) |
2021-11-15 18:44:25 +0100 | chele | (~chele@user/chele) (Remote host closed the connection) |
2021-11-15 18:45:11 +0100 | the_proffesor | (~theproffe@user/theproffesor) (Remote host closed the connection) |
2021-11-15 18:46:49 +0100 | jkaye | (~jkaye@2601:281:8300:7530:e618:9306:a767:ab2) (Ping timeout: 250 seconds) |
2021-11-15 18:47:02 +0100 | lavaman | (~lavaman@98.38.249.169) |
2021-11-15 18:50:38 +0100 | deadmarshal | (~deadmarsh@95.38.116.242) |
2021-11-15 18:51:05 +0100 | fef | (~thedawn@user/thedawn) |
2021-11-15 18:51:07 +0100 | rekahsoft | (~rekahsoft@cpe0008a20f982f-cm64777d666260.cpe.net.cable.rogers.com) (Remote host closed the connection) |
2021-11-15 18:53:16 +0100 | rekahsoft | (~rekahsoft@cpe0008a20f982f-cm64777d666260.cpe.net.cable.rogers.com) |
2021-11-15 18:54:17 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-11-15 18:55:07 +0100 | johnny_sitar | (~artur@078088015209.bialystok.vectranet.pl) |
2021-11-15 18:57:10 +0100 | justsomeguy | (~justsomeg@user/justsomeguy) |
2021-11-15 18:57:18 +0100 | vpan | (~0@212.117.1.172) (Quit: Leaving.) |
2021-11-15 18:57:58 +0100 | mimmy | (~mimmy@72.142.88.18) |
2021-11-15 18:59:02 +0100 | <tomsmeding> | ;) |
2021-11-15 19:01:25 +0100 | <monochrom> | old style pig says: œnk >:) |
2021-11-15 19:01:41 +0100 | <sshine> | hehe |
2021-11-15 19:02:45 +0100 | rekahsoft | (~rekahsoft@cpe0008a20f982f-cm64777d666260.cpe.net.cable.rogers.com) (Ping timeout: 265 seconds) |
2021-11-15 19:03:14 +0100 | emf | (~emf@162.218.217.186) |
2021-11-15 19:03:17 +0100 | johnny_sitar | (~artur@078088015209.bialystok.vectranet.pl) (Ping timeout: 250 seconds) |
2021-11-15 19:05:54 +0100 | <tomsmeding> | 'Henry Ford polymorphism ("any type a as long as it's Int")' -- SPJ |
2021-11-15 19:06:46 +0100 | yauhsien | (~yauhsien@61-231-43-127.dynamic-ip.hinet.net) |
2021-11-15 19:06:55 +0100 | <monochrom> | heh |
2021-11-15 19:07:49 +0100 | emf_ | (~emf@2620:10d:c090:400::5:91bf) |
2021-11-15 19:08:11 +0100 | emf | (~emf@162.218.217.186) (Ping timeout: 264 seconds) |
2021-11-15 19:08:34 +0100 | zava | (~zava@ip5f5bdf0f.dynamic.kabel-deutschland.de) (Ping timeout: 268 seconds) |
2021-11-15 19:11:30 +0100 | mimmy | (~mimmy@72.142.88.18) (Ping timeout: 256 seconds) |
2021-11-15 19:11:34 +0100 | yauhsien | (~yauhsien@61-231-43-127.dynamic-ip.hinet.net) (Ping timeout: 260 seconds) |
2021-11-15 19:18:24 +0100 | mbuf | (~Shakthi@223.184.58.239) (Quit: Leaving) |
2021-11-15 19:25:17 +0100 | <geekosaur> | heh |
2021-11-15 19:25:23 +0100 | <geekosaur> | (having found the context) |
2021-11-15 19:26:11 +0100 | sinbad | (~sinbad@user/sinbad) (Quit: Client closed) |
2021-11-15 19:26:30 +0100 | wonko | (~wjc@user/wonko) |
2021-11-15 19:27:38 +0100 | tom_ | (~tom@2a00:23c8:970c:4801:5b6a:e81b:79dc:f684) |
2021-11-15 19:28:24 +0100 | <tom_> | davean: How do you decide with machines library whether to use Mealy or write a plan from scratch? |
2021-11-15 19:28:25 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 250 seconds) |
2021-11-15 19:29:05 +0100 | <davean> | tom_: what do you want to say about what you're doing? How do you want to use it? What do you want to represent with your code? |
2021-11-15 19:29:11 +0100 | <davean> | code is like poetry, form is meaning |
2021-11-15 19:29:37 +0100 | <tom_> | So I have a player in a card game |
2021-11-15 19:29:58 +0100 | <tom_> | I want to encode the card game rules as some kind of machines |
2021-11-15 19:29:59 +0100 | econo | (uid147250@user/econo) |
2021-11-15 19:30:08 +0100 | <tom_> | I am thinking the players are also machines |
2021-11-15 19:30:16 +0100 | aliosablack | (~chomwitt@2a02:587:dc12:3f00:12c3:7bff:fe6d:d374) |
2021-11-15 19:30:51 +0100 | burnsidesLlama | (~burnsides@dhcp168-015.wadham.ox.ac.uk) (Remote host closed the connection) |
2021-11-15 19:31:15 +0100 | <tom_> | So I was planning on making a player a Mealy machine but I am not sure if using Mealy is correct as changes to the game state such as next turn will trigger changes to players |
2021-11-15 19:31:24 +0100 | burnsidesLlama | (~burnsides@dhcp168-015.wadham.ox.ac.uk) |
2021-11-15 19:31:24 +0100 | chomwitt | (~chomwitt@2a02:587:dc12:3f00:12c3:7bff:fe6d:d374) (Ping timeout: 268 seconds) |
2021-11-15 19:32:04 +0100 | <davean> | It depends on your model of a game - turn change is a symbol in the language of a card game |
2021-11-15 19:32:11 +0100 | <davean> | as if recieving a card |
2021-11-15 19:32:16 +0100 | <davean> | and you emit your actions |
2021-11-15 19:32:28 +0100 | <davean> | it makes sense as a mealy if you want to think about it that way |
2021-11-15 19:33:07 +0100 | <davean> | This is very much like SAX parsing |
2021-11-15 19:33:20 +0100 | <davean> | if you don't like language analogies |
2021-11-15 19:33:27 +0100 | <davean> | (though its ... idential) |
2021-11-15 19:33:50 +0100 | <tom_> | The card game turns are represented by a moore machine |
2021-11-15 19:34:08 +0100 | <tom_> | So I guess this would emit actions which are read by the player mealys |
2021-11-15 19:34:27 +0100 | <davean> | right |
2021-11-15 19:34:29 +0100 | <davean> | mealy transforms |
2021-11-15 19:34:45 +0100 | <davean> | it transforms a series of card game events into actions specificly |
2021-11-15 19:34:55 +0100 | myShoggoth | (~myShoggot@97-120-85-195.ptld.qwest.net) (Ping timeout: 250 seconds) |
2021-11-15 19:35:09 +0100 | <tom_> | How would I do that with the library? |
2021-11-15 19:35:22 +0100 | <tom_> | Connect a Moore and multiple Mealys |
2021-11-15 19:35:39 +0100 | eggplantade | (~Eggplanta@2600:1700:bef1:5e10:2d58:181a:7f09:e906) (Remote host closed the connection) |
2021-11-15 19:35:41 +0100 | mcglk | (~mcglk@131.191.49.120) (Quit: (seeya)) |
2021-11-15 19:35:52 +0100 | burnsidesLlama | (~burnsides@dhcp168-015.wadham.ox.ac.uk) (Ping timeout: 256 seconds) |
2021-11-15 19:36:09 +0100 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
2021-11-15 19:36:52 +0100 | <davean> | so a Moore still has inputs |
2021-11-15 19:37:07 +0100 | <davean> | what you really want at the top is probably a Source |
2021-11-15 19:37:14 +0100 | <davean> | or something |
2021-11-15 19:37:29 +0100 | <davean> | you could just use that as a clock source though |
2021-11-15 19:38:03 +0100 | <tom_> | Are "actions" the parameters to transition functions? |
2021-11-15 19:38:05 +0100 | mimmy | (~mimmy@72.142.88.18) |
2021-11-15 19:38:27 +0100 | justsomeguy | (~justsomeg@user/justsomeguy) (Quit: WeeChat 3.2) |
2021-11-15 19:43:41 +0100 | mark__ | (~a@p200300ef973db1d9502293e1a26d2ca1.dip0.t-ipconnect.de) |
2021-11-15 19:43:45 +0100 | <davean> | actions in my above usage was the outputs of a player - what they choose to do |
2021-11-15 19:44:41 +0100 | <mark__> | Can someone explain or reproduce this: "x :: Maybe Int; x = Nothing"; seq x ()", ":sprint x" -> "x = _" Why? |
2021-11-15 19:44:44 +0100 | <mark__> | x is not polymorph. It's a value constructor and seq should force it but doesn't. But print does: "print x", ":sprint x" -> "x = Nothing" |
2021-11-15 19:45:29 +0100 | jkaye | (~jkaye@2601:281:8300:7530:7289:19f7:f3fa:e188) |
2021-11-15 19:45:46 +0100 | <mark__> | core dump of x: x = GHC.Maybe.Nothing @ Int |
2021-11-15 19:46:07 +0100 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
2021-11-15 19:46:28 +0100 | <EvanR> | Prints a value without forcing its evaluation. :sprint is similar to :print, with the difference that unevaluated subterms are not bound to new variables, they are simply denoted by _. |
2021-11-15 19:46:33 +0100 | <EvanR> | (docs for :sprint) |
2021-11-15 19:47:11 +0100 | <mark__> | Yes but note the "seq x ()" |
2021-11-15 19:47:41 +0100 | eggplantade | (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) |
2021-11-15 19:48:26 +0100 | <EvanR> | I'm not sure the real reason, but the semantics of seq technically don't say that the first arg will be evaluated |
2021-11-15 19:48:38 +0100 | <tom_> | davean: If a player has lots of state such as current chips,cards etc would you be inclined to use a MealyT (State PlayerInfo) and put common state there? |
2021-11-15 19:48:45 +0100 | <tom_> | placeBet :: Chips -> (Player, Mealy Action Player) |
2021-11-15 19:48:54 +0100 | lavaman | (~lavaman@98.38.249.169) (Ping timeout: 256 seconds) |
2021-11-15 19:49:35 +0100 | <tom_> | I guess that the second type constructor for Mealy is for current state perhaps |
2021-11-15 19:49:49 +0100 | <davean> | I have a meeting,will reply later |
2021-11-15 19:49:54 +0100 | <tom_> | no worries |
2021-11-15 19:50:17 +0100 | <EvanR> | try x::Maybe Int; x = error "BOOM" |
2021-11-15 19:50:32 +0100 | <mark__> | EvanR: The docs say "it evaluates the first argument a to weak head normal form (WHNF)." |
2021-11-15 19:50:41 +0100 | <EvanR> | which docs |
2021-11-15 19:50:58 +0100 | <mark__> | https://hackage.haskell.org/package/ghc-prim-0.8.0/docs/GHC-Prim.html#v:seq |
2021-11-15 19:51:41 +0100 | <EvanR> | interesting, well everything else in that documentation is what I thought I knew |
2021-11-15 19:52:00 +0100 | <EvanR> | for example, if x is definitely not bottom (somehow we know this), seq is not required to evalauted it |
2021-11-15 19:52:42 +0100 | <EvanR> | seq only ensures that if x would explode, seq x foo explodes |
2021-11-15 19:52:57 +0100 | <EvanR> | hence my suggested follow up |
2021-11-15 19:53:11 +0100 | xff0x | (~xff0x@2001:1a81:52ee:6600:9858:fc63:c087:3f3e) (Ping timeout: 264 seconds) |
2021-11-15 19:53:30 +0100 | xff0x | (~xff0x@2001:1a81:52ee:6600:288d:876:4868:af07) |
2021-11-15 20:00:00 +0100 | juhp_ | (~juhp@128.106.188.82) |
2021-11-15 20:00:45 +0100 | <mark__> | "x :: Maybe Int; x = error "boom"; seq x ()" throws an error. But this is expected because seq is trying to evaluate error "boom" to WHNF. |
2021-11-15 20:01:34 +0100 | <EvanR> | it does in this case |
2021-11-15 20:01:43 +0100 | <EvanR> | which is good |
2021-11-15 20:02:13 +0100 | juhp | (~juhp@128.106.188.220) (Ping timeout: 268 seconds) |
2021-11-15 20:02:14 +0100 | juhp_ | juhp |
2021-11-15 20:02:22 +0100 | <EvanR> | I put x=Just undefined, then seq x () leaves x=_. But y <- evaluate x results in x=Just _ |
2021-11-15 20:02:43 +0100 | myShoggoth | (~myShoggot@97-120-85-195.ptld.qwest.net) |
2021-11-15 20:03:43 +0100 | <EvanR> | otoh x=undefined, y <- evaluate x crashes. Which is good. otoh x=Just undefined, y <- evaluate (seq x ()) results in x=_ |
2021-11-15 20:04:20 +0100 | <c_wraith> | EvanR: cannot repro. https://paste.tomsmeding.com/xdLmAFHS |
2021-11-15 20:04:39 +0100 | sprout_ | (~quassel@2a02:a467:ccd6:1:e14a:d90e:46d2:87c4) |
2021-11-15 20:04:43 +0100 | <EvanR> | You may want to try putting a non trivial computation in x which is not bottom and see if it's looking at the constant header to avoid evaluating |
2021-11-15 20:05:02 +0100 | <c_wraith> | EvanR: that might be your problem, if you've introduced something typeclass-polymorphic |
2021-11-15 20:05:28 +0100 | <c_wraith> | You might be hitting the lack of monomorphism restriction |
2021-11-15 20:06:13 +0100 | <EvanR> | I reproduced what you got |
2021-11-15 20:06:27 +0100 | <EvanR> | and what I got (by adding the type sign on the same line) |
2021-11-15 20:06:33 +0100 | max22- | (~maxime@2a01cb0883359800387721e60f64db31.ipv6.abo.wanadoo.fr) (Ping timeout: 268 seconds) |
2021-11-15 20:06:33 +0100 | <EvanR> | *interesting* |
2021-11-15 20:06:46 +0100 | <c_wraith> | and when you allow typeclass polymorphism, https://paste.tomsmeding.com/cFWIjwXR |
2021-11-15 20:07:20 +0100 | <c_wraith> | That's why ghci used to have the monomorphism restriction |
2021-11-15 20:07:27 +0100 | <c_wraith> | (it no longer does) |
2021-11-15 20:07:30 +0100 | <EvanR> | I don't really understand |
2021-11-15 20:07:42 +0100 | <EvanR> | more polymorphism results in evaluation |
2021-11-15 20:08:01 +0100 | sprout | (~quassel@2a02:a467:ccd6:1:19a8:3d0f:213:c260) (Ping timeout: 245 seconds) |
2021-11-15 20:08:10 +0100 | <c_wraith> | bounded (type class) polymorphism makes it a function internally |
2021-11-15 20:08:20 +0100 | <c_wraith> | That ghc provides the first function to, automatically |
2021-11-15 20:08:24 +0100 | <EvanR> | what type class are we even talking about |
2021-11-15 20:08:29 +0100 | <c_wraith> | in my example, Num |
2021-11-15 20:08:43 +0100 | <EvanR> | in the original example (let x = Just undefined) ? |
2021-11-15 20:09:28 +0100 | burnsidesLlama | (~burnsides@dhcp168-015.wadham.ox.ac.uk) |
2021-11-15 20:10:15 +0100 | <EvanR> | anyway it seems that in some circumstance seq (legally) won't evaluate the x, like it knows something sprint doesn't |
2021-11-15 20:10:17 +0100 | <c_wraith> | I must not understand what your example is doing, because everything I try works the way I expect.... https://paste.tomsmeding.com/UmfQYs9a |
2021-11-15 20:10:34 +0100 | pieguy128 | (~pieguy128@bras-base-mtrlpq5031w-grc-48-67-70-102-17.dsl.bell.ca) (Quit: ZNC 1.8.2 - https://znc.in) |
2021-11-15 20:10:50 +0100 | <EvanR> | just to be clear, you can reproduce the original thing just chose not to? xD |
2021-11-15 20:11:00 +0100 | <c_wraith> | No, I don't understand it. |
2021-11-15 20:11:08 +0100 | bliminse | (~bliminse@host86-185-253-43.range86-185.btcentralplus.com) (Quit: leaving) |
2021-11-15 20:11:13 +0100 | <c_wraith> | I do what I think you said and get the result I expect. |
2021-11-15 20:11:19 +0100 | <c_wraith> | So I must not understand what you did |
2021-11-15 20:11:25 +0100 | pieguy128 | (~pieguy128@bas1-quebec14-67-70-102-17.dsl.bell.ca) |
2021-11-15 20:12:07 +0100 | <EvanR> | (btw this wasn't my question it's marks) x::Maybe Int; x = Just undefined; seq x (); :sprint x results in x=_ |
2021-11-15 20:12:13 +0100 | <mark__> | c_wraith: Is the behavior I posted also what you expect? Do you expect that seq x () does not eval x to WHNF if x is a monomorphic value con like Nothing :: Maybe Int? |
2021-11-15 20:12:34 +0100 | <EvanR> | it also happens with Just |
2021-11-15 20:13:39 +0100 | <c_wraith> | oh. You're bamboozling yourself |
2021-11-15 20:13:59 +0100 | <c_wraith> | they should never have removed the requirement to use let in ghci |
2021-11-15 20:14:38 +0100 | <EvanR> | ah, using let (and the mono type sig) does change it |
2021-11-15 20:14:42 +0100 | <EvanR> | what the hell is the difference |
2021-11-15 20:14:51 +0100 | bliminse | (~bliminse@host86-185-253-43.range86-185.btcentralplus.com) |
2021-11-15 20:14:53 +0100 | <c_wraith> | it's one statement instead of two |
2021-11-15 20:15:30 +0100 | Profpatsch | (~Profpatsc@static.88-198-193-255.clients.your-server.de) (Ping timeout: 260 seconds) |
2021-11-15 20:15:51 +0100 | <EvanR> | um, my question stands xD |
2021-11-15 20:15:53 +0100 | Profpatsch | (~Profpatsc@static.88-198-193-255.clients.your-server.de) |
2021-11-15 20:15:58 +0100 | <EvanR> | oh it becomes polymorphic? |
2021-11-15 20:16:17 +0100 | <EvanR> | nope |
2021-11-15 20:16:19 +0100 | <mark__> | how would I write it with let? |
2021-11-15 20:16:22 +0100 | unit73e | (~emanuel@2001:818:e8dd:7c00:32b5:c2ff:fe6b:5291) |
2021-11-15 20:16:33 +0100 | <EvanR> | let x::Maybe Int; x=Just undefined |
2021-11-15 20:16:55 +0100 | <EvanR> | which doesn't result in a different type for x |
2021-11-15 20:17:03 +0100 | fef | (~thedawn@user/thedawn) (Remote host closed the connection) |
2021-11-15 20:17:04 +0100 | <EvanR> | but seq treats it differently |
2021-11-15 20:17:14 +0100 | <mark__> | I tried this but if i do this ghci waits for more input. |
2021-11-15 20:17:17 +0100 | <c_wraith> | My version of ghci doesn't even let me enter what you're doing. |
2021-11-15 20:17:32 +0100 | <c_wraith> | If I want to put a type signature there, I need the let |
2021-11-15 20:17:40 +0100 | deadmarshal | (~deadmarsh@95.38.116.242) (Ping timeout: 265 seconds) |
2021-11-15 20:17:45 +0100 | <EvanR> | so we have three different acting versions of ghci? xD |
2021-11-15 20:17:47 +0100 | desantra | (~skykanin@user/skykanin) |
2021-11-15 20:17:56 +0100 | <EvanR> | I don't wait for more input and I don't need let |
2021-11-15 20:18:13 +0100 | <c_wraith> | This is why I keep pastebinning my examples - it makes it a lot more clear exactly what I'm entering |
2021-11-15 20:18:27 +0100 | aliosablack | (~chomwitt@2a02:587:dc12:3f00:12c3:7bff:fe6d:d374) (Quit: Leaving) |
2021-11-15 20:18:34 +0100 | <EvanR> | i'll pastebin something |
2021-11-15 20:19:00 +0100 | <tomsmeding> | c_wraith: https://paste.tomsmeding.com/4ir9lLhI |
2021-11-15 20:19:26 +0100 | <unit73e> | I find it hard to believe that simple code doesn't work in a past version of ghci lol |
2021-11-15 20:19:33 +0100 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 250 seconds) |
2021-11-15 20:19:42 +0100 | <EvanR> | https://paste.tomsmeding.com/EPxbDEmP |
2021-11-15 20:19:48 +0100 | <mark__> | Can reproduce! Disabled multiline commands. Now if I do "let x = Nothing :: Maybe Int" I get :sprint = x = Nothing. |
2021-11-15 20:20:24 +0100 | <c_wraith> | unit73e: ghci used to be very clear and make perfect sense, and people hated it. So they kept making it more and more ad-hoc |
2021-11-15 20:20:45 +0100 | <mark__> | So what exactly is the difference between "x = Nothing" and "let x = Nothing"? |
2021-11-15 20:20:52 +0100 | <mark__> | in ghci |
2021-11-15 20:21:11 +0100 | <EvanR> | supposedly no let means it was two commands |
2021-11-15 20:21:20 +0100 | <EvanR> | not sure how that matters here |
2021-11-15 20:21:40 +0100 | <c_wraith> | I think this is just a ghci bug |
2021-11-15 20:21:49 +0100 | <mark__> | Learners should know this because it's the difference between expected and weird behavior. |
2021-11-15 20:22:05 +0100 | mastarija | (~mastarija@2a05:4f46:e06:ff00:dd0f:baa7:ff4f:4d80) |
2021-11-15 20:22:24 +0100 | <c_wraith> | My fix would be to remove the ability to revert ghci to sane behavior. |
2021-11-15 20:22:38 +0100 | <EvanR> | mandatory insanity |
2021-11-15 20:22:41 +0100 | <c_wraith> | err. haha. that's a confused sentence. |
2021-11-15 20:22:54 +0100 | <c_wraith> | Revert ghci to sanity. |
2021-11-15 20:23:07 +0100 | <c_wraith> | remove the ability to enter top-level declarations |
2021-11-15 20:23:34 +0100 | <EvanR> | so it might be a special treatment of top level objects |
2021-11-15 20:23:42 +0100 | <c_wraith> | yeah, and it's buggy |
2021-11-15 20:23:49 +0100 | <c_wraith> | that isn't correct behavior |
2021-11-15 20:24:10 +0100 | <EvanR> | since it technically doesn't violate seq, maybe no one noticed |
2021-11-15 20:24:24 +0100 | <unit73e> | I don't think it matters |
2021-11-15 20:24:29 +0100 | <c_wraith> | I mean, it's not a spec violation at all |
2021-11-15 20:24:37 +0100 | <c_wraith> | lazy evaluation is *not* a requirement of the Haskell spec |
2021-11-15 20:24:46 +0100 | <c_wraith> | it only requires non-strict evaluation |
2021-11-15 20:24:59 +0100 | <tomsmeding> | i.e. call by name is also allowed? |
2021-11-15 20:25:02 +0100 | <c_wraith> | yes |
2021-11-15 20:25:05 +0100 | <EvanR> | it's not a lazy evaluation it's a no evaluation at all |
2021-11-15 20:25:11 +0100 | <c_wraith> | and that's the observed behavior in that case |
2021-11-15 20:25:16 +0100 | <EvanR> | like a no-call in football |
2021-11-15 20:25:23 +0100 | <c_wraith> | No, it's call-by-name evaluation |
2021-11-15 20:25:42 +0100 | <EvanR> | oh god... the call-bys |
2021-11-15 20:25:42 +0100 | <c_wraith> | ie, it doesn't memoize the result |
2021-11-15 20:25:50 +0100 | <tomsmeding> | (in case you don't know that term: re-evaluate at each usage site, instead of only at the first usage and then memoise) |
2021-11-15 20:25:50 +0100 | <mark__> | is there a short example to show the differnce between lazy and non-strict evalutation? I always thought it's the same thing. |
2021-11-15 20:26:03 +0100 | <EvanR> | so you think it actually evaluates |
2021-11-15 20:26:15 +0100 | <c_wraith> | yes. I think it evaluates it, and then throws it out. |
2021-11-15 20:26:37 +0100 | <mark__> | one of them memoizes the other doesn't? |
2021-11-15 20:26:42 +0100 | <c_wraith> | yes |
2021-11-15 20:27:20 +0100 | <c_wraith> | more specifically: non-strict means... any strategy that isn't strict. |
2021-11-15 20:27:22 +0100 | <unit73e> | just so you know ghci 9.0.1 crashes if you do that |
2021-11-15 20:27:35 +0100 | <c_wraith> | ghc 9.0 was really buggy in a lot of ways |
2021-11-15 20:27:43 +0100 | <unit73e> | I mean this: x::Maybe Int; x=Just undefined |
2021-11-15 20:27:47 +0100 | <unit73e> | throws an exception |
2021-11-15 20:27:58 +0100 | <mark__> | so it's eager? |
2021-11-15 20:28:00 +0100 | <EvanR> | weird |
2021-11-15 20:28:02 +0100 | <c_wraith> | an exception? or just a compilation error |
2021-11-15 20:28:08 +0100 | johnny_sitar | (~artur@078088015209.bialystok.vectranet.pl) |
2021-11-15 20:28:19 +0100 | <unit73e> | exception |
2021-11-15 20:28:42 +0100 | <unit73e> | https://paste.tomsmeding.com/4UBU57g1 |
2021-11-15 20:28:56 +0100 | <EvanR> | ah well you asked for x |
2021-11-15 20:28:57 +0100 | <c_wraith> | oh, that's expected. you tried to print it |
2021-11-15 20:28:59 +0100 | <EvanR> | which prints it out |
2021-11-15 20:29:12 +0100 | <c_wraith> | that's why we were using :sprint |
2021-11-15 20:29:20 +0100 | <c_wraith> | which only prints as much as has been evaluated |
2021-11-15 20:29:36 +0100 | <tomsmeding> | the call by name evaluation is inconsistent though: https://paste.tomsmeding.com/tS1PgVlB |
2021-11-15 20:29:43 +0100 | <unit73e> | alright lets try again |
2021-11-15 20:30:03 +0100 | <EvanR> | *only prints as much as has been evaluated... and then saved |
2021-11-15 20:30:07 +0100 | <c_wraith> | tomsmeding: well yes. I'm certain it's a bug, from GHC's point of view. It's just not a spec violation |
2021-11-15 20:30:34 +0100 | chianuo | (chianuo@gateway/vpn/protonvpn/chianuo) |
2021-11-15 20:30:42 +0100 | tomsmeding | has apparently run into this bug half a million times already |
2021-11-15 20:30:46 +0100 | <mark__> | c_wraith: If non-strict means no memoization does this there is no sharing? So square x evalautes to x * x and if x is complicated term it has to compute it every time? |
2021-11-15 20:30:49 +0100 | <tomsmeding> | I was certain I had no idea how :sprint worked |
2021-11-15 20:30:56 +0100 | <tomsmeding> | because I'd tried this always without 'let' |
2021-11-15 20:30:57 +0100 | <mark__> | *mean |
2021-11-15 20:31:03 +0100 | <unit73e> | https://paste.tomsmeding.com/cIUqPUcn |
2021-11-15 20:31:06 +0100 | <c_wraith> | mark__: non-strict just means "not strict". It could memoize, or not. |
2021-11-15 20:31:07 +0100 | <unit73e> | so.. _ |
2021-11-15 20:31:11 +0100 | <EvanR> | lazy evaluation (save the result) is a specialized strategy for non-strict |
2021-11-15 20:31:14 +0100 | <unit73e> | it does make sense |
2021-11-15 20:31:29 +0100 | <unit73e> | not seq nonsense |
2021-11-15 20:31:44 +0100 | Raito_Bezarius | (~Raito@2a01:e0a:5f9:9681:1c66:fc75:c47c:31bc) (Changing host) |
2021-11-15 20:31:44 +0100 | Raito_Bezarius | (~Raito@wireguard/tunneler/raito-bezarius) |
2021-11-15 20:31:52 +0100 | <unit73e> | same result I guess |
2021-11-15 20:31:56 +0100 | <EvanR> | so morally, you expect seq to evaluate the argument |
2021-11-15 20:32:20 +0100 | <tomsmeding> | consider the program 'let x = ... ; y = ... in x + x'. Suppose you evaluate this program. Strict (call-by-value) evaluation would compute x and y ; lazy (call-by-need) would compute x once ; call-by-name would compute x _twice_ |
2021-11-15 20:32:25 +0100 | <c_wraith> | not morally. I expect it to obey its (very precise) specification |
2021-11-15 20:32:31 +0100 | <EvanR> | well, it does here |
2021-11-15 20:32:55 +0100 | <EvanR> | even if it didn't evaluate due to non-bottom |
2021-11-15 20:33:13 +0100 | <mark__> | I learned two things for ghci: 1) Check MMR 2) use "let" |
2021-11-15 20:33:17 +0100 | bitmapper | (uid464869@lymington.irccloud.com) (Quit: Connection closed for inactivity) |
2021-11-15 20:33:24 +0100 | <tomsmeding> | that (1) is a classic in #haskell |
2021-11-15 20:33:59 +0100 | elvishjerricco | (sid237756@helmsley.irccloud.com) (Ping timeout: 264 seconds) |
2021-11-15 20:34:14 +0100 | <ozzloy_> | c_wraith, i hope you got sleep or will get sleep soon |
2021-11-15 20:34:16 +0100 | <c_wraith> | typeclass polymorphism often prevents sharing, in ghci |
2021-11-15 20:34:29 +0100 | <c_wraith> | ozzloy_: hasn't it been like 10 hours? I slept. :) |
2021-11-15 20:34:40 +0100 | <ozzloy_> | it has! |
2021-11-15 20:34:55 +0100 | <mark__> | tomsmeding: I thought I did not understand :sprint. But truth is, i did not understand ghci :) |
2021-11-15 20:35:02 +0100 | elvishjerricco | (sid237756@helmsley.irccloud.com) |
2021-11-15 20:35:08 +0100 | mastarija | (~mastarija@2a05:4f46:e06:ff00:dd0f:baa7:ff4f:4d80) (Quit: Leaving) |
2021-11-15 20:35:36 +0100 | <tomsmeding> | amen |
2021-11-15 20:35:50 +0100 | <c_wraith> | I do think you found a ghci bug |
2021-11-15 20:35:51 +0100 | desantra | (~skykanin@user/skykanin) (Quit: WeeChat 3.3) |
2021-11-15 20:36:11 +0100 | <c_wraith> | that behavior shouldn't change based on that syntactic difference |
2021-11-15 20:36:36 +0100 | <c_wraith> | But I'm pretty sure it's only a ghci bug, and not one that breaks any specified behavior. |
2021-11-15 20:41:17 +0100 | <tomsmeding> | is someone going to report this bug? Otherwise I will :p |
2021-11-15 20:42:13 +0100 | Midjak | (~Midjak@82-65-111-221.subs.proxad.net) (Quit: This computer has gone to sleep) |
2021-11-15 20:49:29 +0100 | Guest5126 | (~Guest51@180.230.60.84) |
2021-11-15 20:50:56 +0100 | mimmy | (~mimmy@72.142.88.18) (Ping timeout: 268 seconds) |
2021-11-15 20:52:24 +0100 | chianuo | (chianuo@gateway/vpn/protonvpn/chianuo) (Quit: WeeChat 3.4-dev) |
2021-11-15 20:54:41 +0100 | <mark__> | tomsmeding: yes please. To reproduce 1) bad case: |
2021-11-15 20:54:44 +0100 | <mark__> | "x :: Maybe Int; x = Nothing", ":sprint x" -> "x = _", "seq x ()", ":sprint x" -> "x = _" (This is not in WHNF!) |
2021-11-15 20:54:47 +0100 | <mark__> | good case: |
2021-11-15 20:54:56 +0100 | <mark__> | with let: "let y :: Maybe Int; y = Nothing"; ":sprint y" -> "y = Nothing" |
2021-11-15 20:55:32 +0100 | <tomsmeding> | right, including the comparison with my product example, which is inconsistent with "it's just call-by-name" |
2021-11-15 20:55:47 +0100 | tomsmeding | is building a ghc from HEAD to ensure it's not fixed there |
2021-11-15 20:57:11 +0100 | burnsidesLlama | (~burnsides@dhcp168-015.wadham.ox.ac.uk) (Remote host closed the connection) |
2021-11-15 20:57:44 +0100 | burnsidesLlama | (~burnsides@dhcp168-015.wadham.ox.ac.uk) |
2021-11-15 20:57:55 +0100 | mimmy | (~mimmy@72.142.88.18) |
2021-11-15 20:58:12 +0100 | geekosaur | (~geekosaur@xmonad/geekosaur) (Remote host closed the connection) |
2021-11-15 20:58:55 +0100 | geekosaur | (~geekosaur@xmonad/geekosaur) |
2021-11-15 21:02:00 +0100 | burnsidesLlama | (~burnsides@dhcp168-015.wadham.ox.ac.uk) (Ping timeout: 256 seconds) |
2021-11-15 21:05:31 +0100 | juhp | (~juhp@128.106.188.82) (Ping timeout: 265 seconds) |
2021-11-15 21:06:46 +0100 | juhp | (~juhp@128.106.188.82) |
2021-11-15 21:08:04 +0100 | <Guest5126> | Is this the Tom and Jerry market? Send me a private message |
2021-11-15 21:10:02 +0100 | <tomsmeding> | mark__: the issue is confused by the essentially orthogonal, but nevertheless related, https://gitlab.haskell.org/ghc/ghc/-/issues/10160 |
2021-11-15 21:10:24 +0100 | <tomsmeding> | (which is still valid, by my limited testing) |
2021-11-15 21:11:11 +0100 | cjb | (~cjbayliss@user/cjb) |
2021-11-15 21:12:31 +0100 | eruditass | (uid248673@uxbridge.irccloud.com) (Ping timeout: 268 seconds) |
2021-11-15 21:13:11 +0100 | pop3 | (~pop3@user/pop3) (Remote host closed the connection) |
2021-11-15 21:13:33 +0100 | eruditass | (uid248673@uxbridge.irccloud.com) |
2021-11-15 21:14:03 +0100 | pop3 | (~pop3@user/pop3) |
2021-11-15 21:15:11 +0100 | <mark__> | Is the fact that y = Nothing is not a thunk but immediately known even though seq/print wasn't used expected behavior or is an instance of 10160? |
2021-11-15 21:15:23 +0100 | <mark__> | with respect the good case (2) |
2021-11-15 21:15:27 +0100 | <mark__> | *to |
2021-11-15 21:16:02 +0100 | <tomsmeding> | "y = Nothing" not yielding a thunk is naively unexpected, but nevertheless correct, behaviour |
2021-11-15 21:16:07 +0100 | <tomsmeding> | done for performance reasons |
2021-11-15 21:16:20 +0100 | Guest42 | (~Guest42@eth-west-pareq2-46-193-4-100.wb.wifirst.net) |
2021-11-15 21:16:58 +0100 | <tomsmeding> | ah but this #10160 is producing redd herrings |
2021-11-15 21:17:15 +0100 | <tomsmeding> | mark__: https://paste.tomsmeding.com/Vw5Rz83h |
2021-11-15 21:17:31 +0100 | <EvanR> | there's only ever 1 Nothing, [], (), floating around at any given time xD |
2021-11-15 21:17:35 +0100 | <tomsmeding> | the fact that Nothing is a plain data constructor changes things |
2021-11-15 21:17:35 +0100 | wonko | (~wjc@user/wonko) (Remote host closed the connection) |
2021-11-15 21:19:34 +0100 | <mark__> | the first one looks fine but the second should be _ : _, shouldn't it? |
2021-11-15 21:22:14 +0100 | <tomsmeding> | mark__: sorry, the essential comparison missing: https://paste.tomsmeding.com/2e92s4gm |
2021-11-15 21:23:09 +0100 | Guest42 | (~Guest42@eth-west-pareq2-46-193-4-100.wb.wifirst.net) (Quit: Client closed) |
2021-11-15 21:23:25 +0100 | max22- | (~maxime@2a01cb08833598005714d2986a3eb6d2.ipv6.abo.wanadoo.fr) |
2021-11-15 21:24:05 +0100 | Lycurgus | (~juan@98.4.112.204) |
2021-11-15 21:24:16 +0100 | dfip^ | (~dfip@h50.174.139.63.static.ip.windstream.net) |
2021-11-15 21:24:38 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-11-15 21:24:40 +0100 | alx741 | (~alx741@181.196.68.87) (Ping timeout: 256 seconds) |
2021-11-15 21:25:15 +0100 | aegon | (~mike@174.127.249.180) |
2021-11-15 21:26:05 +0100 | <tomsmeding> | conjecture: 'seq x ()' leaves a ghci top-level definition 'x' unevaluated precisely if 1. x is defined without 'let', and 2. x is defined as a plain data constructor, not a thunk |
2021-11-15 21:26:12 +0100 | <mark__> | c (no let) is simply wrong. That's no WHNF. d (with let) did not stop at the first value con (somehow "overevaluated") but is not wrong. |
2021-11-15 21:26:24 +0100 | deadmarshal | (~deadmarsh@95.38.116.242) |
2021-11-15 21:26:43 +0100 | <tomsmeding> | (d) is because of #10160 Ithink |
2021-11-15 21:28:19 +0100 | <mark__> | i think technically it's ok because every normal form is also whnf |
2021-11-15 21:28:23 +0100 | <tomsmeding> | (ghc HEAD does the same thing in for my last paste) |
2021-11-15 21:28:27 +0100 | <tomsmeding> | yeah |
2021-11-15 21:30:04 +0100 | <tomsmeding> | Prelude> let z :: [Int] ; z = [1,2,undefined,3] | Prelude> :sprint z | z = [1,2,_,3] |
2021-11-15 21:30:49 +0100 | <tomsmeding> | this is more than #10160 says, because one of those (:) applications doesn't have only NF arguments! |
2021-11-15 21:30:54 +0100 | deadmarshal | (~deadmarsh@95.38.116.242) (Ping timeout: 256 seconds) |
2021-11-15 21:31:59 +0100 | yauhsien | (~yauhsien@61-231-43-127.dynamic-ip.hinet.net) |
2021-11-15 21:33:31 +0100 | <EvanR> | tomsmeding, I was thinking that, and originally though I could test it with a less trivial top level definition |
2021-11-15 21:33:49 +0100 | burnsidesLlama | (~burnsides@dhcp168-015.wadham.ox.ac.uk) |
2021-11-15 21:34:02 +0100 | <EvanR> | but... it's kind of like tree falling in the woods with no one there |
2021-11-15 21:35:16 +0100 | <EvanR> | z's top node is :, but if it was an actual computation that would need to run, would sprint see it then |
2021-11-15 21:35:25 +0100 | <EvanR> | without let |
2021-11-15 21:35:54 +0100 | mcglk | (~mcglk@131.191.49.120) |
2021-11-15 21:36:34 +0100 | yauhsien | (~yauhsien@61-231-43-127.dynamic-ip.hinet.net) (Ping timeout: 256 seconds) |
2021-11-15 21:36:53 +0100 | <tomsmeding> | EvanR: see https://paste.tomsmeding.com/tS1PgVlB |
2021-11-15 21:37:44 +0100 | zincy_ | (~zincy@2a00:23c8:970c:4801:350f:7ee:191a:6f65) |
2021-11-15 21:37:50 +0100 | <tomsmeding> | EvanR: or more to the point to your exact question: https://paste.tomsmeding.com/De664kvY |
2021-11-15 21:38:24 +0100 | <tomsmeding> | this is consistent with the first case in https://paste.tomsmeding.com/2e92s4gm |
2021-11-15 21:38:55 +0100 | <tomsmeding> | the only case that is not explained by #10160 is the third case in https://paste.tomsmeding.com/2e92s4gm , I think |
2021-11-15 21:39:17 +0100 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
2021-11-15 21:39:21 +0100 | burnsidesLlama | (~burnsides@dhcp168-015.wadham.ox.ac.uk) (Ping timeout: 265 seconds) |
2021-11-15 21:40:00 +0100 | slack1256 | (~slack1256@186.11.99.34) |
2021-11-15 21:40:24 +0100 | Codaraxis | (~Codaraxis@user/codaraxis) |
2021-11-15 21:40:31 +0100 | <EvanR> | it does indeed evaluate a and remember it without let if it would have to do a computation |
2021-11-15 21:40:43 +0100 | <EvanR> | i knew it! xD |
2021-11-15 21:41:08 +0100 | <slack1256> | Is there anyway to specify different cost centers break down on the same executable? Currently I am running the same program with `-hc` or `-hm` to the the whole picture. |
2021-11-15 21:41:11 +0100 | <tomsmeding> | yeah, but if evaluates (possibly nested) direct constructor applications in one go |
2021-11-15 21:41:15 +0100 | <tomsmeding> | s/if/it/ |
2021-11-15 21:41:25 +0100 | <slack1256> | Probably I could get the same view of the RTS from the eventlog interface. Has somebody done that? |
2021-11-15 21:42:08 +0100 | desantra | (~skykanin@user/skykanin) |
2021-11-15 21:42:39 +0100 | <tomsmeding> | EvanR: um wat? 'a :: Int ; a = id [1,2,3]' gives _ and _:_ -- now it suddenly breaks up the NF chunk |
2021-11-15 21:45:31 +0100 | <tomsmeding> | lol |
2021-11-15 21:45:40 +0100 | <EvanR> | that tracks |
2021-11-15 21:45:49 +0100 | <tomsmeding> | EvanR: https://paste.tomsmeding.com/7ONg80mp |
2021-11-15 21:45:52 +0100 | lavaman | (~lavaman@98.38.249.169) |
2021-11-15 21:45:56 +0100 | <tomsmeding> | madness |
2021-11-15 21:45:58 +0100 | <EvanR> | assuming id counts as requiring computation |
2021-11-15 21:46:11 +0100 | <tomsmeding> | well it has different behaviour than everything :p |
2021-11-15 21:46:22 +0100 | <EvanR> | c and e shows |
2021-11-15 21:47:32 +0100 | <EvanR> | just the fact that we are investigating this for the sake of it, when if it wasn't like this, we wouldn't be, is annoying xD |
2021-11-15 21:48:02 +0100 | <tomsmeding> | EvanR: in my latest paste, the non-let version is actually _more_ consistent: there, the results for map and id are equivalent |
2021-11-15 21:50:28 +0100 | lavaman | (~lavaman@98.38.249.169) (Ping timeout: 265 seconds) |
2021-11-15 21:52:49 +0100 | m4lvin | (~m4lvin@w4eg.de) (Quit: m4lvin) |
2021-11-15 21:53:40 +0100 | jle` | (~jle`@2603-8001-3b02-84d4-0000-0000-0000-025d.res6.spectrum.com) (Quit: WeeChat 3.3) |
2021-11-15 21:54:01 +0100 | jle` | (~jle`@2603-8001-3b02-84d4-0000-0000-0000-025d.res6.spectrum.com) |
2021-11-15 21:54:24 +0100 | m4lvin | (~m4lvin@w4eg.de) |
2021-11-15 21:54:42 +0100 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 256 seconds) |
2021-11-15 21:55:21 +0100 | Farzad | (~FarzadBek@151.238.206.168) (Quit: Leaving) |
2021-11-15 21:56:57 +0100 | zincy_ | (~zincy@2a00:23c8:970c:4801:350f:7ee:191a:6f65) (Remote host closed the connection) |
2021-11-15 21:58:24 +0100 | Lycurgus | (~juan@98.4.112.204) (Quit: Exeunt) |
2021-11-15 21:59:01 +0100 | <Guest5126> | hi |
2021-11-15 21:59:10 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds) |
2021-11-15 22:00:21 +0100 | <Guest5126> | Anyone who knows how to contact Tom and Jerry Market |
2021-11-15 22:03:09 +0100 | Tuplanolla | (~Tuplanoll@91-159-69-50.elisa-laajakaista.fi) |
2021-11-15 22:04:51 +0100 | johnny_sitar | (~artur@078088015209.bialystok.vectranet.pl) (Ping timeout: 250 seconds) |
2021-11-15 22:05:23 +0100 | <geekosaur> | why would you be asking that here? |
2021-11-15 22:07:29 +0100 | Guest5161 | (~Guest51@180.230.60.84) |
2021-11-15 22:07:53 +0100 | _ht | (~quassel@82-169-194-8.biz.kpn.net) (Remote host closed the connection) |
2021-11-15 22:08:39 +0100 | theproffesor | (~theproffe@2601:282:847f:8010::390f) |
2021-11-15 22:08:39 +0100 | theproffesor | (~theproffe@2601:282:847f:8010::390f) (Changing host) |
2021-11-15 22:08:40 +0100 | theproffesor | (~theproffe@user/theproffesor) |
2021-11-15 22:09:21 +0100 | alx741 | (~alx741@181.196.68.87) |
2021-11-15 22:10:14 +0100 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
2021-11-15 22:10:34 +0100 | <shapr> | what was that about? |
2021-11-15 22:10:42 +0100 | son0p | (~ff@181.136.122.143) |
2021-11-15 22:10:52 +0100 | <tomsmeding> | well, the Tom and Jerry Market, presumably |
2021-11-15 22:10:56 +0100 | <geekosaur> | no clue |
2021-11-15 22:12:53 +0100 | <sm> | toons need groceries too |
2021-11-15 22:14:29 +0100 | derelict | (~derelict@user/derelict) (Quit: bye) |
2021-11-15 22:14:52 +0100 | <tomsmeding> | EvanR: https://tomsmeding.com/vang/7qvC5S do you agree this describes the issue adequately? |
2021-11-15 22:14:55 +0100 | <tomsmeding> | mark__: ^ |
2021-11-15 22:14:59 +0100 | derelict | (~derelict@user/derelict) |
2021-11-15 22:15:36 +0100 | raehik | (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 265 seconds) |
2021-11-15 22:16:22 +0100 | mustafa | (sid502723@rockylinux/releng/mustafa) () |
2021-11-15 22:16:32 +0100 | mustafa | (sid502723@rockylinux/releng/mustafa) |
2021-11-15 22:17:33 +0100 | <mark__> | Haha, so now we have: No 'let': a) as expected, c) as expected, e) simply wrong. With 'let': b) as expected, d) not intuitive but not wrong, f) not intuitive but not wrong. :) |
2021-11-15 22:17:46 +0100 | <mark__> | Very nice. Thank you for writing this up. |
2021-11-15 22:19:31 +0100 | pavonia | (~user@user/siracusa) |
2021-11-15 22:19:34 +0100 | <tomsmeding> | yeah it's beautiful, isn't it? |
2021-11-15 22:19:39 +0100 | <mark__> | So we only get consistent and expected behavior if the outermost call is not 'id' and not a value con. |
2021-11-15 22:19:50 +0100 | m4lvin | (~m4lvin@w4eg.de) (Quit: m4lvin) |
2021-11-15 22:20:01 +0100 | jespada | (~jespada@252-155-231-201.fibertel.com.ar) |
2021-11-15 22:20:10 +0100 | <tomsmeding> | the 'id' case is an example of a case where, after WHNF evaluation, you get an entire constructor application chunk |
2021-11-15 22:20:17 +0100 | m4lvin | (~m4lvin@w4eg.de) |
2021-11-15 22:20:38 +0100 | <tomsmeding> | in that case, and in the value con case, #10160 applies and wreaks havoc |
2021-11-15 22:21:01 +0100 | <tomsmeding> | the _new_ thing with this issue is the discrepancy between let and non-let |
2021-11-15 22:21:19 +0100 | <tomsmeding> | I'll submit :) |
2021-11-15 22:21:25 +0100 | <mark__> | thank you |
2021-11-15 22:21:33 +0100 | <tomsmeding> | EvanR: mark__: https://gitlab.haskell.org/ghc/ghc/-/issues/20687 |
2021-11-15 22:24:27 +0100 | <tomsmeding> | and now I'm off to bed :) |
2021-11-15 22:24:50 +0100 | <EvanR> | correct |
2021-11-15 22:25:10 +0100 | zincy_ | (~zincy@host86-181-60-139.range86-181.btcentralplus.com) |
2021-11-15 22:26:26 +0100 | desantra | (~skykanin@user/skykanin) (Quit: WeeChat 3.3) |
2021-11-15 22:28:52 +0100 | <Guest5161> | Can anyone tell me how to contact the Tom and Jerry store? |
2021-11-15 22:29:07 +0100 | ChanServ | +o geekosaur |
2021-11-15 22:29:18 +0100 | geekosaur | +b *!*Guest51@180.230.60.* |
2021-11-15 22:29:18 +0100 | Guest5161 | geekosaur (Guest5161) |
2021-11-15 22:29:27 +0100 | geekosaur | -o geekosaur |
2021-11-15 22:29:57 +0100 | <geekosaur> | hm, less than ideal, that ban |
2021-11-15 22:30:01 +0100 | ChanServ | +o geekosaur |
2021-11-15 22:30:59 +0100 | geekosaur | +b *!*@180.230.60.84 |
2021-11-15 22:31:08 +0100 | geekosaur | -b *!*Guest51@180.230.60.* |
2021-11-15 22:31:19 +0100 | geekosaur | -o geekosaur |
2021-11-15 22:32:20 +0100 | zincy_ | (~zincy@host86-181-60-139.range86-181.btcentralplus.com) (Remote host closed the connection) |
2021-11-15 22:32:33 +0100 | zincy_ | (~zincy@2a00:23c8:970c:4801:350f:7ee:191a:6f65) |
2021-11-15 22:32:42 +0100 | ystael | (~ystael@user/ystael) (Read error: Connection reset by peer) |
2021-11-15 22:33:54 +0100 | ystael | (~ystael@user/ystael) |
2021-11-15 22:38:10 +0100 | <yushyin> | with https://libera.chat/guides/bots#litharge you can add a ban record for e.g. a few days; useful for ip bans |
2021-11-15 22:38:54 +0100 | <geekosaur> | I was planning to remove it this evening, but I'll look into it |
2021-11-15 22:40:11 +0100 | <geekosaur> | ooh, I like that last part. I'm always worried about the scope of bans |
2021-11-15 22:40:24 +0100 | zincy_ | (~zincy@2a00:23c8:970c:4801:350f:7ee:191a:6f65) (Remote host closed the connection) |
2021-11-15 22:40:54 +0100 | ChanServ | +o geekosaur |
2021-11-15 22:42:18 +0100 | <geekosaur> | welp. I got ops but not permissions for that :( |
2021-11-15 22:42:19 +0100 | geekosaur | -o geekosaur |
2021-11-15 22:43:19 +0100 | zincy_ | (~zincy@host86-181-60-139.range86-181.btcentralplus.com) |
2021-11-15 22:46:02 +0100 | myShoggoth | (~myShoggot@97-120-85-195.ptld.qwest.net) (Read error: Connection reset by peer) |
2021-11-15 22:46:19 +0100 | myShoggoth | (~myShoggot@97-120-85-195.ptld.qwest.net) |
2021-11-15 22:46:28 +0100 | Guest4530 | (~Guest45@185.16.69.203) |
2021-11-15 22:50:44 +0100 | <ozzloy_> | what's this about tom and jerry store? is this a meme i'm unaware of? |
2021-11-15 22:51:37 +0100 | slack1256 | hates PINNED memory leaks. |
2021-11-15 22:52:18 +0100 | <EvanR> | I'm not sure I wanna know what tom and jerry is |
2021-11-15 22:52:42 +0100 | <EvanR> | (probably not the cartoon) |
2021-11-15 22:56:42 +0100 | jespada | (~jespada@252-155-231-201.fibertel.com.ar) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
2021-11-15 23:00:11 +0100 | geekosaur | guesses it's some sort of cat-and-mouse allusion to "hacking" and we have another idiot who thinks all IRCers are "hackers" |
2021-11-15 23:00:33 +0100 | zebrag | (~chris@user/zebrag) |
2021-11-15 23:00:51 +0100 | <ozzloy_> | hello, fellow hackers |
2021-11-15 23:03:14 +0100 | ozzloy_ | adjusts his novelty disguise glasses with giant nose and obviously fake moustachioeau |
2021-11-15 23:04:13 +0100 | unit73e | (~emanuel@2001:818:e8dd:7c00:32b5:c2ff:fe6b:5291) (Ping timeout: 250 seconds) |
2021-11-15 23:04:18 +0100 | <EvanR> | no one here but us hackers |
2021-11-15 23:04:27 +0100 | <ozzloy_> | tis a good day for doing the illegals with the computers. wouldn't you say? |
2021-11-15 23:06:18 +0100 | ChanServ | +o geekosaur |
2021-11-15 23:06:25 +0100 | litharge | (litharge@libera/bot/litharge) |
2021-11-15 23:07:04 +0100 | geekosaur | -o geekosaur |
2021-11-15 23:09:42 +0100 | infinity0 | (~infinity0@occupy.ecodis.net) (Remote host closed the connection) |
2021-11-15 23:10:59 +0100 | <shapr> | ozzloy_: righto old chap |
2021-11-15 23:12:00 +0100 | dhouthoo | (~dhouthoo@178-117-36-167.access.telenet.be) (Quit: WeeChat 3.3) |
2021-11-15 23:16:49 +0100 | burnsidesLlama | (~burnsides@dhcp168-015.wadham.ox.ac.uk) |
2021-11-15 23:18:34 +0100 | mikoto-chan | (~mikoto-ch@esm-84-240-99-143.netplaza.fi) (Ping timeout: 256 seconds) |
2021-11-15 23:20:41 +0100 | mimmy | (~mimmy@72.142.88.18) (Ping timeout: 250 seconds) |
2021-11-15 23:27:04 +0100 | takuan | (~takuan@178-116-218-225.access.telenet.be) (Ping timeout: 256 seconds) |
2021-11-15 23:27:37 +0100 | <jkaye> | Yeah personally I love doing my illicit activities on a public messaging system that anyone can look at whenever they want |
2021-11-15 23:31:24 +0100 | infinity0 | (~infinity0@occupy.ecodis.net) |
2021-11-15 23:36:09 +0100 | emerson | (~emerson@libera/staff/emerson) |
2021-11-15 23:41:14 +0100 | mimmy | (~mimmy@72.142.88.18) |
2021-11-15 23:45:13 +0100 | Guest5126 | (~Guest51@180.230.60.84) (Ping timeout: 256 seconds) |
2021-11-15 23:45:14 +0100 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection) |
2021-11-15 23:45:19 +0100 | zava | (~zava@ip5f5bdf0f.dynamic.kabel-deutschland.de) |
2021-11-15 23:45:32 +0100 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) |
2021-11-15 23:45:59 +0100 | mimmy | (~mimmy@72.142.88.18) (Ping timeout: 265 seconds) |
2021-11-15 23:46:02 +0100 | fresheyeball | (~fresheyeb@c-76-25-93-164.hsd1.co.comcast.net) |
2021-11-15 23:52:56 +0100 | zincy_ | (~zincy@host86-181-60-139.range86-181.btcentralplus.com) (Remote host closed the connection) |
2021-11-15 23:54:12 +0100 | machinedgod | (~machinedg@24.105.81.50) (Ping timeout: 265 seconds) |
2021-11-15 23:55:15 +0100 | merijn | (~merijn@83-160-49-249.ip.xs4all.nl) |
2021-11-15 23:55:27 +0100 | jmorris | (uid433911@hampstead.irccloud.com) |
2021-11-15 23:55:36 +0100 | fresheyeball | (~fresheyeb@c-76-25-93-164.hsd1.co.comcast.net) (Quit: WeeChat 2.9) |