Home liberachat/#haskell: Logs Calendar

Logs: liberachat/#haskell

←Prev  Next→ 1,804,035 events total
2021-08-09 11:55:41 derelict joins (~derelict@user/derelict)
2021-08-09 11:55:59 <tomsmeding> unless he's ready to spend a very large amount of time to become basically an experienced software developer before getting a good job :p
2021-08-09 11:56:23 <tomsmeding> but I can't speak from experience here, so take what I say with a grain of salt
2021-08-09 11:58:08 <timCF> tomsmeding: there is no right answer, thanks for sharing your opinion!
2021-08-09 11:59:49 × chexum quits (~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection)
2021-08-09 11:59:59 chexum joins (~quassel@gateway/tor-sasl/chexum)
2021-08-09 12:00:19 <timCF> I came to Haskell from Erlang, and transition was relatively easy. So simple untyped language like Erlang, Lua or Python might work for him as well.
2021-08-09 12:01:16 <timCF> Just to get started. But this might go very wrong as well, haha.
2021-08-09 12:01:18 eggplantade joins (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2021-08-09 12:01:28 <hpc> i think either way an employer is going to have to be understanding of him being very new to programming
2021-08-09 12:02:03 <merijn> otoh
2021-08-09 12:02:07 <hpc> the difference between "knows a bit of the language the job uses, but nothing else" and "knows a bit of some other language, but nothing else" isn't that much
2021-08-09 12:02:36 Obo joins (~roberto@70.pool90-171-81.dynamic.orange.es)
2021-08-09 12:02:37 <hpc> so might as well try and solve the "but nothing else" problem faster instead
2021-08-09 12:03:01 <merijn> My girlfriend did an 8 month intense course to get a bachelor in programming and that program had her already hired before she finished (in the condition of graduating, that is)
2021-08-09 12:03:35 <merijn> So, at least over here you can pretty easily get a job with no experience if you have even a bit of aptitude :p
2021-08-09 12:04:02 <timCF> merijn: You said she is using Haskell? What university is this?
2021-08-09 12:04:10 <merijn> Naah, that's unrelated :p
2021-08-09 12:04:25 <merijn> That program was Java, because, duh :p
2021-08-09 12:04:40 <timCF> Ah, I see. Just hoped that there are some valuable Haskell courses for beginners)
2021-08-09 12:04:42 <merijn> But I was teaching her Haskell in the months before
2021-08-09 12:04:49 × burnsidesLlama quits (~burnsides@dhcp168-023.wadham.ox.ac.uk) (Ping timeout: 248 seconds)
2021-08-09 12:06:12 × eggplantade quits (~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 276 seconds)
2021-08-09 12:06:33 <merijn> timCF: It was a program started by a bunch of IT companies struggling to hire people together with some of the "university" of applied sciences (for lack of a better term) based on their 4 year bachelor program
2021-08-09 12:08:23 × APic quits (apic@apic.name) (Read error: error:1408F10B:SSL routines:ssl3_get_record:wrong version number)
2021-08-09 12:12:24 × azeem quits (~azeem@dynamic-adsl-84-220-236-17.clienti.tiscali.it) (Read error: Connection reset by peer)
2021-08-09 12:13:30 APic joins (apic@apic.name)
2021-08-09 12:13:48 × Guest4514 quits (~Guest45@2001:8004:2728:3231:22e8:8df9:c65:5ea) (Quit: Client closed)
2021-08-09 12:18:00 × Obo quits (~roberto@70.pool90-171-81.dynamic.orange.es) (Ping timeout: 258 seconds)
2021-08-09 12:19:46 × hyiltiz quits (~quassel@31.220.5.250) (Ping timeout: 240 seconds)
2021-08-09 12:22:25 raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2021-08-09 12:22:28 hyiltiz joins (~quassel@31.220.5.250)
2021-08-09 12:22:46 <kuribas> Is there a named Monad that is equivalent to (,)?
2021-08-09 12:23:07 <kuribas> to (a,) I mean.
2021-08-09 12:23:09 <earthy> Interesting. We set up such a program ourselves... and we do teach a bit of Haskell...
2021-08-09 12:23:35 cheater joins (~Username@user/cheater)
2021-08-09 12:23:46 <[exa]> kuribas: Const and Writer are kinda similar, in ways
2021-08-09 12:23:54 <[exa]> (random thought ^)
2021-08-09 12:23:55 <merijn> kuribas: Eh, that's Writer :p
2021-08-09 12:24:03 <kuribas> ah right :-)
2021-08-09 12:24:14 <earthy> (then again, our program is 18 months, not 8, and we hire people into the program)
2021-08-09 12:24:27 azeem joins (~azeem@dynamic-adsl-84-220-236-17.clienti.tiscali.it)
2021-08-09 12:25:12 <merijn> earthy: Well, this program has a bunch of in-take meetings and a job fair with prospective employers and you only really get to start if one of them already agreed to hire you at the start, it seems to work out fairly well
2021-08-09 12:25:38 <earthy> sounds like a bootcamp-like program done reasonably well
2021-08-09 12:25:57 <kuribas> no, because "WriterT [Int] Maybe" is equal to Maybe ([Int], a), not ([Int], Maybe a)
2021-08-09 12:26:08 <kuribas> The second I am interested in...
2021-08-09 12:28:15 <earthy> AccumT?
2021-08-09 12:28:56 <earthy> Still not what you want.
2021-08-09 12:28:59 <merijn> kuribas: Sounds like you just want State, tbh
2021-08-09 12:29:07 earthy nods
2021-08-09 12:29:25 <kuribas> > liftA2 (liftA2 (+)) ([1], Nothing) ([2::Int], Just 1)
2021-08-09 12:29:27 <lambdabot> ([1,2],Nothing)
2021-08-09 12:29:40 <kuribas> > liftA2 (liftA2 (+)) ([1], Just 1) ([2::Int], Just 1)
2021-08-09 12:29:42 <lambdabot> ([1,2],Just 2)
2021-08-09 12:29:47 <kuribas> I want this ^^
2021-08-09 12:30:28 <[exa]> kuribas: isn't that more like MaybeT (Writer [Int]) ?
2021-08-09 12:30:58 <kuribas> [exa]: ah right!
2021-08-09 12:31:38 burnsidesLlama joins (~burnsides@dhcp168-023.wadham.ox.ac.uk)
2021-08-09 12:32:28 berberman_ joins (~berberman@user/berberman)
2021-08-09 12:32:44 × berberman quits (~berberman@user/berberman) (Ping timeout: 252 seconds)
2021-08-09 12:35:48 favonia joins (~favonia@user/favonia)
2021-08-09 12:35:59 <kuribas> Doesn't MaybeT stops writing after Nothing?
2021-08-09 12:36:06 <kuribas> MaybeT Writer
2021-08-09 12:36:16 × burnsidesLlama quits (~burnsides@dhcp168-023.wadham.ox.ac.uk) (Ping timeout: 256 seconds)
2021-08-09 12:37:09 <kuribas> That would give ([1], Nothing) then
2021-08-09 12:37:53 acidjnk joins (~acidjnk@p200300d0c72b9517f81283fc8b5e04b5.dip0.t-ipconnect.de)
2021-08-09 12:38:57 × oxytocat quits (~alloca@2a03:4000:f:7ca:7407:d1ff:fe34:8cd0) (Changing host)
2021-08-09 12:38:57 oxytocat joins (~alloca@user/suppi)
2021-08-09 12:39:33 <dibblego> so does what you want ^^
2021-08-09 12:39:48 <kuribas> dibblego: no, I want ([1, 2], Nothing)
2021-08-09 12:40:25 <kuribas> ah, that cannot be a Monad then...
2021-08-09 12:41:26 <dibblego> data M a = M [Int] (Maybe a); instance Monoid M where...
2021-08-09 12:41:27 <earthy> You want an arrow, and &&&
2021-08-09 12:41:40 <earthy> or some such
2021-08-09 12:43:28 <kuribas> Writer Int (Maybe a) ...
2021-08-09 12:43:48 <kuribas> :t Const
2021-08-09 12:43:49 <lambdabot> forall k a (b :: k). a -> Const a b
2021-08-09 12:44:14 <earthy> Do you need it to be a monad? Can you get away with relaxing some of the laws? :)
2021-08-09 12:44:17 × dextaa quits (~DV@aftr-37-201-214-197.unity-media.net) (Quit: Ping timeout (120 seconds))
2021-08-09 12:44:31 burnsidesLlama joins (~burnsides@dhcp168-023.wadham.ox.ac.uk)
2021-08-09 12:44:38 dextaa joins (~DV@aftr-37-201-214-197.unity-media.net)
2021-08-09 12:45:22 <kuribas> earthy: yeah, I cannot even be a monad, because I need to collect the errors (or warnings).
2021-08-09 12:45:25 Guest98 joins (~Guest98@31.4.136.211)
2021-08-09 12:46:19 <merijn> kuribas: Do you don't just want Validation?
2021-08-09 12:46:49 Guest98 parts (~Guest98@31.4.136.211) ()
2021-08-09 12:46:49 <merijn> kuribas: Which is the Applicative version of Either that aggregates errors (instead of returning the first)
2021-08-09 12:47:03 <stoicswe[m]> V
2021-08-09 12:47:04 Obo joins (~roberto@70.pool90-171-81.dynamic.orange.es)
2021-08-09 12:47:12 × dextaa quits (~DV@aftr-37-201-214-197.unity-media.net) (Changing host)
2021-08-09 12:47:12 dextaa joins (~DV@user/dextaa)
2021-08-09 12:47:22 <kuribas> merijn: I am parsing a csv, so I want to collect the original rows, and add an error collumn if the parsing fails.
2021-08-09 12:47:37 <merijn> kuribas: https://hackage.haskell.org/package/either-5.0.1.1/docs/Data-Either-Validation.html
2021-08-09 12:47:55 <stoicswe[m]> Whoops, sorry for the random ‘V’ there. I accidentally sent that.
2021-08-09 12:48:12 <earthy> still not a monad though. ;P
2021-08-09 12:48:34 <earthy> (and Validation is the exact use case indeed)
2021-08-09 12:49:02 <kuribas> so I have ([originalCsv], Just parsedField) or ([addError originalCsv], Nothing)
2021-08-09 12:49:18 <merijn> These? :p
2021-08-09 12:49:29 <merijn> That lets you aggregate errors *and* a result :p
2021-08-09 12:49:31 <kuribas> merijn: no, These also stops with an error.
2021-08-09 12:50:09 <merijn> kuribas: It doesn't

All times are in UTC.