Logs: liberachat/#haskell
| 2021-08-19 17:44:36 | → | qbt joins (~edun@user/edun) |
| 2021-08-19 17:44:41 | <lechner> | Rembane_: that's funny! |
| 2021-08-19 17:44:48 | <Lycurgus> | no it was an RPG shop on 370/120 |
| 2021-08-19 17:44:52 | <monochrom> | But Haskell happens to have almost everything I like. |
| 2021-08-19 17:44:58 | → | ec joins (~ec@gateway/tor-sasl/ec) |
| 2021-08-19 17:45:00 | <Lycurgus> | or 115 or whatever the low end |
| 2021-08-19 17:45:15 | <lechner> | monochrom: what's missing? |
| 2021-08-19 17:45:39 | → | lavaman joins (~lavaman@98.38.249.169) |
| 2021-08-19 17:45:40 | × | spruit11 quits (~quassel@2a02:a467:ccd6:1:1d3f:e608:d1ad:6d58) (Ping timeout: 258 seconds) |
| 2021-08-19 17:46:12 | <Rembane_> | lechner: ^^ |
| 2021-08-19 17:46:29 | <Rembane_> | Lycurgus: Good name. |
| 2021-08-19 17:46:31 | <monochrom> | Sometimes I still like low-level programming. Sometimes I still like parameterized modules. |
| 2021-08-19 17:46:40 | <monochrom> | Sometimes I sitll like real records. |
| 2021-08-19 17:46:51 | <Lycurgus> | we love hs but the masses never will |
| 2021-08-19 17:46:59 | <maerwald> | why should they |
| 2021-08-19 17:47:04 | <maerwald> | let them do python |
| 2021-08-19 17:47:11 | <Lycurgus> | js |
| 2021-08-19 17:47:15 | <monochrom> | Yeah please don't let the mass like Haskell. They would ruin it. |
| 2021-08-19 17:47:43 | <lechner> | rust |
| 2021-08-19 17:47:48 | <Lycurgus> | Rembane_, ty |
| 2021-08-19 17:48:00 | <maerwald> | lechner: that's just a word, you know? |
| 2021-08-19 17:48:07 | <chreekat[m]> | I'm hoping people are joking right now |
| 2021-08-19 17:48:18 | <monochrom> | If the mass would join Haskell, it would not mean they join Haskell's way, it would mean Haskell join their way. |
| 2021-08-19 17:48:29 | <tomsmeding> | siers: seems to work for me! https://paste.tomsmeding.com/3OU31Hii |
| 2021-08-19 17:48:51 | <maerwald> | Many seem obsessed with the idea of broadening adoption of haskell in industry. Sure, more jobs to pick. |
| 2021-08-19 17:48:57 | <maerwald> | But... |
| 2021-08-19 17:49:17 | <maerwald> | Maybe we never should have... what happened to the language meanwhile? |
| 2021-08-19 17:49:22 | <Lycurgus> | hs has cachet where it should in academe |
| 2021-08-19 17:49:41 | <Lycurgus> | in industry it's analogous to smalltalk in the 90s |
| 2021-08-19 17:49:47 | <Lycurgus> | big in finance |
| 2021-08-19 17:49:51 | <lechner> | that's ocaml |
| 2021-08-19 17:49:58 | <Lycurgus> | biggy little |
| 2021-08-19 17:50:01 | <lechner> | -- in academe |
| 2021-08-19 17:50:04 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 252 seconds) |
| 2021-08-19 17:50:10 | × | lavaman quits (~lavaman@98.38.249.169) (Ping timeout: 240 seconds) |
| 2021-08-19 17:50:40 | <Lycurgus> | i see way more haskell than ocaml in academic projects |
| 2021-08-19 17:51:12 | <Lycurgus> | if it wasn't for coq ... . |
| 2021-08-19 17:51:19 | ← | chreekat[m] parts (~bchreekat@2001:470:69fc:105::16b5) () |
| 2021-08-19 17:51:55 | <lechner> | how about the proportion academic/commercial? |
| 2021-08-19 17:52:08 | → | nate1 joins (~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) |
| 2021-08-19 17:52:14 | → | KeziahMason joins (~mnrmnaugh@68.162.206.56) |
| 2021-08-19 17:52:18 | <Lycurgus> | oh for ocaml yeah maybe |
| 2021-08-19 17:53:17 | <Lycurgus> | also if there were glyphs between proportion and academic they didn make to my client |
| 2021-08-19 17:54:16 | <Lycurgus> | *make it |
| 2021-08-19 17:54:22 | <lechner> | i use a lot of spaces to separate symbols from text |
| 2021-08-19 17:54:23 | <monochrom> | I met SML before Haskell. I then ditched SML for Haskell because "IO Int" is better than "() -> Int". |
| 2021-08-19 17:54:27 | <Lycurgus> | ah |
| 2021-08-19 17:54:40 | × | zaquest quits (~notzaques@5.128.210.178) (Ping timeout: 240 seconds) |
| 2021-08-19 17:56:16 | <monochrom> | John Hughes lazy-list argument also helped. |
| 2021-08-19 17:56:42 | <monochrom> | And if you think about it, those two points must come hand-in-hand, you can't separate them. |
| 2021-08-19 17:56:53 | → | wroathe joins (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) |
| 2021-08-19 17:58:51 | → | zaquest joins (~notzaques@5.128.210.178) |
| 2021-08-19 17:59:19 | <tomsmeding> | you could have a strict language with sensible IO Int, right? |
| 2021-08-19 17:59:23 | <tomsmeding> | IO doesn't use laziness |
| 2021-08-19 17:59:33 | → | spruit11 joins (~quassel@2a02:a467:ccd6:1:1d3f:e608:d1ad:6d58) |
| 2021-08-19 18:00:20 | <monochrom> | You would also find yourself not needing the IO special type. |
| 2021-08-19 18:01:01 | → | merijn joins (~merijn@83-160-49-249.ip.xs4all.nl) |
| 2021-08-19 18:01:42 | <monochrom> | Laziness drives drawing a thick line between pure FP and I/O, because lazy I/O would be madness, you want laziness to be confined to the pure FP sublanguage. |
| 2021-08-19 18:02:15 | × | wroathe quits (~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 268 seconds) |
| 2021-08-19 18:02:44 | <monochrom> | And wanting a pure FP sublanguage drives wanting laziness, because eager pure FP loses a lot of efficient algorithms, but you can regain some alternative efficient algorithms from laziness. |
| 2021-08-19 18:03:03 | → | nschoe joins (~quassel@2a01:e0a:8e:a190:5e4f:be4b:9603:951e) |
| 2021-08-19 18:03:21 | <lechner> | i get that lazy output is crazy, but why lazy input too? |
| 2021-08-19 18:04:10 | × | spruit11 quits (~quassel@2a02:a467:ccd6:1:1d3f:e608:d1ad:6d58) (Ping timeout: 240 seconds) |
| 2021-08-19 18:04:19 | <tomsmeding> | monochrom: right, you indirectly want laziness because pure FP is less powerful without that? |
| 2021-08-19 18:04:29 | <tomsmeding> | didn't think about that, but makes sense I guess |
| 2021-08-19 18:04:38 | → | tfeb joins (~tfb@88.98.95.237) |
| 2021-08-19 18:05:05 | <monochrom> | main = do { putStrLn "please enter the 1st string"; s1 <- getLine; putStrLn "please enter the 2nd string"; s2 <- getLine; putStrLn ("your 2nd string is " ++ s2); putStrLn ("your 1st string is " ++ s1) } |
| 2021-08-19 18:05:30 | <monochrom> | Describe its order of reading input under lazy input. |
| 2021-08-19 18:06:01 | × | merijn quits (~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds) |
| 2021-08-19 18:06:06 | <monochrom> | In fact, you can s/getLine/unsafeInterleaveIO getLine/ to actually try it on a real computer. |
| 2021-08-19 18:06:47 | <glguy> | unsafeInterleaveIO getLine won't be as dramatically lazy as something that was per-character lazy |
| 2021-08-19 18:06:52 | <lechner> | maybe lazy does not mean what i thought |
| 2021-08-19 18:06:55 | <glguy> | so you won't get the full confusing experience |
| 2021-08-19 18:07:30 | <monochrom> | Well yeah I'm too lazy to come up with a character-level example. |
| 2021-08-19 18:07:46 | <lechner> | how can something be evaluated before a character arrives? |
| 2021-08-19 18:07:46 | → | spruit11 joins (~quassel@2a02:a467:ccd6:1:1d3f:e608:d1ad:6d58) |
| 2021-08-19 18:08:22 | → | jakalx joins (~jakalx@base.jakalx.net) |
| 2021-08-19 18:08:25 | × | hueso quits (~root@user/hueso) (Ping timeout: 268 seconds) |
| 2021-08-19 18:08:35 | <lechner> | that's the wrong way of looking at it |
| 2021-08-19 18:08:40 | → | hueso joins (~root@user/hueso) |
| 2021-08-19 18:08:42 | <monochrom> | Oh lazy evaluation has never meant anything that anyone intuitively thought. |
| 2021-08-19 18:09:13 | <monochrom> | It's why everyone doesn't understand lazy evaluation. |
| 2021-08-19 18:09:43 | <monochrom> | Even within just the super-nice pure FP sublanguage. |
| 2021-08-19 18:10:06 | KeziahMason | is now known as mnrmnaugh |
| 2021-08-19 18:11:10 | × | alx741 quits (~alx741@181.196.69.234) (Quit: alx741) |
| 2021-08-19 18:12:08 | × | Sgeo quits (~Sgeo@user/sgeo) (Ping timeout: 268 seconds) |
| 2021-08-19 18:12:50 | → | Erutuon joins (~Erutuon@user/erutuon) |
| 2021-08-19 18:14:09 | × | ec quits (~ec@gateway/tor-sasl/ec) (Ping timeout: 244 seconds) |
| 2021-08-19 18:14:41 | → | Sgeo joins (~Sgeo@user/sgeo) |
| 2021-08-19 18:14:59 | → | solomon joins (~solomon@cpe-76-168-7-139.socal.res.rr.com) |
| 2021-08-19 18:15:23 | × | solomon quits (~solomon@cpe-76-168-7-139.socal.res.rr.com) (Client Quit) |
| 2021-08-19 18:16:24 | <lechner> | Hi, is this the right way to clean cabal's old build artifacts? https://hackage.haskell.org/package/cabal-clean |
| 2021-08-19 18:17:21 | × | Lycurgus quits (~juan@cpe-45-46-140-49.buffalo.res.rr.com) (Quit: Exeunt) |
| 2021-08-19 18:17:54 | <lechner> | my CABAL_DIR is 14 G |
| 2021-08-19 18:18:41 | → | burnsidesLlama joins (~burnsides@dhcp168-023.wadham.ox.ac.uk) |
| 2021-08-19 18:20:08 | <[exa]> | rm -fr |
| 2021-08-19 18:21:25 | × | Sgeo quits (~Sgeo@user/sgeo) (Ping timeout: 252 seconds) |
| 2021-08-19 18:21:33 | × | hegstal quits (~hegstal@2a02:c7f:7604:8a00:8208:62c2:1345:18fb) (Remote host closed the connection) |
| 2021-08-19 18:21:41 | <eggplantade> | remove (for real) |
| 2021-08-19 18:22:49 | → | Sgeo joins (~Sgeo@user/sgeo) |
All times are in UTC.