Logs: freenode/#haskell
| 2020-10-29 14:09:29 | ← | ioroque parts (~theo_____@177.20.187.150) () |
| 2020-10-29 14:09:57 | hackage | winery 1.3.2 - A compact, well-typed seralisation format for Haskell values https://hackage.haskell.org/package/winery-1.3.2 (FumiakiKinoshita) |
| 2020-10-29 14:10:51 | × | ZaphodBrox quits (51ae801c@mekats.plus.com) (Remote host closed the connection) |
| 2020-10-29 14:12:10 | × | berberman_ quits (~berberman@unaffiliated/berberman) (Quit: ZNC 1.7.5 - https://znc.in) |
| 2020-10-29 14:12:34 | → | berberman joins (~berberman@unaffiliated/berberman) |
| 2020-10-29 14:12:42 | <tvrsky> | what are your thoughts on haskell? is it too hard? |
| 2020-10-29 14:13:08 | <dminuoso> | It depends on your background. |
| 2020-10-29 14:13:27 | <tvrsky> | i mean, i'm already familiarized with javascript since i work with it, but i'm a complete newbie to functional programming |
| 2020-10-29 14:13:44 | <thblt> | It's different. |
| 2020-10-29 14:13:57 | × | berberman quits (~berberman@unaffiliated/berberman) (Max SendQ exceeded) |
| 2020-10-29 14:13:59 | <dminuoso> | tvrsky: Don't expect much of your programming experience to carry over then. |
| 2020-10-29 14:14:06 | <dminuoso> | So it'll feel more like programming all over again. |
| 2020-10-29 14:14:30 | → | berberman joins (~berberman@unaffiliated/berberman) |
| 2020-10-29 14:14:51 | × | motherfsck quits (~motherfsc@unaffiliated/motherfsck) (Quit: quit) |
| 2020-10-29 14:15:05 | × | invaser quits (~Thunderbi@31.148.23.125) (Ping timeout: 240 seconds) |
| 2020-10-29 14:15:21 | <merijn> | tvrsky: I don't think Haskell is *hard*, but I do think its *different* |
| 2020-10-29 14:15:23 | <dminuoso> | Accordingly, Haskell can give the impression of being "difficult to learn". But that's not because Haskell is inherently difficult, but unlikely "language close to your domain that you can pick up quickly", you're learning how to program from scratch again. |
| 2020-10-29 14:15:54 | <dminuoso> | People often call "unlearning your old mindset" |
| 2020-10-29 14:16:05 | <merijn> | tvrsky: FWIW, my girlfriend with 0 programming experience learned to program haskell just fine. It's just that many people who know 1 programming language expect that learning "any other language" is something easy you do in 2 days |
| 2020-10-29 14:16:14 | × | berberman quits (~berberman@unaffiliated/berberman) (Max SendQ exceeded) |
| 2020-10-29 14:16:41 | × | stef204 quits (~stef204@unaffiliated/stef-204/x-384198) (Quit: WeeChat 2.9) |
| 2020-10-29 14:16:42 | → | berberman joins (~berberman@unaffiliated/berberman) |
| 2020-10-29 14:16:43 | <merijn> | tvrsky: So if you go in expecting "this will be about as tricky as learning to program the first time was", then you should be fine |
| 2020-10-29 14:17:00 | <kuribas> | tvrsky: haskell isn't hard, but it's big. It's more like you have a lot of new concepts, each of which isn't that hard to understand. |
| 2020-10-29 14:17:08 | <dminuoso> | I think the experience is well worth it, even if you keep writing JavaScript in your day job |
| 2020-10-29 14:17:19 | <dminuoso> | Haskell changed how I thought about programming a lot. |
| 2020-10-29 14:18:14 | <kuribas> | tvrsky: you have a lot of scary sounding abstractions, most if which are very simple in concept. |
| 2020-10-29 14:18:25 | <tvrsky> | i'm very excited about this ngl |
| 2020-10-29 14:19:04 | <kuribas> | for example in OO you have the "visitor pattern", but it still leaves a lot to the imagination. In haskell you have "Foldable", which is a concrete version of the visitor pattern. |
| 2020-10-29 14:19:07 | <thblt> | I agree with dminuoso, but let's not underestimate the intrinsic difficulty of Haskell. It's a very strict language, which may require more effort to grasp than your average python --- you'll write less bugs, but you'll spend more time getting your code to work. |
| 2020-10-29 14:19:40 | <thblt> | Also, it can be argued that while the base is very minimal, the set of language features + libraries that make something like "practical haskell" isn't small. |
| 2020-10-29 14:20:00 | <thblt> | But it's a very, very exciting langage, and it will make you a better programmer :) |
| 2020-10-29 14:20:08 | <kuribas> | part of that is because you try to write idiomatic code. |
| 2020-10-29 14:20:19 | <kuribas> | it's ok to write everything in IO in the beginning. |
| 2020-10-29 14:20:33 | → | invaser joins (~Thunderbi@31.148.23.125) |
| 2020-10-29 14:21:19 | <thblt> | (It's also ok to write *nothing* in IO if it makes more sense to you this way.) |
| 2020-10-29 14:21:48 | <kuribas> | thblt: but that's harder |
| 2020-10-29 14:21:55 | <kuribas> | if you come from an imperative background |
| 2020-10-29 14:21:57 | → | ransom joins (c4264035@gateway/vpn/protonvpn/c4264035) |
| 2020-10-29 14:22:03 | <thblt> | I think that's how Haskell from First Principles work, IIRC. It introduces IO relatively late. |
| 2020-10-29 14:22:25 | <thblt> | kuribas: I'm just saying there are multiple ways, not that my suggestion is better. |
| 2020-10-29 14:22:33 | → | DavidEichmann joins (~david@43.240.198.146.dyn.plus.net) |
| 2020-10-29 14:23:08 | <thblt> | I think I learned by avoiding IO. |
| 2020-10-29 14:23:32 | <tvrsky> | well gonna start now, so thanks for all the suggestions |
| 2020-10-29 14:23:33 | → | carlomagno joins (~cararell@148.87.23.6) |
| 2020-10-29 14:23:33 | × | DavidEichmann quits (~david@43.240.198.146.dyn.plus.net) (Remote host closed the connection) |
| 2020-10-29 14:23:46 | <thblt> | tvrsky: have fun :) |
| 2020-10-29 14:24:06 | <kuribas> | my point is, you shouldn't feel forced to use best practices when starting out |
| 2020-10-29 14:24:33 | <kuribas> | it's easier to learn the gradually along the way |
| 2020-10-29 14:26:46 | × | GyroW quits (~GyroW@unaffiliated/gyrow) (Quit: Someone ate my pie) |
| 2020-10-29 14:26:56 | → | GyroW joins (~GyroW@d54c03e98.access.telenet.be) |
| 2020-10-29 14:26:56 | × | GyroW quits (~GyroW@d54c03e98.access.telenet.be) (Changing host) |
| 2020-10-29 14:26:56 | → | GyroW joins (~GyroW@unaffiliated/gyrow) |
| 2020-10-29 14:28:51 | → | cr3 joins (~cr3@192-222-143-195.qc.cable.ebox.net) |
| 2020-10-29 14:31:05 | × | u0_a298 quits (~user@47.206.148.226) (Read error: Connection reset by peer) |
| 2020-10-29 14:31:31 | → | u0_a298 joins (~user@47.206.148.226) |
| 2020-10-29 14:32:08 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 2020-10-29 14:32:08 | × | p8m quits (p8m@gateway/vpn/protonvpn/p8m) (Ping timeout: 256 seconds) |
| 2020-10-29 14:37:19 | → | knupfer joins (~Thunderbi@200116b82cb50a00cdf9d8b4bf5d6590.dip.versatel-1u1.de) |
| 2020-10-29 14:38:26 | × | kish quits (~oracle@unaffiliated/oracle) (Ping timeout: 264 seconds) |
| 2020-10-29 14:38:42 | → | kish joins (~oracle@unaffiliated/oracle) |
| 2020-10-29 14:39:23 | × | cfricke quits (~cfricke@unaffiliated/cfricke) (Quit: WeeChat 2.9) |
| 2020-10-29 14:39:23 | × | livvy quits (~livvy@gateway/tor-sasl/livvy) (Ping timeout: 240 seconds) |
| 2020-10-29 14:41:35 | → | cfricke joins (~cfricke@unaffiliated/cfricke) |
| 2020-10-29 14:41:46 | × | shatriff quits (~vitaliish@176.52.219.10) (Remote host closed the connection) |
| 2020-10-29 14:44:08 | → | Jonkimi727406120 joins (~Jonkimi@223.213.166.96) |
| 2020-10-29 14:46:35 | × | u0_a298 quits (~user@47.206.148.226) (Read error: Connection reset by peer) |
| 2020-10-29 14:46:51 | → | u0_a298 joins (~user@47.206.148.226) |
| 2020-10-29 14:46:57 | → | jakob_ joins (~textual@p200300f49f16220061022725fbc9d567.dip0.t-ipconnect.de) |
| 2020-10-29 14:49:14 | × | u0_a298 quits (~user@47.206.148.226) (Read error: Connection reset by peer) |
| 2020-10-29 14:49:45 | → | u0_a298 joins (~user@47.206.148.226) |
| 2020-10-29 14:49:49 | → | Sgeo joins (~Sgeo@ool-18b982ad.dyn.optonline.net) |
| 2020-10-29 14:50:24 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 268 seconds) |
| 2020-10-29 14:50:54 | <[exa]> | merijn: anyway thanks for hints, cabal nuke solved it |
| 2020-10-29 14:51:09 | → | GyroW_ joins (~GyroW@d54C03E98.access.telenet.be) |
| 2020-10-29 14:51:09 | × | GyroW_ quits (~GyroW@d54C03E98.access.telenet.be) (Changing host) |
| 2020-10-29 14:51:09 | → | GyroW_ joins (~GyroW@unaffiliated/gyrow) |
| 2020-10-29 14:51:46 | × | GyroW quits (~GyroW@unaffiliated/gyrow) (Ping timeout: 246 seconds) |
| 2020-10-29 14:51:56 | <[exa]> | merijn: (there were weird versions of the package dependencies installed, for no apparent reason, didn't bother solving why :D ) |
| 2020-10-29 14:53:22 | <merijn> | Installed packages shouldn't affect the build plan with v2-build anyway |
| 2020-10-29 14:54:06 | × | knupfer quits (~Thunderbi@200116b82cb50a00cdf9d8b4bf5d6590.dip.versatel-1u1.de) (Ping timeout: 268 seconds) |
| 2020-10-29 14:54:53 | <[exa]> | anyway, anyone parsing own token streams with Megaparsec 9? Problem: I have a token stream where tokens cannot be "reconstructed" back to the original form because they are simplified a bit (eg. both "0x12" and "0b00010010" share the representation `TInt 18`) so I was saving the "original string" together with the tokens in the stream. Now there is VisualStream class that forces me to visualize Tokens |
| 2020-10-29 14:54:59 | <[exa]> | (_not_ the annotated things in the stream). Is there any way to get the old behavior back? |
| 2020-10-29 14:55:00 | × | cfricke quits (~cfricke@unaffiliated/cfricke) (Quit: WeeChat 2.9) |
| 2020-10-29 14:55:13 | → | justanotheruser joins (~justanoth@unaffiliated/justanotheruser) |
| 2020-10-29 14:55:24 | × | Kaivo quits (~Kaivo@104-200-86-99.mc.derytele.com) (Ping timeout: 240 seconds) |
| 2020-10-29 14:57:23 | <thblt> | Re cabal-install, what's the actual meaning of "build"? Is it now v2-build? |
| 2020-10-29 14:57:27 | × | u0_a298 quits (~user@47.206.148.226) (Read error: Connection reset by peer) |
| 2020-10-29 14:57:28 | hackage | th-lego 0.2.0.1 - Template Haskell construction utilities https://hackage.haskell.org/package/th-lego-0.2.0.1 (NikitaVolkov) |
| 2020-10-29 14:57:33 | × | AlterEgo- quits (~ladew@124-198-158-163.dynamic.caiway.nl) (Read error: Connection reset by peer) |
| 2020-10-29 14:57:57 | → | u0_a298 joins (~user@47.206.148.226) |
| 2020-10-29 14:57:59 | → | Kaivo joins (~Kaivo@ec2-15-222-231-32.ca-central-1.compute.amazonaws.com) |
| 2020-10-29 14:59:16 | → | AlterEgo- joins (~ladew@124-198-158-163.dynamic.caiway.nl) |
| 2020-10-29 15:00:02 | × | GothAlice1 quits (~GothAlice@185.244.214.217) () |
| 2020-10-29 15:00:38 | → | justan0theruser joins (~justanoth@unaffiliated/justanotheruser) |
| 2020-10-29 15:01:01 | → | hnOsmium0001 joins (uid453710@gateway/web/irccloud.com/x-ehxybuxikisvwbkv) |
| 2020-10-29 15:01:42 | <merijn> | thblt: If you have 3.x then build == v2-build |
| 2020-10-29 15:02:04 | <merijn> | If you have <3.0 then build == v1-build (same for everything, of course) |
| 2020-10-29 15:02:30 | → | lucasb joins (uid333435@gateway/web/irccloud.com/x-vdikopfssarieyds) |
| 2020-10-29 15:02:35 | <thblt> | merijn: thanks! (3.2) |
All times are in UTC.