Newest at the top
| 2026-06-01 21:03:43 +0000 | pavonia | (~user@user/siracusa) siracusa |
| 2026-06-01 21:02:51 +0000 | humasect | (~humasect@dyn-192-249-132-90.nexicom.net) humasect |
| 2026-06-01 21:02:40 +0000 | acidsys | (~crameleon@openSUSE/member/crameleon) (Ping timeout: 245 seconds) |
| 2026-06-01 21:01:57 +0000 | orcus | (~orcus@user/brprice) (Read error: Connection reset by peer) |
| 2026-06-01 21:01:18 +0000 | emmanuelux | (~em@user/emmanuelux) emmanuelux |
| 2026-06-01 21:00:19 +0000 | orcus- | (~orcus@user/brprice) brprice |
| 2026-06-01 20:59:07 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds) |
| 2026-06-01 20:52:09 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-06-01 20:41:40 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 265 seconds) |
| 2026-06-01 20:36:26 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-06-01 20:25:22 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 251 seconds) |
| 2026-06-01 20:25:13 +0000 | weary-traveler | (~user@user/user363627) (Remote host closed the connection) |
| 2026-06-01 20:20:39 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-06-01 20:17:32 +0000 | netunreach | (~user@user/netunreach) netunreach |
| 2026-06-01 20:15:00 +0000 | <unworriedsafari> | Thanks :) This clears it up. I'm not too familiar with seeing this at the type level. So that link seems informative as well. |
| 2026-06-01 20:13:17 +0000 | <tomsmeding> | there is documentation here on the promotion of data types to the type level, but it's written with the assumption that the reader already knows a lot of haskell https://downloads.haskell.org/ghc/latest/docs/users_guide/exts/data_kinds.html#extension-DataKinds |
| 2026-06-01 20:12:00 +0000 | <unworriedsafari> | I see |
| 2026-06-01 20:11:17 +0000 | <tomsmeding> | "given a BookDB and any computation that uses the ReadOnlyBookDB effect at the front of its effect list, I can handle that effect completely as long as I have the IOE effect available" |
| 2026-06-01 20:11:09 +0000 | netunreach | (~user@user/netunreach) (Ping timeout: 252 seconds) |
| 2026-06-01 20:10:24 +0000 | <tomsmeding> | the 'es' parameter is the list of available effects; 'IOE :> es' is a constraint requiring that IOE is an element of that list, and the usage of ':' means that the argument will run with one additional effect available (namely, ReadOnlyBookDB) |
| 2026-06-01 20:09:53 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 258 seconds) |
| 2026-06-01 20:09:31 +0000 | <tomsmeding> | it's a list of effects :) |
| 2026-06-01 20:09:20 +0000 | <unworriedsafari> | oh |
| 2026-06-01 20:09:17 +0000 | <unworriedsafari> | I see, so it's a type-level operator. Same for the colon in (ReadonlyBooksDB : es) I suppose |
| 2026-06-01 20:09:06 +0000 | <jaror> | Oh, but just the `:` is actually just a list constructor |
| 2026-06-01 20:08:35 +0000 | <jaror> | But it is a custom type level operator that is defined by the effectful library, it is not built-in |
| 2026-06-01 20:08:17 +0000 | <jaror> | In this case |
| 2026-06-01 20:08:10 +0000 | <jaror> | The :> basically means "is a part of" |
| 2026-06-01 20:07:40 +0000 | michalz | (~michalz@185.246.207.221) (Remote host closed the connection) |
| 2026-06-01 20:07:21 +0000 | <unworriedsafari> | Hi, I'm exploring the effectful library but I'm having some trouble with the notation. Particularly the use of single colon in a type signature. What does it mean? For example: https://github.com/bcardiff/lambda-library/blob/main/app-effectful/Main.hs#L46 |
| 2026-06-01 20:06:19 +0000 | <tomsmeding> | (but then, while C++'s std::cout might be a little faster, generating gigabytes of text using std::cout is also not a particularly good idea) |
| 2026-06-01 20:05:43 +0000 | <tomsmeding> | If you'd want to pump that "5" up to a million or so and want it to generate the megabytes of text very quickly, you either need to reimplement in terms of more low-level operations or use another language |
| 2026-06-01 20:04:52 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-06-01 20:04:37 +0000 | <tomsmeding> | finnyben: decently efficiently. Most of the time there is spent on actually printing stuff; IO is relatively expensive in any language. |
| 2026-06-01 20:03:44 +0000 | <tomsmeding> | Sure. But then, why are you learning Haskell precisely? |
| 2026-06-01 20:03:36 +0000 | <tomsmeding> | > I'd be very happy if it were taught to beginner Haskellers who want to learn Haskell as opposed to learning functional programming |
| 2026-06-01 20:02:07 +0000 | azazazz | (~zero@a89-153-63-117.cpe.netcabo.pt) |
| 2026-06-01 20:02:07 +0000 | Googulator | (~Googulato@193-226-241-87.pool.digikabel.hu) |
| 2026-06-01 20:01:53 +0000 | Googulator | (~Googulato@193-226-241-87.pool.digikabel.hu) (Quit: Client closed) |
| 2026-06-01 20:01:10 +0000 | netunreach | (~user@user/netunreach) netunreach |
| 2026-06-01 19:57:43 +0000 | <finnyben> | will programs written in this style run efficiently in haskell? https://www.reddit.com/r/haskellquestions/comments/1tscedu/comment/oox6gm9/?utm_source=share&utm_m… |
| 2026-06-01 19:57:07 +0000 | <yin> | that was what i meant |
| 2026-06-01 19:56:49 +0000 | <yin> | i agree |
| 2026-06-01 19:55:44 +0000 | finnyben | (~zero@user/zero) |
| 2026-06-01 19:54:06 +0000 | merijn | (~merijn@62.45.136.136) (Ping timeout: 252 seconds) |
| 2026-06-01 19:53:25 +0000 | aetepe | (~aetepe@188.119.22.175) (Remote host closed the connection) |
| 2026-06-01 19:53:17 +0000 | synchromesh | (~john@2406:5a00:247e:1500:29c5:b42c:d970:297d) synchromesh |
| 2026-06-01 19:52:51 +0000 | synchromesh | (~john@2406:5a00:247e:1500:29c5:b42c:d970:297d) (Read error: Connection reset by peer) |
| 2026-06-01 19:49:05 +0000 | merijn | (~merijn@62.45.136.136) merijn |
| 2026-06-01 19:49:01 +0000 | Googulator | (~Googulato@193-226-241-87.pool.digikabel.hu) |