Home freenode/#haskell: Logs Calendar

Logs: freenode/#haskell

←Prev  Next→
Page 1 .. 507 508 509 510 511 512 513 514 515 516 517 .. 5022
502,152 events total
2020-10-08 12:21:44 Lthere joins (~Lthere@185.244.214.216)
2020-10-08 12:21:48 heatsink joins (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net)
2020-10-08 12:21:56 <siraben> How do I get `[Maybe String]` out of a prism? I ahve `myCSV ^? namedCsv . rows . column @String "Timestamp"` but it gives me a single result.
2020-10-08 12:22:01 × NinjaTrappeur quits (~ninja@unaffiliated/ninjatrappeur) (Ping timeout: 272 seconds)
2020-10-08 12:22:03 × bloodstalker quits (~bloodstal@46.166.187.188) (Ping timeout: 260 seconds)
2020-10-08 12:23:06 fendor joins (~fendor@e237-037.eduroam.tuwien.ac.at)
2020-10-08 12:23:43 × John20 quits (~John@82.46.59.122) (Ping timeout: 246 seconds)
2020-10-08 12:24:12 Dungdv joins (01346eb4@gateway/web/cgi-irc/kiwiirc.com/ip.1.52.110.180)
2020-10-08 12:24:26 st8less joins (~st8less@2603:a060:11fd:0:9c66:9b18:c21:60c)
2020-10-08 12:24:33 <carbolymer> how lightweight is thread from forkIO? i need to push data to rabbitmq (couple times per second) and I plan to wrap each call in `async` - is it a good idea or would it be better to create channel/queue and separate long-living thread to read from that queue and push to rabbit?
2020-10-08 12:25:45 × heatsink quits (~heatsink@107-136-5-69.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 240 seconds)
2020-10-08 12:26:34 raehik joins (~raehik@cpc96984-rdng25-2-0-cust109.15-3.cable.virginm.net)
2020-10-08 12:26:52 cosimone joins (~cosimone@2001:b07:ae5:db26:a16f:75:586:b3b0)
2020-10-08 12:27:29 <sshine> hmm, it seems that I'm messing up mutually recursing two Fix types a slight bit...
2020-10-08 12:27:48 <sshine> hi siraben :)
2020-10-08 12:28:07 <siraben> Hi sshine
2020-10-08 12:28:07 sshine doesn't know lenses.
2020-10-08 12:28:25 <siraben> sshine: the github link seems broken?
2020-10-08 12:28:26 oisdk joins (~oisdk@2001:bb6:3329:d100:9cdf:5974:56ad:fa2f)
2020-10-08 12:28:31 <sshine> eh.
2020-10-08 12:28:34 <sshine> d'oh.
2020-10-08 12:29:07 <sshine> there!
2020-10-08 12:29:12 ixlun joins (~matthew@213.205.241.94)
2020-10-08 12:29:28 <siraben> Why is it called foldFix instead of cata now?
2020-10-08 12:29:48 × knupfer quits (~Thunderbi@200116b82ce4df0088357864009e671d.dip.versatel-1u1.de) (Remote host closed the connection)
2020-10-08 12:29:50 <sshine> they changed it in 0.3, I think
2020-10-08 12:29:56 knupfer joins (~Thunderbi@200116b82ce4df008572ba0750ed6f70.dip.versatel-1u1.de)
2020-10-08 12:30:02 <siraben> catamorphism is standard terminology in literature
2020-10-08 12:30:03 <siraben> Heh
2020-10-08 12:30:03 × Saukk quits (~Saukk@2001:998:f1:3963:1c59:9bb5:b94c:2) (Remote host closed the connection)
2020-10-08 12:30:10 fendor_ joins (~fendor@t204-126.demo.tuwien.ac.at)
2020-10-08 12:30:12 <sshine> I don't know... maybe the foobarmorphisms sound scary.
2020-10-08 12:30:15 <sshine> sure
2020-10-08 12:30:27 <sshine> I am certainly confused. :-D
2020-10-08 12:30:56 <siraben> sshine: what's the function supposed to do?
2020-10-08 12:31:03 × fendor quits (~fendor@e237-037.eduroam.tuwien.ac.at) (Ping timeout: 260 seconds)
2020-10-08 12:31:23 × nuh^ quits (nuh@ip98-184-89-2.mc.at.cox.net) ()
2020-10-08 12:31:43 [exa] writes down foobarmorphism as a general morphism placeholder
2020-10-08 12:32:01 × aarvar quits (~foewfoiew@50.35.43.33) (Ping timeout: 258 seconds)
2020-10-08 12:32:09 cfricke joins (~cfricke@unaffiliated/cfricke)
2020-10-08 12:32:25 tsrt^ joins (tsrt@ip98-184-89-2.mc.at.cox.net)
2020-10-08 12:33:03 <sshine> siraben, gather a list of transfers identified by their parameter. so initially a [(asset, party)]. but because of other combinators, I'm actually gathering an [(asset, party, Expr word oracle)] with Expr being another Fix type. what I think I'm forgetting is to add 'Fix' to the value 'Const 1'.
2020-10-08 12:33:17 chaosmasttter joins (~chaosmast@p200300c4a70b40010854fe5f0255a133.dip0.t-ipconnect.de)
2020-10-08 12:33:30 <[exa]> carbolymer: forkIO is almost free, these threads are very "green". by the `thread` for comparison, y[4~ou mean an actual spawned pthread?
2020-10-08 12:33:35 <sshine> siraben, this is my first use of Data.Fix, so I'm not sured to wrap everything in Fix.
2020-10-08 12:33:37 <siraben> sshine: yes that would appear to fix the type error
2020-10-08 12:33:43 × Ariakenom quits (~Ariakenom@193.254.193.1) (Ping timeout: 260 seconds)
2020-10-08 12:34:41 <sshine> that Fix'ed it.
2020-10-08 12:34:59 <siraben> Interesting, why use Data.Fix over the recursion schemes library?
2020-10-08 12:35:20 <sshine> I don't know yet. I have only tried one and not the other. :) I did look at recursion-schemes earlier.
2020-10-08 12:35:45 <yushyin> (recursion schemes calls it cata)
2020-10-08 12:35:48 × knupfer quits (~Thunderbi@200116b82ce4df008572ba0750ed6f70.dip.versatel-1u1.de) (Quit: knupfer)
2020-10-08 12:35:58 knupfer joins (~Thunderbi@200116b82ce4df00a491ec6bd8ca5a82.dip.versatel-1u1.de)
2020-10-08 12:36:05 × knupfer quits (~Thunderbi@200116b82ce4df00a491ec6bd8ca5a82.dip.versatel-1u1.de) (Client Quit)
2020-10-08 12:36:19 <sshine> doesn't recursion-schemes mainly provide ListF, NonEmptyF, TreeF? this is a specific AST type...
2020-10-08 12:36:20 <siraben> sshine: I like recursion schemes because it matches the theoretical background better
2020-10-08 12:36:21 knupfer joins (~Thunderbi@200116b82ce4df00593bab4749daa8c7.dip.versatel-1u1.de)
2020-10-08 12:36:28 × knupfer quits (~Thunderbi@200116b82ce4df00593bab4749daa8c7.dip.versatel-1u1.de) (Client Quit)
2020-10-08 12:36:38 <sshine> siraben, "matches the theoretical background better" = uses cata, para, hylo naming?
2020-10-08 12:36:38 knupfer joins (~Thunderbi@200116b82ce4df00d51320b28b670a21.dip.versatel-1u1.de)
2020-10-08 12:36:46 <siraben> data ListF a b = Nil | Cons a b; type instance Base [a] = ListF a, which makes the concept of initial algebra for lists
2020-10-08 12:36:50 × knupfer quits (~Thunderbi@200116b82ce4df00d51320b28b670a21.dip.versatel-1u1.de) (Client Quit)
2020-10-08 12:36:51 <siraben> clearer*
2020-10-08 12:36:58 knupfer joins (~Thunderbi@200116b82ce4df00e02e11e95168b2ca.dip.versatel-1u1.de)
2020-10-08 12:37:05 × knupfer quits (~Thunderbi@200116b82ce4df00e02e11e95168b2ca.dip.versatel-1u1.de) (Client Quit)
2020-10-08 12:37:08 <sshine> ah
2020-10-08 12:37:27 knupfer joins (~Thunderbi@200116b82ce4df0054f91f9fd769e65c.dip.versatel-1u1.de)
2020-10-08 12:37:30 <sshine> I'm not sure how to use recursion-schemes on arbitrary syntax trees that aren't lists and rose-trees.
2020-10-08 12:37:58 shatriff joins (~vitaliish@88.155.84.139)
2020-10-08 12:38:14 × knupfer quits (~Thunderbi@200116b82ce4df0054f91f9fd769e65c.dip.versatel-1u1.de) (Client Quit)
2020-10-08 12:39:24 <siraben> sshine: Similar to how you did it in src/Dagger/Contract.hs, define the base functor then `Fix` it
2020-10-08 12:39:36 knupfer joins (~Thunderbi@200116b82ce4df004016f923e09abad3.dip.versatel-1u1.de)
2020-10-08 12:39:52 <siraben> Argh, lenses have such poor type errors
2020-10-08 12:39:58 livvy joins (~livvy@gateway/tor-sasl/livvy)
2020-10-08 12:41:32 × cfricke quits (~cfricke@unaffiliated/cfricke) (Ping timeout: 265 seconds)
2020-10-08 12:41:35 John20 joins (~John@82.46.59.122)
2020-10-08 12:41:35 <sshine> ah, I wasn't looking in Data.Functor.Foldable.TH which appears to have the recipe for doing this to your own type... I try to avoid TH when I can get most without.
2020-10-08 12:41:45 <sshine> siraben, optics!
2020-10-08 12:42:34 <siraben> sshine: oh great, now the code would look even more natural than writing in open recursive style
2020-10-08 12:42:55 <sshine> siraben, apropos?
2020-10-08 12:43:17 <siraben> apropos?
2020-10-08 12:43:32 <sshine> oh you mean using data-fix / recursion-schemes is a boon?
2020-10-08 12:43:37 <sshine> it certainly seems so :)
2020-10-08 12:43:37 <siraben> sshine: Oh I was referring to your TH discovery
2020-10-08 12:43:40 <sshine> ah
2020-10-08 12:44:42 <siraben> IMO using these abstractions are nice but when they start impacting readability for others, I weigh that too. Even beginner Haskellers can read a normal `Expr a` declaration, so that's great.
2020-10-08 12:44:52 <sshine> yes.
2020-10-08 12:45:23 <sshine> I'm still evaluating whether Fix will mess up things or make things easier for people less experienced than myself.
2020-10-08 12:45:59 <sshine> there will be a bunch of 'Fix' constructors, like the bug I experienced, that will clutter the view.
2020-10-08 12:47:14 <siraben> sshine: Is this a new smart contract language?
2020-10-08 12:47:16 <sshine> I compared the optparse-generic library with/without TH magic for type-level --help hints... there is very little overhead and it is easily extensible without having to understand how it does what it does.
2020-10-08 12:47:36 <sshine> siraben, no, it's the same. I'm just generalising the Contract type so that it can more easily target multiple blockchains.
2020-10-08 12:47:44 <troydm> hey guys! I'm trying to implement show for IOUArray and I'm getting ‘show’ is not a (visible) method of class ‘IOUArray’, with GHC 8.2.2, any suggestions&
2020-10-08 12:47:46 <troydm> ?
2020-10-08 12:48:08 <carbolymer> [exa], thanks; by long-living thread I meant another thread from forkIO - but If they're very "green" I think wrapping each rabbimq publish in `async` will be fine in my case;)
2020-10-08 12:48:29 <sshine> siraben, also, the original author of the compiler simplified a few things and I added let-expressions.
2020-10-08 12:49:04 <sshine> siraben, but it's mostly the same concept, just different ideas of execution runtimes. :)
2020-10-08 12:49:15 <sshine> siraben, how's your macro language going?
2020-10-08 12:49:40 <siraben> sshine: Perhaps we should move this conversation to the evm-lang-design gitter channel
2020-10-08 12:50:16 <[exa]> carbolymer: yeah, in fact that's the recommended way for network programming afaik

All times are in UTC.